STRUCT QUSB2_PHY(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… struct qusb2_phy(9) β€” from the Kernel API Manual, bestie

okay so picture this: it's a whole struct in the kernel, right, and it's the one holding all the qusb2 phy attributes. literally its entire job. iconic of it, honestly 🫢


✨ NAME ✨

struct qusb2_phy β€” the structure that holds all the qusb2 phy attributes πŸ’–


🌸 SYNOPSIS 🌸

struct qusb2_phy {
    struct phy *phy;
    void __iomem *base;
    struct clk *cfg_ahb_clk;
    struct clk *ref_clk;
    struct clk *iface_clk;
    struct reset_control *phy_reset;
    struct regulator_bulk_data vregs[QUSB2_NUM_VREGS];
    struct regmap *tcsr;
    struct nvmem_cell *cell;
    struct override_params overrides;
    const struct qusb2_phy_cfg *cfg;
    bool has_se_clk_scheme;
    bool phy_initialized;
    enum phy_mode mode;
 };

like, look at her. every single field accounted for. no notes πŸ‘‘


πŸŽ€ Members πŸŽ€

okay bestie let's go field by field, i promise it's not that deep:

  • phy β€” the generic phy. the main character of the whole thing fr.
  • base β€” iomapped memory space for qubs2 phy (yes that's the spelling in the source, don't come for me πŸ’€).
  • cfg_ahb_clk β€” the AHB2PHY interface clock ⏰
  • ref_clk β€” the phy reference clock, the vibe-setter of clocks
  • iface_clk β€” the phy interface clock
  • phy_reset β€” the phy reset control, hold my hand while i reset you energy
  • vregs β€” regulator supplies bulk data β€” it's literally struct regulator_bulk_data vregs[QUSB2_NUM_VREGS], an entire array of them, slay
  • tcsr β€” the TCSR syscon register map πŸ—ΊοΈ
  • cell β€” the nvmem cell containing the phy tuning value, lowkey important
  • overrides β€” pointer to the structure for all the overriding tuning params β€” every last one of them
  • cfg β€” the phy config data
  • has_se_clk_scheme β€” a bool that indicates if the PHY has the single-ended ref clock scheme ✨
  • phy_initialized β€” a bool that indicates if the PHY has been initialized β€” the "have we done this already" flag
  • mode β€” the current PHY mode, an enum phy_mode, living its truth

πŸ¦‹ SEE ALSO πŸ¦‹

  • Kernel file ./drivers/phy/qualcomm/phy-qcom-qusb2.c β€” go read the source, iykyk πŸ’…

and that's the whole page, no cap. this one's from ./drivers/phy/qualcomm, dated October 2026, and it's struct qusb2_phy(9) β€” periodt πŸ§šπŸ’œ

πŸ“¦ where this page comes from