Skip to contentSkip to conversation

USB: fix those pesky aliasing warnings caused by gcc-4.2

PATCH New Markus Klotzbücher 2 participants 4 messages Apr 23, 2008 – Apr 24, 2008 USB

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 USB: fix those pesky aliasing warnings caused by gcc-4.2

USB: fix those pesky aliasing warnings caused by gcc-4.2

---

 drivers/usb/usb_ohci.c |    8 ++++----
 1 files changed, 4 insertions(+), 4 deletions(-)
drivers/usb/usb_ohci.c +4 -4
index 5c201b3..d37a037 100644
@@ -86,11 +86,11 @@
  * e.g. PCI controllers need this
  */
 #ifdef CFG_OHCI_SWAP_REG_ACCESS
-# define readl(a) __swap_32(*((vu_long *)(a)))
-# define writel(a, b) (*((vu_long *)(b)) = __swap_32((vu_long)a))
+# define readl(a) __swap_32(*((volatile u32 *)(a)))
+# define writel(a, b) (*((volatile u32 *)(b)) = __swap_32((volatile u32)a))
 #else
-# define readl(a) (*((vu_long *)(a)))
-# define writel(a, b) (*((vu_long *)(b)) = ((vu_long)a))
+# define readl(a) (*((volatile u32 *)(a)))
+# define writel(a, b) (*((volatile u32 *)(b)) = ((volatile u32)a))
 #endif /* CFG_OHCI_SWAP_REG_ACCESS */
 
 #define min_t(type,x,y) ({ type __x = (x); type __y = (y); __x < __y ? __x: __y; })

Best regards

Markus Klotzbuecher

--
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-0 Fax: +49-8142-66989-80 Email: [email protected]

#1 lore raw

PATCH 1/1 USB: remove a cpu bug workaround for an unsupported architecture

USB: remove a cpu bug workaround for an unsupported architecture.

---

 drivers/usb/usb_ohci.c |   22 ++++------------------
 1 files changed, 4 insertions(+), 18 deletions(-)
drivers/usb/usb_ohci.c +4 -18
index d37a037..ee0f2e4 100644
@@ -138,28 +138,14 @@ int got_rhsc;
 /* device which was disconnected */
 struct usb_device *devgone;
 
-/*-------------------------------------------------------------------------*/
-
-/* AMD-756 (D2 rev) reports corrupt register contents in some cases.
- * The erratum (#4) description is incorrect.  AMD's workaround waits
- * till some bits (mostly reserved) are clear; ok for all revs.
- */
-#define OHCI_QUIRK_AMD756 0xabcd
-#define read_roothub(hc, register, mask) ({ \
-	u32 temp = readl (&hc->regs->roothub.register); \
-	if (hc->flags & OHCI_QUIRK_AMD756) \
-		while (temp & mask) \
-			temp = readl (&hc->regs->roothub.register); \
-	temp; })
-
-static u32 roothub_a (struct ohci *hc)
-	{ return read_roothub (hc, a, 0xfc0fe000); }
+static inline u32 roothub_a (struct ohci *hc)
+	{ return readl (&hc->regs->roothub.a); }
 static inline u32 roothub_b (struct ohci *hc)
 	{ return readl (&hc->regs->roothub.b); }
 static inline u32 roothub_status (struct ohci *hc)
 	{ return readl (&hc->regs->roothub.status); }
-static u32 roothub_portstatus (struct ohci *hc, int i)
-	{ return read_roothub (hc, portstatus [i], 0xffe0fce0); }
+static inline u32 roothub_portstatus (struct ohci *hc, int i)
+	{ return readl (&hc->regs->roothub.portstatus[i]); }
 
 /* forward declaration */
 static int hc_interrupt (void);

Best regards

Markus

--
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-0 Fax: +49-8142-66989-80 Email: office at denx.de

#3 lore raw

PATCH 1/1 USB: fix those pesky aliasing warnings caused by gcc-4.2

In reply to Markus Klotzbücher
Quoted 2 lines · In message <[email protected]> you wrote:

USB: fix those pesky aliasing warnings caused by gcc-4.2

Please do not duplicate the subject line, or it will end up twice in the commit log.

And - GCC just prints the warnings, they are caused by coding issues :-)

Quoted 7 lines

---

 drivers/usb/usb_ohci.c |    8 ++++----
 1 files changed, 4 insertions(+), 4 deletions(-)

Applied - thanks a lot!

Best regards,

Wolfgang Denk

Signature · 5 lines
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
"A complex system that works is invariably found to have evolved from
a simple system that worked."             - John Gall, _Systemantics_
#2 lore raw

PATCH 1/1 USB: remove a cpu bug workaround for an unsupported architecture

In reply to Markus Klotzbücher
Quoted 9 lines · In message <[email protected]> you wrote:

USB: remove a cpu bug workaround for an unsupported architecture.

---

 drivers/usb/usb_ohci.c |   22 ++++------------------
 1 files changed, 4 insertions(+), 18 deletions(-)

Applied, thanks.

Best regards,

Wolfgang Denk

Signature · 5 lines
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
Not one hundred percent efficient, of course ... but nothing ever is.
	-- Kirk, "Metamorphosis", stardate 3219.8