/linux/drivers/usb/mtu3/ |
H A D | mtu3_host.c | 68 static void ssusb_wakeup_ip_sleep_set(struct ssusb_mtk *ssusb, bool enable) in ssusb_wakeup_ip_sleep_set() argument 72 switch (ssusb->uwk_vers) { in ssusb_wakeup_ip_sleep_set() 74 reg = ssusb->uwk_reg_base + PERI_WK_CTRL1; in ssusb_wakeup_ip_sleep_set() 79 reg = ssusb->uwk_reg_base + PERI_WK_CTRL0; in ssusb_wakeup_ip_sleep_set() 84 reg = ssusb->uwk_reg_base + PERI_WK_CTRL0; in ssusb_wakeup_ip_sleep_set() 89 reg = ssusb->uwk_reg_base + PERI_WK_CTRL1_8195; in ssusb_wakeup_ip_sleep_set() 94 reg = ssusb->uwk_reg_base + PERI_WK_CTRL0_8195; in ssusb_wakeup_ip_sleep_set() 99 reg = ssusb->uwk_reg_base + PERI_WK_CTRL0_8195; in ssusb_wakeup_ip_sleep_set() 104 reg = ssusb->uwk_reg_base + PERI_SSUSB_SPM_CTRL; in ssusb_wakeup_ip_sleep_set() 111 regmap_update_bits(ssusb in ssusb_wakeup_ip_sleep_set() 114 ssusb_wakeup_of_property_parse(struct ssusb_mtk * ssusb,struct device_node * dn) ssusb_wakeup_of_property_parse() argument 140 ssusb_wakeup_set(struct ssusb_mtk * ssusb,bool enable) ssusb_wakeup_set() argument 146 host_ports_num_get(struct ssusb_mtk * ssusb) host_ports_num_get() argument 159 ssusb_host_enable(struct ssusb_mtk * ssusb) ssusb_host_enable() argument 204 ssusb_host_disable(struct ssusb_mtk * ssusb) ssusb_host_disable() argument 238 ssusb_host_resume(struct ssusb_mtk * ssusb,bool p0_skipped) ssusb_host_resume() argument 281 ssusb_host_suspend(struct ssusb_mtk * ssusb) ssusb_host_suspend() argument 315 ssusb_host_setup(struct ssusb_mtk * ssusb) ssusb_host_setup() argument 330 ssusb_host_cleanup(struct ssusb_mtk * ssusb) ssusb_host_cleanup() argument 344 ssusb_host_init(struct ssusb_mtk * ssusb,struct device_node * parent_dn) ssusb_host_init() argument 363 ssusb_host_exit(struct ssusb_mtk * ssusb) ssusb_host_exit() argument [all...] |
H A D | mtu3_dr.h | 15 int ssusb_host_init(struct ssusb_mtk *ssusb, struct device_node *parent_dn); 16 void ssusb_host_exit(struct ssusb_mtk *ssusb); 17 int ssusb_wakeup_of_property_parse(struct ssusb_mtk *ssusb, 19 int ssusb_host_resume(struct ssusb_mtk *ssusb, bool p0_skipped); 20 int ssusb_host_suspend(struct ssusb_mtk *ssusb); 21 void ssusb_wakeup_set(struct ssusb_mtk *ssusb, bool enable); 25 static inline int ssusb_host_init(struct ssusb_mtk *ssusb, in ssusb_host_init() argument 32 static inline void ssusb_host_exit(struct ssusb_mtk *ssusb) in ssusb_host_exit() argument 36 struct ssusb_mtk *ssusb, struct device_node *dn) in ssusb_wakeup_of_property_parse() argument 41 static inline int ssusb_host_resume(struct ssusb_mtk *ssusb, boo argument 46 ssusb_host_suspend(struct ssusb_mtk * ssusb) ssusb_host_suspend() argument 51 ssusb_wakeup_set(struct ssusb_mtk * ssusb,bool enable) ssusb_wakeup_set() argument 65 ssusb_gadget_init(struct ssusb_mtk * ssusb) ssusb_gadget_init() argument 70 ssusb_gadget_exit(struct ssusb_mtk * ssusb) ssusb_gadget_exit() argument 74 ssusb_gadget_suspend(struct ssusb_mtk * ssusb,pm_message_t msg) ssusb_gadget_suspend() argument 80 ssusb_gadget_resume(struct ssusb_mtk * ssusb,pm_message_t msg) ssusb_gadget_resume() argument 85 ssusb_gadget_ip_sleep_check(struct ssusb_mtk * ssusb) ssusb_gadget_ip_sleep_check() argument 103 ssusb_otg_switch_init(struct ssusb_mtk * ssusb) ssusb_otg_switch_init() argument 108 ssusb_otg_switch_exit(struct ssusb_mtk * ssusb) ssusb_otg_switch_exit() argument 111 ssusb_mode_switch(struct ssusb_mtk * ssusb,int to_host) ssusb_mode_switch() argument 120 ssusb_set_force_mode(struct ssusb_mtk * ssusb,enum mtu3_dr_force_mode mode) ssusb_set_force_mode() argument [all...] |
H A D | mtu3_dr.c | 23 static void toggle_opstate(struct ssusb_mtk *ssusb) in toggle_opstate() argument 25 mtu3_setbits(ssusb->mac_base, U3D_DEVICE_CONTROL, DC_SESSION); in toggle_opstate() 26 mtu3_setbits(ssusb->mac_base, U3D_POWER_MANAGEMENT, SOFT_CONN); in toggle_opstate() 30 static int ssusb_port0_switch(struct ssusb_mtk *ssusb, in ssusb_port0_switch() argument 33 void __iomem *ibase = ssusb->ippc_base; in ssusb_port0_switch() 36 dev_dbg(ssusb->dev, "%s (switch u%d port0 to %s)\n", __func__, in ssusb_port0_switch() 68 static void switch_port_to_host(struct ssusb_mtk *ssusb) in switch_port_to_host() argument 72 dev_dbg(ssusb->dev, "%s\n", __func__); in switch_port_to_host() 74 ssusb_port0_switch(ssusb, USB2_PORT, true); in switch_port_to_host() 76 if (ssusb in switch_port_to_host() 87 switch_port_to_device(struct ssusb_mtk * ssusb) switch_port_to_device() argument 105 struct ssusb_mtk *ssusb = otg_sx_to_ssusb(otg_sx); ssusb_set_vbus() local 132 struct ssusb_mtk *ssusb = otg_sx_to_ssusb(otg_sx); ssusb_mode_sw_work() local 177 struct ssusb_mtk *ssusb = otg_sx_to_ssusb(otg_sx); ssusb_set_mode() local 199 struct ssusb_mtk *ssusb = otg_sx_to_ssusb(otg_sx); ssusb_extcon_register() local 231 ssusb_mode_switch(struct ssusb_mtk * ssusb,int to_host) ssusb_mode_switch() argument 238 ssusb_set_force_mode(struct ssusb_mtk * ssusb,enum mtu3_dr_force_mode mode) ssusb_set_force_mode() argument 263 struct ssusb_mtk *ssusb = usb_role_switch_get_drvdata(sw); ssusb_role_sw_set() local 273 struct ssusb_mtk *ssusb = usb_role_switch_get_drvdata(sw); ssusb_role_sw_get() local 281 struct ssusb_mtk *ssusb = otg_sx_to_ssusb(otg_sx); ssusb_role_sw_register() local 308 ssusb_otg_switch_init(struct ssusb_mtk * ssusb) ssusb_otg_switch_init() argument 325 ssusb_otg_switch_exit(struct ssusb_mtk * ssusb) ssusb_otg_switch_exit() argument [all...] |
H A D | mtu3_debugfs.c | 327 struct ssusb_mtk *ssusb = mtu->ssusb; in mtu3_debugfs_create_prb_files() local 332 dir_prb = debugfs_create_dir("probe", ssusb->dbgfs_root); in mtu3_debugfs_create_prb_files() 364 struct ssusb_mtk *ssusb = mtu->ssusb; in mtu3_debugfs_create_ep_dirs() local 368 dir_eps = debugfs_create_dir("eps", ssusb->dbgfs_root); in mtu3_debugfs_create_ep_dirs() 376 void ssusb_dev_debugfs_init(struct ssusb_mtk *ssusb) in ssusb_dev_debugfs_init() argument 378 struct mtu3 *mtu = ssusb->u3d; in ssusb_dev_debugfs_init() 381 dir_regs = debugfs_create_dir("regs", ssusb->dbgfs_root); in ssusb_dev_debugfs_init() 399 debugfs_create_file("link-state", 0444, ssusb in ssusb_dev_debugfs_init() 407 struct ssusb_mtk *ssusb = sf->private; ssusb_mode_show() local 425 struct ssusb_mtk *ssusb = sf->private; ssusb_mode_write() local 453 struct ssusb_mtk *ssusb = sf->private; ssusb_vbus_show() local 471 struct ssusb_mtk *ssusb = sf->private; ssusb_vbus_write() local 497 ssusb_dr_debugfs_init(struct ssusb_mtk * ssusb) ssusb_dr_debugfs_init() argument 505 ssusb_debugfs_create_root(struct ssusb_mtk * ssusb) ssusb_debugfs_create_root() argument 511 ssusb_debugfs_remove_root(struct ssusb_mtk * ssusb) ssusb_debugfs_remove_root() argument [all...] |
H A D | mtu3_debug.h | 30 void ssusb_dev_debugfs_init(struct ssusb_mtk *ssusb); 31 void ssusb_dr_debugfs_init(struct ssusb_mtk *ssusb); 32 void ssusb_debugfs_create_root(struct ssusb_mtk *ssusb); 33 void ssusb_debugfs_remove_root(struct ssusb_mtk *ssusb); 36 static inline void ssusb_dev_debugfs_init(struct ssusb_mtk *ssusb) {} in ssusb_dev_debugfs_init() argument 37 static inline void ssusb_dr_debugfs_init(struct ssusb_mtk *ssusb) {} in ssusb_dr_debugfs_init() argument 38 static inline void ssusb_debugfs_create_root(struct ssusb_mtk *ssusb) {} in ssusb_debugfs_create_root() argument 39 static inline void ssusb_debugfs_remove_root(struct ssusb_mtk *ssusb) {} in ssusb_debugfs_remove_root() argument
|
H A D | mtu3_core.c | 113 if (mtu->ssusb->dr_mode == USB_DR_MODE_OTG) { in mtu3_device_enable() 120 return ssusb_check_clocks(mtu->ssusb, check_clk); in mtu3_device_enable() 134 if (mtu->ssusb->dr_mode == USB_DR_MODE_OTG) { in mtu3_device_disable() 825 if (mtu->u3_capable && (mtu->ssusb->u3p_dis_msk & BIT(0))) in mtu3_check_params() 922 int ssusb_gadget_init(struct ssusb_mtk *ssusb) in ssusb_gadget_init() argument 924 struct device *dev = ssusb->dev; in ssusb_gadget_init() 953 mtu->ippc_base = ssusb->ippc_base; in ssusb_gadget_init() 954 ssusb->mac_base = mtu->mac_base; in ssusb_gadget_init() 955 ssusb->u3d = mtu; in ssusb_gadget_init() 956 mtu->ssusb in ssusb_gadget_init() 1008 ssusb_gadget_exit(struct ssusb_mtk * ssusb) ssusb_gadget_exit() argument 1017 ssusb_gadget_ip_sleep_check(struct ssusb_mtk * ssusb) ssusb_gadget_ip_sleep_check() argument 1033 ssusb_gadget_suspend(struct ssusb_mtk * ssusb,pm_message_t msg) ssusb_gadget_suspend() argument 1049 ssusb_gadget_resume(struct ssusb_mtk * ssusb,pm_message_t msg) ssusb_gadget_resume() argument [all...] |
H A D | mtu3.h | 325 struct ssusb_mtk *ssusb; member 417 int ssusb_check_clocks(struct ssusb_mtk *ssusb, u32 ex_clks);
|
H A D | mtu3_gadget.c | 536 if (mtu->ssusb->dr_mode == USB_DR_MODE_PERIPHERAL) in mtu3_gadget_start() 591 if (mtu->ssusb->dr_mode == USB_DR_MODE_PERIPHERAL) in mtu3_gadget_stop()
|
/linux/arch/arm64/boot/dts/mediatek/ |
H A D | mt2712-evb.dts | 201 &ssusb {
|
H A D | mt8173-evb.dts | 494 &ssusb {
|
H A D | mt7986a-bananapi-bpi-r3.dts | 405 &ssusb {
|
H A D | mt7986a-bananapi-bpi-r3-mini.dts | 459 &ssusb {
|
H A D | mt7622-bananapi-bpi-r64.dts | 618 &ssusb {
|
H A D | mt8365-evk.dts | 750 &ssusb {
|
H A D | mt7986a.dtsi | 353 ssusb: usb@11200000 { label
|
H A D | mt8183-kukui.dtsi | 942 &ssusb {
|
H A D | mt8173-elm.dtsi | 1145 &ssusb {
|
H A D | mt2712e.dtsi | 797 ssusb: usb@11271000 { label
|
H A D | mt8365.dtsi | 647 ssusb: usb@11201000 { label
|
H A D | mt8173.dtsi | 941 ssusb: usb@11271000 { label
|
H A D | mt8183.dtsi | 1418 ssusb: usb@11201000 { label
|
/linux/arch/arm/boot/dts/mediatek/ |
H A D | mt7629.dtsi | 307 ssusb: usb@1a0c0000 { label
|