STRUCT ST_LSM6DSX_FIFO_OPS(9)
β¨ struct st_lsm6dsx_fifo_ops β ST IMU FIFO settings β¨
Okay bestie, gather round π this one's a Kernel API Manual page, section 9, and it's literally all about struct st_lsm6dsx_fifo_ops β the ST IMU FIFO settings vibe. It's giving "small struct, big responsibilities" energy and I'm obsessed. π
πΈ NAME πΈ
struct st_lsm6dsx_fifo_ops β ST IMU FIFO settings. That's the whole thing, no cap. It's the little bundle of callbacks and register info that tells the driver how to handle the FIFO. π¦
β¨ SYNOPSIS β¨
struct st_lsm6dsx_fifo_ops {
int (*update_fifo)(struct st_lsm6dsx_sensor *sensor, bool enable);
int (*read_fifo)(struct st_lsm6dsx_hw *hw);
struct {
u8 addr;
u16 mask;
} fifo_th;
struct {
u8 addr;
u16 mask;
} fifo_diff;
u16 max_size;
u8 th_wl;
};
Look at her. Perfect. No notes. π
Note the two anonymous nested structs β fifo_th and fifo_diff β each one is just addr + mask, its whole personality. π«Ά
π Members π
update_fifoβ Update FIFO configuration callback. Yeah, it does exactly what it says on the tin: it's the function pointer that updates the FIFO config for you. π₯read_fifoβ Read FIFO callback. Reads the FIFO. Main character energy, honestly. πfifo_thβ FIFO threshold register info (addr+mask). So it's carrying the register address and the mask for the threshold, together, as they should be. πfifo_diffβ FIFO diff status register info (addr+mask). Same deal, but for the diff status register. Twins but not identical, iykyk. πΈmax_sizeβ Sensor max fifo length in FIFO words. That'su16, and it's the ceiling of how long the FIFO can get, measured in FIFO words. Don't forget the units bestie, they matter. βth_wlβ FIFO threshold word length. A singleu8holding the threshold word length. Small but iconic. π
π¦ SEE ALSO π¦
- Kernel file
./drivers/iio/imu/st_lsm6dsx/st_lsm6dsx.h struct st_lsm6dsx_hw_ts_settings(9)struct st_lsm6dsx_shub_settings(9)struct st_lsm6dsx_ext_dev_settings(9)struct st_lsm6dsx_settings(9)struct st_lsm6dsx_sensor(9)struct st_lsm6dsx_hw(9)
Like, go read the whole friend group, they're all connected. π₯
Okay so lowkey the whole struct lives in ./drivers/iio/imu/st_lsm6dsx and this page is dated October 2026 π β that's the source tree and the date, keep them safe, they're part of the lore. π
Anyway bestie that's the page, you ate that, 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