IIO_DECLARE_...FFER_WITH_TS(9)
π IIO_DECLARE_DMA_BUFFER_WITH_TS(9) π
okay so bestie, welcome to this page from the Kernel API Manual, and the main character is IIO_DECLARE_DMA_BUFFER_WITH_TS β it's giving βdeclare a DMA-aligned buffer with timestamp.β The header shortens the name to IIO_DECLARE_...FFER_WITH_TS(9), iykyk. πβ¨
β¨ NAME β¨
IIO_DECLARE_DMA_BUFFER_WITH_TS β Declare a DMA-aligned buffer with timestamp. slay.
πΈ SYNOPSIS πΈ
IIO_DECLARE_DMA_BUFFER_WITH_TS (type , name , count );
π¦ ARGUMENTS π¦
typeβ the element type of the buffer, obvs.nameβ the identifier name of the buffer.countβ the number of elements in the buffer.
π₯ DESCRIPTION π₯
So it's literally the same as IIO_DECLARE_BUFFER_WITH_TS, but it uses __aligned(IIO_DMA_MINALIGN) to ensure that the buffer does not share cachelines with anything that comes before it in a struct. That's the whole point, no cap. β¨
π¨ warning bestie: this should not be used for stack-allocated buffers, because stack memory cannot generally be used for DMA. That's a hard no, not a vibe check. π
π SEE ALSO π
Kernel file ./include/linux/iio/iio.h, plus this whole friend group:
struct iio_chan_spec_ext_info(9)struct iio_enum(9)IIO_ENUM(9)IIO_ENUM_AVAILABLE(9)struct iio_mount_matrix(9)IIO_MOUNT_MATRIX(9)struct iio_event_spec(9)IIO_SCAN_FORMAT_SIGNED_INT(9)IIO_SCAN_FORMAT_UNSIGNED_INT(9)IIO_SCAN_FORMAT_FLOAT(9)struct iio_scan_type(9)struct iio_chan_spec(9)iio_channel_has_info(9)iio_channel_has_available(9)struct iio_info(9)struct iio_buffer_setup_ops(9)struct iio_dev(9)iio_device_register(9)devm_iio_device_register(9)iio_device_claim_direct(9)iio_device_release_direct(9)iio_device_try_claim_buffer_mode(9)iio_device_release_buffer_mode(9)IIO_DEV_ACQUIRE_DIRECT_MODE(9)IIO_DEV_ACQUIRE_FAILED(9)IIO_DEV_GUARD_CURRENT_MODE(9)iio_device_put(9)dev_to_iio_dev(9)iio_device_get(9)iio_device_set_parent(9)iio_device_set_drvdata(9)iio_device_get_drvdata(9)IIO_DECLARE_BUFFER_WITH_TS(9)IIO_DECLARE_QUATERNION(9)iio_get_debugfs_dentry(9)iio_device_suspend_triggering(9)iio_device_resume_triggering(9)iio_get_current_scan_type(9)iio_get_masklength(9)iio_for_each_active_channel(9)IIO_DEGREE_TO_RAD(9)IIO_RAD_TO_DEGREE(9)IIO_G_TO_M_S_2(9)IIO_M_S_2_TO_G(9)
okay that's the tea! π This page lives at ./include/linux/iio, dated October 2026, and the manual header/footer calls it IIO_DECLARE_...FFER_WITH_TS(9). Bye bestie, go make that DMA buffer iconic. πβ¨
π¦ 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