xhci_hcd 0000:14:00.0: WARN Successful completion on short TX: needs XHCI_TRUST_TX_LENGTH quirk? xhci_hcd 0000:14:00.0: WARN Successful completion on short TX: needs XHCI_TRUST_TX_LENGTH quirk? handle_tx_event: 34 callbacks suppressed 1. 2. 3. 4. 修改方式 这个问题其实在内核3.18版本里...
[ 1076.860561] [<ffff000008114830>] __handle_domain_irq+0x60/0xb8 [ 1076.866399] [<ffff000008080fe0>] gic_handle_irq+0x78/0x174 [ 1076.871888] Exception stack(0xffff000008c83dd0 to 0xffff000008c83f10) [ 1076.878327] 3dc0: 0000000000000000 0000000000000000 [ 1076.886164] 3d...
@@ -1527,9 +1527,9 @@ bandwidth_change: xhci_handle_cmd_reset_ep(xhci, event, xhci->cmd_ring->dequeue); break; case TRB_TYPE(TRB_RESET_DEV): + WARN_ON(slot_id != TRB_TO_SLOT_ID( + le32_to_cpu(xhci->cmd_ring->dequeue->generic.field[3]))); xhci_dbg(xhci, "Completed re...
trigger_load_balance+0xe1/0x240 [1471790.881201] [<ffffffffabb795b1>] xhci_msi_irq+0x11/0x20 [1471790.881212] [<ffffffffab758664>] __handle_irq_event_percpu+0x44/0x1c0 [1471790.881222] [<ffffffffab758812>] handle_irq_event_percpu+0x32/0x80 [1471790.881231] [<ffffffffab75889c>] ...
We can see the TRB_PORT_STATUS event being handled in xhci_handle_event() function but the loop continues despite there being nothing connected to USB any longer. The only thing we can do to get out of this situation is either to unbind the driver or reboot the board. What can we do...
* change event is generated, so we use the saved status from that event. */intetxhci_hub_status_data(struct usb_hcd *hcd,char*buf){unsignedlongflags; u32 temp, status; u32 mask;inti, retval;structxhci_hcd*xhci=hcd_to_xhci(hcd);intmax_ports; ...
> xHCI spec 4.19.2). Otherwise, the port status change event for this > root port will not be generated anymore, then root port would look > like “dead” for user and can’t be recovered until a Host Controller > Reset(HCRST) ...
* we must handle that */if(TRB_TYPE_LINK_LE32(cmd->command_trb->link.control)) cmd->command_trb = xhci->cmd_ring->enq_seg->next->trbs; list_add_tail(&cmd->cmd_list, &virt_dev->cmd_list); etxhci_queue_stop_endpoint(xhci, slot_id,0, suspend); ...
xhci->event_ring->dequeue) { xhci->error_bitmask |= 1 << 1; @@ -351,6 +545,13 @@ void handle_event(struct xhci_hcd *xhci) handle_port_status(xhci, event); update_ptrs = 0; break; case TRB_TYPE(TRB_TRANSFER): ret = handle_tx_event(xhci, &event->trans_event); if (ret ...
xhci_hcd 0000:14:00.0: WARN Successful completion on short TX: needs XHCI_TRUST_TX_LENGTH quirk?handle_tx_event: 34 callbacks suppressed 修改方式 这个问题其实在内核3.18版本里已经由大佬(Daniel Thompson)进行修复了。 具体提交代码信息如下: 修改内容...