Home
last modified time | relevance | path

Searched refs:dwc3 (Results 1 – 25 of 96) sorted by relevance

1234

/Linux-v5.15/drivers/usb/dwc3/
DMakefile5 obj-$(CONFIG_USB_DWC3) += dwc3.o
7 dwc3-y := core.o
10 dwc3-y += trace.o
14 dwc3-y += host.o
18 dwc3-y += gadget.o ep0.o
22 dwc3-y += drd.o
26 dwc3-y += ulpi.o
30 dwc3-y += debugfs.o
45 obj-$(CONFIG_USB_DWC3_OMAP) += dwc3-omap.o
46 obj-$(CONFIG_USB_DWC3_EXYNOS) += dwc3-exynos.o
[all …]
Ddwc3-haps.c24 struct platform_device *dwc3; member
60 dwc->dwc3 = platform_device_alloc("dwc3", PLATFORM_DEVID_AUTO); in dwc3_haps_probe()
61 if (!dwc->dwc3) in dwc3_haps_probe()
75 ret = platform_device_add_resources(dwc->dwc3, res, ARRAY_SIZE(res)); in dwc3_haps_probe()
82 dwc->dwc3->dev.parent = dev; in dwc3_haps_probe()
84 ret = device_add_software_node(&dwc->dwc3->dev, &dwc3_haps_swnode); in dwc3_haps_probe()
88 ret = platform_device_add(dwc->dwc3); in dwc3_haps_probe()
98 device_remove_software_node(&dwc->dwc3->dev); in dwc3_haps_probe()
99 platform_device_put(dwc->dwc3); in dwc3_haps_probe()
107 device_remove_software_node(&dwc->dwc3->dev); in dwc3_haps_remove()
[all …]
Dcore.h662 struct dwc3 *dwc;
710 struct dwc3 *dwc;
1091 struct dwc3 { struct
1304 #define work_to_dwc(w) (container_of((w), struct dwc3, drd_work)) argument
1463 void dwc3_set_prtcap(struct dwc3 *dwc, u32 mode);
1464 void dwc3_set_mode(struct dwc3 *dwc, u32 mode);
1494 static inline u32 dwc3_mdwidth(struct dwc3 *dwc) in dwc3_mdwidth()
1505 bool dwc3_has_imod(struct dwc3 *dwc);
1507 int dwc3_event_buffers_setup(struct dwc3 *dwc);
1508 void dwc3_event_buffers_cleanup(struct dwc3 *dwc);
[all …]
Ddrd.c19 static void dwc3_otg_disable_events(struct dwc3 *dwc, u32 disable_mask) in dwc3_otg_disable_events()
27 static void dwc3_otg_enable_events(struct dwc3 *dwc, u32 enable_mask) in dwc3_otg_enable_events()
35 static void dwc3_otg_clear_events(struct dwc3 *dwc) in dwc3_otg_clear_events()
54 struct dwc3 *dwc = _dwc; in dwc3_otg_thread_irq()
72 struct dwc3 *dwc = _dwc; in dwc3_otg_irq()
93 static void dwc3_otgregs_init(struct dwc3 *dwc) in dwc3_otgregs_init()
137 static int dwc3_otg_get_irq(struct dwc3 *dwc) in dwc3_otg_get_irq()
167 void dwc3_otg_init(struct dwc3 *dwc) in dwc3_otg_init()
186 void dwc3_otg_exit(struct dwc3 *dwc) in dwc3_otg_exit()
195 void dwc3_otg_host_init(struct dwc3 *dwc) in dwc3_otg_host_init()
[all …]
Ddwc3-pci.c67 struct platform_device *dwc3; member
240 struct platform_device *dwc3 = dwc->dwc3; in dwc3_pci_resume_work() local
243 ret = pm_runtime_get_sync(&dwc3->dev); in dwc3_pci_resume_work()
245 pm_runtime_put_sync_autosuspend(&dwc3->dev); in dwc3_pci_resume_work()
249 pm_runtime_mark_last_busy(&dwc3->dev); in dwc3_pci_resume_work()
250 pm_runtime_put_sync_autosuspend(&dwc3->dev); in dwc3_pci_resume_work()
273 dwc->dwc3 = platform_device_alloc("dwc3", PLATFORM_DEVID_AUTO); in dwc3_pci_probe()
274 if (!dwc->dwc3) in dwc3_pci_probe()
288 ret = platform_device_add_resources(dwc->dwc3, res, ARRAY_SIZE(res)); in dwc3_pci_probe()
295 dwc->dwc3->dev.parent = dev; in dwc3_pci_probe()
[all …]
Dep0.c30 static void __dwc3_ep0_do_control_status(struct dwc3 *dwc, struct dwc3_ep *dep);
31 static void __dwc3_ep0_do_control_data(struct dwc3 *dwc,
38 struct dwc3 *dwc; in dwc3_ep0_prepare_one_trb()
66 struct dwc3 *dwc; in dwc3_ep0_start_trans()
90 struct dwc3 *dwc = dep->dwc; in __dwc3_gadget_ep0_queue()
193 struct dwc3 *dwc = dep->dwc; in dwc3_gadget_ep0_queue()
221 static void dwc3_ep0_stall_and_restart(struct dwc3 *dwc) in dwc3_ep0_stall_and_restart()
249 struct dwc3 *dwc = dep->dwc; in __dwc3_gadget_ep0_set_halt()
259 struct dwc3 *dwc = dep->dwc; in dwc3_gadget_ep0_set_halt()
270 void dwc3_ep0_out_start(struct dwc3 *dwc) in dwc3_ep0_out_start()
[all …]
Ddwc3-imx8mp.c41 struct platform_device *dwc3; member
52 struct dwc3 *dwc3 = platform_get_drvdata(dwc3_imx->dwc3); in dwc3_imx8mp_wakeup_enable() local
55 if (!dwc3) in dwc3_imx8mp_wakeup_enable()
60 if ((dwc3->current_dr_role == DWC3_GCTL_PRTCAP_HOST) && dwc3->xhci) in dwc3_imx8mp_wakeup_enable()
63 else if (dwc3->current_dr_role == DWC3_GCTL_PRTCAP_DEVICE) in dwc3_imx8mp_wakeup_enable()
82 struct dwc3 *dwc = platform_get_drvdata(dwc3_imx->dwc3); in dwc3_imx8mp_interrupt()
174 dwc3_imx->dwc3 = of_find_device_by_node(dwc3_np); in dwc3_imx8mp_probe()
175 if (!dwc3_imx->dwc3) { in dwc3_imx8mp_probe()
245 struct dwc3 *dwc = platform_get_drvdata(dwc3_imx->dwc3); in dwc3_imx8mp_resume()
Dcore.c47 static int dwc3_get_dr_mode(struct dwc3 *dwc) in dwc3_get_dr_mode()
105 void dwc3_set_prtcap(struct dwc3 *dwc, u32 mode) in dwc3_set_prtcap()
117 static int dwc3_core_soft_reset(struct dwc3 *dwc);
121 struct dwc3 *dwc = work_to_dwc(work); in __dwc3_set_mode()
231 void dwc3_set_mode(struct dwc3 *dwc, u32 mode) in dwc3_set_mode()
247 struct dwc3 *dwc = dep->dwc; in dwc3_core_fifo_space()
263 static int dwc3_core_soft_reset(struct dwc3 *dwc) in dwc3_core_soft_reset()
318 static void dwc3_frame_length_adjustment(struct dwc3 *dwc) in dwc3_frame_length_adjustment()
343 static void dwc3_free_one_event_buffer(struct dwc3 *dwc, in dwc3_free_one_event_buffer()
357 static struct dwc3_event_buffer *dwc3_alloc_one_event_buffer(struct dwc3 *dwc, in dwc3_alloc_one_event_buffer()
[all …]
Dgadget.c41 int dwc3_gadget_set_test_mode(struct dwc3 *dwc, int mode) in dwc3_gadget_set_test_mode()
72 int dwc3_gadget_get_link_state(struct dwc3 *dwc) in dwc3_gadget_get_link_state()
89 int dwc3_gadget_set_link_state(struct dwc3 *dwc, enum dwc3_link_state state) in dwc3_gadget_set_link_state()
178 struct dwc3 *dwc = dep->dwc; in dwc3_gadget_del_and_unmap_request()
211 struct dwc3 *dwc = dep->dwc; in dwc3_gadget_giveback()
230 int dwc3_send_gadget_generic_command(struct dwc3 *dwc, unsigned int cmd, in dwc3_send_gadget_generic_command()
261 static int __dwc3_gadget_wakeup(struct dwc3 *dwc);
276 struct dwc3 *dwc = dep->dwc; in dwc3_send_gadget_ep_cmd()
411 struct dwc3 *dwc = dep->dwc; in dwc3_send_clear_stall_ep_cmd()
443 struct dwc3 *dwc = dep->dwc; in dwc3_alloc_trb_pool()
[all …]
Dulpi.c24 static int dwc3_ulpi_busyloop(struct dwc3 *dwc, u8 addr, bool read) in dwc3_ulpi_busyloop()
53 struct dwc3 *dwc = dev_get_drvdata(dev); in dwc3_ulpi_read()
71 struct dwc3 *dwc = dev_get_drvdata(dev); in dwc3_ulpi_write()
86 int dwc3_ulpi_init(struct dwc3 *dwc) in dwc3_ulpi_init()
98 void dwc3_ulpi_exit(struct dwc3 *dwc) in dwc3_ulpi_exit()
Dgadget.h18 struct dwc3;
110 void dwc3_ep0_interrupt(struct dwc3 *dwc,
112 void dwc3_ep0_out_start(struct dwc3 *dwc);
118 void dwc3_ep0_send_delayed_status(struct dwc3 *dwc);
143 static inline void dwc3_gadget_dctl_write_safe(struct dwc3 *dwc, u32 value) in dwc3_gadget_dctl_write_safe()
Ddebugfs.c282 struct dwc3 *dwc = s->private; in dwc3_host_lsp()
312 struct dwc3 *dwc = s->private; in dwc3_gadget_lsp()
326 struct dwc3 *dwc = s->private; in dwc3_lsp_show()
360 struct dwc3 *dwc = s->private; in dwc3_lsp_write()
390 struct dwc3 *dwc = s->private; in dwc3_mode_show()
424 struct dwc3 *dwc = s->private; in dwc3_mode_write()
458 struct dwc3 *dwc = s->private; in dwc3_testmode_show()
503 struct dwc3 *dwc = s->private; in dwc3_testmode_write()
541 struct dwc3 *dwc = s->private; in dwc3_link_state_show()
576 struct dwc3 *dwc = s->private; in dwc3_link_state_write()
[all …]
Ddwc3-qcom.c69 struct platform_device *dwc3; member
264 if (usb_get_maximum_speed(&qcom->dwc3->dev) >= USB_SPEED_SUPER || in dwc3_qcom_interconnect_init()
265 usb_get_maximum_speed(&qcom->dwc3->dev) == USB_SPEED_UNKNOWN) in dwc3_qcom_interconnect_init()
408 struct dwc3 *dwc = platform_get_drvdata(qcom->dwc3); in qcom_dwc3_resume_irq()
590 qcom->dwc3 = platform_device_alloc("dwc3", PLATFORM_DEVID_AUTO); in dwc3_qcom_acpi_register_core()
591 if (!qcom->dwc3) in dwc3_qcom_acpi_register_core()
594 qcom->dwc3->dev.parent = dev; in dwc3_qcom_acpi_register_core()
595 qcom->dwc3->dev.type = dev->type; in dwc3_qcom_acpi_register_core()
596 qcom->dwc3->dev.dma_mask = dev->dma_mask; in dwc3_qcom_acpi_register_core()
597 qcom->dwc3->dev.dma_parms = dev->dma_parms; in dwc3_qcom_acpi_register_core()
[all …]
Dhost.c15 static int dwc3_host_get_irq(struct dwc3 *dwc) in dwc3_host_get_irq()
45 int dwc3_host_init(struct dwc3 *dwc) in dwc3_host_init()
130 void dwc3_host_exit(struct dwc3 *dwc) in dwc3_host_exit()
Ddebug.h417 extern void dwc3_debugfs_init(struct dwc3 *d);
418 extern void dwc3_debugfs_exit(struct dwc3 *d);
422 static inline void dwc3_debugfs_init(struct dwc3 *d) in dwc3_debugfs_init()
424 static inline void dwc3_debugfs_exit(struct dwc3 *d) in dwc3_debugfs_exit()
/Linux-v5.15/Documentation/devicetree/bindings/usb/
Ddwc3-st.txt3 This file documents the parameters for the dwc3-st driver.
4 This driver controls the glue logic used to configure the dwc3 core on
8 - compatible : must be "st,stih407-dwc3"
32 The dwc3 core should be added as subnode to ST DWC3 glue as shown in the
33 example below. The DT binding details of dwc3 can be found in:
34 Documentation/devicetree/bindings/usb/snps,dwc3.yaml
37 is "otg", which isn't supported by this SoC. Valid dr_mode values for dwc3-st are either "host"
44 st_dwc3: dwc3@8f94000 {
45 compatible = "st,stih407-dwc3";
58 dwc3: dwc3@9900000 {
[all …]
Domap-usb.txt48 * "ti,dwc3" for OMAP5 and DRA7
49 * "ti,am437x-dwc3" for AM437x
60 - extcon : phandle for the extcon device omap dwc3 uses to detect
65 The dwc3 core should be added as subnode to omap dwc3 glue.
66 - dwc3 :
67 The binding details of dwc3 can be found in:
68 Documentation/devicetree/bindings/usb/snps,dwc3.yaml
71 compatible = "ti,dwc3";
Ddwc3-xilinx.txt4 - compatible: May contain "xlnx,zynqmp-dwc3" or "xlnx,versal-dwc3"
20 the node is not important. The content of the node is defined in dwc3.txt.
22 Optional properties for snps,dwc3:
36 compatible = "xlnx,zynqmp-dwc3";
46 dwc3@fe200000 {
47 compatible = "snps,dwc3";
Dexynos-usb.txt93 The dwc3 core should be added as subnode to Exynos dwc3 glue.
94 - dwc3 :
95 The binding details of dwc3 can be found in:
96 Documentation/devicetree/bindings/usb/snps,dwc3.yaml
109 dwc3 {
110 compatible = "synopsys,dwc3";
Ddwc3-cavium.txt8 the node is not important. The content of the node is defined in dwc3.txt.
23 compatible = "cavium,octeon-7130-xhci", "synopsys,dwc3";
/Linux-v5.15/Documentation/driver-api/usb/
Dindex.rst19 dwc3
/Linux-v5.15/arch/arm/boot/dts/
Duniphier-pro4.dtsi507 compatible = "socionext,uniphier-dwc3", "snps,dwc3";
522 compatible = "socionext,uniphier-pro4-dwc3-glue",
560 compatible = "socionext,uniphier-dwc3", "snps,dwc3";
575 compatible = "socionext,uniphier-pro4-dwc3-glue",
Dkeystone-k2g.dtsi504 keystone_usb0: keystone-dwc3@2680000 {
505 compatible = "ti,keystone-dwc3";
517 compatible = "snps,dwc3";
527 keystone_usb1: keystone-dwc3@2580000 {
528 compatible = "ti,keystone-dwc3";
540 compatible = "snps,dwc3";
Dqcom-ipq4019.dtsi640 compatible = "qcom,dwc3";
651 dwc3@8a00000 {
652 compatible = "snps,dwc3";
672 compatible = "qcom,dwc3";
683 dwc3@6000000 {
684 compatible = "snps,dwc3";
/Linux-v5.15/Documentation/usb/
Dindex.rst11 dwc3

1234