H A D | xhci-ring.c | 326 unsigned int slot_id, xhci_ring_ep_doorbell() 330 __le32 __iomem *db_addr = &xhci->dba->doorbell[slot_id]; xhci_ring_ep_doorbell() 331 struct xhci_virt_ep *ep = &xhci->devs[slot_id]->eps[ep_index]; xhci_ring_ep_doorbell() 351 unsigned int slot_id, ring_doorbell_for_active_rings() 357 ep = &xhci->devs[slot_id]->eps[ep_index]; ring_doorbell_for_active_rings() 362 xhci_ring_ep_doorbell(xhci, slot_id, ep_index, 0); ring_doorbell_for_active_rings() 370 xhci_ring_ep_doorbell(xhci, slot_id, ep_index, ring_doorbell_for_active_rings() 376 unsigned int slot_id, unsigned int ep_index, xhci_triad_to_transfer_ring() 381 ep = &xhci->devs[slot_id]->eps[ep_index]; xhci_triad_to_transfer_ring() 390 slot_id, ep_index); xhci_triad_to_transfer_ring() 401 slot_id, ep_index, xhci_triad_to_transfer_ring() 414 return xhci_triad_to_transfer_ring(xhci, urb->dev->slot_id, xhci_urb_to_transfer_ring() 437 unsigned int slot_id, unsigned int ep_index, xhci_find_new_dequeue_state() 441 struct xhci_virt_device *dev = xhci->devs[slot_id]; xhci_find_new_dequeue_state() 451 ep_ring = xhci_triad_to_transfer_ring(xhci, slot_id, xhci_find_new_dequeue_state() 636 static void xhci_handle_cmd_stop_ep(struct xhci_hcd *xhci, int slot_id, xhci_handle_cmd_stop_ep() argument 649 if (!xhci->devs[slot_id]) xhci_handle_cmd_stop_ep() 652 slot_id); xhci_handle_cmd_stop_ep() 658 ep = &xhci->devs[slot_id]->eps[ep_index]; xhci_handle_cmd_stop_ep() 663 ring_doorbell_for_active_rings(xhci, slot_id, ep_index); xhci_handle_cmd_stop_ep() 702 xhci_find_new_dequeue_state(xhci, slot_id, ep_index, xhci_handle_cmd_stop_ep() 720 xhci_queue_new_dequeue_state(xhci, slot_id, ep_index, xhci_handle_cmd_stop_ep() 725 ring_doorbell_for_active_rings(xhci, slot_id, ep_index); xhci_handle_cmd_stop_ep() 772 int slot_id, int ep_index) xhci_kill_endpoint_urbs() 778 ep = &xhci->devs[slot_id]->eps[ep_index]; xhci_kill_endpoint_urbs() 787 slot_id, ep_index, stream_id + 1); xhci_kill_endpoint_urbs() 797 slot_id, ep_index); xhci_kill_endpoint_urbs() 953 static void xhci_handle_cmd_set_deq(struct xhci_hcd *xhci, int slot_id, xhci_handle_cmd_set_deq() argument 966 dev = xhci->devs[slot_id]; xhci_handle_cmd_set_deq() 1000 slot_id); xhci_handle_cmd_set_deq() 1044 ring_doorbell_for_active_rings(xhci, slot_id, ep_index); xhci_handle_cmd_set_deq() 1047 static void xhci_handle_cmd_reset_ep(struct xhci_hcd *xhci, int slot_id, xhci_handle_cmd_reset_ep() argument 1073 xhci->devs[slot_id]->in_ctx->dma, slot_id, xhci_handle_cmd_reset_ep() 1078 xhci->devs[slot_id]->eps[ep_index].ep_state &= ~EP_HALTED; xhci_handle_cmd_reset_ep() 1082 static void xhci_handle_cmd_enable_slot(struct xhci_hcd *xhci, int slot_id, xhci_handle_cmd_enable_slot() argument 1086 xhci->slot_id = slot_id; xhci_handle_cmd_enable_slot() 1088 xhci->slot_id = 0; xhci_handle_cmd_enable_slot() 1091 static void xhci_handle_cmd_disable_slot(struct xhci_hcd *xhci, int slot_id) xhci_handle_cmd_disable_slot() argument 1095 virt_dev = xhci->devs[slot_id]; xhci_handle_cmd_disable_slot() 1101 xhci_free_virt_device(xhci, slot_id); xhci_handle_cmd_disable_slot() 1104 static void xhci_handle_cmd_config_ep(struct xhci_hcd *xhci, int slot_id, xhci_handle_cmd_config_ep() argument 1121 virt_dev = xhci->devs[slot_id]; xhci_handle_cmd_config_ep() 1151 ring_doorbell_for_active_rings(xhci, slot_id, ep_index); xhci_handle_cmd_config_ep() 1157 static void xhci_handle_cmd_reset_dev(struct xhci_hcd *xhci, int slot_id, xhci_handle_cmd_reset_dev() argument 1161 if (!xhci->devs[slot_id]) xhci_handle_cmd_reset_dev() 1163 "for disabled slot %u\n", slot_id); xhci_handle_cmd_reset_dev() 1292 int slot_id = TRB_TO_SLOT_ID(le32_to_cpu(event->flags)); handle_cmd_completion() local 1349 xhci_handle_cmd_enable_slot(xhci, slot_id, cmd_comp_code); handle_cmd_completion() 1352 xhci_handle_cmd_disable_slot(xhci, slot_id); handle_cmd_completion() 1356 xhci_handle_cmd_config_ep(xhci, slot_id, event, handle_cmd_completion() 1364 WARN_ON(slot_id != TRB_TO_SLOT_ID( handle_cmd_completion() 1366 xhci_handle_cmd_stop_ep(xhci, slot_id, cmd_trb, event); handle_cmd_completion() 1369 WARN_ON(slot_id != TRB_TO_SLOT_ID( handle_cmd_completion() 1371 xhci_handle_cmd_set_deq(xhci, slot_id, cmd_trb, cmd_comp_code); handle_cmd_completion() 1379 WARN_ON(slot_id != TRB_TO_SLOT_ID( handle_cmd_completion() 1381 xhci_handle_cmd_reset_ep(xhci, slot_id, cmd_trb, cmd_comp_code); handle_cmd_completion() 1387 slot_id = TRB_TO_SLOT_ID( handle_cmd_completion() 1389 xhci_handle_cmd_reset_dev(xhci, slot_id, event); handle_cmd_completion() 1465 u32 slot_id; handle_device_notification() local 1468 slot_id = TRB_TO_SLOT_ID(le32_to_cpu(event->generic.field[3])); handle_device_notification() 1469 if (!xhci->devs[slot_id]) { handle_device_notification() 1471 "unused slot %u\n", slot_id); handle_device_notification() 1476 slot_id); handle_device_notification() 1477 udev = xhci->devs[slot_id]->udev; handle_device_notification() 1489 int slot_id; handle_port_status() local 1607 slot_id = xhci_find_slot_id_by_port(hcd, xhci, handle_port_status() 1609 if (slot_id && xhci->devs[slot_id]) handle_port_status() 1610 xhci_ring_device(xhci, slot_id); handle_port_status() 1734 unsigned int slot_id, unsigned int ep_index, xhci_cleanup_halted_endpoint() 1738 struct xhci_virt_ep *ep = &xhci->devs[slot_id]->eps[ep_index]; xhci_cleanup_halted_endpoint() 1747 xhci_queue_reset_ep(xhci, command, slot_id, ep_index); xhci_cleanup_halted_endpoint() 1806 unsigned int slot_id; finish_td() local 1814 slot_id = TRB_TO_SLOT_ID(le32_to_cpu(event->flags)); finish_td() 1815 xdev = xhci->devs[slot_id]; finish_td() 1840 xhci_cleanup_halted_endpoint(xhci, slot_id, ep_index, finish_td() 1899 unsigned int slot_id; process_ctrl_td() local 1904 slot_id = TRB_TO_SLOT_ID(le32_to_cpu(event->flags)); process_ctrl_td() 1905 xdev = xhci->devs[slot_id]; process_ctrl_td() 2228 unsigned int slot_id; variable 2244 slot_id = TRB_TO_SLOT_ID(le32_to_cpu(event->flags)); 2245 xdev = xhci->devs[slot_id]; 2950 static void giveback_first_trb(struct xhci_hcd *xhci, int slot_id, giveback_first_trb() argument 2963 xhci_ring_ep_doorbell(xhci, slot_id, ep_index, stream_id); giveback_first_trb() 2973 struct urb *urb, int slot_id, unsigned int ep_index) xhci_queue_intr_tx() 2976 xhci->devs[slot_id]->out_ctx, ep_index); xhci_queue_intr_tx() 3000 return xhci_queue_bulk_tx(xhci, mem_flags, urb, slot_id, ep_index); xhci_queue_intr_tx() 3046 struct urb *urb, int slot_id, unsigned int ep_index) queue_bulk_sg_tx() 3074 ret = prepare_transfer(xhci, xhci->devs[slot_id], queue_bulk_sg_tx() 3088 ret = prepare_transfer(xhci, xhci->devs[slot_id], queue_bulk_sg_tx() 3210 giveback_first_trb(xhci, slot_id, ep_index, urb->stream_id, queue_bulk_sg_tx() 3217 struct urb *urb, int slot_id, unsigned int ep_index) xhci_queue_bulk_tx() 3236 return queue_bulk_sg_tx(xhci, mem_flags, urb, slot_id, ep_index); xhci_queue_bulk_tx() 3259 ret = prepare_transfer(xhci, xhci->devs[slot_id], xhci_queue_bulk_tx() 3273 ret = prepare_transfer(xhci, xhci->devs[slot_id], xhci_queue_bulk_tx() 3362 giveback_first_trb(xhci, slot_id, ep_index, urb->stream_id, xhci_queue_bulk_tx() 3369 struct urb *urb, int slot_id, unsigned int ep_index) xhci_queue_ctrl_tx() 3401 ret = prepare_transfer(xhci, xhci->devs[slot_id], xhci_queue_ctrl_tx() 3485 giveback_first_trb(xhci, slot_id, ep_index, 0, xhci_queue_ctrl_tx() 3566 struct urb *urb, int slot_id, unsigned int ep_index) xhci_queue_isoc_tx() 3581 ep_ring = xhci->devs[slot_id]->eps[ep_index].ring; xhci_queue_isoc_tx() 3618 ret = prepare_transfer(xhci, xhci->devs[slot_id], ep_index, xhci_queue_isoc_tx() 3714 giveback_first_trb(xhci, slot_id, ep_index, urb->stream_id, xhci_queue_isoc_tx() 3749 struct urb *urb, int slot_id, unsigned int ep_index) xhci_queue_isoc_tx_prepare() 3760 xdev = xhci->devs[slot_id]; xhci_queue_isoc_tx_prepare() 3807 return xhci_queue_isoc_tx(xhci, mem_flags, urb, slot_id, ep_index); xhci_queue_isoc_tx_prepare() 3863 u32 trb_type, u32 slot_id) xhci_queue_slot_control() 3866 TRB_TYPE(trb_type) | SLOT_ID_FOR_TRB(slot_id), false); xhci_queue_slot_control() 3871 dma_addr_t in_ctx_ptr, u32 slot_id, enum xhci_setup_dev setup) xhci_queue_address_device() 3875 TRB_TYPE(TRB_ADDR_DEV) | SLOT_ID_FOR_TRB(slot_id) xhci_queue_address_device() 3887 u32 slot_id) xhci_queue_reset_device() 3890 TRB_TYPE(TRB_RESET_DEV) | SLOT_ID_FOR_TRB(slot_id), xhci_queue_reset_device() 3897 u32 slot_id, bool command_must_succeed) xhci_queue_configure_endpoint() 3901 TRB_TYPE(TRB_CONFIG_EP) | SLOT_ID_FOR_TRB(slot_id), xhci_queue_configure_endpoint() 3907 dma_addr_t in_ctx_ptr, u32 slot_id, bool command_must_succeed) xhci_queue_evaluate_context() 3911 TRB_TYPE(TRB_EVAL_CONTEXT) | SLOT_ID_FOR_TRB(slot_id), xhci_queue_evaluate_context() 3920 int slot_id, unsigned int ep_index, int suspend) xhci_queue_stop_endpoint() 3922 u32 trb_slot_id = SLOT_ID_FOR_TRB(slot_id); xhci_queue_stop_endpoint() 3933 unsigned int slot_id, unsigned int ep_index, xhci_queue_new_dequeue_state() 3938 u32 trb_slot_id = SLOT_ID_FOR_TRB(slot_id); xhci_queue_new_dequeue_state() 3964 ep = &xhci->devs[slot_id]->eps[ep_index]; xhci_queue_new_dequeue_state() 4000 int slot_id, unsigned int ep_index) xhci_queue_reset_ep() 4002 u32 trb_slot_id = SLOT_ID_FOR_TRB(slot_id); xhci_queue_reset_ep() 325 xhci_ring_ep_doorbell(struct xhci_hcd *xhci, unsigned int slot_id, unsigned int ep_index, unsigned int stream_id) xhci_ring_ep_doorbell() argument 350 ring_doorbell_for_active_rings(struct xhci_hcd *xhci, unsigned int slot_id, unsigned int ep_index) ring_doorbell_for_active_rings() argument 375 xhci_triad_to_transfer_ring(struct xhci_hcd *xhci, unsigned int slot_id, unsigned int ep_index, unsigned int stream_id) xhci_triad_to_transfer_ring() argument 436 xhci_find_new_dequeue_state(struct xhci_hcd *xhci, unsigned int slot_id, unsigned int ep_index, unsigned int stream_id, struct xhci_td *cur_td, struct xhci_dequeue_state *state) xhci_find_new_dequeue_state() argument 771 xhci_kill_endpoint_urbs(struct xhci_hcd *xhci, int slot_id, int ep_index) xhci_kill_endpoint_urbs() argument 1733 xhci_cleanup_halted_endpoint(struct xhci_hcd *xhci, unsigned int slot_id, unsigned int ep_index, unsigned int stream_id, struct xhci_td *td, union xhci_trb *event_trb) xhci_cleanup_halted_endpoint() argument 2972 xhci_queue_intr_tx(struct xhci_hcd *xhci, gfp_t mem_flags, struct urb *urb, int slot_id, unsigned int ep_index) xhci_queue_intr_tx() argument 3045 queue_bulk_sg_tx(struct xhci_hcd *xhci, gfp_t mem_flags, struct urb *urb, int slot_id, unsigned int ep_index) queue_bulk_sg_tx() argument 3216 xhci_queue_bulk_tx(struct xhci_hcd *xhci, gfp_t mem_flags, struct urb *urb, int slot_id, unsigned int ep_index) xhci_queue_bulk_tx() argument 3368 xhci_queue_ctrl_tx(struct xhci_hcd *xhci, gfp_t mem_flags, struct urb *urb, int slot_id, unsigned int ep_index) xhci_queue_ctrl_tx() argument 3565 xhci_queue_isoc_tx(struct xhci_hcd *xhci, gfp_t mem_flags, struct urb *urb, int slot_id, unsigned int ep_index) xhci_queue_isoc_tx() argument 3748 xhci_queue_isoc_tx_prepare(struct xhci_hcd *xhci, gfp_t mem_flags, struct urb *urb, int slot_id, unsigned int ep_index) xhci_queue_isoc_tx_prepare() argument 3862 xhci_queue_slot_control(struct xhci_hcd *xhci, struct xhci_command *cmd, u32 trb_type, u32 slot_id) xhci_queue_slot_control() argument 3870 xhci_queue_address_device(struct xhci_hcd *xhci, struct xhci_command *cmd, dma_addr_t in_ctx_ptr, u32 slot_id, enum xhci_setup_dev setup) xhci_queue_address_device() argument 3886 xhci_queue_reset_device(struct xhci_hcd *xhci, struct xhci_command *cmd, u32 slot_id) xhci_queue_reset_device() argument 3895 xhci_queue_configure_endpoint(struct xhci_hcd *xhci, struct xhci_command *cmd, dma_addr_t in_ctx_ptr, u32 slot_id, bool command_must_succeed) xhci_queue_configure_endpoint() argument 3906 xhci_queue_evaluate_context(struct xhci_hcd *xhci, struct xhci_command *cmd, dma_addr_t in_ctx_ptr, u32 slot_id, bool command_must_succeed) xhci_queue_evaluate_context() argument 3919 xhci_queue_stop_endpoint(struct xhci_hcd *xhci, struct xhci_command *cmd, int slot_id, unsigned int ep_index, int suspend) xhci_queue_stop_endpoint() argument 3932 xhci_queue_new_dequeue_state(struct xhci_hcd *xhci, unsigned int slot_id, unsigned int ep_index, unsigned int stream_id, struct xhci_dequeue_state *deq_state) xhci_queue_new_dequeue_state() argument 3999 xhci_queue_reset_ep(struct xhci_hcd *xhci, struct xhci_command *cmd, int slot_id, unsigned int ep_index) xhci_queue_reset_ep() argument
|