
Hi Sylwester,
On Wed, Apr 22, 2020 at 12:51 AM Sylwester Nawrocki s.nawrocki@samsung.com wrote:
This patch adds a Kconfig option which allows accessing 64-bit xHCI IO registers only with 2 double word accesses rather than using a single quad word access. There might be HW configurations where single quad word access doesn't work, even though the CPU is 64-bit. That seems to be the case on rpi4 board with Broadcom BCM2711 SoC, where the VL805 USB xHCI hub is connected to the PCIe controller behind the SCB bridge.
Signed-off-by: Sylwester Nawrocki s.nawrocki@samsung.com
So far I couldn't come up with anything better to make the xHCI host controller working on the rpi4 board. For some reason dereferencing a 64-bit pointer to access 64-bit registers doesn't work there, might be a limitation of the PCIe bridge behind the SCB. In Linux always 2 double word accesses are used.
If Linux always uses 2 double word accesses, let's simply do the same in U-Boot by removing the readq/writeq.
drivers/usb/host/Kconfig | 7 +++++++ include/usb/xhci.h | 4 ++-- 2 files changed, 9 insertions(+), 2 deletions(-)
Regards, Bin