| /linux-6.15/drivers/usb/dwc2/ |
| H A D | core_intr.c | 95 dev_dbg(hsotg->dev, in dwc2_handle_otg_intr() 144 dev_dbg(hsotg->dev, in dwc2_handle_otg_intr() 217 dev_dbg(hsotg->dev, in dwc2_handle_otg_intr() 222 hsotg->op_state); in dwc2_handle_otg_intr() 240 dev_dbg(hsotg->dev, in dwc2_handle_otg_intr() 277 if (hsotg->wq_otg) in dwc2_handle_conn_id_status_change_intr() 278 queue_work(hsotg->wq_otg, &hsotg->wf_otg); in dwc2_handle_conn_id_status_change_intr() 301 hsotg->lx_state); in dwc2_handle_session_req_intr() 422 dev_dbg(hsotg->dev, "%s lxstate = %d\n", __func__, hsotg->lx_state); in dwc2_handle_wakeup_detected_intr() 859 hsotg->frame_number = (dwc2_readl(hsotg, DSTS) in dwc2_handle_common_intr() [all …]
|
| H A D | core.c | 44 gr = &hsotg->gr_backup; in dwc2_backup_global_registers() 77 gr = &hsotg->gr_backup; in dwc2_restore_global_registers() 113 gr = &hsotg->gr_backup; in dwc2_exit_partial_power_down() 155 gr = &hsotg->gr_backup; in dwc2_restore_essential_regs() 156 dr = &hsotg->dr_backup; in dwc2_restore_essential_regs() 157 hr = &hsotg->hr_backup; in dwc2_restore_essential_regs() 273 dev_dbg(hsotg->dev, in dwc2_hib_restore_common() 337 if (!dwc2_hw_is_otg(hsotg)) in dwc2_iddig_filter_enabled() 579 switch (hsotg->dr_mode) { in dwc2_force_dr_mode() 1042 dev_err(hsotg->dev, in dwc2_fs_phy_init() [all …]
|
| H A D | platform.c | 56 hsotg->dr_mode = usb_get_dr_mode(hsotg->dev); in dwc2_get_dr_mode() 118 } else if (hsotg->plat && hsotg->plat->phy_init) { in __dwc2_lowlevel_hw_enable() 119 ret = hsotg->plat->phy_init(pdev, hsotg->plat->phy_type); in __dwc2_lowlevel_hw_enable() 171 } else if (hsotg->plat && hsotg->plat->phy_exit) { in __dwc2_lowlevel_hw_disable() 241 hsotg->phy = devm_phy_get(hsotg->dev, "usb2-phy"); in dwc2_lowlevel_hw_init() 269 hsotg->plat = dev_get_platdata(hsotg->dev); in dwc2_lowlevel_hw_init() 272 hsotg->clk = devm_clk_get_optional(hsotg->dev, "otg"); in dwc2_lowlevel_hw_init() 443 if (!hsotg) in dwc2_driver_probe() 523 retval = devm_request_irq(hsotg->dev, hsotg->irq, in dwc2_driver_probe() 525 dev_name(hsotg->dev), hsotg); in dwc2_driver_probe() [all …]
|
| H A D | hcd.c | 63 if (dwc2_is_device_mode(hsotg) && hsotg->params.lpm) in dwc2_enable_common_interrupts() 780 if ((hsotg->params.g_dma && !hsotg->params.g_dma_desc) || in dwc2_hc_halt() 1659 queue_delayed_work(hsotg->wq_otg, &hsotg->start_work, in dwc2_hcd_start() 2046 dev_dbg(hsotg->dev, "%s(%p)\n", __func__, hsotg); in dwc2_core_init() 2133 dev_dbg(hsotg->dev, "%s(%p)\n", __func__, hsotg); in dwc2_core_host_init() 3188 if (hsotg->in_ppd && hsotg->lx_state == DWC2_L2) in dwc2_conn_id_status_change() 4199 dev_dbg(hsotg->dev, "%s() %p\n", __func__, hsotg); in dwc2_hcd_start_func() 4948 queue_work(hsotg->wq_otg, &hsotg->wf_otg); in dwc2_change_bus_speed() 5035 dwc2_qh_list_free(hsotg, &hsotg->periodic_sched_ready); in dwc2_hcd_free() 5037 dwc2_qh_list_free(hsotg, &hsotg->periodic_sched_queued); in dwc2_hcd_free() [all …]
|
| H A D | gadget.c | 323 dwc2_writel(hsotg, (hsotg->params.g_rx_fifo_size << in dwc2_hsotg_init_fifo() 3328 kill_all_requests(hsotg, hsotg->eps_in[ep], in dwc2_hsotg_disconnect() 3331 kill_all_requests(hsotg, hsotg->eps_out[ep], in dwc2_hsotg_disconnect() 3496 dwc2_writel(hsotg, ((hsotg->dedicated_fifos && !using_dma(hsotg)) ? in dwc2_hsotg_core_init_disconnected() 4886 hsotg->eps_in[0] = devm_kzalloc(hsotg->dev, in dwc2_hsotg_hw_cfg() 4892 hsotg->eps_out[0] = hsotg->eps_in[0]; in dwc2_hsotg_hw_cfg() 4899 hsotg->eps_in[i] = devm_kzalloc(hsotg->dev, in dwc2_hsotg_hw_cfg() 4906 hsotg->eps_out[i] = devm_kzalloc(hsotg->dev, in dwc2_hsotg_hw_cfg() 5021 hsotg->ctrl_buff = devm_kzalloc(hsotg->dev, in dwc2_gadget_init() 5026 hsotg->ep0_buff = devm_kzalloc(hsotg->dev, in dwc2_gadget_init() [all …]
|
| H A D | drd.c | 38 dwc2_force_mode(hsotg, (hsotg->dr_mode == USB_DR_MODE_HOST) || in dwc2_ovr_init() 113 if (!hsotg->ll_hw_enabled && hsotg->clk) { in dwc2_drd_role_sw_set() 163 if (!hsotg->ll_hw_enabled && hsotg->clk) in dwc2_drd_role_sw_set() 182 hsotg->role_sw_default_mode = usb_get_role_switch_default_mode(hsotg->dev); in dwc2_drd_init() 191 dev_err(hsotg->dev, in dwc2_drd_init() 196 hsotg->role_sw = role_sw; in dwc2_drd_init() 199 dwc2_ovr_init(hsotg); in dwc2_drd_init() 208 if (hsotg->role_sw && !hsotg->params.external_id_pin_ctl) { in dwc2_drd_suspend() 222 if (hsotg->role_sw) { in dwc2_drd_resume() 246 if (hsotg->role_sw && !hsotg->params.external_id_pin_ctl) { in dwc2_drd_resume() [all …]
|
| H A D | hcd_intr.c | 45 hsotg->frame_num_array[hsotg->frame_num_idx] = in dwc2_track_missed_sofs() 47 hsotg->last_frame_num_array[hsotg->frame_num_idx] = in dwc2_track_missed_sofs() 49 hsotg->frame_num_idx++; in dwc2_track_missed_sofs() 123 hsotg->frame_number = dwc2_hcd_get_frame_number(hsotg); in dwc2_sof_intr() 202 dev_err(hsotg->dev, in dwc2_rx_fifo_level_intr() 244 dev_vdbg(hsotg->dev, "%s(%p)\n", __func__, hsotg); in dwc2_hprt0_enable() 312 queue_delayed_work(hsotg->wq_otg, &hsotg->reset_work, in dwc2_hprt0_enable() 349 dev_vdbg(hsotg->dev, in dwc2_port_intr() 366 dev_vdbg(hsotg->dev, in dwc2_port_intr() 390 dev_vdbg(hsotg->dev, in dwc2_port_intr() [all …]
|
| H A D | params.c | 412 if (dwc2_is_fs_iot(hsotg)) in dwc2_set_param_phy_type() 425 if (dwc2_is_fs_iot(hsotg)) in dwc2_set_param_speed() 428 if (dwc2_is_hs_iot(hsotg)) in dwc2_set_param_speed() 431 hsotg->params.speed = val; in dwc2_set_param_speed() 441 if (hsotg->phy) { in dwc2_set_param_phy_utmi_width() 613 if (hsotg->params.otg_caps.hnp_support && hsotg->params.otg_caps.srp_support) { in dwc2_check_param_otg_cap() 728 dev_dbg(hsotg->dev, in dwc2_check_param_power_down() 735 dev_dbg(hsotg->dev, in dwc2_check_param_power_down() 740 dev_err(hsotg->dev, in dwc2_check_param_power_down() 1043 set_params(hsotg); in dwc2_init_params() [all …]
|
| H A D | core.h | 30 #define dwc2_sch_dbg(hsotg, fmt, ...) \ argument 32 dev_name(hsotg->dev), ##__VA_ARGS__) 35 #define dwc2_sch_vdbg(hsotg, fmt, ...) \ argument 37 dev_name(hsotg->dev), ##__VA_ARGS__) 1235 val = readl(hsotg->regs + offset); in dwc2_readl() 1236 if (hsotg->needs_byte_swap) in dwc2_readl() 1244 if (hsotg->needs_byte_swap) in dwc2_writel() 1261 u32 x = dwc2_readl(hsotg, offset); in dwc2_readl_rep() 1425 #define dwc2_is_device_connected(hsotg) (hsotg->connected) argument 1426 #define dwc2_is_device_enabled(hsotg) (hsotg->enabled) argument [all …]
|
| H A D | hcd_ddma.c | 116 if (hsotg->frame_list) in dwc2_frame_list_alloc() 120 hsotg->frame_list = kzalloc(hsotg->frame_list_sz, GFP_ATOMIC | GFP_DMA); in dwc2_frame_list_alloc() 124 hsotg->frame_list_dma = dma_map_single(hsotg->dev, hsotg->frame_list, in dwc2_frame_list_alloc() 142 dma_unmap_single(hsotg->dev, hsotg->frame_list_dma, in dwc2_frame_list_free() 165 dwc2_writel(hsotg, hsotg->frame_list_dma, HFLBADDR); in dwc2_per_sched_enable() 206 if (!hsotg) { in dwc2_update_frame_list() 218 hsotg->frame_list); in dwc2_update_frame_list() 318 dev_err(hsotg->dev, in dwc2_hcd_qh_init_ddma() 379 !hsotg->periodic_channels) && hsotg->frame_list) { in dwc2_hcd_qh_free_ddma() 403 hsotg->frame_number = dwc2_hcd_get_frame_number(hsotg); in dwc2_calc_starting_frame() [all …]
|
| H A D | hcd_queue.c | 54 if ((hsotg->periodic_channels + hsotg->non_periodic_channels < in dwc2_periodic_channel_available() 58 dev_dbg(hsotg->dev, in dwc2_periodic_channel_available() 61 hsotg->periodic_channels, hsotg->non_periodic_channels); in dwc2_periodic_channel_available() 103 dev_err(hsotg->dev, in dwc2_check_periodic_bandwidth() 470 dwc2_sch_dbg(hsotg, in dwc2_qh_schedule_print() 486 dwc2_sch_dbg(hsotg, in dwc2_qh_schedule_print() 1154 dev_dbg(hsotg->dev, in dwc2_do_reserve() 1219 struct dwc2_hsotg *hsotg = qh->hsotg; in dwc2_unreserve_timer_fn() local 1273 dev_err(hsotg->dev, in dwc2_check_max_xfer_size() 1407 struct dwc2_hsotg *hsotg = qh->hsotg; in dwc2_wait_timer_fn() local [all …]
|
| H A D | debugfs.c | 132 dwc2_readl(hsotg, DCFG), in state_show() 133 dwc2_readl(hsotg, DCTL), in state_show() 134 dwc2_readl(hsotg, DSTS)); in state_show() 137 dwc2_readl(hsotg, DIEPMSK), dwc2_readl(hsotg, DOEPMSK)); in state_show() 297 root = hsotg->debug_root; in dwc2_hsotg_create_debug() 316 ep = hsotg->eps_in[epidx]; in dwc2_hsotg_create_debug() 781 hsotg->debug_root = root; in dwc2_debugfs_init() 790 hsotg->regset = devm_kzalloc(hsotg->dev, sizeof(*hsotg->regset), in dwc2_debugfs_init() 792 if (!hsotg->regset) { in dwc2_debugfs_init() 799 hsotg->regset->base = hsotg->regs; in dwc2_debugfs_init() [all …]
|
| H A D | hcd.h | 312 struct dwc2_hsotg *hsotg; member 424 struct dwc2_hsotg *hsotg; member 434 return (struct usb_hcd *)hsotg->priv; in dwc2_hsotg_to_hcd() 446 u32 mask = dwc2_readl(hsotg, HCINTMSK(chnum)); in disable_hc_int() 449 dwc2_writel(hsotg, mask, HCINTMSK(chnum)); in disable_hc_int() 464 u32 hprt0 = dwc2_readl(hsotg, HPRT0); in dwc2_read_hprt0() 525 int dwc2_hcd_init(struct dwc2_hsotg *hsotg); 530 struct dwc2_hsotg *hsotg); 665 return dwc2_readl(hsotg, GINTSTS) & in dwc2_read_core_intr() 666 dwc2_readl(hsotg, GINTMSK); in dwc2_read_core_intr() [all …]
|
| H A D | debug.h | 12 int dwc2_debugfs_init(struct dwc2_hsotg *hsotg); 13 void dwc2_debugfs_exit(struct dwc2_hsotg *hsotg); 15 static inline int dwc2_debugfs_init(struct dwc2_hsotg *hsotg) in dwc2_debugfs_init() argument 17 static inline void dwc2_debugfs_exit(struct dwc2_hsotg *hsotg) in dwc2_debugfs_exit() argument
|
| /linux-6.15/Documentation/devicetree/bindings/usb/ |
| H A D | dwc2.yaml | 57 - intel,socfpga-agilex-hsotg 64 - const: st,stm32f4x9-hsotg 65 - const: st,stm32f7-hsotg 68 - const: st,stm32mp15-hsotg 70 - const: samsung,s3c6400-hsotg 71 - const: intel,socfpga-agilex-hsotg
|
| /linux-6.15/arch/arm/boot/dts/samsung/ |
| H A D | exynos4412-odroidx.dts | 109 &hsotg {
|
| H A D | exynos4412-odroidu3.dts | 131 &hsotg {
|
| H A D | s5pv210-smdkv210.dts | 198 &hsotg {
|
| H A D | exynos4412-itop-elite.dts | 172 &hsotg {
|
| H A D | s5pv210.dtsi | 406 hsotg: usb@ec000000 { label 407 compatible = "samsung,s3c6400-hsotg";
|
| H A D | exynos4210-origen.dts | 167 &hsotg {
|
| H A D | s5pv210-aquila.dts | 360 &hsotg {
|
| H A D | s5pv210-goni.dts | 339 &hsotg {
|
| H A D | exynos3250.dtsi | 540 hsotg: usb@12480000 { label 541 compatible = "samsung,s3c6400-hsotg";
|
| /linux-6.15/arch/arm64/boot/dts/intel/ |
| H A D | socfpga_agilex.dtsi | 537 compatible = "intel,socfpga-agilex-hsotg", "snps,dwc2"; 551 compatible = "intel,socfpga-agilex-hsotg", "snps,dwc2";
|