STRUCT MVEBU_MPP_CTRL(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– NAME πŸ’–

struct mvebu_mpp_ctrl β€” describe a mpp control. okay so this is the struct mvebu_mpp_ctrl(9) page from the Kernel API Manual, bestie πŸ’…βœ¨.

✨ SYNOPSIS ✨

here’s the exact struct shape, no edits, no vibes-based rewrites 🫢:

struct mvebu_mpp_ctrl {
    const char *name;
    u8 pid;
    u8 npins;
    unsigned *pins;
    int (*mpp_get)(struct mvebu_mpp_ctrl_data *data, unsigned pid,
unsigned long *config);
    int (*mpp_set)(struct mvebu_mpp_ctrl_data *data, unsigned pid,
unsigned long config);
    int (*mpp_gpio_req)(struct mvebu_mpp_ctrl_data *data, unsigned pid);
    int (*mpp_gpio_dir)(struct mvebu_mpp_ctrl_data *data, unsigned pid,
bool input);
 };

🫢 Members 🫢

  • name β€” name of the control group πŸŽ€
  • pid β€” first pin id handled by this control πŸ“
  • npins β€” number of pins controlled by this control πŸ”’
  • mpp_get β€” (optional) special function to get mpp setting 🫢
  • mpp_set β€” (optional) special function to set mpp setting ✨
  • mpp_gpio_req β€” (optional) special function to request gpio πŸ¦‹
  • mpp_gpio_dir β€” (optional) special function to set gpio direction πŸŽ€

🌸 Description 🌸

okay so picture a muxable unit inside the SoC β€” could be a pin, a group of pins, or an internal function. that’s what a mpp_ctrl describes, periodt πŸ’…. Each muxable unit can be switched between two or more different settings, like assigning mpp pin 13 to uart1 or sata πŸ‘‘.

The mpp_get/_set functions are mandatory β€” no cap, they’re the ones used to get/set a specific mode πŸ”₯. The optional mpp_gpio_req/_dir functions can be used to allow pin settings with varying gpio pins πŸ¦‹. slay ✨.

πŸ”₯ SEE ALSO πŸ”₯

Kernel file ./drivers/pinctrl/mvebu/pinctrl-mvebu.h struct mvebu_mpp_ctrl_data(9), struct mvebu_mpp_ctrl_setting(9), struct mvebu_mpp_mode(9), struct mvebu_pinctrl_soc_info(9) 🫢


and that’s the whole page, bestie! πŸ’– source/version: ./drivers/pinctrl/mvebu Β· date: October 2026 Β· manual page: struct mvebu_mpp_ctrl(9). mwah πŸ’…βœ¨

πŸ“¦ where this page comes from