Fix ColdFire FEC warning messages

Types mismatch and implicit declaration of icache_invalid()
warning messages

Signed-off-by: TsiChung Liew <Tsi-Chung.Liew@freescale.com>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
diff --git a/drivers/net/fsl_mcdmafec.c b/drivers/net/fsl_mcdmafec.c
index e34975a..59524a5 100644
--- a/drivers/net/fsl_mcdmafec.c
+++ b/drivers/net/fsl_mcdmafec.c
@@ -94,7 +94,7 @@
 	 0,			/* phy name */
 	 0,			/* phy name init */
 #ifdef CFG_DMA_USE_INTSRAM
-	 DBUF_LENGTH,		/* RX BD */
+	 (cbd_t *)DBUF_LENGTH,	/* RX BD */
 #else
 	 0,			/* RX BD */
 #endif
@@ -540,15 +540,16 @@
 
 		/* setup Receive and Transmit buffer descriptor */
 #ifdef CFG_DMA_USE_INTSRAM
-		fec_info[i].rxbd = (int)fec_info[i].rxbd + tmp;
-		tmp = fec_info[i].rxbd;
+		fec_info[i].rxbd = (cbd_t *)((u32)fec_info[i].rxbd + tmp);
+		tmp = (u32)fec_info[i].rxbd;
 		fec_info[i].txbd =
-		    (int)fec_info[i].txbd + tmp + (PKTBUFSRX * sizeof(cbd_t));
-		tmp = fec_info[i].txbd;
+		    (cbd_t *)((u32)fec_info[i].txbd + tmp +
+		    (PKTBUFSRX * sizeof(cbd_t)));
+		tmp = (u32)fec_info[i].txbd;
 		fec_info[i].txbuf =
-		    (int)fec_info[i].txbuf + tmp +
-		    (CFG_TX_ETH_BUFFER * sizeof(cbd_t));
-		tmp = fec_info[i].txbuf;
+		    (char *)((u32)fec_info[i].txbuf + tmp +
+		    (CFG_TX_ETH_BUFFER * sizeof(cbd_t)));
+		tmp = (u32)fec_info[i].txbuf;
 #else
 		fec_info[i].rxbd =
 		    (cbd_t *) memalign(CFG_CACHELINE_SIZE,
diff --git a/drivers/net/mcffec.c b/drivers/net/mcffec.c
index 6e69b46..7f59fa8 100644
--- a/drivers/net/mcffec.c
+++ b/drivers/net/mcffec.c
@@ -106,6 +106,10 @@
 			       unsigned char reg, unsigned short value);
 #endif
 
+#ifdef CFG_UNIFY_CACHE
+extern void icache_invalid(void);
+#endif
+
 void setFecDuplexSpeed(volatile fec_t * fecp, bd_t * bd, int dup_spd)
 {
 	if ((dup_spd >> 16) == FULL) {