Lines Matching refs:slot_ctx
161 static __always_inline void __write_slot(const uint64_t vaddr, struct xhci_slot_context_t *slot_ctx) in __write_slot() argument
163 memcpy((void *)vaddr, slot_ctx, sizeof(struct xhci_slot_context_t)); in __write_slot()
173 static __always_inline void __read_from_slot(struct xhci_slot_context_t *slot_ctx, uint64_t slot_va… in __read_from_slot() argument
175 memcpy(slot_ctx, (void *)slot_vaddr, sizeof(struct xhci_slot_context_t)); in __read_from_slot()
901 struct xhci_slot_context_t slot_ctx = {0}; in xhci_initialize_slot() local
902 slot_ctx.entries = 1; in xhci_initialize_slot()
903 slot_ctx.speed = speed; in xhci_initialize_slot()
904 slot_ctx.route_string = 0; in xhci_initialize_slot()
905 slot_ctx.rh_port_num = port + 1; // 由于xhci控制器是1-base的,因此把驱动程序中存储的端口号加1,才是真实的端口号 in xhci_initialize_slot()
906 slot_ctx.max_exit_latency = 0; // 稍后会计算这个值 in xhci_initialize_slot()
907 slot_ctx.int_target = 0; // 当前全部使用第0个interrupter in xhci_initialize_slot()
908 slot_ctx.slot_state = XHCI_SLOT_STATE_DISABLED_OR_ENABLED; in xhci_initialize_slot()
909 slot_ctx.device_address = 0; in xhci_initialize_slot()
912 __write_slot(device_context_vaddr, &slot_ctx); in xhci_initialize_slot()