Home
last modified time | relevance | path

Searched full:ohci (Results 1 – 25 of 507) sorted by relevance

12345678910>>...21

/openbmc/linux/drivers/usb/host/
H A Dohci-hub.c3 * OHCI HCD (Host Controller Driver) for USB.
14 * OHCI Root Hub ... the nonsharable stuff
47 static int ohci_rh_suspend (struct ohci_hcd *ohci, int autostop) in ohci_rh_suspend() argument
48 __releases(ohci->lock) in ohci_rh_suspend()
49 __acquires(ohci->lock) in ohci_rh_suspend()
53 ohci->hc_control = ohci_readl (ohci, &ohci->regs->control); in ohci_rh_suspend()
54 switch (ohci->hc_control & OHCI_CTRL_HCFS) { in ohci_rh_suspend()
56 ohci_dbg (ohci, "resume/suspend?\n"); in ohci_rh_suspend()
57 ohci->hc_control &= ~OHCI_CTRL_HCFS; in ohci_rh_suspend()
58 ohci->hc_control |= OHCI_USB_RESET; in ohci_rh_suspend()
[all …]
H A Dohci-hcd.c3 * Open Host Controller Interface (OHCI) driver for USB.
11 * [ uhci code and gregs ohci fragments ]
16 * OHCI is the main "non-Intel/VIA" standard for USB 1.1 host controller
52 #define DRIVER_DESC "USB 1.1 'Open' Host Controller (OHCI) Driver"
80 #include "ohci.h"
83 static void ohci_dump(struct ohci_hcd *ohci);
87 #include "ohci-hub.c"
88 #include "ohci-dbg.c"
89 #include "ohci-mem.c"
90 #include "ohci-q.c"
[all …]
H A Dohci-q.c3 * OHCI HCD (Host Controller Driver) for USB.
38 * PRECONDITION: ohci lock held, irqs blocked.
41 finish_urb(struct ohci_hcd *ohci, struct urb *urb, int status) in finish_urb() argument
42 __releases(ohci->lock) in finish_urb()
43 __acquires(ohci->lock) in finish_urb()
45 struct device *dev = ohci_to_hcd(ohci)->self.controller; in finish_urb()
52 urb_free_priv (ohci, urb->hcpriv); in finish_urb()
59 ohci_to_hcd(ohci)->self.bandwidth_isoc_reqs--; in finish_urb()
60 if (ohci_to_hcd(ohci)->self.bandwidth_isoc_reqs == 0) { in finish_urb()
61 if (quirk_amdiso(ohci)) in finish_urb()
[all …]
H A Dohci-pci.c3 * OHCI HCD (Host Controller Driver) for USB.
9 * [ uhci code and gregs ohci fragments ]
25 #include "ohci.h"
28 #define DRIVER_DESC "OHCI PCI platform driver"
30 static const char hcd_name[] = "ohci-pci";
46 struct ohci_hcd *ohci = hcd_to_ohci (hcd); in ohci_quirk_amd756() local
48 ohci->flags = OHCI_QUIRK_AMD756; in ohci_quirk_amd756()
49 ohci_dbg (ohci, "AMD756 erratum 4 workaround\n"); in ohci_quirk_amd756()
55 /* Apple's OHCI driver has a lot of bizarre workarounds
61 struct ohci_hcd *ohci = hcd_to_ohci (hcd); in ohci_quirk_opti() local
[all …]
H A Dohci-dbg.c3 * OHCI HCD (Host Controller Driver) for USB.
23 #define ohci_dbg_sw(ohci, next, size, format, arg...) \ argument
30 ohci_dbg(ohci,format, ## arg ); \
34 #define ohci_dbg_nosw(ohci, next, size, format, arg...) \ argument
43 struct ohci_hcd *ohci, in ohci_dump_intr_mask() argument
49 ohci_dbg_sw (ohci, next, size, "%s 0x%08x%s%s%s%s%s%s%s%s%s\n", in ohci_dump_intr_mask()
65 struct ohci_hcd *ohci, in maybe_print_eds() argument
72 ohci_dbg_sw (ohci, next, size, "%s %08x\n", label, value); in maybe_print_eds()
86 static const char *rh_state_string(struct ohci_hcd *ohci) in rh_state_string() argument
88 switch (ohci->rh_state) { in rh_state_string()
[all …]
H A Dohci.h3 * OHCI HCD (Host Controller Driver) for USB.
20 * OHCI Endpoint Descriptor (ED) ... holds TD queue
21 * See OHCI spec, section 4.2
75 #define OKAY_TO_TAKEBACK(ohci, ed) \ argument
76 ((int) (ohci->wdh_cnt - ed->takeback_wdh_cnt) >= 0)
84 * OHCI Transfer Descriptor (TD) ... one per transfer segment
85 * See OHCI spec, sections 4.3.1 (general = control/bulk/interrupt)
164 /* map OHCI TD status codes (CC) to errno values */
187 * structure defined section 4.4.1 of the OHCI spec. The HC is
195 * OHCI defines u16 frame_no, followed by u16 zero pad.
[all …]
H A Dohci-ppc-of.c3 * OHCI HCD (Host Controller Driver) for USB.
10 * Bus glue for OHCI HC on the of_platform bus
12 * Modified for of_platform bus from ohci-sa1111.c
26 struct ohci_hcd *ohci = hcd_to_ohci(hcd); in ohci_ppc_of_start() local
29 if ((ret = ohci_init(ohci)) < 0) in ohci_ppc_of_start()
32 if ((ret = ohci_run(ohci)) < 0) { in ohci_ppc_of_start()
44 .product_desc = "OF OHCI",
89 struct ohci_hcd *ohci; in ohci_hcd_ppc_of_probe() local
101 of_device_is_compatible(dn, "ohci-bigendian") || in ohci_hcd_ppc_of_probe()
102 of_device_is_compatible(dn, "ohci-be"); in ohci_hcd_ppc_of_probe()
[all …]
H A Dohci-mem.c3 * OHCI HCD (Host Controller Driver) for USB.
14 * OHCI deals with three types of memory:
27 static void ohci_hcd_init (struct ohci_hcd *ohci) in ohci_hcd_init() argument
29 ohci->next_statechange = jiffies; in ohci_hcd_init()
30 spin_lock_init (&ohci->lock); in ohci_hcd_init()
31 INIT_LIST_HEAD (&ohci->pending); in ohci_hcd_init()
32 INIT_LIST_HEAD(&ohci->eds_in_use); in ohci_hcd_init()
37 static int ohci_mem_init (struct ohci_hcd *ohci) in ohci_mem_init() argument
43 if (ohci_to_hcd(ohci)->localmem_pool) in ohci_mem_init()
46 ohci->td_cache = dma_pool_create ("ohci_td", in ohci_mem_init()
[all …]
H A DKconfig128 Enables support for XHCI, EHCI and OHCI host controllers
132 modules will be called ohci-platform.ko, ehci-brcm.ko and
147 EHCI controllers are packaged with "companion" host controllers (OHCI
151 probably configure the OHCI (for NEC and some other vendors) USB Host
165 transaction translators, so that no OHCI or UHCI companion
401 tristate "OHCI HCD (USB 1.1) support"
404 The Open Host Controller Interface (OHCI) is a standard for accessing
406 UHCI specification. If your USB host controller follows the OHCI spec,
411 right "prog-if" for your USB controller(s): EHCI, OHCI, or UHCI.
414 module will be called ohci-hcd.
[all …]
H A Dohci-omap.c3 * OHCI HCD (Host Controller Driver) for USB.
12 * Based on the 2.4 OMAP OHCI driver originally done by MontaVista Software Inc.
13 * and on ohci-sa1111.c by Christopher Hoover <ch@hpl.hp.com>
37 #include "ohci.h"
42 #define DRIVER_DESC "OHCI OMAP driver"
51 static const char hcd_name[] = "ohci-omap";
70 static void start_hnp(struct ohci_hcd *ohci) in start_hnp() argument
72 struct usb_hcd *hcd = ohci_to_hcd(ohci); in start_hnp()
81 writel (RH_PS_PSS, &ohci->regs->roothub.portstatus [port]); in start_hnp()
92 struct ohci_hcd *ohci = hcd_to_ohci(hcd); in ohci_omap_reset() local
[all …]
H A Dohci-platform.c3 * Generic platform ohci driver
10 * Derived from the OHCI-PCI driver
33 #include "ohci.h"
35 #define DRIVER_DESC "OHCI generic platform driver"
79 .product_desc = "Generic Platform OHCI controller",
95 struct ohci_hcd *ohci; in ohci_platform_probe() local
124 ohci = hcd_to_ohci(hcd); in ohci_platform_probe()
128 ohci->flags |= OHCI_QUIRK_BE_MMIO; in ohci_platform_probe()
131 ohci->flags |= OHCI_QUIRK_BE_DESC; in ohci_platform_probe()
134 ohci->flags |= OHCI_QUIRK_BE_MMIO | OHCI_QUIRK_BE_DESC; in ohci_platform_probe()
[all …]
H A Dohci-spear.c3 * OHCI HCD (Host Controller Driver) for USB.
8 * Based on various ohci-*.c drivers
22 #include "ohci.h"
24 #define DRIVER_DESC "OHCI SPEAr driver"
117 struct ohci_hcd *ohci = hcd_to_ohci(hcd); in spear_ohci_hcd_drv_suspend() local
122 if (time_before(jiffies, ohci->next_statechange)) in spear_ohci_hcd_drv_suspend()
124 ohci->next_statechange = jiffies; in spear_ohci_hcd_drv_suspend()
138 struct ohci_hcd *ohci = hcd_to_ohci(hcd); in spear_ohci_hcd_drv_resume() local
141 if (time_before(jiffies, ohci->next_statechange)) in spear_ohci_hcd_drv_resume()
143 ohci->next_statechange = jiffies; in spear_ohci_hcd_drv_resume()
[all …]
H A DMakefile53 obj-$(CONFIG_USB_OHCI_HCD) += ohci-hcd.o
54 obj-$(CONFIG_USB_OHCI_HCD_PCI) += ohci-pci.o
55 obj-$(CONFIG_USB_OHCI_HCD_PLATFORM) += ohci-platform.o
56 obj-$(CONFIG_USB_OHCI_EXYNOS) += ohci-exynos.o
57 obj-$(CONFIG_USB_OHCI_HCD_OMAP1) += ohci-omap.o
58 obj-$(CONFIG_USB_OHCI_HCD_SPEAR) += ohci-spear.o
59 obj-$(CONFIG_USB_OHCI_HCD_STI) += ohci-st.o
60 obj-$(CONFIG_USB_OHCI_HCD_AT91) += ohci-at91.o
61 obj-$(CONFIG_USB_OHCI_HCD_S3C2410) += ohci-s3c2410.o
62 obj-$(CONFIG_USB_OHCI_HCD_LPC32XX) += ohci-nxp.o
[all …]
/openbmc/qemu/hw/usb/
H A Dhcd-ohci.c2 * QEMU USB OHCI Emulation
39 #include "hcd-ohci.h"
144 /* OHCI Local stuff */
256 static void ohci_die(OHCIState *ohci) in ohci_die() argument
258 ohci->ohci_die(ohci); in ohci_die()
262 static inline void ohci_intr_update(OHCIState *ohci) in ohci_intr_update() argument
266 if ((ohci->intr & OHCI_INTR_MIE) && in ohci_intr_update()
267 (ohci->intr_status & ohci->intr)) in ohci_intr_update()
270 qemu_set_irq(ohci->irq, level); in ohci_intr_update()
274 static inline void ohci_set_interrupt(OHCIState *ohci, uint32_t intr) in ohci_set_interrupt() argument
[all …]
H A Dhcd-ohci-pci.c2 * QEMU USB OHCI Emulation
31 #include "hcd-ohci.h"
34 #define TYPE_PCI_OHCI "pci-ohci"
49 * A typical PCI OHCI will additionally set PERR in its configspace to
52 static void ohci_pci_die(struct OHCIState *ohci) in ohci_pci_die() argument
54 OHCIPCIState *dev = container_of(ohci, OHCIPCIState, state); in ohci_pci_die()
56 ohci_sysbus_die(ohci); in ohci_pci_die()
65 OHCIPCIState *ohci = PCI_OHCI(dev); in usb_ohci_realize_pci() local
67 dev->config[PCI_CLASS_PROG] = 0x10; /* OHCI */ in usb_ohci_realize_pci()
70 usb_ohci_init(&ohci->state, DEVICE(dev), ohci->num_ports, 0, in usb_ohci_realize_pci()
[all …]
H A Dhcd-ohci.h2 * QEMU USB OHCI Emulation
50 /* OHCI state */
79 /* PXA27x Non-OHCI events */
95 void (*ohci_die)(OHCIState *ohci);
98 #define TYPE_SYSBUS_OHCI "sysbus-ohci"
106 OHCIState ohci; member
115 void usb_ohci_init(OHCIState *ohci, DeviceState *dev, uint32_t num_ports,
119 void ohci_bus_stop(OHCIState *ohci);
120 void ohci_stop_endpoints(OHCIState *ohci);
121 void ohci_hard_reset(OHCIState *ohci);
[all …]
H A Dhcd-ohci-sysbus.c2 * QEMU USB OHCI Emulation
32 #include "hcd-ohci.h"
41 usb_ohci_init(&s->ohci, dev, s->num_ports, s->dma_offset, in ohci_sysbus_realize()
48 sysbus_init_irq(sbd, &s->ohci.irq); in ohci_sysbus_realize()
49 sysbus_init_mmio(sbd, &s->ohci.mem); in ohci_sysbus_realize()
55 OHCIState *ohci = &s->ohci; in ohci_sysbus_reset() local
57 ohci_hard_reset(ohci); in ohci_sysbus_reset()
74 dc->desc = "OHCI USB Controller"; in ohci_sysbus_class_init()
/openbmc/linux/Documentation/devicetree/bindings/usb/
H A Dgeneric-ohci.yaml4 $id: http://devicetree.org/schemas/usb/generic-ohci.yaml#
7 title: USB OHCI Controller
17 - allwinner,sun4i-a10-ohci
18 - allwinner,sun50i-a64-ohci
19 - allwinner,sun50i-h6-ohci
20 - allwinner,sun50i-h616-ohci
21 - allwinner,sun5i-a13-ohci
22 - allwinner,sun6i-a31-ohci
23 - allwinner,sun7i-a20-ohci
24 - allwinner,sun8i-a23-ohci
[all …]
/openbmc/linux/drivers/firewire/
H A Dinit_ohci1394_dma.c3 * init_ohci1394_dma.c - Initializes physical DMA on all OHCI 1394 controllers
9 * - scan the PCI very early on boot for all OHCI 1394-compliant controllers
32 #include "ohci.h"
36 struct ohci { struct
40 static inline void reg_write(const struct ohci *ohci, int offset, u32 data) in reg_write() argument
42 writel(data, ohci->registers + offset); in reg_write()
45 static inline u32 reg_read(const struct ohci *ohci, int offset) in reg_read() argument
47 return readl(ohci->registers + offset); in reg_read()
52 /* Reads a PHY register of an OHCI-1394 controller */
53 static inline u8 __init get_phy_reg(struct ohci *ohci, u8 addr) in get_phy_reg() argument
[all …]
H A Dohci.c3 * Driver for OHCI 1394 controllers
42 #include "ohci.h"
44 #define ohci_info(ohci, f, args...) dev_info(ohci->card.device, f, ##args) argument
45 #define ohci_notice(ohci, f, args...) dev_notice(ohci->card.device, f, ##args) argument
46 #define ohci_err(ohci, f, args...) dev_err(ohci->card.device, f, ##args) argument
88 struct fw_ohci *ohci; member
118 struct fw_ohci *ohci; member
291 static bool has_reboot_by_cycle_timer_read_quirk(const struct fw_ohci *ohci) in has_reboot_by_cycle_timer_read_quirk() argument
293 return !!(ohci->quirks & QUIRK_REBOOT_BY_CYCLE_TIMER_READ); in has_reboot_by_cycle_timer_read_quirk()
323 #define has_reboot_by_cycle_timer_read_quirk(ohci) false argument
[all …]
/openbmc/u-boot/drivers/usb/host/
H A Dohci-hcd.c3 * URB OHCI HCD (Host Controller Driver) for USB on the AT91RM9200 and PCI bus.
46 #include "ohci.h"
69 {0x10b9, 0x5237}, /* ULI1575 PCI OHCI module ids */
70 {0x1033, 0x0035}, /* NEC PCI OHCI module ids */
71 {0x1131, 0x1561}, /* Philips 1561 PCI OHCI module ids */
72 /* Please add supported PCI OHCI controller ids here */
141 /* mapping of the OHCI CC status to error codes */
196 static inline u32 roothub_a(struct ohci *hc) in roothub_a()
198 static inline u32 roothub_b(struct ohci *hc) in roothub_b()
200 static inline u32 roothub_status(struct ohci *hc) in roothub_status()
[all …]
/openbmc/linux/Documentation/devicetree/bindings/mfd/
H A Domap-usb-host.txt21 "ohci-phy-6pin-datse0",
22 "ohci-phy-6pin-dpdm",
23 "ohci-phy-3pin-datse0",
24 "ohci-phy-4pin-dpdm",
25 "ohci-tll-6pin-datse0",
26 "ohci-tll-6pin-dpdm",
27 "ohci-tll-3pin-datse0",
28 "ohci-tll-4pin-dpdm",
29 "ohci-tll-2pin-datse0",
30 "ohci-tll-2pin-dpdm",
[all …]
/openbmc/linux/Documentation/usb/
H A Dohci.rst2 OHCI title
7 The "ohci-hcd" driver is a USB Host Controller Driver (HCD) that is derived
8 from the "usb-ohci" driver from the 2.4 kernel series. The "usb-ohci" code
12 It supports the "Open Host Controller Interface" (OHCI), which standardizes
16 from vendors other than Intel and VIA generally use OHCI.
24 - supports some non-PCI implementations of OHCI
27 The "ohci-hcd" driver handles all USB 1.1 transfer types. Transfers of all
28 types can be queued. That was also true in "usb-ohci", except for interrupt
/openbmc/qemu/tests/qtest/
H A Dusb-hcd-ohci-test.c2 * QTest testcase for USB OHCI controller
26 usb_test_hotplug(global_qtest, "ohci", "1", NULL); in test_ohci_hotplug()
37 fprintf(stderr, "%s not present in pci-ohci\n", interface); in ohci_pci_get_driver()
52 .extra_device_opts = "addr=04.0,id=ohci", in ohci_pci_register_nodes()
56 qos_node_create_driver("pci-ohci", ohci_pci_create); in ohci_pci_register_nodes()
57 qos_node_consumes("pci-ohci", "pci-bus", &opts); in ohci_pci_register_nodes()
58 qos_node_produces("pci-ohci", "pci-device"); in ohci_pci_register_nodes()
65 qos_add_test("ohci_pci-test-hotplug", "pci-ohci", test_ohci_hotplug, NULL); in register_ohci_pci_test()
/openbmc/linux/Documentation/core-api/
H A Ddebugging-via-ohci1394.rst2 Using physical DMA provided by OHCI-1394 FireWire controllers for debugging
9 to the OHCI-1394 specification which defines the controller to be a PCI
12 PCI-Bus master DMA after applying filters defined by the OHCI-1394 driver.
15 ask the OHCI-1394 controller to perform read and write requests on
34 Together with a early initialization of the OHCI-1394 controller for debugging,
43 The firewire-ohci driver in drivers/firewire uses filtered physical
47 Because the firewire-ohci driver depends on the PCI enumeration to be
80 The OHCI-1394 specification regulates that the OHCI-1394 controller must
84 interrupts are disabled and where no polling of the OHCI-1394 controller
89 Step-by-step instructions for using firescope with early OHCI initialization:
[all …]

12345678910>>...21