Lines Matching +full:can +full:- +full:transceiver
6 * This program is free software; you can redistribute it and/or modify
18 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
35 /* These routines should handle the standard chip-specific modes
36 * for usb0/1/2 ports, covering basic mux and transceiver setup.
38 * Some board-*.c files will need to set up additional mux options,
43 * - 1611B H2 (with usb1 mini-AB) using standard Mini-B or OTG cables
44 * - 5912 OSK OHCI (with usb0 standard-A), standard A-to-B cables
45 * - 5912 OSK UDC, with *nonstandard* A-to-A cable
46 * - 1510 Innovator UDC with bundled usb0 cable
47 * - 1510 Innovator OHCI with bundled usb1/usb2 cable
48 * - 1510 Innovator OHCI with custom usb0 cable, feeding 5V VBUS
49 * - 1710 custom development board using alternate pin group
50 * - 1710 H3 (with usb1 mini-AB) using standard Mini-B or OTG cables
76 /* pin muxing and transceiver pinouts */ in omap_otg_init()
77 if (config->pins[0] > 2) /* alt pingroup 2 */ in omap_otg_init()
79 syscon |= config->usb0_init(config->pins[0], is_usb0_device(config)); in omap_otg_init()
80 syscon |= config->usb1_init(config->pins[1]); in omap_otg_init()
81 syscon |= config->usb2_init(config->pins[2], alt_pingroup); in omap_otg_init()
85 syscon = config->hmc_mode; in omap_otg_init()
88 if (config->otg) in omap_otg_init()
96 printk("USB: hmc %d", config->hmc_mode); in omap_otg_init()
98 pr_cont(", usb2 alt %d wires", config->pins[2]); in omap_otg_init()
99 else if (config->pins[0]) in omap_otg_init()
100 pr_cont(", usb0 %d wires%s", config->pins[0], in omap_otg_init()
102 if (config->pins[1]) in omap_otg_init()
103 pr_cont(", usb1 %d wires", config->pins[1]); in omap_otg_init()
104 if (!alt_pingroup && config->pins[2]) in omap_otg_init()
105 pr_cont(", usb2 %d wires", config->pins[2]); in omap_otg_init()
106 if (config->otg) in omap_otg_init()
107 pr_cont(", Mini-AB on usb%d", config->otg - 1); in omap_otg_init()
124 if (config->otg || config->register_dev) { in omap_otg_init()
125 struct platform_device *udc_device = config->udc_device; in omap_otg_init()
129 udc_device->dev.platform_data = config; in omap_otg_init()
132 pr_debug("can't register UDC device, %d\n", status); in omap_otg_init()
137 if (config->otg || config->register_host) { in omap_otg_init()
138 struct platform_device *ohci_device = config->ohci_device; in omap_otg_init()
142 ohci_device->dev.platform_data = config; in omap_otg_init()
145 pr_debug("can't register OHCI device, %d\n", status); in omap_otg_init()
150 if (config->otg) { in omap_otg_init()
151 struct platform_device *otg_device = config->otg_device; in omap_otg_init()
155 otg_device->dev.platform_data = config; in omap_otg_init()
158 pr_debug("can't register OTG device, %d\n", status); in omap_otg_init()
193 .id = -1,
210 pdata->udc_device = &udc_device; in udc_device_init()
240 .id = -1,
253 pdata->ohci_device = &ohci_device; in ohci_device_init()
254 pdata->ocpi_enable = &ocpi_enable; in ohci_device_init()
281 .id = -1,
290 pdata->otg_device = &otg_device; in otg_device_init()
309 /* pulldown D+/D- */ in omap1_usb0_init()
335 /* This works on 1510-Innovator */ in omap1_usb0_init()
340 * - peripheral should configure VBUS detection! in omap1_usb0_init()
341 * - only peripherals may use the internal D+/D- pulldowns in omap1_usb0_init()
342 * - OTG support on this port not yet written in omap1_usb0_init()
345 /* Don't do this for omap7xx -- it causes USB to not work correctly */ in omap1_usb0_init()
357 /* alternate pin config, external transceiver */ in omap1_usb0_init()
402 printk(KERN_ERR "illegal usb%d %d-wire transceiver\n", in omap1_usb0_init()
423 /* external transceiver */ in omap1_usb1_init()
468 printk(KERN_ERR "illegal usb%d %d-wire transceiver\n", in omap1_usb1_init()
491 /* external transceiver */ in omap1_usb2_init()
541 printk(KERN_ERR "illegal usb%d %d-wire transceiver\n", in omap1_usb2_init()
563 config->usb0_init(config->pins[0], is_usb0_device(config)); in omap_1510_usb_init()
564 config->usb1_init(config->pins[1]); in omap_1510_usb_init()
565 config->usb2_init(config->pins[2], 0); in omap_1510_usb_init()
568 val |= (config->hmc_mode << 1); in omap_1510_usb_init()
571 printk("USB: hmc %d", config->hmc_mode); in omap_1510_usb_init()
572 if (config->pins[0]) in omap_1510_usb_init()
573 pr_cont(", usb0 %d wires%s", config->pins[0], in omap_1510_usb_init()
575 if (config->pins[1]) in omap_1510_usb_init()
576 pr_cont(", usb1 %d wires", config->pins[1]); in omap_1510_usb_init()
577 if (config->pins[2]) in omap_1510_usb_init()
578 pr_cont(", usb2 %d wires", config->pins[2]); in omap_1510_usb_init()
601 if (config->register_dev) { in omap_1510_usb_init()
607 pr_debug("can't register UDC device, %d\n", status); in omap_1510_usb_init()
613 if (config->register_host) { in omap_1510_usb_init()
619 pr_debug("can't register OHCI device, %d\n", status); in omap_1510_usb_init()
637 pdata->usb0_init = omap1_usb0_init; in omap1_usb_init()
638 pdata->usb1_init = omap1_usb1_init; in omap1_usb_init()
639 pdata->usb2_init = omap1_usb2_init; in omap1_usb_init()