STRUCT CLK_REGMAP_MUX_DATA(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ struct clk_regmap_mux_data(9) ✨

okay bestie, welcome to the Kernel API Manual πŸ’… this one's a little struct from the clock corner of the kernel, and honestly? it's giving "small but crucial." let's get into it πŸŽ€


🌸 NAME 🌸

struct clk_regmap_mux_data β€” the regmap backed multiplexer clock specific data πŸ¦‹

like, it's the little bundle of info that tells a regmap-backed mux clock how to do its thing. no cap.


✨ SYNOPSIS ✨

struct clk_regmap_mux_data {
    unsigned int    offset;
    u32 *table;
    u32 mask;
    u8 shift;
    u8 flags;
 };

look at her. five fields. iconic. πŸ‘‘


🫢 Members 🫢

  • offset β€” offset of the register controlling the multiplexer πŸ“ (yes, the original says "theregister" β€” we're keeping that energy, it's a typo, we love her anyway 😭)
  • table β€” array of parent indexed register values πŸ—‚οΈ like a little lookup table of values, indexed by parent
  • mask β€” mask of the mutliplexer bit field 🎭 (another original typo, "mutliplexer", and honestly? slay)
  • shift β€” shift to multiplexer bit field ➑️ how far you gotta slide over to reach the field
  • flags β€” hardware-specific flags 🚩 every piece of hardware has opinions

πŸ’œ Description πŸ’œ

Flags: Same as clk_divider except CLK_MUX_HIWORD_MASK, which is ignored πŸ™ˆ

literally that's the whole vibe check: the flags behave like the divider clock's flags, but CLK_MUX_HIWORD_MASK does not apply here. periodt. πŸ”₯


πŸ‘‘ SEE ALSO πŸ‘‘

  • Kernel file ./drivers/clk/meson/clk-regmap.h struct clk_regmap(9)
  • struct clk_regmap_gate_data(9)
  • struct clk_regmap_div_data(9)

go read the whole family, fr fr 🌈


🧚 little reminder bestie: the CLK_MUX_HIWORD_MASK thing being ignored is not a drill, it's literally in the docs πŸ’€

and that's the page!! πŸ’– this one came from the ./drivers/clk/meson corner of the kernel, dated October 2026, and it's filed under struct clk_regmap_mux_data(9) in the Kernel API Manual β€” mwah, love that for us πŸ“πŸ’…

πŸ“¦ where this page comes from