aboutsummaryrefslogtreecommitdiff
path: root/lib/libusb/usb-xhci.c
diff options
context:
space:
mode:
authorNikunj A Dadhania <nikunj@linux.vnet.ibm.com>2015-09-18 14:16:56 +0530
committerAlexey Kardashevskiy <aik@ozlabs.ru>2015-10-06 12:50:23 +1100
commit41c2c5df4f582f2ffab0d5cfe34264f7eb9d0962 (patch)
treef9da234cb0e86e8b891bf5e2d4abf011d660c2b8 /lib/libusb/usb-xhci.c
parentf591c5d7a2bc7b1613357595d203a7fd1759c4e8 (diff)
downloadSLOF-41c2c5df4f582f2ffab0d5cfe34264f7eb9d0962.zip
SLOF-41c2c5df4f582f2ffab0d5cfe34264f7eb9d0962.tar.gz
SLOF-41c2c5df4f582f2ffab0d5cfe34264f7eb9d0962.tar.bz2
usb-xhci: event trbs does not need link trb
Signed-off-by: Nikunj A Dadhania <nikunj@linux.vnet.ibm.com> Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>
Diffstat (limited to 'lib/libusb/usb-xhci.c')
-rw-r--r--lib/libusb/usb-xhci.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/lib/libusb/usb-xhci.c b/lib/libusb/usb-xhci.c
index 0c3d6e4..aa8a066 100644
--- a/lib/libusb/usb-xhci.c
+++ b/lib/libusb/usb-xhci.c
@@ -388,10 +388,12 @@ static void xhci_init_seg(struct xhci_seg *seg, uint32_t size, uint32_t type)
seg->deq = (uint64_t)seg->trbs;
memset((void *)seg->trbs, 0, size);
- link =(struct xhci_link_trb *) (seg->trbs + seg->size - 1);
- link->addr = cpu_to_le64(seg->trbs_dma);
- link->field2 = 0;
- link->field3 = cpu_to_le32(0x1 | TRB_CMD_TYPE(TRB_LINK));
+ if (type != TYPE_EVENT) {
+ link =(struct xhci_link_trb *) (seg->trbs + seg->size - 1);
+ link->addr = cpu_to_le64(seg->trbs_dma);
+ link->field2 = 0;
+ link->field3 = cpu_to_le32(0x1 | TRB_CMD_TYPE(TRB_LINK));
+ }
return;
}