STRUCT ROCKCHIP_DRV(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ‘‘ NAME

struct rockchip_drv β€” bestie, this is the pinctrl struct that tells the Rockchip driver how strong a pin should drive and where in the register map it should go looking for that setting πŸ’…


✨ SYNOPSIS

struct rockchip_drv {
    enum rockchip_pin_drv_type      drv_type;
    int offset;
 };

literally the whole thing, no cap β€” two members and a dream πŸŽ€


🌸 Members 🌸

  • drv_type β€” this is the drive strength variant, and it's typed as enum rockchip_pin_drv_type (the per-pin flavour, iykyk). So it's saying which drive strength config we're working with πŸ”₯
  • offset β€” okay so this one's the main character πŸ™ˆ if you initialize it to -1 it gets autocalculated for you, no manual labour required. But if you pass in an initial offset value instead, the relevant source offset can be reset to a new value, and then it autocalculates the following drive strength registers from there. One tiny caveat tho: if the chip has its own cal_drv func that calculates the register offsets itself, this whole variant could just be ignored entirely πŸ’€
fr fr, that -1 detail matters β€” set it and let the kernel do the math 🧚

🌈 SEE ALSO

  • Kernel file ./drivers/pinctrl/pinctrl-rockchip.h struct rockchip_gpio_regs(9)
  • struct rockchip_iomux(9)
  • struct rockchip_pin_bank(9)
  • struct rockchip_mux_recalced_data(9)
  • struct rockchip_pin_group(9)
  • struct rockchip_pmx_func(9)

go read the whole little friend group, they all live in the same header and they're all iconic πŸ¦‹


okay that's the whole page bestie, slay πŸ’–

this lil baddie lives in the Kernel API Manual, comes to you from ./drivers/pinctrl, and it's dated October 2026 ⭐ periodt 🫢

πŸ“¦ where this page comes from