summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--drivers/net/fsl_mcdmafec.c17
-rw-r--r--drivers/net/mcffec.c4
2 files changed, 13 insertions, 8 deletions
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 @@ struct fec_info_dma fec_info[] = {
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 @@ int mcdmafec_initialize(bd_t * bis)
/* 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 @@ extern int mcffec_miiphy_write(char *devname, unsigned char addr,
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) {