STRUCT ST_LSM6DSX_EXT_DEV_SETTINGS(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– struct st_lsm6dsx_ext_dev_settings(9) πŸ’–

okay so bestie, welcome to the Kernel API Manual entry for struct st_lsm6dsx_ext_dev_settings β€” yes the header abbreviates it as struct st_ls...dev_settings(9) but we're gonna say the whole thing, periodt ✨


🌸 NAME 🌸

struct st_lsm6dsx_ext_dev_settings β€” the i2c controller slave settings, literally the little config bundle that tells the driver how to talk to an external sensor hanging off the hub. no cap 🫢


πŸŽ€ SYNOPSIS πŸŽ€

struct st_lsm6dsx_ext_dev_settings {
    u8 i2c_addr[2];
    struct {
      u8 addr;
      u8 val;
    } wai;
    enum st_lsm6dsx_ext_sensor_id id;
    struct st_lsm6dsx_odr_table_entry odr_table;
    struct st_lsm6dsx_fs_table_entry fs_table;
    struct st_lsm6dsx_reg temp_comp;
    struct {
      struct st_lsm6dsx_reg reg;
      u8 off_val;
      u8 on_val;
    } pwr_table;
    struct st_lsm6dsx_reg off_canc;
    struct st_lsm6dsx_reg bdu;
    struct {
      u8 addr;
      u8 len;
    } out;
 };

copy that exactly, don't be out here renaming fields, i'm watching πŸ‘€


πŸ¦‹ Members πŸ¦‹

  • i2c_addr β€” the I2c slave address list. that's it, that's the vibe πŸ’…
  • wai β€” Wai address info. who is this sensor? this struct is how we find out πŸ™ˆ
  • id β€” the external sensor id, so we know which one we're dealing with.
  • odr_table β€” Output data rate of the sensor [Hz]. yes, hertz, we measure in hertz here ⭐
  • fs_table β€” the Configured sensor sensitivity table depending on full scale. scale goes brrr 🌈
  • temp_comp β€” Temperature compensation register info (addr + mask). keep it chill 🧚
  • pwr_table β€” Power on register info (addr + mask). main character energy fr fr πŸ”₯
  • off_canc β€” Offset cancellation register info (addr + mask).
  • bdu β€” Block data update register info (addr + mask).
  • out β€” Output register info. the moment of truth πŸ“
ngl all those "(addr + mask)" ones are literally the same shape β€” register address plus its mask. iconic consistency, we love to see it πŸ’œ

✨ SEE ALSO ✨

the Kernel file ./drivers/iio/imu/st_lsm6dsx/st_lsm6dsx.h plus her besties, all of them, no skips:

  • struct st_lsm6dsx_fifo_ops(9)
  • struct st_lsm6dsx_hw_ts_settings(9)
  • struct st_lsm6dsx_shub_settings(9)
  • struct st_lsm6dsx_settings(9)
  • struct st_lsm6dsx_sensor(9)
  • struct st_lsm6dsx_hw(9)

go read them, iykyk πŸ“š


aaaaand that's the page!! πŸŽ€ sign-off time: this one lives at ./drivers/iio/imu/st_lsm6dsx and it's dated October 2026 β€” struct st_ls...dev_settings(9), slay, bye bestie πŸ’–πŸ¦‹

πŸ“¦ where this page comes from