2007-02-09 16:40:52

by Al Viro

[permalink] [raw]
Subject: [PATCH] [eo]hci_{read,write}l() does force casts to wrong type for no reason


readl() et.al. expect iomem pointer, so WTF force-cast it to normal one???

Signed-off-by: Al Viro <[email protected]>
---
drivers/usb/host/ehci.h | 12 ++++++------
drivers/usb/host/ohci.h | 12 ++++++------
2 files changed, 12 insertions(+), 12 deletions(-)

diff --git a/drivers/usb/host/ehci.h b/drivers/usb/host/ehci.h
index ec0da03..46fa57a 100644
--- a/drivers/usb/host/ehci.h
+++ b/drivers/usb/host/ehci.h
@@ -677,10 +677,10 @@ static inline unsigned int ehci_readl (const struct ehci_hcd *ehci,
{
#ifdef CONFIG_USB_EHCI_BIG_ENDIAN_MMIO
return ehci_big_endian_mmio(ehci) ?
- readl_be((__force u32 *)regs) :
- readl((__force u32 *)regs);
+ readl_be(regs) :
+ readl(regs);
#else
- return readl((__force u32 *)regs);
+ return readl(regs);
#endif
}

@@ -689,10 +689,10 @@ static inline void ehci_writel (const struct ehci_hcd *ehci,
{
#ifdef CONFIG_USB_EHCI_BIG_ENDIAN_MMIO
ehci_big_endian_mmio(ehci) ?
- writel_be(val, (__force u32 *)regs) :
- writel(val, (__force u32 *)regs);
+ writel_be(val, regs) :
+ writel(val, regs);
#else
- writel(val, (__force u32 *)regs);
+ writel(val, regs);
#endif
}

diff --git a/drivers/usb/host/ohci.h b/drivers/usb/host/ohci.h
index 0dafcda..c2b5ecf 100644
--- a/drivers/usb/host/ohci.h
+++ b/drivers/usb/host/ohci.h
@@ -507,10 +507,10 @@ static inline unsigned int _ohci_readl (const struct ohci_hcd *ohci,
{
#ifdef CONFIG_USB_OHCI_BIG_ENDIAN_MMIO
return big_endian_mmio(ohci) ?
- readl_be ((__force u32 *)regs) :
- readl ((__force u32 *)regs);
+ readl_be (regs) :
+ readl (regs);
#else
- return readl ((__force u32 *)regs);
+ return readl (regs);
#endif
}

@@ -519,10 +519,10 @@ static inline void _ohci_writel (const struct ohci_hcd *ohci,
{
#ifdef CONFIG_USB_OHCI_BIG_ENDIAN_MMIO
big_endian_mmio(ohci) ?
- writel_be (val, (__force u32 *)regs) :
- writel (val, (__force u32 *)regs);
+ writel_be (val, regs) :
+ writel (val, regs);
#else
- writel (val, (__force u32 *)regs);
+ writel (val, regs);
#endif
}

--
1.5.0-rc2.GIT