dm: net: Fixup the armada100 FEC driver
authorMarek Vasut <marex@denx.de>
Fri, 27 Jul 2012 09:50:07 +0000 (09:50 +0000)
committerJoe Hershberger <joe.hershberger@ni.com>
Mon, 24 Sep 2012 18:55:20 +0000 (13:55 -0500)
Apply the following questionable adjustment to silence GCC.

armada100_fec.c: In function ‘armdfec_send’:
armada100_fec.c:589:2: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Joe Hershberger <joe.hershberger@ni.com>
Acked-by: Prafulla Wadaskar <prafulla@marvell.com>
drivers/net/armada100_fec.c

index d318a363985982a1f8f4b5ecc4d2bafd53f3719c..ed7cf2032485839922d43efabfc781ffed8807df 100644 (file)
@@ -565,7 +565,7 @@ static int armdfec_send(struct eth_device *dev, void *dataptr, int datasize)
        struct tx_desc *p_txdesc = darmdfec->p_txdesc;
        void *p = (void *)dataptr;
        int retry = PHY_WAIT_ITERATIONS * PHY_WAIT_MICRO_SECONDS;
-       u32 cmd_sts;
+       u32 cmd_sts, temp;
 
        /* Copy buffer if it's misaligned */
        if ((u32)dataptr & 0x07) {
@@ -586,7 +586,8 @@ static int armdfec_send(struct eth_device *dev, void *dataptr, int datasize)
        p_txdesc->byte_cnt = datasize;
 
        /* Apply send command using high priority TX queue */
-       writel((u32)p_txdesc, &regs->txcdp[TXQ]);
+       temp = (u32)&regs->txcdp[TXQ];
+       writel((u32)p_txdesc, temp);
        writel(SDMA_CMD_TXDL | SDMA_CMD_TXDH | SDMA_CMD_ERD, &regs->sdma_cmd);
 
        /*