summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Rini <trini@konsulko.com>2026-01-25 09:27:34 -0600
committerTom Rini <trini@konsulko.com>2026-01-25 09:27:34 -0600
commit63597329c0350485729e0d39379d3c7b24e0c5ce (patch)
treedacb402beb1a27487db170a52b9c1c896184469a
parent807bcd844afeadbfe47ac132524cc7e3b699bc46 (diff)
parentba94fb3003bd4155284c00c1b37613dd8e284816 (diff)
Merge branch 'master' of git://source.denx.de/u-boot-usb
- XHCI DMA bugfix
-rw-r--r--drivers/usb/host/xhci-ring.c10
1 files changed, 4 insertions, 6 deletions
diff --git a/drivers/usb/host/xhci-ring.c b/drivers/usb/host/xhci-ring.c
index 34eb4536f0e..6f5c4ec97b6 100644
--- a/drivers/usb/host/xhci-ring.c
+++ b/drivers/usb/host/xhci-ring.c
@@ -523,9 +523,8 @@ static void reset_ep(struct usb_device *udev, int ep_index)
field = le32_to_cpu(event->trans_event.flags);
BUG_ON(TRB_TO_SLOT_ID(field) != udev->slot_id);
xhci_acknowledge_event(ctrl);
-
- addr = xhci_trb_virt_to_dma(ring->enq_seg,
- (void *)((uintptr_t)ring->enqueue | ring->cycle_state));
+ addr = xhci_trb_virt_to_dma(ring->enq_seg, ring->enqueue) |
+ ring->cycle_state;
xhci_queue_command(ctrl, addr, udev->slot_id, ep_index, TRB_SET_DEQ);
event = xhci_wait_for_event(ctrl, TRB_COMPLETION);
if (!event)
@@ -582,9 +581,8 @@ static void abort_td(struct usb_device *udev, int ep_index)
TRB_TO_SLOT_ID(le32_to_cpu(event->event_cmd.flags)) != udev->slot_id ||
(comp != COMP_SUCCESS && comp != COMP_CTX_STATE));
xhci_acknowledge_event(ctrl);
-
- addr = xhci_trb_virt_to_dma(ring->enq_seg,
- (void *)((uintptr_t)ring->enqueue | ring->cycle_state));
+ addr = xhci_trb_virt_to_dma(ring->enq_seg, ring->enqueue) |
+ ring->cycle_state;
xhci_queue_command(ctrl, addr, udev->slot_id, ep_index, TRB_SET_DEQ);
event = xhci_wait_for_event(ctrl, TRB_COMPLETION);
if (!event)