[U-Boot-Users] [PATCH] MPC5xxx: fix some compiler warnings in USB code

Martin Krause martin.krause at tqs.de
Tue Aug 21 12:40:34 CEST 2007


Fix the following warnings:
- usb.c:xx: warning: function declaration isn't a prototype
- usb_ohci.c:xxx: warning: passing argument 1 of '__fswab32' makes integer
  from pointer wihtout a cast 

Signed-off-by: Martin Krause <martin.krase at tqs.de>
---
Some remarks:

The patch fixes the compiler warnings, but I'm not sure, if the
original code is correct. It seems, that in function periodic_unlink()
the pointer ed_p is little/big endian swapped and not the content, the
pointer is pointing to. Not sure if this was intended. Maybe some USB 
expert (Markus?) could take a look at this?


 cpu/mpc5xxx/usb.c  |    6 +++---
 drivers/usb_ohci.c |    6 +++---
 2 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/cpu/mpc5xxx/usb.c b/cpu/mpc5xxx/usb.c
index ce709fc..ed467ab 100644
--- a/cpu/mpc5xxx/usb.c
+++ b/cpu/mpc5xxx/usb.c
@@ -27,7 +27,7 @@
 
 #include <mpc5xxx.h>
 
-int usb_cpu_init()
+int usb_cpu_init(void)
 {
 	/* Set the USB Clock						     */
 	*(vu_long *)MPC5XXX_CDM_48_FDC = CONFIG_USB_CLOCK;
@@ -41,12 +41,12 @@ int usb_cpu_init()
 	return 0;
 }
 
-int usb_cpu_stop()
+int usb_cpu_stop(void)
 {
 	return 0;
 }
 
-int usb_cpu_init_fail()
+int usb_cpu_init_fail(void)
 {
 	return 0;
 }
diff --git a/drivers/usb_ohci.c b/drivers/usb_ohci.c
index f0a37b2..14984a5 100644
--- a/drivers/usb_ohci.c
+++ b/drivers/usb_ohci.c
@@ -669,7 +669,7 @@ static int ep_link (ohci_t *ohci, ed_t *edi)
 				ed_p = &(((ed_t *)ed_p)->hwNextED))
 					inter = ep_rev (6, ((ed_t *)ed_p)->int_interval);
 			ed->hwNextED = *ed_p;
-			*ed_p = m32_swap(ed);
+			*ed_p = m32_swap((unsigned long)ed);
 		}
 		break;
 	}
@@ -687,11 +687,11 @@ static void periodic_unlink ( struct ohci *ohci, volatile struct ed *ed,
 
 		/* ED might have been unlinked through another path */
 		while (*ed_p != 0) {
-			if (((struct ed *)m32_swap (ed_p)) == ed) {
+			if (((struct ed *)m32_swap ((unsigned long)ed_p)) == ed) {
 				*ed_p = ed->hwNextED;
 				break;
 			}
-			ed_p = & (((struct ed *)m32_swap (ed_p))->hwNextED);
+			ed_p = & (((struct ed *)m32_swap ((unsigned long)ed_p))->hwNextED);
 		}
 	}
 }




More information about the U-Boot mailing list