On 4/5/25 07:25, Philippe Mathieu-Daudé wrote:
Hi Guenter,

On 5/4/25 16:00, Guenter Roeck wrote:
This series is needed to support the USB interface on imx8mp-evk when
booting the Linux kernel.

According to the XHCI specification, ERSTBA should be written in Low-High
order. The Linux kernel writes the high word first. This results in an
initialization failure.

The following information is found in the Linux kernel commit log.

[Synopsys]- The host controller was design to support ERST setting
during the RUN state. But since there is a limitation in controller
in supporting separate ERSTBA_HI and ERSTBA_LO programming,
It is supported when the ERSTBA is programmed in 64bit,
or in 32 bit mode ERSTBA_HI before ERSTBA_LO

[Synopsys]- The internal initialization of event ring fetches
the "Event Ring Segment Table Entry" based on the indication of
ERSTBA_LO written.

Add property to support writing the high word first. Enable it
for dwc3.

----------------------------------------------------------------
Guenter Roeck (2):
       hw: usb: xhci: Add property to support writing ERSTBA in high-low order
       hw/usb/hcd-dwc3: Set erstba-hi-lo property

What about using .impl.min_access_size = 8 instead?

Could you try this patch, or provide me with a reproducer?


You should find everything you need to reproduce the problem at

http://server.roeck-us.net/qemu/xhci/

Please let me know if you need anything else.

Thanks,
Guenter


Reply via email to