generic: rtl8366: use struct rtl8366_smi for phy_reg_{read,write} calls
[openwrt/openwrt.git] / target / linux / generic-2.6 / files / drivers / net / phy / rtl8366s.c
index 9f378657fc5e77ac4434b10914778858cf95a725..2af32eee4dfbb9b8fea6e679105c252c149ec53e 100644 (file)
@@ -257,10 +257,9 @@ static int rtl8366s_reset_chip(struct rtl8366s *rtl)
        return 0;
 }
 
-static int rtl8366s_read_phy_reg(struct rtl8366s *rtl,
+static int rtl8366s_read_phy_reg(struct rtl8366_smi *smi,
                                 u32 phy_no, u32 page, u32 addr, u32 *data)
 {
-       struct rtl8366_smi *smi = &rtl->smi;
        u32 reg;
        int ret;
 
@@ -293,10 +292,9 @@ static int rtl8366s_read_phy_reg(struct rtl8366s *rtl,
        return 0;
 }
 
-static int rtl8366s_write_phy_reg(struct rtl8366s *rtl,
+static int rtl8366s_write_phy_reg(struct rtl8366_smi *smi,
                                  u32 phy_no, u32 page, u32 addr, u32 data)
 {
-       struct rtl8366_smi *smi = &rtl->smi;
        u32 reg;
        int ret;
 
@@ -1471,11 +1469,11 @@ static void rtl8366s_switch_cleanup(struct rtl8366s *rtl)
 
 static int rtl8366s_mii_read(struct mii_bus *bus, int addr, int reg)
 {
-       struct rtl8366s *rtl = smi_to_rtl8366s(bus->priv);
+       struct rtl8366_smi *smi = bus->priv;
        u32 val = 0;
        int err;
 
-       err = rtl8366s_read_phy_reg(rtl, addr, 0, reg, &val);
+       err = rtl8366s_read_phy_reg(smi, addr, 0, reg, &val);
        if (err)
                return 0xffff;
 
@@ -1484,13 +1482,13 @@ static int rtl8366s_mii_read(struct mii_bus *bus, int addr, int reg)
 
 static int rtl8366s_mii_write(struct mii_bus *bus, int addr, int reg, u16 val)
 {
-       struct rtl8366s *rtl = smi_to_rtl8366s(bus->priv);
+       struct rtl8366_smi *smi = bus->priv;
        u32 t;
        int err;
 
-       err = rtl8366s_write_phy_reg(rtl, addr, 0, reg, val);
+       err = rtl8366s_write_phy_reg(smi, addr, 0, reg, val);
        /* flush write */
-       (void) rtl8366s_read_phy_reg(rtl, addr, 0, reg, &t);
+       (void) rtl8366s_read_phy_reg(smi, addr, 0, reg, &t);
 
        return err;
 }