OSDN Git Service

sh_eth: make sh_eth_tsu_write_entry() take 'offset' parameter
authorSergei Shtylyov <sergei.shtylyov@cogentembedded.com>
Mon, 23 Jul 2018 18:14:38 +0000 (21:14 +0300)
committerDavid S. Miller <davem@davemloft.net>
Mon, 23 Jul 2018 19:34:50 +0000 (12:34 -0700)
We can add the TSU register base address to a TSU register offset right
in sh_eth_tsu_write_entry(),  no need to do it in its callers...

Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/renesas/sh_eth.c

index bf002c2..b343410 100644 (file)
@@ -2676,18 +2676,19 @@ static int sh_eth_tsu_busy(struct net_device *ndev)
        return 0;
 }
 
-static int sh_eth_tsu_write_entry(struct net_device *ndev, void *reg,
+static int sh_eth_tsu_write_entry(struct net_device *ndev, u16 offset,
                                  const u8 *addr)
 {
+       struct sh_eth_private *mdp = netdev_priv(ndev);
        u32 val;
 
        val = addr[0] << 24 | addr[1] << 16 | addr[2] << 8 | addr[3];
-       iowrite32(val, reg);
+       iowrite32(val, mdp->tsu_addr + offset);
        if (sh_eth_tsu_busy(ndev) < 0)
                return -EBUSY;
 
        val = addr[4] << 8 | addr[5];
-       iowrite32(val, reg + 4);
+       iowrite32(val, mdp->tsu_addr + offset + 4);
        if (sh_eth_tsu_busy(ndev) < 0)
                return -EBUSY;
 
@@ -2747,9 +2748,7 @@ static int sh_eth_tsu_disable_cam_entry_table(struct net_device *ndev,
                         ~(1 << (31 - entry)), TSU_TEN);
 
        memset(blank, 0, sizeof(blank));
-       ret = sh_eth_tsu_write_entry(ndev,
-                                    mdp->tsu_addr + reg_offset + entry * 8,
-                                    blank);
+       ret = sh_eth_tsu_write_entry(ndev, reg_offset + entry * 8, blank);
        if (ret < 0)
                return ret;
        return 0;
@@ -2770,9 +2769,7 @@ static int sh_eth_tsu_add_entry(struct net_device *ndev, const u8 *addr)
                i = sh_eth_tsu_find_empty(ndev);
                if (i < 0)
                        return -ENOMEM;
-               ret = sh_eth_tsu_write_entry(ndev,
-                                            mdp->tsu_addr + reg_offset + i * 8,
-                                            addr);
+               ret = sh_eth_tsu_write_entry(ndev, reg_offset + i * 8, addr);
                if (ret < 0)
                        return ret;