STRUCT SSUSB_MTK(9)
π NAME π
okay bestie, welcome to struct ssusb_mtk(9) β thatβs the manual name, and this is the Kernel API Manual. Itβs the SuperSpeed USB descriptor (MTK), and yes itβs giving very kernel-core. π
β¨
β¨ SYNOPSIS β¨
Hereβs the whole struct, no cap β character-for-character, exactly as it appears. π«Ά
struct ssusb_mtk {
struct device *dev;
struct mtu3 *u3d;
void __iomem *mac_base;
void __iomem *ippc_base;
struct phy **phys;
int num_phys;
int wakeup_irq;
struct regulator *vusb33;
struct clk_bulk_data clks[BULK_CLKS_CNT];
struct otg_switch_mtk otg_switch;
enum usb_dr_mode dr_mode;
bool is_host;
int u2_ports;
int u3_ports;
int u2p_dis_msk;
int u3p_dis_msk;
struct dentry *dbgfs_root;
bool uwk_en;
struct regmap *uwk;
u32 uwk_reg_base;
u32 uwk_vers;
};
π Members π
These are the members the page specifically calls out, with every detail kept intact:
mac_baseβ the register base address of the device MAC, and it explicitly excludes xHCIβs. πippc_baseβ the register base address of the IP Power and Clock interface (IPPC). β‘vusb33β the usb3.3V shared by device/host IP. πdr_modeβ works in which mode: host only, device only, or dual-role mode. πu2_portsβ the number of usb2.0 host ports. πu3_portsβ the number of usb3.0 host ports. πu2p_dis_mskβ mask of disabling usb2 ports, e.g.bit0==1to disableu2port0,bit1==1to disableu2port1,... etc, but when use dual-role mode, canβt disableu2port0. π«u3p_dis_mskβ mask of disabling usb3 ports, for example,bit0==1to disableu3port0,bit1==1to disableu3port1,... etc. π«dbgfs_rootβ only used when supports manual dual-role switch via debugfs. πuwk_enβ itβs true when supports remote wakeup in host mode. π€uwkβ syscon including the usb wakeup glue layer between SSUSB IP and SPM. πuwk_reg_baseβ the base address of the wakeup glue layer inuwk. πuwk_versβ the version of the wakeup glue layer. π’
π SEE ALSO π
Go peek at these, bestie β all the cross-refs, untouched:
- Kernel file
./drivers/usb/mtu3/mtu3.h:enum mtu3_g_ep0_state(9),enum mtu3_dr_force_mode(9),struct mtu3_fifo_info(9),struct qmu_gpd(9),struct mtu3_gpd_ring(9),struct otg_switch_mtk(9),struct mtu3_ep(9),struct mtu3(9). π¦
okay thatβs the page! Sign-off tea β: it comes from ./drivers/usb/mtu3, dated October 2026, and itβs struct ssusb_mtk(9) in the Kernel API Manual β periodt. ππβ¨
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms