STRUCT PAC1934_CHIP_INFO(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

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

okay so this is a page straight out of the Kernel API Manual β€” yes bestie, the kernel has lore too β€” and it's all about struct pac1934_chip_info, which is, like, the lil info packet for the chip. the whole personality of this struct is just "I know things about the chip" and honestly? main character energy. πŸ‘‘


✨ NAME ✨

struct pac1934_chip_info β€” information about the chip. that's it, that's the vibe. it's the struct that holds the tea about the chip. πŸ“


🌸 SYNOPSIS 🌸

struct pac1934_chip_info {
    struct i2c_client       *client;
    struct mutex            lock;
    struct delayed_work     work_chip_rfsh;
    u8 phys_channels;
    bool active_channels[PAC1934_MAX_NUM_CHANNELS];
    bool enable_energy[PAC1934_MAX_NUM_CHANNELS];
    bool bi_dir[PAC1934_MAX_NUM_CHANNELS];
    u8 chip_variant;
    u8 chip_revision;
    u32 shunts[PAC1934_MAX_NUM_CHANNELS];
    struct reg_data         chip_reg_data;
    s32 sample_rate_value;
    char *labels[PAC1934_MAX_NUM_CHANNELS];
    struct iio_info         iio_info;
    unsigned long           tstamp;
 };

look at her. perfectly aligned fields, not a single typo, we stan a tidy struct. πŸŽ€


πŸ¦‹ Members πŸ¦‹

okay now the part you actually came for β€” every single member, no skipping, no cap:

  • client β€” the i2c-client that's attached to the device. the whole reason she's here tbh. πŸ’«
  • lock β€” a mutex that synchronizes access to the driver's state members. lowkey the bouncer at the club: nobody touches the state without going through her first. πŸ”’
  • work_chip_rfsh β€” the work queue used for refresh commands. she's the one doing the lil come-through-and-refresh shifts. 🧚
  • phys_channels β€” phys channels count. just the number, bestie. πŸ”’
  • active_channels β€” an array of values, where true means that channel is active. it's giving attendance sheet. βœ…
  • enable_energy β€” an array of values, where true means that channel's energy is measured. energy check: passed. ⚑
  • bi_dir β€” an array of bools, where true means that channel is bidirectional. she swings both ways (directionally). πŸ”
  • chip_variant β€” chip variant. the flavor, if you will. 🍦
  • chip_revision β€” chip revision. the version lore. πŸ“
  • shunts β€” shunts. iconic, unexplained, present. 🫢
  • chip_reg_data β€” chip reg data. it's a struct reg_data, she contains multitudes. πŸ’…
  • sample_rate_value β€” sampling frequency. how often she's sampling the tea. 🎡
  • labels β€” table with channels labels. name tags but make it array. 🏷️
  • iio_info β€” iio_info. does exactly what it says on the tin, no notes. πŸ“‹
  • tstamp β€” the chip's uptime. her personal "how long have I been awake" clock. ⏰

πŸ”₯ SEE ALSO πŸ”₯

  • the Kernel file ./drivers/iio/adc/pac1934.c
  • struct pac1934_features(9)
  • struct reg_data(9)

ngl bestie, if you're poking at the driver state without holding lock, that's not slay, that's a race condition. protect her. 😭

and that's the page!! 🌈 it lives over in ./drivers/iio/adc and the footer's dated October 2026 β€” so like, from the future, cute. this remake of struct pac1934_chip_info(9) was brought to you with love, and the whole thing is kernel API manual certified. mwah πŸ’œπŸ¦‹βœ¨

πŸ“¦ where this page comes from