STRUCT BQ256XX_CHIP_INFO(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– NAME πŸ’–

struct bq256xx_chip_info β€” bestie, the manpage literally leaves this blank, so here's the vibe: it's the per-chip info struct for the bq256xx charger driver, and every member is listed below with its whole entire personality 🫢

This page lives in the Kernel API Manual, just so you know where you are ✨


✨ SYNOPSIS ✨

okay so here's the whole struct, no cap, every field, exactly as it is:

struct bq256xx_chip_info {
    int model_id;
    const struct regmap_config *bq256xx_regmap_config;
    int (*bq256xx_get_ichg)(struct bq256xx_device *bq);
    int (*bq256xx_get_iindpm)(struct bq256xx_device *bq);
    int (*bq256xx_get_vbatreg)(struct bq256xx_device *bq);
    int (*bq256xx_get_iterm)(struct bq256xx_device *bq);
    int (*bq256xx_get_iprechg)(struct bq256xx_device *bq);
    int (*bq256xx_get_vindpm)(struct bq256xx_device *bq);
    int (*bq256xx_set_ichg)(struct bq256xx_device *bq, int ichg);
    int (*bq256xx_set_iindpm)(struct bq256xx_device *bq, int iindpm);
    int (*bq256xx_set_vbatreg)(struct bq256xx_device *bq, int vbatreg);
    int (*bq256xx_set_iterm)(struct bq256xx_device *bq, int iterm);
    int (*bq256xx_set_iprechg)(struct bq256xx_device *bq, int iprechg);
    int (*bq256xx_set_vindpm)(struct bq256xx_device *bq, int vindpm);
    int (*bq256xx_set_charge_type)(struct bq256xx_device *bq, int type);
    int (*bq256xx_set_ts_ignore)(struct bq256xx_device *bq, bool
ts_ignore);
    int bq256xx_def_ichg;
    int bq256xx_def_iindpm;
    int bq256xx_def_vbatreg;
    int bq256xx_def_iterm;
    int bq256xx_def_iprechg;
    int bq256xx_def_vindpm;
    int bq256xx_max_ichg;
    int bq256xx_max_vbatreg;
    bool has_usb_detect;
};

(yes the ts_ignore line is broken across two lines, that's just how the original prints it, don't come for me πŸ’…)


🧩 Members 🧩

okay bestie, member-by-member, here we go β€” this is the whole roster πŸ‘‘

  • model_id β€” the device instance. like, which chip are we even talking about rn.
  • bq256xx_regmap_config β€” the regmap configuration struct. the map to the registers, iykyk.
  • bq256xx_get_ichg β€” pointer to the instance-specific get_ichg function.
  • bq256xx_get_iindpm β€” pointer to the instance-specific get_iindpm function.
  • bq256xx_get_vbatreg β€” pointer to the instance-specific get_vbatreg function.
  • bq256xx_get_iterm β€” pointer to the instance-specific get_iterm function.
  • bq256xx_get_iprechg β€” pointer to the instance-specific get_iprechg function.
  • bq256xx_get_vindpm β€” pointer to the instance-specific get_vindpm function.
  • bq256xx_set_ichg β€” pointer to the instance-specific set_ichg function.
  • bq256xx_set_iindpm β€” pointer to the instance-specific set_iindpm function.
  • bq256xx_set_vbatreg β€” pointer to the instance-specific set_vbatreg function.
  • bq256xx_set_iterm β€” pointer to the instance-specific set_iterm function.
  • bq256xx_set_iprechg β€” pointer to the instance-specific set_iprechg function.
  • bq256xx_set_vindpm β€” pointer to the instance-specific set_vindpm function.
  • bq256xx_set_charge_type β€” pointer to the instance-specific set_charge_type function.
  • bq256xx_set_ts_ignore β€” pointer to the instance-specific set_ts_ignore function.
  • bq256xx_def_ichg β€” default ichg value in microamps.
  • bq256xx_def_iindpm β€” default iindpm value in microamps.
  • bq256xx_def_vbatreg β€” default vbatreg value in microvolts.
  • bq256xx_def_iterm β€” default iterm value in microamps.
  • bq256xx_def_iprechg β€” default iprechg value in microamps.
  • bq256xx_def_vindpm β€” default vindpm value in microvolts.
  • bq256xx_max_ichg β€” maximum charge current in microamps.
  • bq256xx_max_vbatreg β€” maximum battery regulation voltage in microvolts.
  • has_usb_detect β€” indicates whether the device has BC1.2 detection. πŸ‘€
lowkey important: the *_def_* ones are microamps except bq256xx_def_vbatreg and bq256xx_def_vindpm, which are microvolts. don't mix 'em up bestie 😭

🌈 SEE ALSO 🌈

  • Kernel file ./drivers/power/supply/bq256xx_charger.c struct bq256xx_init_data(9)
  • struct bq256xx_state(9)
  • struct bq256xx_device(9)

go read those next, fr fr β€” they're the friend group this struct rolls with πŸ’œ


that's the whole page bestie, slay πŸ’…βœ¨ this little number came out of ./drivers/power/supply, dated October 2026 β€” iconic behavior, no notes πŸŽ€πŸ¦‹

πŸ“¦ where this page comes from