From: Heiko Schocher <hs@denx.de>
Date: Tue, 16 Jul 2019 08:49:04 +0000 (+0200)
Subject: usb, ohci: fix ohci swap register access
X-Git-Tag: v2025.01-rc5-pxa1908~2836^2~8
X-Git-Url: http://git.dujemihanovic.xyz/img/static/html/index.html?a=commitdiff_plain;h=a5a7486e62b0aa4afa1fe1a3b30f7dd682eb1ff8;p=u-boot.git

usb, ohci: fix ohci swap register access

commit 57faca19a82f ("drivers: USB: OHCI: allow compilation for 64-bit targets")
broke ohci support for the mpc85xx based socrates board,
as it removed volatile keyword from ohci_readl/writel.

Fix this so usb works again on socrates board.

Signed-off-by: Heiko Schocher <hs@denx.de>
---

diff --git a/drivers/usb/host/ohci.h b/drivers/usb/host/ohci.h
index f9f02cb09c..9b264bd92a 100644
--- a/drivers/usb/host/ohci.h
+++ b/drivers/usb/host/ohci.h
@@ -14,8 +14,8 @@
 #include <asm/io.h>
 
 #ifdef CONFIG_SYS_OHCI_SWAP_REG_ACCESS
-# define ohci_readl(a) __swap_32(readl(a))
-# define ohci_writel(v, a) writel(__swap_32(v), a)
+# define ohci_readl(a) __swap_32(in_be32((u32 *)a))
+# define ohci_writel(a, b) out_be32((u32 *)b, __swap_32(a))
 #else
 # define ohci_readl(a) readl(a)
 # define ohci_writel(v, a) writel(v, a)