usbxhci: fix wrong control endpoint 0 output device context address

the calculation for the control endpoint0 output device context
missed the context size scaling shift, resulting in botched
stall handling as we would not read the correct endpoint status
value.

note, this calculation only affected control endpoint 0, which
was handled separately from all other endpoints.
This commit is contained in:
cinap_lenrek 2020-05-10 02:43:39 +02:00
parent 2c3e60d95b
commit c474179f9a

View file

@ -1239,7 +1239,7 @@ epopen(Ep *ep)
slot->nep = 1;
ring->slot = slot;
ring->doorbell = &ctlr->dba[slot->id];
ring->ctx = &slot->obase[8];
ring->ctx = &slot->obase[8<<ctlr->csz];
/* (input) control context */
w = slot->ibase;