| /OK3568_Linux_fs/kernel/include/linux/usb/ |
| H A D | otg.h | 2 /* USB OTG (On The Go) defines */ 29 int (*set_host)(struct usb_otg *otg, struct usb_bus *host); 32 int (*set_peripheral)(struct usb_otg *otg, 36 int (*set_vbus)(struct usb_otg *otg, bool enabled); 39 int (*start_srp)(struct usb_otg *otg); 42 int (*start_hnp)(struct usb_otg *otg); 48 * struct usb_otg_caps - describes the otg capabilities of the device 49 * @otg_rev: The OTG revision number the device is compliant with, it's 66 otg_start_hnp(struct usb_otg *otg) in otg_start_hnp() argument 68 if (otg && otg->start_hnp) in otg_start_hnp() [all …]
|
| H A D | otg-fsm.h | 29 #define OTG_STS_SELECTOR 0xF000 /* OTG status selector, according to 30 * OTG and EH 2.0 Chapter 6.2.3 35 * OTG and EH 2.0 Charpter 6.2.3 42 /* Standard OTG timers */ 62 * struct otg_fsm - OTG state machine according to the OTG spec 64 * OTG hardware Inputs 70 * @power_up: TRUE when the OTG device first powers up its USB system and 89 * @test_device: TRUE when the B-device switches to B-Host and detects an OTG 101 * Auxilary inputs (OTG v1.3 only. Obsolete now.) 108 * OTG Output status. Read only for users. Updated by OTG FSM helpers defined [all …]
|
| /OK3568_Linux_fs/kernel/drivers/gpu/drm/amd/display/dc/dcn30/ |
| H A D | dcn30_optc.h | 33 SRI(OTG_VSTARTUP_PARAM, OTG, inst),\ 34 SRI(OTG_VUPDATE_PARAM, OTG, inst),\ 35 SRI(OTG_VREADY_PARAM, OTG, inst),\ 36 SRI(OTG_MASTER_UPDATE_LOCK, OTG, inst),\ 37 SRI(OTG_GLOBAL_CONTROL0, OTG, inst),\ 38 SRI(OTG_GLOBAL_CONTROL1, OTG, inst),\ 39 SRI(OTG_GLOBAL_CONTROL2, OTG, inst),\ 40 SRI(OTG_GLOBAL_CONTROL4, OTG, inst),\ 41 SRI(OTG_DOUBLE_BUFFER_CONTROL, OTG, inst),\ 42 SRI(OTG_H_TOTAL, OTG, inst),\ [all …]
|
| /OK3568_Linux_fs/kernel/drivers/usb/phy/ |
| H A D | phy-isp1301-omap.c | 3 * isp1301_omap - ISP 1301 USB transceiver, talking to OMAP OTG controller 19 #include <linux/usb/otg.h> 36 MODULE_DESCRIPTION("ISP1301 USB OTG Transceiver Driver"); 55 # define WORK_UPDATE_ISP 0 /* update ISP from OTG */ 56 # define WORK_UPDATE_OTG 1 /* update OTG from ISP */ 111 * unless the OTG port is used only in B-peripheral mode. in enable_vbus_draw() 125 /* products will deliver OTG messages with LEDs, GUI, etc */ 128 printk(KERN_NOTICE "OTG device not responding.\n"); in notresponding() 224 return usb_otg_state_string(isp->phy.otg->state); in state_name() 234 * while OTG is running. [all …]
|
| H A D | phy-mv-usb.c | 21 #include <linux/usb/otg.h> 28 #define DRIVER_DESC "Marvell USB OTG transceiver driver" 33 static const char driver_name[] = "mv-otg"; 52 static int mv_otg_set_vbus(struct usb_otg *otg, bool on) in mv_otg_set_vbus() argument 54 struct mv_otg *mvotg = container_of(otg->usb_phy, struct mv_otg, phy); in mv_otg_set_vbus() 61 static int mv_otg_set_host(struct usb_otg *otg, in mv_otg_set_host() argument 64 otg->host = host; in mv_otg_set_host() 69 static int mv_otg_set_peripheral(struct usb_otg *otg, in mv_otg_set_peripheral() argument 72 otg->gadget = gadget; in mv_otg_set_peripheral() 194 struct usb_otg *otg = mvotg->phy.otg; in mv_otg_start_host() local [all …]
|
| H A D | phy-fsl-usb.c | 43 #define DRIVER_DESC "Freescale USB OTG Transceiver Driver" 46 static const char driver_name[] = "fsl-usb2-otg"; 114 /* Operations that will be called from OTG Finite State Machine */ 258 if ((fsl_otg_dev->phy.otg->state == OTG_STATE_B_SRP_INIT) && in b_srp_end() 271 if (!fsl_otg_dev->phy.otg->host->b_hnp_enable) in a_wait_enum() 459 struct usb_otg *otg = fsm->otg; in fsl_otg_start_host() local 462 container_of(otg->usb_phy, struct fsl_otg, phy); in fsl_otg_start_host() 465 if (!otg->host) in fsl_otg_start_host() 467 dev = otg->host->controller; in fsl_otg_start_host() 526 struct usb_otg *otg = fsm->otg; in fsl_otg_start_gadget() local [all …]
|
| H A D | phy-tahvo.c | 21 #include <linux/usb/otg.h> 77 switch (tu->phy.otg->state) { in check_vbus_state() 80 if (tu->phy.otg->gadget) in check_vbus_state() 81 usb_gadget_vbus_connect(tu->phy.otg->gadget); in check_vbus_state() 82 tu->phy.otg->state = OTG_STATE_B_PERIPHERAL; in check_vbus_state() 90 tu->phy.otg->state = OTG_STATE_A_HOST; in check_vbus_state() 97 switch (tu->phy.otg->state) { in check_vbus_state() 99 if (tu->phy.otg->gadget) in check_vbus_state() 100 usb_gadget_vbus_disconnect(tu->phy.otg->gadget); in check_vbus_state() 101 tu->phy.otg->state = OTG_STATE_B_IDLE; in check_vbus_state() [all …]
|
| H A D | phy-generic.c | 18 #include <linux/usb/otg.h> 104 struct usb_otg *otg = nop->phy.otg; in nop_gpio_vbus_thread() local 114 otg->state = OTG_STATE_B_PERIPHERAL; in nop_gpio_vbus_thread() 117 /* drawing a "unit load" is *always* OK, except for OTG */ in nop_gpio_vbus_thread() 121 otg->gadget); in nop_gpio_vbus_thread() 126 otg->state = OTG_STATE_B_IDLE; in nop_gpio_vbus_thread() 130 otg->gadget); in nop_gpio_vbus_thread() 173 static int nop_set_peripheral(struct usb_otg *otg, struct usb_gadget *gadget) in nop_set_peripheral() argument 175 if (!otg) in nop_set_peripheral() 179 otg->gadget = NULL; in nop_set_peripheral() [all …]
|
| H A D | phy-ulpi.c | 17 #include <linux/usb/otg.h> 199 static int ulpi_set_host(struct usb_otg *otg, struct usb_bus *host) in ulpi_set_host() argument 201 struct usb_phy *phy = otg->usb_phy; in ulpi_set_host() 205 otg->host = NULL; in ulpi_set_host() 209 otg->host = host; in ulpi_set_host() 225 static int ulpi_set_vbus(struct usb_otg *otg, bool on) in ulpi_set_vbus() argument 227 struct usb_phy *phy = otg->usb_phy; in ulpi_set_vbus() 243 static void otg_ulpi_init(struct usb_phy *phy, struct usb_otg *otg, in otg_ulpi_init() argument 250 phy->otg = otg; in otg_ulpi_init() 253 otg->usb_phy = phy; in otg_ulpi_init() [all …]
|
| H A D | phy-gpio-vbus-usb.c | 20 #include <linux/usb/otg.h> 98 if (!gpio_vbus->phy.otg->gadget) in gpio_vbus_work() 114 gpio_vbus->phy.otg->state = OTG_STATE_B_PERIPHERAL; in gpio_vbus_work() 116 usb_gadget_vbus_connect(gpio_vbus->phy.otg->gadget); in gpio_vbus_work() 118 /* drawing a "unit load" is *always* OK, except for OTG */ in gpio_vbus_work() 126 status, gpio_vbus->phy.otg->gadget); in gpio_vbus_work() 135 usb_gadget_vbus_disconnect(gpio_vbus->phy.otg->gadget); in gpio_vbus_work() 137 gpio_vbus->phy.otg->state = OTG_STATE_B_IDLE; in gpio_vbus_work() 141 status, gpio_vbus->phy.otg->gadget); in gpio_vbus_work() 151 struct usb_otg *otg = gpio_vbus->phy.otg; in gpio_vbus_irq() local [all …]
|
| H A D | Kconfig | 19 Enable this to support the USB OTG transceiver in AB8500 chip. 24 tristate "Freescale USB OTG Transceiver Driver" 29 Enable this to support Freescale USB OTG transceiver. 32 tristate "Philips ISP1301 with OMAP OTG" 39 USB-On-The-Go transceiver working with the OMAP OTG controller. 84 Enable this to support the USB OTG transceiver on TWL6030 86 and OTG SRP events capabilities. For all other transceiver functionality 103 tristate "OMAP USB OTG controller driver" 106 Enable this to support some transceivers on OMAP1 platforms. OTG 110 will be called phy-omap-otg. [all …]
|
| /OK3568_Linux_fs/kernel/drivers/gpu/drm/amd/display/dc/dcn10/ |
| H A D | dcn10_optc.h | 35 SRI(OTG_VSTARTUP_PARAM, OTG, inst),\ 36 SRI(OTG_VUPDATE_PARAM, OTG, inst),\ 37 SRI(OTG_VREADY_PARAM, OTG, inst),\ 38 SRI(OTG_BLANK_CONTROL, OTG, inst),\ 39 SRI(OTG_MASTER_UPDATE_LOCK, OTG, inst),\ 40 SRI(OTG_GLOBAL_CONTROL0, OTG, inst),\ 41 SRI(OTG_DOUBLE_BUFFER_CONTROL, OTG, inst),\ 42 SRI(OTG_H_TOTAL, OTG, inst),\ 43 SRI(OTG_H_BLANK_START_END, OTG, inst),\ 44 SRI(OTG_H_SYNC_A, OTG, inst),\ [all …]
|
| /OK3568_Linux_fs/kernel/Documentation/devicetree/bindings/usb/ |
| H A D | usb-drd.yaml | 7 title: Generic USB OTG Controller Device Tree Bindings 13 otg-rev: 15 Tells usb driver the release number of the OTG and EH supplement with 17 decimal (i.e. 2.0 is 0200H). This property is used if any real OTG 18 features (HNP/SRP/ADP) is enabled. If ADP is required, otg-rev should be 26 should default to OTG. 28 enum: [host, peripheral, otg] 32 Tells OTG controllers we want to disable OTG HNP. Normally HNP is the 33 basic function of real OTG except you want it to be a srp-capable only B 39 Tells OTG controllers we want to disable OTG SRP. SRP is optional for OTG [all …]
|
| H A D | msm-hsusb.txt | 18 USB PHY with optional OTG: 22 "qcom,usb-otg-ci" for chipsets with ChipIdea 45nm PHY 23 "qcom,usb-otg-snps" for chipsets with Synopsys 28nm PHY 26 - interrupts: interrupt-specifier for the OTG interrupt. 48 - qcom,otg-control: OTG control (VBUS and ID notifications) can be one of 53 - dr_mode: One of "host", "peripheral" or "otg". Defaults to "otg" 87 Example HSUSB OTG controller device node: 90 compatible = "qcom,usb-otg-snps"; 107 qcom,otg-control = <1>;
|
| /OK3568_Linux_fs/u-boot/drivers/usb/host/ |
| H A D | ohci-lpc32xx.c | 22 /* OTG I2C controller module register structures */ 24 u32 otg_i2c_txrx; /* OTG I2C Tx/Rx Data FIFO */ 25 u32 otg_i2c_stat; /* OTG I2C Status Register */ 26 u32 otg_i2c_ctrl; /* OTG I2C Control Register */ 27 u32 otg_i2c_clk_hi; /* OTG I2C Clock Divider high */ 28 u32 otg_i2c_clk_lo; /* OTG I2C Clock Divider low */ 31 /* OTG controller module register structures */ 34 u32 otg_int_sts; /* OTG int status register */ 35 u32 otg_int_enab; /* OTG int enable register */ 36 u32 otg_int_set; /* OTG int set register */ [all …]
|
| /OK3568_Linux_fs/kernel/drivers/gpu/drm/amd/include/ivsrcid/dcn/ |
| H A D | irqsrcs_dcn_1_0.h | 528 #define DCN_1_0__SRCID__OTG1_CPU_SS_INT 0x17 // D1: OTG Static Screen interrupt OTG… 531 #define DCN_1_0__SRCID__OTG1_RANGE_TIMING_UPDATE 0x17 // D1 : OTG range timing OTG1_IHC_RANGE_T… 534 #define DCN_1_0__SRCID__OTG2_CPU_SS_INT 0x17 // D2 : OTG Static Screen interrupt OTG2_IHC_CPU_SS_IN… 537 #define DCN_1_0__SRCID__OTG2_RANGE_TIMING_UPDATE 0x17 // D2 : OTG range timing OTG2_IHC_RANGE_TIMIN… 540 #define DCN_1_0__SRCID__OTG3_CPU_SS_INT 0x17 // D3 : OTG Static Screen interrupt OTG3_IHC_CPU_SS_IN… 543 #define DCN_1_0__SRCID__OTG3_RANGE_TIMING_UPDATE 0x17 // D3 : OTG range timing OTG3_IHC_RANGE_TIMIN… 546 #define DCN_1_0__SRCID__OTG4_CPU_SS_INT 0x17 // D4 : OTG Static Screen interrupt OTG4_IHC_CPU_SS_IN… 549 #define DCN_1_0__SRCID__OTG4_RANGE_TIMING_UPDATE 0x17 // D4 : OTG range timing OTG4_IHC_RANGE_TIMIN… 552 #define DCN_1_0__SRCID__OTG5_CPU_SS_INT 0x17 // D5 : OTG Static Screen interrupt OTG5_IHC_CPU_SS_IN… 555 #define DCN_1_0__SRCID__OTG5_RANGE_TIMING_UPDATE 0x17 // D5 : OTG range timing OTG5_IHC_RANGE_TIMIN… [all …]
|
| /OK3568_Linux_fs/kernel/drivers/phy/samsung/ |
| H A D | phy-exynos5250-usb2.c | 201 u32 otg; in exynos5250_power_on() local 213 /* OTG configuration */ in exynos5250_power_on() 214 otg = readl(drv->reg_phy + EXYNOS_5250_USBOTGSYS); in exynos5250_power_on() 216 otg &= ~EXYNOS_5250_USBOTGSYS_FSEL_MASK; in exynos5250_power_on() 217 otg |= drv->ref_reg_val << EXYNOS_5250_USBOTGSYS_FSEL_SHIFT; in exynos5250_power_on() 219 otg &= ~(EXYNOS_5250_USBOTGSYS_FORCE_SUSPEND | in exynos5250_power_on() 222 otg |= EXYNOS_5250_USBOTGSYS_PHY_SW_RST | in exynos5250_power_on() 227 otg &= ~EXYNOS_5250_USBOTGSYS_REFCLKSEL_MASK; in exynos5250_power_on() 228 otg |= EXYNOS_5250_REFCLKSEL_CLKCORE << in exynos5250_power_on() 230 writel(otg, drv->reg_phy + EXYNOS_5250_USBOTGSYS); in exynos5250_power_on() [all …]
|
| /OK3568_Linux_fs/kernel/arch/arm/mach-pxa/ |
| H A D | pxa3xx-ulpi.c | 23 #include <linux/usb/otg.h> 33 struct usb_phy *otg; member 79 static int pxa310_ulpi_read(struct usb_phy *otg, u32 reg) in pxa310_ulpi_read() argument 98 static int pxa310_ulpi_write(struct usb_phy *otg, u32 val, u32 reg) in pxa310_ulpi_write() argument 126 /* setup OTG sync mode */ in pxa310_otg_transceiver_rtsm() 139 err = usb_phy_init(u2d->otg); in pxa310_start_otg_host_transcvr() 141 pr_err("OTG transceiver init failed"); in pxa310_start_otg_host_transcvr() 145 err = otg_set_vbus(u2d->otg->otg, 1); in pxa310_start_otg_host_transcvr() 147 pr_err("OTG transceiver VBUS set failed"); in pxa310_start_otg_host_transcvr() 151 err = otg_set_host(u2d->otg->otg, host); in pxa310_start_otg_host_transcvr() [all …]
|
| /OK3568_Linux_fs/kernel/drivers/gpu/drm/amd/display/dc/dce/ |
| H A D | dce_clock_source.h | 72 SRII(PIXEL_RATE_CNTL, OTG, 0),\ 73 SRII(PIXEL_RATE_CNTL, OTG, 1),\ 74 SRII(PIXEL_RATE_CNTL, OTG, 2),\ 75 SRII(PIXEL_RATE_CNTL, OTG, 3),\ 76 SRII(PIXEL_RATE_CNTL, OTG, 4),\ 77 SRII(PIXEL_RATE_CNTL, OTG, 5) 89 SRII(PIXEL_RATE_CNTL, OTG, 0),\ 90 SRII(PIXEL_RATE_CNTL, OTG, 1),\ 91 SRII(PIXEL_RATE_CNTL, OTG, 2),\ 92 SRII(PIXEL_RATE_CNTL, OTG, 3) [all …]
|
| /OK3568_Linux_fs/kernel/drivers/usb/common/ |
| H A D | usb-otg-fsm.c | 3 * OTG Finite State Machine from OTG spec 18 #include <linux/usb/otg.h> 19 #include <linux/usb/otg-fsm.h> 74 if (fsm->otg->gadget) in otg_leave_state() 75 fsm->otg->gadget->host_request_flag = 0; in otg_leave_state() 105 if (fsm->otg->gadget) in otg_leave_state() 106 fsm->otg->gadget->host_request_flag = 0; in otg_leave_state() 125 enum usb_otg_state state = fsm->otg->state; in otg_hnp_polling_work() 132 udev = usb_hub_find_child(fsm->otg->host->root_hub, 1); in otg_hnp_polling_work() 134 dev_err(fsm->otg->host->controller, in otg_hnp_polling_work() [all …]
|
| /OK3568_Linux_fs/u-boot/drivers/usb/musb/ |
| H A D | omap3.c | 34 * OMAP3 USB OTG registers. 45 static struct omap3_otg_regs *otg; variable 71 l = readl(&otg->revision); in musb_db_otg_regs() 73 l = readl(&otg->sysconfig); in musb_db_otg_regs() 75 l = readl(&otg->sysstatus); in musb_db_otg_regs() 77 l = readl(&otg->interfsel); in musb_db_otg_regs() 79 l = readl(&otg->forcestdby); in musb_db_otg_regs() 107 otg = (struct omap3_otg_regs *)OMAP3_OTG_BASE; in musb_platform_init() 109 /* Set OTG to always be on */ in musb_platform_init() 111 OMAP3_OTG_SYSCONFIG_NO_IDLE_MODE, &otg->sysconfig); in musb_platform_init() [all …]
|
| /OK3568_Linux_fs/kernel/drivers/usb/musb/ |
| H A D | musb_virthub.c | 3 * MUSB OTG driver virtual root hub support 46 musb->xceiv->otg->state = OTG_STATE_A_HOST; in musb_host_finish_resume() 53 struct usb_otg *otg = musb->xceiv->otg; in musb_port_suspend() local 88 switch (musb->xceiv->otg->state) { in musb_port_suspend() 90 musb->xceiv->otg->state = OTG_STATE_A_SUSPEND; in musb_port_suspend() 91 musb->is_active = otg->host->b_hnp_enable; in musb_port_suspend() 99 musb->xceiv->otg->state = OTG_STATE_B_WAIT_ACON; in musb_port_suspend() 100 musb->is_active = otg->host->b_hnp_enable; in musb_port_suspend() 105 usb_otg_state_string(musb->xceiv->otg->state)); in musb_port_suspend() 126 if (musb->xceiv->otg->state == OTG_STATE_B_IDLE) { in musb_port_reset() [all …]
|
| /OK3568_Linux_fs/kernel/drivers/phy/ti/ |
| H A D | phy-dm816x-usb.c | 32 * phy as being SR70LX Synopsys USB 2.0 OTG nanoPHY. It also seems at 62 static int dm816x_usb_phy_set_host(struct usb_otg *otg, struct usb_bus *host) in dm816x_usb_phy_set_host() argument 64 otg->host = host; in dm816x_usb_phy_set_host() 66 otg->state = OTG_STATE_UNDEFINED; in dm816x_usb_phy_set_host() 71 static int dm816x_usb_phy_set_peripheral(struct usb_otg *otg, in dm816x_usb_phy_set_peripheral() argument 74 otg->gadget = gadget; in dm816x_usb_phy_set_peripheral() 76 otg->state = OTG_STATE_UNDEFINED; in dm816x_usb_phy_set_peripheral() 189 struct usb_otg *otg; in dm816x_usb_phy_probe() local 221 otg = devm_kzalloc(&pdev->dev, sizeof(*otg), GFP_KERNEL); in dm816x_usb_phy_probe() 222 if (!otg) in dm816x_usb_phy_probe() [all …]
|
| /OK3568_Linux_fs/kernel/Documentation/driver-api/usb/ |
| H A D | gadget.rst | 28 - USB "On-The-Go" (OTG) support, in conjunction with updates to the 32 API. This helps the OTG support, and looks forward to more-symmetric 151 OTG-capable systems will also need to include a standard Linux-USB host 153 (HCDs), *USB Device Drivers* to support the OTG "Targeted Peripheral 154 List", and so forth. There will also be an *OTG Controller Driver*, 157 new OTG protocols (HNP and SRP). Roles switch (host to peripheral, or 262 configurations, unless the hardware prevents such operation. For OTG 263 devices, each configuration descriptor includes an OTG descriptor. 271 allowed by that configuration. For OTG devices, setting a 296 Note that the lifecycle above can be slightly different for OTG devices. [all …]
|
| /OK3568_Linux_fs/kernel/Documentation/devicetree/bindings/phy/ |
| H A D | phy-rockchip-naneng-usb2.txt | 30 The sub-node name is used to identify host or otg port, 32 * "otg-port" : the name of otg port. 40 * "otg-id" : for the otg id interrupt. 41 * "otg-bvalid" : for the otg vbus interrupt. 42 * "linestate" : for the host/otg linestate interrupt. 43 * "disconnect" : for the host/otg disconnect interrupt. 48 - rockchip,vbus-always-on: when set, indicates that the otg vbus
|