Lines Matching refs:slot

19 // list of devices pending result of enable slot command
67 xhci_slot_t* slot = &xhci->slots[slot_id];
68 if (slot->sc)
70 slot->hub_address = hub_address;
71 slot->port = port;
72 slot->rh_port = (hub_address == 0 ? port : xhci->slots[hub_address].rh_port);
73 slot->speed = speed;
77 zx_status_t status = io_buffer_init(&slot->buffer, xhci->bti_handle, dc_length,
80 zxlogf(ERROR, "xhci_address_device: failed to allocate io_buffer for slot\n");
83 uint8_t* device_context = (uint8_t *)io_buffer_virt(&slot->buffer);
84 xhci_endpoint_t* ep = &slot->eps[0];
103 slot->sc = (xhci_slot_context_t*)device_context;
106 slot->eps[i].epc = (xhci_endpoint_context_t*)device_context;
110 // Enable slot context and ep0 context
113 // Setup slot context
120 slot->rh_port);
172 // install our device context for the slot
173 xhci_set_dbcaa(xhci, slot_id, io_buffer_phys(&slot->buffer));
276 zxlogf(TRACE, "cleaning up slot %d\n", slot_id);
277 xhci_slot_t* slot = &xhci->slots[slot_id];
279 xhci_endpoint_t* ep = &slot->eps[i];
285 io_buffer_release(&slot->buffer);
286 slot->sc = NULL;
287 slot->hub_address = 0;
288 slot->port = 0;
289 slot->rh_port = 0;
290 slot->port = USB_SPEED_UNDEFINED;
306 zxlogf(ERROR, "xhci_handle_enumerate_device: unable to get a slot\n");
385 xhci_slot_t* slot = &xhci->slots[slot_id];
386 xhci_endpoint_t* ep = &slot->eps[ep_index];
433 xhci_slot_t* slot = NULL;
447 slot = test_slot;
451 if (!slot) {
452 zxlogf(ERROR, "slot not found in xhci_handle_disconnect_device\n");
458 if (slot->eps[i].state != EP_STATE_DEAD) {
599 xhci_slot_t* slot = &xhci->slots[slot_id];
600 usb_speed_t speed = slot->speed;
602 xhci_endpoint_t* ep = &slot->eps[index];
660 zx_paddr_t tr_dequeue = xhci_transfer_ring_start_phys(&slot->eps[index].transfer_ring);
683 XHCI_WRITE32(&sc->sc0, XHCI_READ32(&slot->sc->sc0));
684 XHCI_WRITE32(&sc->sc1, XHCI_READ32(&slot->sc->sc1));
685 XHCI_WRITE32(&sc->sc2, XHCI_READ32(&slot->sc->sc2));
725 xhci_slot_t* slot = &xhci->slots[slot_id];
741 XHCI_WRITE32(&sc->sc0, XHCI_READ32(&slot->sc->sc0) | SLOT_CTX_HUB);
742 XHCI_WRITE32(&sc->sc1, XHCI_READ32(&slot->sc->sc1));
743 XHCI_WRITE32(&sc->sc2, XHCI_READ32(&slot->sc->sc2));
761 while (slot->hub_address != 0) {
763 slot = &xhci->slots[slot->hub_address];