Home
last modified time | relevance | path

Searched full:hcd (Results 1 – 25 of 171) sorted by relevance

1234567

/linux/drivers/usb/core/
H A Dhcd.c38 #include <linux/usb/hcd.h>
51 * HCD-specific behaviors/bugs.
60 * tracking overhead. The HCD code should only block on spinlocks or on
65 * and includes mostly a "HCDI" (HCD Interface) along with some APIs used
405 * @hcd: the host controller for this root hub
416 rh_string(int id, struct usb_hcd const *hcd, u8 *data, unsigned len) in rh_string() argument
433 s = hcd->self.bus_name; in rh_string()
437 s = hcd->product_desc; in rh_string()
442 init_utsname()->release, hcd->driver->description); in rh_string()
455 static int rh_call_control (struct usb_hcd *hcd, struct urb *urb) in rh_call_control() argument
[all …]
H A Dbuffer.c3 * DMA memory management for framework level HCD code (hc_driver)
21 #include <linux/usb/hcd.h>
53 * @hcd: the bus whose buffer pools are to be initialized
65 int hcd_buffer_create(struct usb_hcd *hcd) in hcd_buffer_create() argument
70 if (hcd->localmem_pool || !hcd_uses_dma(hcd)) in hcd_buffer_create()
78 hcd->pool[i] = dma_pool_create(name, hcd->self.sysdev, in hcd_buffer_create()
80 if (!hcd->pool[i]) { in hcd_buffer_create()
81 hcd_buffer_destroy(hcd); in hcd_buffer_create()
91 * @hcd: the bus whose buffer pools are to be destroyed
97 void hcd_buffer_destroy(struct usb_hcd *hcd) in hcd_buffer_destroy() argument
[all …]
/linux/drivers/usb/isp1760/
H A Disp1760-hcd.c23 #include <linux/usb/hcd.h>
34 #include "isp1760-hcd.h"
41 typedef void (packet_enqueue)(struct usb_hcd *hcd, struct isp1760_qh *qh,
44 static inline struct isp1760_hcd *hcd_to_priv(struct usb_hcd *hcd) in hcd_to_priv() argument
46 return *(struct isp1760_hcd **)hcd->hcd_priv; in hcd_to_priv()
150 /* the rest is HCD-private */
200 static u32 isp1760_hcd_read(struct usb_hcd *hcd, u32 field) in isp1760_hcd_read() argument
202 struct isp1760_hcd *priv = hcd_to_priv(hcd); in isp1760_hcd_read()
225 static void isp1760_hcd_write(struct usb_hcd *hcd, u32 field, u32 val) in isp1760_hcd_write() argument
227 struct isp1760_hcd *priv = hcd_to_priv(hcd); in isp1760_hcd_write()
[all …]
H A Disp1760-core.c25 #include "isp1760-hcd.h"
31 struct isp1760_hcd *hcd = &isp->hcd; in isp1760_init_core() local
46 isp1760_field_set(hcd->fields, SW_RESET_RESET_ALL); in isp1760_init_core()
50 if ((isp->devflags & ISP1760_FLAG_ANALOG_OC) && hcd->is_isp1763) { in isp1760_init_core()
56 isp1760_field_clear(hcd->fields, HW_DATA_BUS_WIDTH); in isp1760_init_core()
58 isp1760_field_set(hcd->fields, HW_DATA_BUS_WIDTH); in isp1760_init_core()
60 isp1760_field_set(hcd->fields, HW_ANA_DIGI_OC); in isp1760_init_core()
62 isp1760_field_set(hcd->fields, HW_DACK_POL_HIGH); in isp1760_init_core()
64 isp1760_field_set(hcd->fields, HW_DREQ_POL_HIGH); in isp1760_init_core()
66 isp1760_field_set(hcd->fields, HW_INTR_HIGH_ACT); in isp1760_init_core()
[all …]
/linux/drivers/usb/host/
H A Dohci-ps3.c12 static int ps3_ohci_hc_reset(struct usb_hcd *hcd) in ps3_ohci_hc_reset() argument
14 struct ohci_hcd *ohci = hcd_to_ohci(hcd); in ps3_ohci_hc_reset()
21 static int ps3_ohci_hc_start(struct usb_hcd *hcd) in ps3_ohci_hc_start() argument
24 struct ohci_hcd *ohci = hcd_to_ohci(hcd); in ps3_ohci_hc_start()
36 dev_err(hcd->self.controller, "can't start %s\n", in ps3_ohci_hc_start()
37 hcd->self.bus_name); in ps3_ohci_hc_start()
38 ohci_stop(hcd); in ps3_ohci_hc_start()
70 struct usb_hcd *hcd; in ps3_ohci_probe() local
122 hcd = usb_create_hcd(&ps3_ohci_hc_driver, &dev->core, dev_name(&dev->core)); in ps3_ohci_probe()
124 if (!hcd) { in ps3_ohci_probe()
[all …]
H A Dmax3421-hcd.c18 * For USB HCD implementation.
63 #include <linux/usb/hcd.h>
66 #include <linux/platform_data/max3421-hcd.h>
132 * SPI-thread without acquiring the HCD lock:
329 hcd_to_max3421(struct usb_hcd *hcd) in hcd_to_max3421() argument
331 return (struct max3421_hcd *) hcd->hcd_priv; in hcd_to_max3421()
341 spi_rd8(struct usb_hcd *hcd, unsigned int reg) in spi_rd8() argument
343 struct max3421_hcd *max3421_hcd = hcd_to_max3421(hcd); in spi_rd8()
344 struct spi_device *spi = to_spi_device(hcd->self.controller); in spi_rd8()
367 spi_wr8(struct usb_hcd *hcd, unsigned int reg, u8 val) in spi_wr8() argument
[all …]
H A Dehci-sh.c14 struct usb_hcd *hcd; member
17 static int ehci_sh_reset(struct usb_hcd *hcd) in ehci_sh_reset() argument
19 struct ehci_hcd *ehci = hcd_to_ehci(hcd); in ehci_sh_reset()
21 ehci->caps = hcd->regs; in ehci_sh_reset()
23 return ehci_setup(hcd); in ehci_sh_reset()
78 struct usb_hcd *hcd; in ehci_hcd_sh_probe() local
90 /* initialize hcd */ in ehci_hcd_sh_probe()
91 hcd = usb_create_hcd(&ehci_sh_hc_driver, &pdev->dev, in ehci_hcd_sh_probe()
93 if (!hcd) { in ehci_hcd_sh_probe()
98 hcd->regs = devm_platform_get_and_ioremap_resource(pdev, 0, &res); in ehci_hcd_sh_probe()
[all …]
H A Dehci-ps3.c40 static int ps3_ehci_hc_reset(struct usb_hcd *hcd) in ps3_ehci_hc_reset() argument
43 struct ehci_hcd *ehci = hcd_to_ehci(hcd); in ps3_ehci_hc_reset()
46 ehci->caps = hcd->regs; in ps3_ehci_hc_reset()
48 result = ehci_setup(hcd); in ps3_ehci_hc_reset()
87 struct usb_hcd *hcd; in ps3_ehci_probe() local
138 hcd = usb_create_hcd(&ps3_ehci_hc_driver, &dev->core, dev_name(&dev->core)); in ps3_ehci_probe()
140 if (!hcd) { in ps3_ehci_probe()
147 hcd->rsrc_start = dev->m_region->lpar_addr; in ps3_ehci_probe()
148 hcd->rsrc_len = dev->m_region->len; in ps3_ehci_probe()
150 if (!request_mem_region(hcd->rsrc_start, hcd->rsrc_len, hcd_name)) in ps3_ehci_probe()
[all …]
H A DMakefile9 fhci-y := fhci-hcd.o fhci-hub.o fhci-q.o
14 xhci-hcd-y := xhci.o xhci-mem.o xhci-ext-caps.o
15 xhci-hcd-y += xhci-ring.o xhci-hub.o xhci-dbg.o
16 xhci-hcd-y += xhci-trace.o
19 xhci-hcd-y += xhci-dbgcap.o xhci-dbgtty.o
22 xhci-mtk-hcd-y := xhci-mtk.o xhci-mtk-sch.o
24 xhci-plat-hcd-y := xhci-plat.o
26 xhci-plat-hcd-y += xhci-mvebu.o
29 xhci-hcd-y += xhci-debugfs.o
32 xhci-rcar-hcd-y += xhci-rcar.o
[all …]
H A Dohci-sa1111.c3 * OHCI HCD (Host Controller Driver) for USB.
44 static void dump_hci_status(struct usb_hcd *hcd, const char *label)
46 unsigned long status = readl_relaxed(hcd->regs + USB_STATUS);
57 static int ohci_sa1111_reset(struct usb_hcd *hcd) in ohci_sa1111_reset() argument
59 struct ohci_hcd *ohci = hcd_to_ohci(hcd); in ohci_sa1111_reset()
65 static int ohci_sa1111_start(struct usb_hcd *hcd) in ohci_sa1111_start() argument
67 struct ohci_hcd *ohci = hcd_to_ohci(hcd); in ohci_sa1111_start()
73 ohci_stop(hcd); in ohci_sa1111_start()
174 * then invokes the start() method for the HCD associated with it.
178 struct usb_hcd *hcd; in ohci_hcd_sa1111_probe() local
[all …]
H A Dxhci-pci.c89 static int xhci_pci_setup(struct usb_hcd *hcd);
90 static int xhci_pci_run(struct usb_hcd *hcd);
91 static int xhci_pci_update_hub_device(struct usb_hcd *hcd, struct usb_device *hdev,
106 struct usb_hcd *hcd = xhci_to_hcd(xhci); in xhci_msix_sync_irqs() local
108 if (hcd->msix_enabled) { in xhci_msix_sync_irqs()
109 struct pci_dev *pdev = to_pci_dev(hcd->self.controller); in xhci_msix_sync_irqs()
119 struct usb_hcd *hcd = xhci_to_hcd(xhci); in xhci_cleanup_msix() local
120 struct pci_dev *pdev = to_pci_dev(hcd->self.controller); in xhci_cleanup_msix()
122 if (hcd->irq > 0) in xhci_cleanup_msix()
127 hcd->msix_enabled = 0; in xhci_cleanup_msix()
[all …]
H A Dohci-pci.c3 * OHCI HCD (Host Controller Driver) for USB.
23 #include <linux/usb/hcd.h>
35 static int broken_suspend(struct usb_hcd *hcd) in broken_suspend() argument
37 device_init_wakeup(&hcd->self.root_hub->dev, 0); in broken_suspend()
44 static int ohci_quirk_amd756(struct usb_hcd *hcd) in ohci_quirk_amd756() argument
46 struct ohci_hcd *ohci = hcd_to_ohci (hcd); in ohci_quirk_amd756()
52 return broken_suspend(hcd); in ohci_quirk_amd756()
59 static int ohci_quirk_opti(struct usb_hcd *hcd) in ohci_quirk_opti() argument
61 struct ohci_hcd *ohci = hcd_to_ohci (hcd); in ohci_quirk_opti()
72 static int ohci_quirk_ns(struct usb_hcd *hcd) in ohci_quirk_ns() argument
[all …]
H A Duhci-pci.c3 * UHCI HCD (Host Controller Driver) PCI Bus Glue.
5 * Extracted from uhci-hcd.c:
46 * This function is called at the end of configure_hc in uhci-hcd.c.
114 static int uhci_pci_init(struct usb_hcd *hcd) in uhci_pci_init() argument
116 struct uhci_hcd *uhci = hcd_to_uhci(hcd); in uhci_pci_init()
118 uhci->io_addr = (unsigned long) hcd->rsrc_start; in uhci_pci_init()
120 uhci->rh_numports = uhci_count_ports(hcd); in uhci_pci_init()
165 struct usb_hcd *hcd = pci_get_drvdata(pdev); in uhci_shutdown() local
167 uhci_hc_died(hcd_to_uhci(hcd)); in uhci_shutdown()
172 static int uhci_pci_resume(struct usb_hcd *hcd, pm_message_t state);
[all …]
H A Dohci-mem.c3 * OHCI HCD (Host Controller Driver) for USB.
15 * - data used only by the HCD ... kmalloc is fine
16 * - async and periodic schedules, shared by HC and HCD ... these
18 * - driver buffers, read/written by HC ... the hcd glue or the
22 * No memory seen by this driver (or any HCD) may be paged out.
94 struct usb_hcd *hcd = ohci_to_hcd(hc); in td_alloc() local
96 if (hcd->localmem_pool) in td_alloc()
97 td = gen_pool_dma_zalloc_align(hcd->localmem_pool, in td_alloc()
114 struct usb_hcd *hcd = ohci_to_hcd(hc); in td_free() local
123 if (hcd->localmem_pool) in td_free()
[all …]
H A Dxen-hcd.c3 * xen-hcd.c
14 #include <linux/usb/hcd.h>
100 static inline struct xenhcd_info *xenhcd_hcd_to_info(struct usb_hcd *hcd) in xenhcd_hcd_to_info() argument
102 return (struct xenhcd_info *)hcd->hcd_priv; in xenhcd_hcd_to_info()
114 pr_alert("xen-hcd: protocol error: %s!\n", msg); in xenhcd_set_error()
312 static int xenhcd_bus_suspend(struct usb_hcd *hcd) in xenhcd_bus_suspend() argument
314 struct xenhcd_info *info = xenhcd_hcd_to_info(hcd); in xenhcd_bus_suspend()
321 if (!test_bit(HCD_FLAG_HW_ACCESSIBLE, &hcd->flags)) { in xenhcd_bus_suspend()
335 static int xenhcd_bus_resume(struct usb_hcd *hcd) in xenhcd_bus_resume() argument
337 struct xenhcd_info *info = xenhcd_hcd_to_info(hcd); in xenhcd_bus_resume()
[all …]
H A Dohci-hcd.c38 #include <linux/usb/hcd.h>
84 static void ohci_stop(struct usb_hcd *hcd);
148 struct usb_hcd *hcd, in ohci_urb_enqueue() argument
152 struct ohci_hcd *ohci = hcd_to_ohci (hcd); in ohci_urb_enqueue()
213 if (!HCD_HW_ACCESSIBLE(hcd)) { in ohci_urb_enqueue()
221 retval = usb_hcd_link_urb_to_ep(hcd, urb); in ohci_urb_enqueue()
229 usb_hcd_unlink_urb_from_ep(hcd, urb); in ohci_urb_enqueue()
313 static int ohci_urb_dequeue(struct usb_hcd *hcd, struct urb *urb, int status) in ohci_urb_dequeue() argument
315 struct ohci_hcd *ohci = hcd_to_ohci (hcd); in ohci_urb_dequeue()
321 rc = usb_hcd_check_unlink_urb(hcd, urb, status); in ohci_urb_dequeue()
[all …]
H A DKconfig8 tristate "Cypress C67x00 HCD support"
21 tristate "xHCI HCD (USB 3.0) support"
28 module will be called xhci-hcd.
133 xhci-plat-hcd.ko
139 tristate "EHCI HCD (USB 2.0) support"
158 module will be called ehci-hcd.
270 tristate "NVIDIA Tegra HCD support"
326 will be called octeon-hcd.
353 tristate "OXU210HP HCD support"
363 module will be called oxu210hp-hcd.
[all …]
H A Duhci-hcd.c42 #include <linux/usb/hcd.h>
50 #include "uhci-hcd.h"
450 static irqreturn_t uhci_irq(struct usb_hcd *hcd) in uhci_irq() argument
452 struct uhci_hcd *uhci = hcd_to_uhci(hcd); in uhci_irq()
487 usb_hc_died(hcd); in uhci_irq()
491 mod_timer(&hcd->rh_timer, jiffies); in uhci_irq()
498 usb_hcd_poll_rh_status(hcd); in uhci_irq()
576 static int uhci_start(struct usb_hcd *hcd) in uhci_start() argument
578 struct uhci_hcd *uhci = hcd_to_uhci(hcd); in uhci_start()
582 hcd->uses_new_polling = 1; in uhci_start()
[all …]
/linux/drivers/staging/greybus/
H A Dusb.c12 #include <linux/usb/hcd.h>
38 static inline struct gb_usb_device *to_gb_usb_device(struct usb_hcd *hcd) in to_gb_usb_device() argument
40 return (struct gb_usb_device *)hcd->hcd_priv; in to_gb_usb_device()
48 static void hcd_stop(struct usb_hcd *hcd) in hcd_stop() argument
50 struct gb_usb_device *dev = to_gb_usb_device(hcd); in hcd_stop()
56 dev_err(&dev->gbphy_dev->dev, "HCD stop failed '%d'\n", ret); in hcd_stop()
59 static int hcd_start(struct usb_hcd *hcd) in hcd_start() argument
61 struct usb_bus *bus = hcd_to_bus(hcd); in hcd_start()
62 struct gb_usb_device *dev = to_gb_usb_device(hcd); in hcd_start()
68 dev_err(&dev->gbphy_dev->dev, "HCD start failed '%d'\n", ret); in hcd_start()
[all …]
/linux/drivers/usb/chipidea/
H A Dhost.c13 #include <linux/usb/hcd.h>
25 static int (*orig_bus_suspend)(struct usb_hcd *hcd);
37 static int ehci_ci_portpower(struct usb_hcd *hcd, int portnum, bool enable) in ehci_ci_portpower() argument
39 struct ehci_hcd *ehci = hcd_to_ehci(hcd); in ehci_ci_portpower()
41 struct device *dev = hcd->self.controller; in ehci_ci_portpower()
83 static int ehci_ci_reset(struct usb_hcd *hcd) in ehci_ci_reset() argument
85 struct device *dev = hcd->self.controller; in ehci_ci_reset()
87 struct ehci_hcd *ehci = hcd_to_ehci(hcd); in ehci_ci_reset()
90 ret = ehci_setup(hcd); in ehci_ci_reset()
116 return usb_hcd_irq(ci->irq, ci->hcd); in host_irq()
[all …]
/linux/include/linux/usb/
H A Dhcd.h73 struct usb_bus self; /* hcd is-a bus */
79 * hcd->driver->flags & HCD_MASK
119 #define HCD_HW_ACCESSIBLE(hcd) ((hcd)->flags & (1U << HCD_FLAG_HW_ACCESSIBLE)) argument
120 #define HCD_POLL_RH(hcd) ((hcd)->flags & (1U << HCD_FLAG_POLL_RH)) argument
121 #define HCD_POLL_PENDING(hcd) ((hcd)->flags & (1U << HCD_FLAG_POLL_PENDING)) argument
122 #define HCD_WAKEUP_PENDING(hcd) ((hcd)->flags & (1U << HCD_FLAG_WAKEUP_PENDING)) argument
123 #define HCD_RH_RUNNING(hcd) ((hcd)->flags & (1U << HCD_FLAG_RH_RUNNING)) argument
124 #define HCD_DEAD(hcd) ((hcd)->flags & (1U << HCD_FLAG_DEAD)) argument
125 #define HCD_DEFER_RH_REGISTER(hcd) ((hcd)->flags & (1U << HCD_FLAG_DEFER_RH_REGISTER)) argument
132 #define HCD_INTF_AUTHORIZED(hcd) \ argument
[all …]
/linux/drivers/usb/c67x00/
H A Dc67x00-hcd.c3 * c67x00-hcd.c: Cypress C67X00 USB Host Controller Driver
15 #include "c67x00-hcd.h"
47 static int c67x00_hub_status_data(struct usb_hcd *hcd, char *buf) in c67x00_hub_status_data() argument
49 struct c67x00_hcd *c67x00 = hcd_to_c67x00_hcd(hcd); in c67x00_hub_status_data()
66 static int c67x00_hub_control(struct usb_hcd *hcd, u16 typeReq, u16 wValue, in c67x00_hub_control() argument
69 struct c67x00_hcd *c67x00 = hcd_to_c67x00_hcd(hcd); in c67x00_hub_control()
239 struct usb_hcd *hcd = c67x00_hcd_to_hcd(c67x00); in c67x00_hcd_irq() local
250 if (unlikely(hcd->state == HC_STATE_HALT)) in c67x00_hcd_irq()
253 if (!HCD_HW_ACCESSIBLE(hcd)) in c67x00_hcd_irq()
266 static int c67x00_hcd_start(struct usb_hcd *hcd) in c67x00_hcd_start() argument
[all …]
/linux/drivers/usb/cdns3/
H A Dhost.c17 #include <linux/usb/hcd.h>
32 static void xhci_cdns3_plat_start(struct usb_hcd *hcd) in xhci_cdns3_plat_start() argument
34 struct xhci_hcd *xhci = hcd_to_xhci(hcd); in xhci_cdns3_plat_start()
42 if (hcd->regs) { in xhci_cdns3_plat_start()
43 value = readl(hcd->regs + XECP_AUX_CTRL_REG1); in xhci_cdns3_plat_start()
45 writel(value, hcd->regs + XECP_AUX_CTRL_REG1); in xhci_cdns3_plat_start()
47 value = readl(hcd->regs + XECP_PORT_CAP_REG); in xhci_cdns3_plat_start()
49 writel(value, hcd->regs + XECP_PORT_CAP_REG); in xhci_cdns3_plat_start()
53 static int xhci_cdns3_resume_quirk(struct usb_hcd *hcd) in xhci_cdns3_resume_quirk() argument
55 xhci_cdns3_plat_start(hcd); in xhci_cdns3_resume_quirk()
[all …]
/linux/drivers/usb/renesas_usbhs/
H A Dmod_host.c14 #include <linux/usb/hcd.h>
451 static int usbhsh_connected_to_rhdev(struct usb_hcd *hcd, in usbhsh_connected_to_rhdev() argument
456 return hcd->self.root_hub == usbv->parent; in usbhsh_connected_to_rhdev()
488 struct usb_hcd *hcd = usbhsh_hpriv_to_hcd(hpriv); in usbhsh_device_attach() local
489 struct device *dev = usbhsh_hcd_to_dev(hcd); in usbhsh_device_attach()
564 if (!usbhsh_connected_to_rhdev(hcd, udev)) { in usbhsh_device_attach()
588 struct usb_hcd *hcd = usbhsh_hpriv_to_hcd(hpriv); in usbhsh_device_detach() local
590 struct device *dev = usbhsh_hcd_to_dev(hcd); in usbhsh_device_detach()
633 struct usb_hcd *hcd = usbhsh_hpriv_to_hcd(hpriv); in usbhsh_queue_done() local
655 usb_hcd_unlink_urb_from_ep(hcd, urb); in usbhsh_queue_done()
[all …]
/linux/drivers/xen/
H A Ddbgp.c5 #include <linux/usb/hcd.h>
10 static int xen_dbgp_op(struct usb_hcd *hcd, int op) in xen_dbgp_op() argument
13 const struct device *ctrlr = hcd_to_bus(hcd)->controller; in xen_dbgp_op()
37 int xen_dbgp_reset_prep(struct usb_hcd *hcd) in xen_dbgp_reset_prep() argument
39 return xen_dbgp_op(hcd, PHYSDEVOP_DBGP_RESET_PREPARE); in xen_dbgp_reset_prep()
42 int xen_dbgp_external_startup(struct usb_hcd *hcd) in xen_dbgp_external_startup() argument
44 return xen_dbgp_op(hcd, PHYSDEVOP_DBGP_RESET_DONE); in xen_dbgp_external_startup()

1234567