--- zzzz-none-000/linux-3.10.107/drivers/usb/host/xhci-mem.c 2017-06-27 09:49:32.000000000 +0000 +++ vr9-7490-729/linux-3.10.107/drivers/usb/host/xhci-mem.c 2021-11-10 11:53:55.000000000 +0000 @@ -55,7 +55,9 @@ /* If the cycle state is 0, set the cycle bit to 1 for all the TRBs */ if (cycle_state == 0) { for (i = 0; i < TRBS_PER_SEGMENT; i++) - seg->trbs[i].link.control |= TRB_CYCLE; + /* 20160627 AVM/WK Endianess bug fixed, taken from kernel 3.14 */ + // seg->trbs[i].link.control |= TRB_CYCLE; + seg->trbs[i].link.control |= le32_to_cpu(TRB_CYCLE); } seg->dma = dma; seg->next = NULL; @@ -306,7 +308,9 @@ sizeof(union xhci_trb)*TRBS_PER_SEGMENT); if (cycle_state == 0) { for (i = 0; i < TRBS_PER_SEGMENT; i++) - seg->trbs[i].link.control |= TRB_CYCLE; + /* 20160627 AVM/WK Endianess bug fixed, taken from kernel 3.14 */ + // seg->trbs[i].link.control |= TRB_CYCLE; + seg->trbs[i].link.control |= le32_to_cpu(TRB_CYCLE); } /* All endpoint rings have link TRBs */ xhci_link_segments(xhci, seg, seg->next, type);