Lines Matching defs:xhci_hcd

955 	struct xhci_hcd		*xhci;
1760 /* There is one xhci_hcd structure per controller */
1761 struct xhci_hcd {
1964 static inline struct xhci_hcd *hcd_to_xhci(struct usb_hcd *hcd)
1973 return (struct xhci_hcd *) (primary_hcd->hcd_priv);
1976 static inline struct usb_hcd *xhci_to_hcd(struct xhci_hcd *xhci)
1981 static inline struct usb_hcd *xhci_get_usb3_hcd(struct xhci_hcd *xhci)
1994 struct xhci_hcd *xhci = hcd_to_xhci(hcd);
1999 static inline bool xhci_has_one_roothub(struct xhci_hcd *xhci)
2025 static inline u64 xhci_read_64(const struct xhci_hcd *xhci,
2030 static inline void xhci_write_64(struct xhci_hcd *xhci,
2036 static inline int xhci_link_trb_quirk(struct xhci_hcd *xhci)
2042 char *xhci_get_slot_state(struct xhci_hcd *xhci,
2044 void xhci_dbg_trace(struct xhci_hcd *xhci, void (*trace)(struct va_format *),
2048 void xhci_mem_cleanup(struct xhci_hcd *xhci);
2049 int xhci_mem_init(struct xhci_hcd *xhci, gfp_t flags);
2050 void xhci_free_virt_device(struct xhci_hcd *xhci, int slot_id);
2051 int xhci_alloc_virt_device(struct xhci_hcd *xhci, int slot_id, struct usb_device *udev, gfp_t flags);
2052 int xhci_setup_addressable_virt_dev(struct xhci_hcd *xhci, struct usb_device *udev);
2053 void xhci_copy_ep0_dequeue_into_input_ctx(struct xhci_hcd *xhci,
2057 void xhci_endpoint_zero(struct xhci_hcd *xhci, struct xhci_virt_device *virt_dev, struct usb_host_endpoint *ep);
2058 void xhci_update_tt_active_eps(struct xhci_hcd *xhci,
2062 void xhci_update_bw_info(struct xhci_hcd *xhci,
2066 void xhci_endpoint_copy(struct xhci_hcd *xhci,
2070 void xhci_slot_copy(struct xhci_hcd *xhci,
2073 int xhci_endpoint_init(struct xhci_hcd *xhci, struct xhci_virt_device *virt_dev,
2076 struct xhci_ring *xhci_ring_alloc(struct xhci_hcd *xhci,
2079 void xhci_ring_free(struct xhci_hcd *xhci, struct xhci_ring *ring);
2080 int xhci_ring_expansion(struct xhci_hcd *xhci, struct xhci_ring *ring,
2082 int xhci_alloc_erst(struct xhci_hcd *xhci,
2088 void xhci_free_erst(struct xhci_hcd *xhci, struct xhci_erst *erst);
2089 void xhci_free_endpoint_ring(struct xhci_hcd *xhci,
2092 struct xhci_stream_info *xhci_alloc_stream_info(struct xhci_hcd *xhci,
2096 void xhci_free_stream_info(struct xhci_hcd *xhci,
2098 void xhci_setup_streams_ep_input_ctx(struct xhci_hcd *xhci,
2103 void xhci_free_device_endpoint_resources(struct xhci_hcd *xhci,
2108 struct xhci_command *xhci_alloc_command(struct xhci_hcd *xhci,
2110 struct xhci_command *xhci_alloc_command_with_ctx(struct xhci_hcd *xhci,
2113 void xhci_free_command(struct xhci_hcd *xhci,
2115 struct xhci_container_ctx *xhci_alloc_container_ctx(struct xhci_hcd *xhci,
2117 void xhci_free_container_ctx(struct xhci_hcd *xhci,
2121 typedef void (*xhci_get_quirks_t)(struct device *, struct xhci_hcd *);
2123 void xhci_quiesce(struct xhci_hcd *xhci);
2124 int xhci_halt(struct xhci_hcd *xhci);
2125 int xhci_start(struct xhci_hcd *xhci);
2126 int xhci_reset(struct xhci_hcd *xhci, u64 timeout_us);
2141 int xhci_disable_slot(struct xhci_hcd *xhci, u32 slot_id);
2142 int xhci_ext_cap_init(struct xhci_hcd *xhci);
2144 int xhci_suspend(struct xhci_hcd *xhci, bool do_wakeup);
2145 int xhci_resume(struct xhci_hcd *xhci, pm_message_t msg);
2150 int xhci_alloc_tt_info(struct xhci_hcd *xhci,
2157 struct xhci_segment *trb_in_td(struct xhci_hcd *xhci,
2160 int xhci_is_vendor_info_code(struct xhci_hcd *xhci, unsigned int trb_comp_code);
2161 void xhci_ring_cmd_db(struct xhci_hcd *xhci);
2162 int xhci_queue_slot_control(struct xhci_hcd *xhci, struct xhci_command *cmd,
2164 int xhci_queue_address_device(struct xhci_hcd *xhci, struct xhci_command *cmd,
2166 int xhci_queue_vendor_command(struct xhci_hcd *xhci, struct xhci_command *cmd,
2168 int xhci_queue_stop_endpoint(struct xhci_hcd *xhci, struct xhci_command *cmd,
2170 int xhci_queue_ctrl_tx(struct xhci_hcd *xhci, gfp_t mem_flags, struct urb *urb,
2172 int xhci_queue_bulk_tx(struct xhci_hcd *xhci, gfp_t mem_flags, struct urb *urb,
2174 int xhci_queue_intr_tx(struct xhci_hcd *xhci, gfp_t mem_flags, struct urb *urb,
2176 int xhci_queue_isoc_tx_prepare(struct xhci_hcd *xhci, gfp_t mem_flags,
2178 int xhci_queue_configure_endpoint(struct xhci_hcd *xhci,
2181 int xhci_queue_evaluate_context(struct xhci_hcd *xhci, struct xhci_command *cmd,
2183 int xhci_queue_reset_ep(struct xhci_hcd *xhci, struct xhci_command *cmd,
2186 int xhci_queue_reset_device(struct xhci_hcd *xhci, struct xhci_command *cmd,
2188 void xhci_cleanup_stalled_ring(struct xhci_hcd *xhci, unsigned int slot_id,
2194 void xhci_ring_ep_doorbell(struct xhci_hcd *xhci, unsigned int slot_id,
2196 void xhci_ring_doorbell_for_active_rings(struct xhci_hcd *xhci,
2199 void xhci_cleanup_command_queue(struct xhci_hcd *xhci);
2200 void inc_deq(struct xhci_hcd *xhci, struct xhci_ring *ring);
2204 void xhci_set_link_state(struct xhci_hcd *xhci, struct xhci_port *port,
2206 void xhci_test_and_clear_bit(struct xhci_hcd *xhci, struct xhci_port *port,
2214 void xhci_hc_died(struct xhci_hcd *xhci);
2227 int xhci_find_slot_id_by_port(struct usb_hcd *hcd, struct xhci_hcd *xhci,
2229 void xhci_ring_device(struct xhci_hcd *xhci, int slot_id);
2233 struct xhci_slot_ctx *xhci_get_slot_ctx(struct xhci_hcd *xhci, struct xhci_container_ctx *ctx);
2234 struct xhci_ep_ctx *xhci_get_ep_ctx(struct xhci_hcd *xhci, struct xhci_container_ctx *ctx, unsigned int ep_index);
2236 struct xhci_ring *xhci_triad_to_transfer_ring(struct xhci_hcd *xhci,
2240 static inline struct xhci_ring *xhci_urb_to_transfer_ring(struct xhci_hcd *xhci,