[PATCH] MPC5200 - Fix compile problems

Wolfgang Denk wd at denx.de
Tue Oct 11 05:46:29 EST 2005


Hello,

the following patch  is  against  the  current  2.6  kernel.org  tree
(commit  f96c3bbe91117402f13119ce9e609db9087ed58f) **after** applying
following two patches:


http://patchwork.ozlabs.org/linuxppc/patch?id=2018
http://patchwork.ozlabs.org/linuxppc/patch?id=2017

Without the patch, I get this:

  CC      net/sysctl_net.o
In file included from drivers/net/fec_mpc52xx/fec.c:33:
arch/ppc/syslib/bestcomm/bestcomm.h: In function 'sdma_enable_task':
arch/ppc/syslib/bestcomm/bestcomm.h:130: warning: ISO C90 forbids mixed declarations and code
  LD      fs/built-in.o
drivers/net/fec_mpc52xx/fec.c: In function 'fec_reinit':
drivers/net/fec_mpc52xx/fec.c:525: error: invalid storage class for function 'fec_update_stat'
make[3]: *** [drivers/net/fec_mpc52xx/fec.o] Error 1
make[2]: *** [drivers/net/fec_mpc52xx] Error 2
make[1]: *** [drivers/net] Error 2
drivers/serial/mpc52xx_uart.c:703: error: static declaration of 'mpc52xx_uart_driver' follows non-static declaration
drivers/serial/mpc52xx_uart.c:671: error: previous declaration of 'mpc52xx_uart_driver' was here
make[2]: *** [drivers/serial/mpc52xx_uart.o] Error 1
make[1]: *** [drivers/serial] Error 2


!-------------------------------------------------------------flip-

MPC5200: Fix compiler warnings with GCC 4.x

Signed-off by Wolfgang Denk <wd at denx.de>

---
commit c55cdf8cbaf7b9f18f9357a9b9e2582ae3326541
tree e46f7ed10df8d84e3f85439cb3c81bc8a1630487
parent cdd7fdf10b3cbb7eb82cacc7ba5dba3553020f49
author Wolfgang Denk <wd at pollux.denx.de> Mon, 10 Oct 2005 21:16:49 +0200
committer Wolfgang Denk <wd at pollux.denx.de> Mon, 10 Oct 2005 21:16:49 +0200

 arch/ppc/syslib/bestcomm/bestcomm.h |    4 +++-
 drivers/net/fec_mpc52xx/fec.c       |    2 +-
 drivers/serial/mpc52xx_uart.c       |    2 +-
 3 files changed, 5 insertions(+), 3 deletions(-)

diff --git a/arch/ppc/syslib/bestcomm/bestcomm.h b/arch/ppc/syslib/bestcomm/bestcomm.h
--- a/arch/ppc/syslib/bestcomm/bestcomm.h
+++ b/arch/ppc/syslib/bestcomm/bestcomm.h
@@ -116,6 +116,8 @@ struct sdma_tdt {
 
 static inline void sdma_enable_task(int task)
 {
+	u16 reg;
+
 	DPRINTK("***DMA enable task (%d): tdt = %08x\n",task, sdma.tdt);
 	DPRINTK("***tdt->start   = %08x\n",sdma.tdt[task].start);
 	DPRINTK("***tdt->stop    = %08x\n",sdma.tdt[task].stop);
@@ -127,7 +129,7 @@ static inline void sdma_enable_task(int 
 	DPRINTK("***tdt->litbase = %08x\n",sdma.tdt[task].litbase);
 	DPRINTK("***--------------\n");
 
-	u16 reg = in_be16(&sdma.io->tcr[task]);
+	reg = in_be16(&sdma.io->tcr[task]);
 	DPRINTK("***enable task: &sdma.io->tcr=%08x, reg = %04x\n", &sdma.io->tcr, reg);
 	out_be16(&sdma.io->tcr[task],  reg | TASK_ENABLE);
 }
diff --git a/drivers/net/fec_mpc52xx/fec.c b/drivers/net/fec_mpc52xx/fec.c
--- a/drivers/net/fec_mpc52xx/fec.c
+++ b/drivers/net/fec_mpc52xx/fec.c
@@ -522,7 +522,7 @@ static void fec_reinit(struct net_device
 {
 	struct fec_priv *priv = (struct fec_priv *)dev->priv;
 	struct mpc52xx_fec *fec = priv->fec;
-	static void fec_update_stat(struct net_device *);
+	void fec_update_stat(struct net_device *);
 
 	netif_stop_queue(dev);
 	out_be32(&fec->imask, 0x0);
diff --git a/drivers/serial/mpc52xx_uart.c b/drivers/serial/mpc52xx_uart.c
--- a/drivers/serial/mpc52xx_uart.c
+++ b/drivers/serial/mpc52xx_uart.c
@@ -668,7 +668,7 @@ mpc52xx_console_setup(struct console *co
 }
 
 
-extern struct uart_driver mpc52xx_uart_driver;
+static struct uart_driver mpc52xx_uart_driver;
 
 static struct console mpc52xx_console = {
 	.name	= "ttyS",



!-------------------------------------------------------------flip-



Best regards,

Wolfgang Denk

-- 
Software Engineering:  Embedded and Realtime Systems,  Embedded Linux
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
...when fits of creativity run strong, more than  one  programmer  or
writer  has  been  known to abandon the desktop for the more spacious
floor.                                             - Fred Brooks, Jr.



More information about the Linuxppc-embedded mailing list