aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/usb/host/xhci.h
diff options
context:
space:
mode:
authorSarah Sharp <sarah.a.sharp@linux.intel.com>2009-08-07 17:04:43 -0400
committerGreg Kroah-Hartman <gregkh@suse.de>2009-09-23 09:46:17 -0400
commitf2217e8edd95b0428d8123d426e0097a5e955f9f (patch)
tree2364fb618dcae52cc8b6a947ce75152983dc3a9a /drivers/usb/host/xhci.h
parent018218d1d9eb06116d24a02dd5e7a390f0353d0f (diff)
USB: xhci: Configure endpoint code refactoring.
Refactor out the code issue, wait for, and parse the event completion code for a configure endpoint command. Modify it to support the evaluate context command, which has a very similar submission process. Add functions to copy parts of the output context into the input context (which will be used in the evaluate context command). Signed-off-by: Sarah Sharp <sarah.a.sharp@linux.intel.com> Cc: stable <stable@kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/usb/host/xhci.h')
-rw-r--r--drivers/usb/host/xhci.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/usb/host/xhci.h b/drivers/usb/host/xhci.h
index 79ea627e8b8a..a8fe21762052 100644
--- a/drivers/usb/host/xhci.h
+++ b/drivers/usb/host/xhci.h
@@ -1168,6 +1168,9 @@ int xhci_setup_addressable_virt_dev(struct xhci_hcd *xhci, struct usb_device *ud
1168unsigned int xhci_get_endpoint_index(struct usb_endpoint_descriptor *desc); 1168unsigned int xhci_get_endpoint_index(struct usb_endpoint_descriptor *desc);
1169unsigned int xhci_get_endpoint_flag(struct usb_endpoint_descriptor *desc); 1169unsigned int xhci_get_endpoint_flag(struct usb_endpoint_descriptor *desc);
1170void xhci_endpoint_zero(struct xhci_hcd *xhci, struct xhci_virt_device *virt_dev, struct usb_host_endpoint *ep); 1170void xhci_endpoint_zero(struct xhci_hcd *xhci, struct xhci_virt_device *virt_dev, struct usb_host_endpoint *ep);
1171void xhci_endpoint_copy(struct xhci_hcd *xhci,
1172 struct xhci_virt_device *vdev, unsigned int ep_index);
1173void xhci_slot_copy(struct xhci_hcd *xhci, struct xhci_virt_device *vdev);
1171int xhci_endpoint_init(struct xhci_hcd *xhci, struct xhci_virt_device *virt_dev, 1174int xhci_endpoint_init(struct xhci_hcd *xhci, struct xhci_virt_device *virt_dev,
1172 struct usb_device *udev, struct usb_host_endpoint *ep, 1175 struct usb_device *udev, struct usb_host_endpoint *ep,
1173 gfp_t mem_flags); 1176 gfp_t mem_flags);
@@ -1216,6 +1219,8 @@ int xhci_queue_bulk_tx(struct xhci_hcd *xhci, gfp_t mem_flags, struct urb *urb,
1216 int slot_id, unsigned int ep_index); 1219 int slot_id, unsigned int ep_index);
1217int xhci_queue_configure_endpoint(struct xhci_hcd *xhci, dma_addr_t in_ctx_ptr, 1220int xhci_queue_configure_endpoint(struct xhci_hcd *xhci, dma_addr_t in_ctx_ptr,
1218 u32 slot_id); 1221 u32 slot_id);
1222int xhci_queue_evaluate_context(struct xhci_hcd *xhci, dma_addr_t in_ctx_ptr,
1223 u32 slot_id);
1219int xhci_queue_reset_ep(struct xhci_hcd *xhci, int slot_id, 1224int xhci_queue_reset_ep(struct xhci_hcd *xhci, int slot_id,
1220 unsigned int ep_index); 1225 unsigned int ep_index);
1221void xhci_find_new_dequeue_state(struct xhci_hcd *xhci, 1226void xhci_find_new_dequeue_state(struct xhci_hcd *xhci,