Home
last modified time | relevance | path

Searched full:xhci (Results 1 – 25 of 197) sorted by relevance

12345678

/linux/drivers/usb/host/
H A Dxhci.c3 * xHCI host controller driver
23 #include <linux/usb/xhci-sideband.h>
25 #include "xhci.h"
26 #include "xhci-trace.h"
27 #include "xhci-debugfs.h"
28 #include "xhci-dbgcap.h"
88 * Disable interrupts and begin the xHCI halting process.
90 void xhci_quiesce(struct xhci_hcd *xhci) in xhci_quiesce() argument
97 halted = readl(&xhci->op_regs->status) & STS_HALT; in xhci_quiesce()
101 cmd = readl(&xhci in xhci_quiesce()
114 xhci_halt(struct xhci_hcd * xhci) xhci_halt() argument
138 xhci_start(struct xhci_hcd * xhci) xhci_start() argument
175 xhci_reset(struct xhci_hcd * xhci,u64 timeout_us) xhci_reset() argument
234 xhci_zero_64b_regs(struct xhci_hcd * xhci) xhci_zero_64b_regs() argument
320 xhci_disable_interrupter(struct xhci_hcd * xhci,struct xhci_interrupter * ir) xhci_disable_interrupter() argument
360 struct xhci_hcd *xhci; compliance_mode_recovery() local
408 compliance_mode_recovery_timer_init(struct xhci_hcd * xhci) compliance_mode_recovery_timer_init() argument
448 xhci_all_ports_seen_u0(struct xhci_hcd * xhci) xhci_all_ports_seen_u0() argument
453 xhci_hcd_page_size(struct xhci_hcd * xhci) xhci_hcd_page_size() argument
469 xhci_enable_max_dev_slots(struct xhci_hcd * xhci) xhci_enable_max_dev_slots() argument
487 xhci_set_cmd_ring_deq(struct xhci_hcd * xhci) xhci_set_cmd_ring_deq() argument
506 xhci_set_doorbell_ptr(struct xhci_hcd * xhci) xhci_set_doorbell_ptr() argument
520 xhci_set_dev_notifications(struct xhci_hcd * xhci) xhci_set_dev_notifications() argument
539 struct xhci_hcd *xhci = hcd_to_xhci(hcd); xhci_init() local
586 xhci_run_finished(struct xhci_hcd * xhci) xhci_run_finished() argument
638 struct xhci_hcd *xhci = hcd_to_xhci(hcd); xhci_run() local
700 struct xhci_hcd *xhci = hcd_to_xhci(hcd); xhci_stop() local
759 struct xhci_hcd *xhci = hcd_to_xhci(hcd); xhci_shutdown() local
795 xhci_save_registers(struct xhci_hcd * xhci) xhci_save_registers() argument
820 xhci_restore_registers(struct xhci_hcd * xhci) xhci_restore_registers() argument
853 xhci_clear_command_ring(struct xhci_hcd * xhci) xhci_clear_command_ring() argument
886 xhci_disable_hub_port_wake(struct xhci_hcd * xhci,struct xhci_hub * rhub,bool do_wakeup) xhci_disable_hub_port_wake() argument
918 xhci_pending_portevent(struct xhci_hcd * xhci) xhci_pending_portevent() argument
959 xhci_suspend(struct xhci_hcd * xhci,bool do_wakeup) xhci_suspend() argument
1073 xhci_resume(struct xhci_hcd * xhci,bool power_lost,bool is_auto_resume) xhci_resume() argument
1407 struct xhci_hcd *xhci; xhci_map_urb_for_dma() local
1423 struct xhci_hcd *xhci; xhci_unmap_urb_for_dma() local
1496 struct xhci_hcd *xhci; xhci_check_args() local
1540 xhci_check_ep0_maxpacket(struct xhci_hcd * xhci,struct xhci_virt_device * vdev) xhci_check_ep0_maxpacket() argument
1615 struct xhci_hcd *xhci = hcd_to_xhci(hcd); xhci_urb_enqueue() local
1752 struct xhci_hcd *xhci; xhci_urb_dequeue() local
1896 struct xhci_hcd *xhci; xhci_drop_endpoint() local
1979 struct xhci_hcd *xhci; xhci_add_endpoint() local
2077 xhci_zero_in_ctx(struct xhci_hcd * xhci,struct xhci_virt_device * virt_dev) xhci_zero_in_ctx() argument
2111 xhci_configure_endpoint_result(struct xhci_hcd * xhci,struct usb_device * udev,u32 * cmd_status) xhci_configure_endpoint_result() argument
2161 xhci_evaluate_context_result(struct xhci_hcd * xhci,struct usb_device * udev,u32 * cmd_status) xhci_evaluate_context_result() argument
2211 xhci_count_num_new_endpoints(struct xhci_hcd * xhci,struct xhci_input_control_ctx * ctrl_ctx) xhci_count_num_new_endpoints() argument
2232 xhci_count_num_dropped_endpoints(struct xhci_hcd * xhci,struct xhci_input_control_ctx * ctrl_ctx) xhci_count_num_dropped_endpoints() argument
2258 xhci_reserve_host_resources(struct xhci_hcd * xhci,struct xhci_input_control_ctx * ctrl_ctx) xhci_reserve_host_resources() argument
2285 xhci_free_host_resources(struct xhci_hcd * xhci,struct xhci_input_control_ctx * ctrl_ctx) xhci_free_host_resources() argument
2304 xhci_finish_resource_reservation(struct xhci_hcd * xhci,struct xhci_input_control_ctx * ctrl_ctx) xhci_finish_resource_reservation() argument
2350 xhci_check_tt_bw_table(struct xhci_hcd * xhci,struct xhci_virt_device * virt_dev,int old_active_eps) xhci_check_tt_bw_table() argument
2380 xhci_check_ss_bw(struct xhci_hcd * xhci,struct xhci_virt_device * virt_dev) xhci_check_ss_bw() argument
2437 xhci_check_bw_table(struct xhci_hcd * xhci,struct xhci_virt_device * virt_dev,int old_active_eps) xhci_check_bw_table() argument
2638 xhci_drop_ep_from_interval_table(struct xhci_hcd * xhci,struct xhci_bw_info * ep_bw,struct xhci_interval_bw_table * bw_table,struct usb_device * udev,struct xhci_virt_ep * virt_ep,struct xhci_tt_bw_info * tt_info) xhci_drop_ep_from_interval_table() argument
2699 xhci_add_ep_to_interval_table(struct xhci_hcd * xhci,struct xhci_bw_info * ep_bw,struct xhci_interval_bw_table * bw_table,struct usb_device * udev,struct xhci_virt_ep * virt_ep,struct xhci_tt_bw_info * tt_info) xhci_add_ep_to_interval_table() argument
2770 xhci_update_tt_active_eps(struct xhci_hcd * xhci,struct xhci_virt_device * virt_dev,int old_active_eps) xhci_update_tt_active_eps() argument
2790 xhci_reserve_bandwidth(struct xhci_hcd * xhci,struct xhci_virt_device * virt_dev,struct xhci_container_ctx * in_ctx) xhci_reserve_bandwidth() argument
2888 xhci_stop_endpoint_sync(struct xhci_hcd * xhci,struct xhci_virt_ep * ep,int suspend,gfp_t gfp_flags) xhci_stop_endpoint_sync() argument
2928 xhci_configure_endpoint(struct xhci_hcd * xhci,struct usb_device * udev,struct xhci_command * command,bool ctx_change,bool must_succeed) xhci_configure_endpoint() argument
3024 xhci_check_bw_drop_ep_streams(struct xhci_hcd * xhci,struct xhci_virt_device * vdev,int i) xhci_check_bw_drop_ep_streams() argument
3052 struct xhci_hcd *xhci; xhci_check_bandwidth() local
3149 struct xhci_hcd *xhci; xhci_reset_bandwidth() local
3173 xhci_get_port_bandwidth(struct xhci_hcd * xhci,struct xhci_container_ctx * ctx,u8 dev_speed) xhci_get_port_bandwidth() argument
3208 xhci_setup_input_ctx_for_config_ep(struct xhci_hcd * xhci,struct xhci_container_ctx * in_ctx,struct xhci_container_ctx * out_ctx,struct xhci_input_control_ctx * ctrl_ctx,u32 add_flags,u32 drop_flags) xhci_setup_input_ctx_for_config_ep() argument
3223 struct xhci_hcd *xhci; xhci_endpoint_disable() local
3278 struct xhci_hcd *xhci; xhci_endpoint_reset() local
3422 xhci_check_streams_endpoint(struct xhci_hcd * xhci,struct usb_device * udev,struct usb_host_endpoint * ep,unsigned int slot_id) xhci_check_streams_endpoint() argument
3462 xhci_calculate_streams_entries(struct xhci_hcd * xhci,unsigned int * num_streams,unsigned int * num_stream_ctxs) xhci_calculate_streams_entries() argument
3488 xhci_calculate_streams_and_bitmask(struct xhci_hcd * xhci,struct usb_device * udev,struct usb_host_endpoint ** eps,unsigned int num_eps,unsigned int * num_streams,u32 * changed_ep_bitmask) xhci_calculate_streams_and_bitmask() argument
3520 xhci_calculate_no_streams_bitmask(struct xhci_hcd * xhci,struct usb_device * udev,struct usb_host_endpoint ** eps,unsigned int num_eps) xhci_calculate_no_streams_bitmask() argument
3582 struct xhci_hcd *xhci; xhci_alloc_streams() local
3749 struct xhci_hcd *xhci; xhci_free_streams() local
3836 xhci_free_device_endpoint_resources(struct xhci_hcd * xhci,struct xhci_virt_device * virt_dev,bool drop_control_ep) xhci_free_device_endpoint_resources() argument
3883 struct xhci_hcd *xhci; xhci_discover_or_reset_device() local
4061 struct xhci_hcd *xhci = hcd_to_xhci(hcd); xhci_free_dev() local
4098 xhci_disable_slot(struct xhci_hcd * xhci,u32 slot_id) xhci_disable_slot() argument
4148 xhci_reserve_host_control_ep_resources(struct xhci_hcd * xhci) xhci_reserve_host_control_ep_resources() argument
4171 struct xhci_hcd *xhci = hcd_to_xhci(hcd); xhci_alloc_dev() local
4271 struct xhci_hcd *xhci = hcd_to_xhci(hcd); xhci_setup_device() local
4481 xhci_change_max_exit_latency(struct xhci_hcd * xhci,struct usb_device * udev,u16 max_exit_latency) xhci_change_max_exit_latency() argument
4555 xhci_calculate_hird_besl(struct xhci_hcd * xhci,struct usb_device * udev) xhci_calculate_hird_besl() argument
4614 struct xhci_hcd *xhci = hcd_to_xhci(hcd); xhci_set_usb2_hardware_lpm() local
4708 struct xhci_hcd *xhci = hcd_to_xhci(hcd); xhci_update_device() local
4845 xhci_calculate_u1_timeout(struct xhci_hcd * xhci,struct usb_device * udev,struct usb_endpoint_descriptor * desc) xhci_calculate_u1_timeout() argument
4909 xhci_calculate_u2_timeout(struct xhci_hcd * xhci,struct usb_device * udev,struct usb_endpoint_descriptor * desc) xhci_calculate_u2_timeout() argument
4940 xhci_call_host_update_timeout_for_endpoint(struct xhci_hcd * xhci,struct usb_device * udev,struct usb_endpoint_descriptor * desc,enum usb3_link_state state,u16 * timeout) xhci_call_host_update_timeout_for_endpoint() argument
4954 xhci_update_timeout_for_endpoint(struct xhci_hcd * xhci,struct usb_device * udev,struct usb_endpoint_descriptor * desc,enum usb3_link_state state,u16 * timeout) xhci_update_timeout_for_endpoint() argument
4979 xhci_update_timeout_for_interface(struct xhci_hcd * xhci,struct usb_device * udev,struct usb_host_interface * alt,enum usb3_link_state state,u16 * timeout) xhci_update_timeout_for_interface() argument
4995 xhci_check_tier_policy(struct xhci_hcd * xhci,struct usb_device * udev,enum usb3_link_state state) xhci_check_tier_policy() argument
5027 struct xhci_hcd *xhci = hcd_to_xhci(hcd); xhci_calculate_lpm_timeout() local
5135 struct xhci_hcd *xhci; xhci_enable_usb3_lpm_timeout() local
5177 struct xhci_hcd *xhci; xhci_disable_usb3_lpm_timeout() local
5222 struct xhci_hcd *xhci = hcd_to_xhci(hcd); xhci_update_hub_device() local
5323 struct xhci_hcd *xhci = hcd_to_xhci(hcd); xhci_get_frame() local
5328 xhci_hcd_init_usb2_data(struct xhci_hcd * xhci,struct usb_hcd * hcd) xhci_hcd_init_usb2_data() argument
5341 xhci_hcd_init_usb3_data(struct xhci_hcd * xhci,struct usb_hcd * hcd) xhci_hcd_init_usb3_data() argument
5381 struct xhci_hcd *xhci; xhci_gen_setup() local
5507 struct xhci_hcd *xhci; xhci_clear_tt_buffer_complete() local
[all...]
H A Dxhci-mem.c3 * xHCI host controller driver
18 #include "xhci.h"
19 #include "xhci-trace.h"
20 #include "xhci-debugfs.h"
29 static struct xhci_segment *xhci_segment_alloc(struct xhci_hcd *xhci, in xhci_segment_alloc() argument
36 struct device *dev = xhci_to_hcd(xhci)->self.sysdev; in xhci_segment_alloc()
42 seg->trbs = dma_pool_zalloc(xhci->segment_pool, flags, &dma); in xhci_segment_alloc()
52 dma_pool_free(xhci->segment_pool, seg->trbs, dma); in xhci_segment_alloc()
64 static void xhci_segment_free(struct xhci_hcd *xhci, struct xhci_segment *seg) in xhci_segment_free() argument
67 dma_pool_free(xhci in xhci_segment_free()
74 xhci_ring_segments_free(struct xhci_hcd * xhci,struct xhci_ring * ring) xhci_ring_segments_free() argument
116 xhci_initialize_ring_segments(struct xhci_hcd * xhci,struct xhci_ring * ring) xhci_initialize_ring_segments() argument
136 xhci_link_rings(struct xhci_hcd * xhci,struct xhci_ring * src,struct xhci_ring * dst) xhci_link_rings() argument
289 xhci_ring_free(struct xhci_hcd * xhci,struct xhci_ring * ring) xhci_ring_free() argument
330 xhci_alloc_segments_for_ring(struct xhci_hcd * xhci,struct xhci_ring * ring,gfp_t flags) xhci_alloc_segments_for_ring() argument
370 xhci_ring_alloc(struct xhci_hcd * xhci,unsigned int num_segs,enum xhci_ring_type type,unsigned int max_packet,gfp_t flags) xhci_ring_alloc() argument
402 xhci_free_endpoint_ring(struct xhci_hcd * xhci,struct xhci_virt_device * virt_dev,unsigned int ep_index) xhci_free_endpoint_ring() argument
414 xhci_ring_expansion(struct xhci_hcd * xhci,struct xhci_ring * ring,unsigned int num_new_segs,gfp_t flags) xhci_ring_expansion() argument
452 xhci_alloc_container_ctx(struct xhci_hcd * xhci,int type,gfp_t flags) xhci_alloc_container_ctx() argument
478 xhci_free_container_ctx(struct xhci_hcd * xhci,struct xhci_container_ctx * ctx) xhci_free_container_ctx() argument
487 xhci_alloc_port_bw_ctx(struct xhci_hcd * xhci,gfp_t flags) xhci_alloc_port_bw_ctx() argument
507 xhci_free_port_bw_ctx(struct xhci_hcd * xhci,struct xhci_container_ctx * ctx) xhci_free_port_bw_ctx() argument
525 xhci_get_slot_ctx(struct xhci_hcd * xhci,struct xhci_container_ctx * ctx) xhci_get_slot_ctx() argument
535 xhci_get_ep_ctx(struct xhci_hcd * xhci,struct xhci_container_ctx * ctx,unsigned int ep_index) xhci_get_ep_ctx() argument
551 xhci_free_stream_ctx(struct xhci_hcd * xhci,unsigned int num_stream_ctxs,struct xhci_stream_ctx * stream_ctx,dma_addr_t dma) xhci_free_stream_ctx() argument
576 xhci_alloc_stream_ctx(struct xhci_hcd * xhci,unsigned int num_stream_ctxs,dma_addr_t * dma,gfp_t mem_flags) xhci_alloc_stream_ctx() argument
610 xhci_alloc_stream_info(struct xhci_hcd * xhci,unsigned int num_stream_ctxs,unsigned int num_streams,unsigned int max_packet,gfp_t mem_flags) xhci_alloc_stream_info() argument
725 xhci_setup_streams_ep_input_ctx(struct xhci_hcd * xhci,struct xhci_ep_ctx * ep_ctx,struct xhci_stream_info * stream_info) xhci_setup_streams_ep_input_ctx() argument
762 xhci_free_stream_info(struct xhci_hcd * xhci,struct xhci_stream_info * stream_info) xhci_free_stream_info() argument
794 xhci_free_tt_info(struct xhci_hcd * xhci,struct xhci_virt_device * virt_dev,int slot_id) xhci_free_tt_info() argument
823 xhci_alloc_tt_info(struct xhci_hcd * xhci,struct xhci_virt_device * virt_dev,struct usb_device * hdev,struct usb_tt * tt,gfp_t mem_flags) xhci_alloc_tt_info() argument
868 xhci_free_virt_device(struct xhci_hcd * xhci,int slot_id) xhci_free_virt_device() argument
933 xhci_free_virt_devices_depth_first(struct xhci_hcd * xhci,int slot_id) xhci_free_virt_devices_depth_first() argument
968 xhci_alloc_virt_device(struct xhci_hcd * xhci,int slot_id,struct usb_device * udev,gfp_t flags) xhci_alloc_virt_device() argument
1039 xhci_copy_ep0_dequeue_into_input_ctx(struct xhci_hcd * xhci,struct usb_device * udev) xhci_copy_ep0_dequeue_into_input_ctx() argument
1071 xhci_find_rhub_port(struct xhci_hcd * xhci,struct usb_device * udev) xhci_find_rhub_port() argument
1091 xhci_setup_addressable_virt_dev(struct xhci_hcd * xhci,struct usb_device * udev) xhci_setup_addressable_virt_dev() argument
1414 xhci_endpoint_init(struct xhci_hcd * xhci,struct xhci_virt_device * virt_dev,struct usb_device * udev,struct usb_host_endpoint * ep,gfp_t mem_flags) xhci_endpoint_init() argument
1517 xhci_endpoint_zero(struct xhci_hcd * xhci,struct xhci_virt_device * virt_dev,struct usb_host_endpoint * ep) xhci_endpoint_zero() argument
1546 xhci_update_bw_info(struct xhci_hcd * xhci,struct xhci_container_ctx * in_ctx,struct xhci_input_control_ctx * ctrl_ctx,struct xhci_virt_device * virt_dev) xhci_update_bw_info() argument
1604 xhci_endpoint_copy(struct xhci_hcd * xhci,struct xhci_container_ctx * in_ctx,struct xhci_container_ctx * out_ctx,unsigned int ep_index) xhci_endpoint_copy() argument
1630 xhci_slot_copy(struct xhci_hcd * xhci,struct xhci_container_ctx * in_ctx,struct xhci_container_ctx * out_ctx) xhci_slot_copy() argument
1647 scratchpad_alloc(struct xhci_hcd * xhci,gfp_t flags) scratchpad_alloc() argument
1710 scratchpad_free(struct xhci_hcd * xhci) scratchpad_free() argument
1734 xhci_alloc_command(struct xhci_hcd * xhci,bool allocate_completion,gfp_t mem_flags) xhci_alloc_command() argument
1762 xhci_alloc_command_with_ctx(struct xhci_hcd * xhci,bool allocate_completion,gfp_t mem_flags) xhci_alloc_command_with_ctx() argument
1786 xhci_free_command(struct xhci_hcd * xhci,struct xhci_command * command) xhci_free_command() argument
1795 xhci_alloc_erst(struct xhci_hcd * xhci,struct xhci_ring * evt_ring,struct xhci_erst * erst,gfp_t flags) xhci_alloc_erst() argument
1826 xhci_remove_interrupter(struct xhci_hcd * xhci,struct xhci_interrupter * ir) xhci_remove_interrupter() argument
1848 xhci_free_interrupter(struct xhci_hcd * xhci,struct xhci_interrupter * ir) xhci_free_interrupter() argument
1874 struct xhci_hcd *xhci = hcd_to_xhci(hcd); xhci_remove_secondary_interrupter() local
1902 xhci_mem_cleanup(struct xhci_hcd * xhci) xhci_mem_cleanup() argument
2005 xhci_set_hc_event_deq(struct xhci_hcd * xhci,struct xhci_interrupter * ir) xhci_set_hc_event_deq() argument
2022 xhci_add_in_port(struct xhci_hcd * xhci,unsigned int num_ports,__le32 __iomem * addr,int max_caps) xhci_add_in_port() argument
2157 xhci_create_rhub_port_array(struct xhci_hcd * xhci,struct xhci_hub * rhub,gfp_t flags) xhci_create_rhub_port_array() argument
2190 xhci_setup_port_arrays(struct xhci_hcd * xhci,gfp_t flags) xhci_setup_port_arrays() argument
2295 xhci_alloc_interrupter(struct xhci_hcd * xhci,unsigned int segs,gfp_t flags) xhci_alloc_interrupter() argument
2330 xhci_add_interrupter(struct xhci_hcd * xhci,unsigned int intr_num) xhci_add_interrupter() argument
2362 struct xhci_hcd *xhci = hcd_to_xhci(hcd); xhci_create_secondary_interrupter() local
2411 xhci_mem_init(struct xhci_hcd * xhci,gfp_t flags) xhci_mem_init() argument
[all...]
H A Dxhci-plat.c3 * xhci-plat.c - xHCI host controller driver platform Bus Glue.
8 * A lot of code borrowed from the Linux xHCI driver.
24 #include "xhci.h"
25 #include "xhci-plat.h"
26 #include "xhci-mvebu.h"
77 static void xhci_plat_quirks(struct device *dev, struct xhci_hcd *xhci) in xhci_plat_quirks() argument
79 struct xhci_plat_priv *priv = xhci_to_priv(xhci); in xhci_plat_quirks()
81 xhci->quirks |= priv->quirks; in xhci_plat_quirks()
118 .compatible = "generic-xhci",
149 struct xhci_hcd *xhci; xhci_plat_probe() local
426 struct xhci_hcd *xhci = hcd_to_xhci(hcd); xhci_plat_remove() local
460 struct xhci_hcd *xhci = hcd_to_xhci(hcd); xhci_plat_suspend() local
489 struct xhci_hcd *xhci = hcd_to_xhci(hcd); xhci_plat_resume_common() local
540 struct xhci_hcd *xhci = hcd_to_xhci(hcd); xhci_plat_runtime_suspend() local
553 struct xhci_hcd *xhci = hcd_to_xhci(hcd); xhci_plat_runtime_resume() local
[all...]
H A Dxhci-pci.c3 * xHCI host controller driver PCI Bus Glue.
18 #include "xhci.h"
19 #include "xhci-trace.h"
20 #include "xhci-pci.h"
116 static void xhci_msix_sync_irqs(struct xhci_hcd *xhci) in xhci_msix_sync_irqs() argument
118 struct usb_hcd *hcd = xhci_to_hcd(xhci); in xhci_msix_sync_irqs()
129 static void xhci_cleanup_msix(struct xhci_hcd *xhci) in xhci_cleanup_msix() argument
131 struct usb_hcd *hcd = xhci_to_hcd(xhci); in xhci_cleanup_msix()
137 free_irq(pci_irq_vector(pdev, 0), xhci_to_hcd(xhci)); in xhci_cleanup_msix()
146 struct xhci_hcd *xhci in xhci_try_enable_msi() local
226 struct xhci_hcd *xhci = hcd_to_xhci(hcd); xhci_pci_stop() local
235 xhci_pci_reinit(struct xhci_hcd * xhci,struct pci_dev * pdev) xhci_pci_reinit() argument
251 xhci_pci_quirks(struct device * dev,struct xhci_hcd * xhci) xhci_pci_quirks() argument
534 struct xhci_hcd *xhci = hcd_to_xhci(hcd); xhci_find_lpm_incapable_ports() local
568 struct xhci_hcd *xhci; xhci_pci_setup() local
612 struct xhci_hcd *xhci; xhci_pci_common_probe() local
703 struct xhci_hcd *xhci; xhci_pci_remove() local
739 struct xhci_hcd *xhci = hcd_to_xhci(hcd); xhci_ssic_port_unused_quirk() local
774 struct xhci_hcd *xhci = hcd_to_xhci(hcd); xhci_pme_quirk() local
795 struct xhci_hcd *xhci = hcd_to_xhci(hcd); xhci_pci_suspend() local
835 struct xhci_hcd *xhci = hcd_to_xhci(hcd); xhci_pci_resume() local
874 struct xhci_hcd *xhci = hcd_to_xhci(hcd); xhci_pci_poweroff_late() local
923 struct xhci_hcd *xhci = hcd_to_xhci(hcd); xhci_pci_shutdown() local
[all...]
H A DMakefile6 # tell define_trace.h where to find the xhci trace header
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
[all...]
H A Dxhci-debugfs.c3 * xhci-debugfs.c - xHCI debugfs interface
13 #include "xhci.h"
14 #include "xhci-debugfs.h"
86 static struct xhci_regset *xhci_debugfs_alloc_regset(struct xhci_hcd *xhci) in xhci_debugfs_alloc_regset() argument
99 list_add_tail(&regset->list, &xhci->regset_list); in xhci_debugfs_alloc_regset()
114 static void xhci_debugfs_regset(struct xhci_hcd *xhci, u32 base, in xhci_debugfs_regset() argument
122 struct usb_hcd *hcd = xhci_to_hcd(xhci); in xhci_debugfs_regset()
124 rgs = xhci_debugfs_alloc_regset(xhci); in xhci_debugfs_regset()
141 static void xhci_debugfs_extcap_regset(struct xhci_hcd *xhci, in argument
249 struct xhci_hcd *xhci; xhci_slot_context_show() local
271 struct xhci_hcd *xhci; xhci_endpoint_context_show() local
348 struct xhci_hcd *xhci = hcd_to_xhci(port->rhub->hcd); xhci_port_write() local
386 xhci_debugfs_create_files(struct xhci_hcd * xhci,struct xhci_file_map * files,size_t nentries,void * data,struct dentry * parent,const struct file_operations * fops) xhci_debugfs_create_files() argument
399 xhci_debugfs_create_ring_dir(struct xhci_hcd * xhci,struct xhci_ring ** ring,const char * name,struct dentry * parent) xhci_debugfs_create_ring_dir() argument
413 xhci_debugfs_create_context_files(struct xhci_hcd * xhci,struct dentry * parent,int slot_id) xhci_debugfs_create_context_files() argument
425 xhci_debugfs_create_endpoint(struct xhci_hcd * xhci,struct xhci_virt_device * dev,int ep_index) xhci_debugfs_create_endpoint() argument
452 xhci_debugfs_remove_endpoint(struct xhci_hcd * xhci,struct xhci_virt_device * dev,int ep_index) xhci_debugfs_remove_endpoint() argument
548 xhci_debugfs_create_stream_files(struct xhci_hcd * xhci,struct xhci_virt_device * dev,int ep_index) xhci_debugfs_create_stream_files() argument
573 xhci_debugfs_create_slot(struct xhci_hcd * xhci,int slot_id) xhci_debugfs_create_slot() argument
593 xhci_debugfs_remove_slot(struct xhci_hcd * xhci,int slot_id) xhci_debugfs_remove_slot() argument
613 xhci_debugfs_create_ports(struct xhci_hcd * xhci,struct dentry * parent) xhci_debugfs_create_ports() argument
634 xhci_port_bw_show(struct xhci_hcd * xhci,u8 dev_speed,struct seq_file * s) xhci_port_bw_show() argument
676 struct xhci_hcd *xhci = (struct xhci_hcd *)s->private; xhci_ss_bw_show() local
685 struct xhci_hcd *xhci = (struct xhci_hcd *)s->private; xhci_hs_bw_show() local
694 struct xhci_hcd *xhci = (struct xhci_hcd *)s->private; xhci_fs_bw_show() local
729 xhci_debugfs_create_bandwidth(struct xhci_hcd * xhci,struct dentry * parent) xhci_debugfs_create_bandwidth() argument
740 xhci_debugfs_init(struct xhci_hcd * xhci) xhci_debugfs_init() argument
794 xhci_debugfs_exit(struct xhci_hcd * xhci) xhci_debugfs_exit() argument
[all...]
H A Dxhci-hub.c3 * xHCI host controller driver
17 #include "xhci.h"
18 #include "xhci-trace.h"
36 static int xhci_create_usb3x_bos_desc(struct xhci_hcd *xhci, char *buf, in xhci_create_usb3x_bos_desc() argument
61 for (i = 0; i < xhci->num_port_caps; i++) { in xhci_create_usb3x_bos_desc()
62 u8 major = xhci->port_caps[i].maj_rev; in xhci_create_usb3x_bos_desc()
63 u8 minor = xhci->port_caps[i].min_rev; in xhci_create_usb3x_bos_desc()
68 port_cap = &xhci->port_caps[i]; in xhci_create_usb3x_bos_desc()
112 reg = readl(&xhci->cap_regs->hcc_params); in xhci_create_usb3x_bos_desc()
116 if ((xhci in xhci_create_usb3x_bos_desc()
256 xhci_common_hub_descriptor(struct xhci_hcd * xhci,struct usb_hub_descriptor * desc,int ports) xhci_common_hub_descriptor() argument
279 xhci_usb2_hub_descriptor(struct usb_hcd * hcd,struct xhci_hcd * xhci,struct usb_hub_descriptor * desc) xhci_usb2_hub_descriptor() argument
334 xhci_usb3_hub_descriptor(struct usb_hcd * hcd,struct xhci_hcd * xhci,struct usb_hub_descriptor * desc) xhci_usb3_hub_descriptor() argument
367 xhci_hub_descriptor(struct usb_hcd * hcd,struct xhci_hcd * xhci,struct usb_hub_descriptor * desc) xhci_hub_descriptor() argument
458 xhci_stop_device(struct xhci_hcd * xhci,int slot_id,int suspend) xhci_stop_device() argument
531 xhci_ring_device(struct xhci_hcd * xhci,int slot_id) xhci_ring_device() argument
550 xhci_disable_port(struct xhci_hcd * xhci,struct xhci_port * port) xhci_disable_port() argument
580 xhci_clear_port_change_bit(struct xhci_hcd * xhci,u16 wValue,u16 wIndex,__le32 __iomem * addr,u32 port_status) xhci_clear_port_change_bit() argument
633 struct xhci_hcd *xhci = hcd_to_xhci(hcd); xhci_get_rhub() local
645 xhci_set_port_power(struct xhci_hcd * xhci,struct xhci_port * port,bool on,unsigned long * flags) xhci_set_port_power() argument
678 xhci_port_set_test_mode(struct xhci_hcd * xhci,u16 test_mode,u16 wIndex) xhci_port_set_test_mode() argument
694 xhci_enter_test_mode(struct xhci_hcd * xhci,u16 test_mode,u16 wIndex,unsigned long * flags) xhci_enter_test_mode() argument
737 xhci_exit_test_mode(struct xhci_hcd * xhci) xhci_exit_test_mode() argument
771 xhci_port_is_tunneled(struct xhci_hcd * xhci,struct xhci_port * port) xhci_port_is_tunneled() argument
799 xhci_set_link_state(struct xhci_hcd * xhci,struct xhci_port * port,u32 link_state) xhci_set_link_state() argument
816 xhci_set_remote_wake_mask(struct xhci_hcd * xhci,struct xhci_port * port,u16 wake_mask) xhci_set_remote_wake_mask() argument
843 xhci_test_and_clear_bit(struct xhci_hcd * xhci,struct xhci_port * port,u32 port_bit) xhci_test_and_clear_bit() argument
857 xhci_hub_report_usb3_link_state(struct xhci_hcd * xhci,u32 * status,u32 status_reg) xhci_hub_report_usb3_link_state() argument
917 xhci_del_comp_mod_timer(struct xhci_hcd * xhci,u32 status,u16 wIndex) xhci_del_comp_mod_timer() argument
943 struct xhci_hcd *xhci; xhci_handle_usb2_port_link_resume() local
1046 struct xhci_hcd *xhci; xhci_get_usb3_port_status() local
1209 struct xhci_hcd *xhci = hcd_to_xhci(hcd); xhci_hub_control() local
1647 struct xhci_hcd *xhci = hcd_to_xhci(hcd); xhci_hub_status_data() local
1719 struct xhci_hcd *xhci = hcd_to_xhci(hcd); xhci_bus_suspend() local
1875 struct xhci_hcd *xhci = hcd_to_xhci(hcd); xhci_bus_resume() local
[all...]
H A Dxhci-sideband.c4 * xHCI host controller sideband support
11 #include <linux/usb/xhci-sideband.h>
14 #include "xhci.h"
28 dev = xhci_to_hcd(sb->xhci)->self.sysdev; in xhci_ring_to_sgtable()
83 xhci_stop_endpoint_sync(sb->xhci, ep, 0, GFP_KERNEL); in __xhci_sideband_remove_endpoint()
96 * Notifies the xHCI sideband client driver of a xHCI transfer ring free
145 * smaller than for xhci it won't be able to access the endpoint ring in xhci_sideband_add_endpoint()
213 return xhci_stop_endpoint_sync(sb->xhci, ep, 0, GFP_KERNEL); in xhci_sideband_stop_endpoint()
251 * If a secondary xhci interupte
375 struct xhci_hcd *xhci = hcd_to_xhci(hcd); xhci_sideband_register() local
432 struct xhci_hcd *xhci; xhci_sideband_unregister() local
[all...]
H A Dxhci-histb.c3 * xHCI host controller driver for HiSilicon STB SoCs
19 #include "xhci.h"
69 * refer to xHCI spec in xhci_histb_config()
193 struct xhci_hcd *xhci; in xhci_histb_probe() local
252 xhci = hcd_to_xhci(hcd); in xhci_histb_probe()
256 xhci->main_hcd = hcd; in xhci_histb_probe()
257 xhci->shared_hcd = usb_create_shared_hcd(driver, dev, dev_name(dev), in xhci_histb_probe()
259 if (!xhci->shared_hcd) { in xhci_histb_probe()
265 xhci->quirks |= XHCI_HW_LPM_DISABLE; in xhci_histb_probe()
268 xhci in xhci_histb_probe()
316 struct xhci_hcd *xhci = hcd_to_xhci(hcd); xhci_histb_remove() local
338 struct xhci_hcd *xhci = hcd_to_xhci(hcd); xhci_histb_suspend() local
353 struct xhci_hcd *xhci = hcd_to_xhci(hcd); xhci_histb_resume() local
[all...]
H A Dxhci-debugfs.h3 * xhci-debugfs.h - xHCI debugfs interface
107 void xhci_debugfs_init(struct xhci_hcd *xhci);
108 void xhci_debugfs_exit(struct xhci_hcd *xhci);
111 void xhci_debugfs_create_slot(struct xhci_hcd *xhci, int slot_id);
112 void xhci_debugfs_remove_slot(struct xhci_hcd *xhci, int slot_id);
113 void xhci_debugfs_create_endpoint(struct xhci_hcd *xhci,
116 void xhci_debugfs_remove_endpoint(struct xhci_hcd *xhci,
119 void xhci_debugfs_create_stream_files(struct xhci_hcd *xhci,
123 static inline void xhci_debugfs_init(struct xhci_hcd *xhci) { } in xhci_debugfs_init() argument
124 xhci_debugfs_exit(struct xhci_hcd * xhci) xhci_debugfs_exit() argument
130 xhci_debugfs_create_endpoint(struct xhci_hcd * xhci,struct xhci_virt_device * virt_dev,int ep_index) xhci_debugfs_create_endpoint() argument
134 xhci_debugfs_remove_endpoint(struct xhci_hcd * xhci,struct xhci_virt_device * virt_dev,int ep_index) xhci_debugfs_remove_endpoint() argument
138 xhci_debugfs_create_stream_files(struct xhci_hcd * xhci,struct xhci_virt_device * virt_dev,int ep_index) xhci_debugfs_create_stream_files() argument
[all...]
H A Dxhci-mtk.c3 * MediaTek xHCI Host Controller Driver
24 #include "xhci.h"
25 #include "xhci-mtk.h"
61 /* xHCI CSR */
145 if (!of_device_is_compatible(dev->of_node, "mediatek,mt8195-xhci")) in xhci_mtk_set_frame_interval()
451 static void xhci_mtk_quirks(struct device *dev, struct xhci_hcd *xhci) in xhci_mtk_quirks() argument
453 struct usb_hcd *hcd = xhci_to_hcd(xhci); in xhci_mtk_quirks()
456 xhci->quirks |= XHCI_MTK_HOST; in xhci_mtk_quirks()
461 xhci->quirks |= XHCI_SPURIOUS_SUCCESS; in xhci_mtk_quirks()
463 xhci in xhci_mtk_quirks()
515 struct xhci_hcd *xhci; xhci_mtk_probe() local
711 struct xhci_hcd *xhci = hcd_to_xhci(hcd); xhci_mtk_remove() local
743 struct xhci_hcd *xhci = hcd_to_xhci(hcd); xhci_mtk_suspend() local
778 struct xhci_hcd *xhci = hcd_to_xhci(hcd); xhci_mtk_resume() local
810 struct xhci_hcd *xhci = hcd_to_xhci(mtk->hcd); xhci_mtk_runtime_suspend() local
826 struct xhci_hcd *xhci = hcd_to_xhci(mtk->hcd); xhci_mtk_runtime_resume() local
[all...]
H A Dxhci.h4 * xHCI host controller driver
22 /* Code sharing between pci-quirks and xhci hcd */
23 #include "xhci-ext-caps.h"
26 #include "xhci-port.h"
27 #include "xhci-caps.h"
32 /* xHCI PCI Configuration Registers */
41 * xHCI register interface.
42 * This corresponds to the eXtensible Host Controller Interface (xHCI)
47 * struct xhci_cap_regs - xHCI Host Controller Capability Registers.
55 * @hcc_params2: HCCPARAMS2 Capability Parameters 2, xhci 1.
678 struct xhci_hcd *xhci; global() member
1710 xhci_to_hcd(struct xhci_hcd * xhci) xhci_to_hcd() argument
1715 xhci_get_usb3_hcd(struct xhci_hcd * xhci) xhci_get_usb3_hcd() argument
1728 struct xhci_hcd *xhci = hcd_to_xhci(hcd); xhci_hcd_is_usb3() local
1733 xhci_has_one_roothub(struct xhci_hcd * xhci) xhci_has_one_roothub() argument
1739 xhci_dbg(xhci,fmt,args...) global() argument
1741 xhci_err(xhci,fmt,args...) global() argument
1743 xhci_warn(xhci,fmt,args...) global() argument
1745 xhci_info(xhci,fmt,args...) global() argument
1757 xhci_read_64(const struct xhci_hcd * xhci,__le64 __iomem * regs) xhci_read_64() argument
1762 xhci_write_64(struct xhci_hcd * xhci,const u64 val,__le64 __iomem * regs) xhci_write_64() argument
1779 xhci_link_chain_quirk(struct xhci_hcd * xhci,enum xhci_ring_type type) xhci_link_chain_quirk() argument
1997 xhci_urb_to_transfer_ring(struct xhci_hcd * xhci,struct urb * urb) xhci_urb_to_transfer_ring() argument
[all...]
H A Dxhci-rcar.c3 * xHCI host controller driver for R-Car SoCs
15 #include "xhci.h"
16 #include "xhci-plat.h"
17 #include "xhci-rzv2m.h"
93 return of_device_is_compatible(node, "renesas,xhci-r8a7790") || in xhci_rcar_is_gen2()
94 of_device_is_compatible(node, "renesas,xhci-r8a7791") || in xhci_rcar_is_gen2()
95 of_device_is_compatible(node, "renesas,xhci-r8a7793") || in xhci_rcar_is_gen2()
96 of_device_is_compatible(node, "renesas,rcar-gen2-xhci"); in xhci_rcar_is_gen2()
206 * pointers. So, this driver clears the AC64 bit of xhci->hcc_params
238 .compatible = "renesas,xhci
[all...]
H A Dxhci-ext-caps.c3 * XHCI extended capability handling
11 #include "xhci.h"
28 static int xhci_create_intel_xhci_sw_pdev(struct xhci_hcd *xhci, u32 cap_offset) in xhci_create_intel_xhci_sw_pdev() argument
30 struct usb_hcd *hcd = xhci_to_hcd(xhci); in xhci_create_intel_xhci_sw_pdev()
39 xhci_err(xhci, "couldn't allocate %s platform device\n", in xhci_create_intel_xhci_sw_pdev()
84 int xhci_ext_cap_init(struct xhci_hcd *xhci) in xhci_ext_cap_init() argument
86 void __iomem *base = &xhci->cap_regs->hc_capbase; in xhci_ext_cap_init()
97 if (xhci->quirks & XHCI_INTEL_USB_ROLE_SW) { in xhci_ext_cap_init()
98 ret = xhci_create_intel_xhci_sw_pdev(xhci, in xhci_ext_cap_init()
H A DKconfig21 tristate "xHCI HCD (USB 3.0) support"
24 The eXtensible Host Controller Interface (xHCI) is standard for USB 3.0
28 module will be called xhci-hcd.
32 bool "xHCI support for debug capability"
35 Say 'Y' to enable the support for the xHCI debug capability. Make
36 sure that your xHCI host supports the extended debug capability and
37 you want a TTY serial device based on the xHCI debug capability
46 tristate "Support for additional Renesas xHCI controller with firmware"
49 Say 'Y' to enable the support for the Renesas xHCI controller with
55 tristate "Generic xHCI drive
[all...]
H A Dxhci-dbg.c3 * xHCI host controller driver
11 #include "xhci.h"
13 char *xhci_get_slot_state(struct xhci_hcd *xhci, in xhci_get_slot_state() argument
16 struct xhci_slot_ctx *slot_ctx = xhci_get_slot_ctx(xhci, ctx); in xhci_get_slot_state()
22 void xhci_dbg_trace(struct xhci_hcd *xhci, void (*trace)(struct va_format *), in xhci_dbg_trace() argument
31 xhci_dbg(xhci, "%pV\n", &vaf); in xhci_dbg_trace()
/linux/Documentation/devicetree/bindings/usb/
H A Drenesas,usb-xhci.yaml4 $id: http://devicetree.org/schemas/usb/renesas,usb-xhci.yaml#
7 title: Renesas USB xHCI controllers
18 - renesas,xhci-r8a7742 # RZ/G1H
19 - renesas,xhci-r8a7743 # RZ/G1M
20 - renesas,xhci-r8a7744 # RZ/G1N
21 - renesas,xhci-r8a7790 # R-Car H2
22 - renesas,xhci-r8a7791 # R-Car M2-W
23 - renesas,xhci-r8a7793 # R-Car M2-N
24 - const: renesas,rcar-gen2-xhci # R-Car Gen2 and RZ/G1
27 - renesas,xhci
[all...]
H A Dgeneric-xhci.yaml4 $id: http://devicetree.org/schemas/usb/generic-xhci.yaml#
7 title: USB xHCI Controller
15 - description: Generic xHCI device
16 const: generic-xhci
20 - marvell,armada3700-xhci
21 - marvell,armada-375-xhci
22 - marvell,armada-380-xhci
23 - marvell,armada-8k-xhci
24 - const: generic-xhci
28 - brcm,bcm2711-xhci
[all...]
/linux/drivers/usb/dwc3/
H A Dhost.c16 #include "../host/xhci-port.h"
17 #include "../host/xhci-ext-caps.h"
18 #include "../host/xhci-caps.h"
19 #include "../host/xhci-plat.h"
38 /* xhci regs are not mapped yet, do it temporarily here */ in dwc3_power_off_all_roothub_ports()
59 dev_err(dwc->dev, "xhci base reg invalid\n"); in dwc3_power_off_all_roothub_ports()
130 struct platform_device *xhci; in dwc3_host_init() local
136 * mode to avoid VBUS glitch happen when xhci get reset later. in dwc3_host_init()
144 xhci = platform_device_alloc("xhci in dwc3_host_init()
[all...]
/linux/Documentation/devicetree/bindings/phy/
H A Drealtek,usb2phy.yaml15 The USB 2.0 PHY driver is designed to support the XHCI controller. The SoCs
16 support multiple XHCI controllers. One PHY device node maps to one XHCI
20 The USB architecture includes three XHCI controllers.
21 Each XHCI maps to one USB 2.0 PHY and map one USB 3.0 PHY on some
23 XHCI controller#0 -- usb2phy -- phy#0
25 XHCI controller#1 -- usb2phy -- phy#0
26 XHCI controller#2 -- usb2phy -- phy#0
30 The USB architecture includes two XHCI controllers.
33 XHCI controlle
[all...]
H A Drealtek,usb3phy.yaml15 The USB 3.0 PHY driver is designed to support the XHCI controller. The SoCs
16 support multiple XHCI controllers. One PHY device node maps to one XHCI
20 The USB architecture includes three XHCI controllers.
21 Each XHCI maps to one USB 2.0 PHY and map one USB 3.0 PHY on some
23 XHCI controller#0 -- usb2phy -- phy#0
25 XHCI controller#1 -- usb2phy -- phy#0
26 XHCI controller#2 -- usb2phy -- phy#0
30 The USB architecture includes three XHCI controllers.
31 Each XHCI map
[all...]
H A Dbrcm,brcmstb-usb-phy.yaml9 description: Broadcom's PHY that handles EHCI/OHCI and/or XHCI
28 - description: XHCI EC register
29 - description: XHCI GBL register
88 brcm,has-xhci:
89 description: Indicates the PHY has an XHCI PHY.
109 - brcm,has-xhci
169 brcm,has-xhci;
195 brcm,has-xhci;
/linux/drivers/usb/cdns3/
H A Dhost.c18 #include "../host/xhci.h"
19 #include "../host/xhci-plat.h"
34 struct xhci_hcd *xhci = hcd_to_xhci(hcd); in xhci_cdns3_plat_start() local
38 value = readl(&xhci->op_regs->command); in xhci_cdns3_plat_start()
40 writel(value, &xhci->op_regs->command); in xhci_cdns3_plat_start()
71 struct platform_device *xhci; in __cdns_host_init() local
77 xhci = platform_device_alloc("xhci-hcd", PLATFORM_DEVID_AUTO); in __cdns_host_init()
78 if (!xhci) { in __cdns_host_init()
79 dev_err(cdns->dev, "couldn't allocate xHCI devic in __cdns_host_init()
[all...]
/linux/include/linux/usb/
H A Dxhci-sideband.h3 * xHCI host controller sideband support
15 #define EP_CTX_PER_DEV 31 /* FIXME defined twice, from xhci.h */
40 * @xhci: The xhci host controller the usb device is connected to
44 * @type: xHCI sideband type
47 * @notify_client: callback for xHCI sideband sequences
52 struct xhci_hcd *xhci; member
58 /* Synchronizing xHCI sideband operations with client drivers operations */
/linux/Documentation/ABI/testing/
H A Dsysfs-bus-pci-drivers-xhci_hcd5 xHCI compatible USB host controllers (i.e. super-speed
12 The DbC debug device shares a root port with xHCI host.
15 to xHCI.
21 port will roll back to the xHCI.
32 presented in the USB device descriptor by this xhci debug
45 presented in the USB device descriptor by this xhci debug
57 presented in the USB device descriptor by this xhci debug
70 presented in the USB Interface descriptor by the xhci debug

12345678