zpa2326_trigger_handler(9)
okay bestie, welcome to the zpa2326_trigger_handler(9) page from the Kernel API Manual π this one is all about the bottom-half handler for the ZPA2326 IIO trigger, and it is lowkey iconic. Letβs get into it. β¨
πΈ NAME πΈ
zpa2326_trigger_handler β Perform an IIO buffered sampling round in one shot mode. π
β¨ SYNOPSIS β¨
irqreturn_t zpa2326_trigger_handler (int irq , void *data );
itβs giving function signature realness, no cap. π
π¦ ARGUMENTS π¦
irqβ The software interrupt assigned todata. π«Άdataβ The IIO poll function dispatched by external trigger our device is attached to.
π§ DESCRIPTION π§
okay so picture this: this is the bottom-half handler called by the IIO trigger to which our device is currently attached. It lets us synchronize this deviceβs buffered sampling either with external events (such as timer expiration, external device sample ready, etc...) or with its own interrupt (thatβs the internal hardware trigger, iykyk). π«
When weβre using an external trigger, it basically runs the same sequence of operations as for zpa2326_sample_oneshot, with the following hereafter π The hardware FIFO is not cleared, since thatβs already done at buffering enable time, and samples dequeueing always retrieves the most recent value. Periodt. π
Otherwise β when the internal hardware trigger has dispatched us β it just fetches data from the hardware FIFO. Simple as that, bestie. π
Fetched data will get pushed unprocessed to the IIO buffer, since samples conversion is delegated to userspace in buffered mode (endianness, etc...). So donβt come for us about byte order, thatβs userspaceβs main character era. π
π₯ RETURN π₯
IRQ_NONEβ no consistent interrupt happened ;IRQ_HANDLEDβ there was new samples available.
like, either nothing consistent happened, or we got new samples. vibe check complete. π
π SEE ALSO π
go read these, bestie, theyβre the whole lore π«Ά:
- Kernel file
./drivers/iio/pressure/zpa2326.c ZPA2326 theory of operations(9)struct zpa2326_frequency(9)struct zpa2326_private(9)zpa2326_enable_device(9)zpa2326_sleep(9)zpa2326_reset_device(9)zpa2326_start_oneshot(9)zpa2326_power_on(9)zpa2326_power_off(9)zpa2326_config_oneshot(9)zpa2326_clear_fifo(9)zpa2326_dequeue_pressure(9)zpa2326_fill_sample_buffer(9)zpa2326_resume(9)zpa2326_suspend(9)zpa2326_handle_irq(9)zpa2326_handle_threaded_irq(9)zpa2326_wait_oneshot_completion(9)zpa2326_poll_oneshot_completion(9)zpa2326_fetch_raw_sample(9)zpa2326_sample_oneshot(9)zpa2326_preenable_buffer(9)zpa2326_postenable_buffer(9)zpa2326_set_trigger_state(9)zpa2326_init_managed_trigger(9)
mwah π this page came from ./drivers/iio/pressure, dated October 2026, and itβs the zpa2326_trigger_handler(9) manual page β periodt. π
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms