sh_eth: get rid of bb_{set|clr|read}()
authorSergei Shtylyov <sergei.shtylyov@cogentembedded.com>
Mon, 7 Dec 2015 21:41:43 +0000 (00:41 +0300)
committerDavid S. Miller <davem@davemloft.net>
Wed, 9 Dec 2015 02:55:05 +0000 (21:55 -0500)
After the MDIO bitbang code consolidation, there's no need anymore for
bb_{set|clr}() as well as bb_read() -- just expand them inline, thus
saving more LoCs...

Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
Acked-by: Simon Horman <horms+renesas@verge.net.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/renesas/sh_eth.c

index f0c7108..67cd243 100644 (file)
@@ -1015,35 +1015,20 @@ struct bb_info {
        void *addr;
 };
 
-/* PHY bit set */
-static void bb_set(void *addr, u32 msk)
-{
-       iowrite32(ioread32(addr) | msk, addr);
-}
-
-/* PHY bit clear */
-static void bb_clr(void *addr, u32 msk)
-{
-       iowrite32((ioread32(addr) & ~msk), addr);
-}
-
-/* PHY bit read */
-static int bb_read(void *addr, u32 msk)
-{
-       return (ioread32(addr) & msk) != 0;
-}
-
 static void sh_mdio_ctrl(struct mdiobb_ctrl *ctrl, u32 mask, int set)
 {
        struct bb_info *bitbang = container_of(ctrl, struct bb_info, ctrl);
+       u32 pir;
 
        if (bitbang->set_gate)
                bitbang->set_gate(bitbang->addr);
 
+       pir = ioread32(bitbang->addr);
        if (set)
-               bb_set(bitbang->addr, mask);
+               pir |=  mask;
        else
-               bb_clr(bitbang->addr, mask);
+               pir &= ~mask;
+       iowrite32(pir, bitbang->addr);
 }
 
 /* Data I/O pin control */
@@ -1066,7 +1051,7 @@ static int sh_get_mdio(struct mdiobb_ctrl *ctrl)
        if (bitbang->set_gate)
                bitbang->set_gate(bitbang->addr);
 
-       return bb_read(bitbang->addr, PIR_MDI);
+       return (ioread32(bitbang->addr) & PIR_MDI) != 0;
 }
 
 /* MDC pin control */