Changeset 21935


Ignore:
Timestamp:
2010-06-26T21:53:46+02:00 (7 years ago)
Author:
juhosg
Message:

backfire: generic: rtl8366: use struct rtl8366_smi instead of struct rtl8366{s,rb} (backport of r21916)

Location:
branches/backfire/target/linux/generic-2.6/files/drivers/net/phy
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • branches/backfire/target/linux/generic-2.6/files/drivers/net/phy/rtl8366rb.c

    r21934 r21935  
    232232} 
    233233 
    234 static int rtl8366rb_reset_chip(struct rtl8366rb *rtl) 
    235 { 
    236         struct rtl8366_smi *smi = &rtl->smi; 
     234static inline struct rtl8366_smi *sw_to_rtl8366_smi(struct switch_dev *sw) 
     235{ 
     236        struct rtl8366rb *rtl = sw_to_rtl8366rb(sw); 
     237        return &rtl->smi; 
     238} 
     239 
     240static int rtl8366rb_reset_chip(struct rtl8366_smi *smi) 
     241{ 
    237242        int timeout = 10; 
    238243        u32 data; 
     
    323328} 
    324329 
    325 static int rtl8366_get_mib_counter(struct rtl8366rb *rtl, int counter, 
     330static int rtl8366_get_mib_counter(struct rtl8366_smi *smi, int counter, 
    326331                                   int port, unsigned long long *val) 
    327332{ 
    328         struct rtl8366_smi *smi = &rtl->smi; 
    329333        int i; 
    330334        int err; 
     
    372376} 
    373377 
    374 static int rtl8366rb_get_vlan_4k(struct rtl8366rb *rtl, u32 vid, 
     378static int rtl8366rb_get_vlan_4k(struct rtl8366_smi *smi, u32 vid, 
    375379                                 struct rtl8366_vlan_4k *vlan4k) 
    376380{ 
    377         struct rtl8366_smi *smi = &rtl->smi; 
    378381        struct rtl8366rb_vlan_4k vlan4k_priv; 
    379382        int err; 
     
    430433} 
    431434 
    432 static int rtl8366rb_set_vlan_4k(struct rtl8366rb *rtl, 
     435static int rtl8366rb_set_vlan_4k(struct rtl8366_smi *smi, 
    433436                                 const struct rtl8366_vlan_4k *vlan4k) 
    434437{ 
    435         struct rtl8366_smi *smi = &rtl->smi; 
    436438        struct rtl8366rb_vlan_4k vlan4k_priv; 
    437439        int err; 
     
    483485} 
    484486 
    485 static int rtl8366rb_get_vlan_mc(struct rtl8366rb *rtl, u32 index, 
     487static int rtl8366rb_get_vlan_mc(struct rtl8366_smi *smi, u32 index, 
    486488                                 struct rtl8366_vlan_mc *vlanmc) 
    487489{ 
    488         struct rtl8366_smi *smi = &rtl->smi; 
    489490        struct rtl8366rb_vlan_mc vlanmc_priv; 
    490491        int err; 
     
    532533} 
    533534 
    534 static int rtl8366rb_set_vlan_mc(struct rtl8366rb *rtl, u32 index, 
     535static int rtl8366rb_set_vlan_mc(struct rtl8366_smi *smi, u32 index, 
    535536                                 const struct rtl8366_vlan_mc *vlanmc) 
    536537{ 
    537         struct rtl8366_smi *smi = &rtl->smi; 
    538538        struct rtl8366rb_vlan_mc vlanmc_priv; 
    539539        int err; 
     
    587587} 
    588588 
    589 static int rtl8366rb_get_port_vlan_index(struct rtl8366rb *rtl, int port, 
     589static int rtl8366rb_get_port_vlan_index(struct rtl8366_smi *smi, int port, 
    590590                                       int *val) 
    591591{ 
    592         struct rtl8366_smi *smi = &rtl->smi; 
    593592        u32 data; 
    594593        int err; 
     
    609608} 
    610609 
    611 static int rtl8366rb_get_vlan_port_pvid(struct rtl8366rb *rtl, int port, 
     610static int rtl8366rb_get_vlan_port_pvid(struct rtl8366_smi *smi, int port, 
    612611                                       int *val) 
    613612{ 
     
    616615        int index; 
    617616 
    618         err = rtl8366rb_get_port_vlan_index(rtl, port, &index); 
    619         if (err) 
    620                 return err; 
    621  
    622         err = rtl8366rb_get_vlan_mc(rtl, index, &vlanmc); 
     617        err = rtl8366rb_get_port_vlan_index(smi, port, &index); 
     618        if (err) 
     619                return err; 
     620 
     621        err = rtl8366rb_get_vlan_mc(smi, index, &vlanmc); 
    623622        if (err) 
    624623                return err; 
     
    628627} 
    629628 
    630 static int rtl8366rb_set_port_vlan_index(struct rtl8366rb *rtl, int port, 
     629static int rtl8366rb_set_port_vlan_index(struct rtl8366_smi *smi, int port, 
    631630                                        int index) 
    632631{ 
    633         struct rtl8366_smi *smi = &rtl->smi; 
    634632        u32 data; 
    635633        int err; 
     
    653651} 
    654652 
    655 static int rtl8366rb_set_vlan_port_pvid(struct rtl8366rb *rtl, int port, int val) 
     653static int rtl8366rb_set_vlan_port_pvid(struct rtl8366_smi *smi, int port, 
     654                                        int val) 
    656655{ 
    657656        int i; 
     
    663662 
    664663        /* Updating the 4K entry; lookup it and change the port member set */ 
    665         rtl8366rb_get_vlan_4k(rtl, val, &vlan4k); 
     664        rtl8366rb_get_vlan_4k(smi, val, &vlan4k); 
    666665        vlan4k.member |= ((1 << port) | RTL8366_PORT_CPU); 
    667666        vlan4k.untag = RTL8366_PORT_ALL_BUT_CPU; 
    668         rtl8366rb_set_vlan_4k(rtl, &vlan4k); 
     667        rtl8366rb_set_vlan_4k(smi, &vlan4k); 
    669668 
    670669        /* 
     
    673672         */ 
    674673        for (i = 0; i < RTL8366_NUM_VLANS; ++i) { 
    675                 rtl8366rb_get_vlan_mc(rtl, i, &vlanmc); 
     674                rtl8366rb_get_vlan_mc(smi, i, &vlanmc); 
    676675 
    677676                /* Try to find an existing vid and update port member set */ 
    678677                if (val == vlanmc.vid) { 
    679678                        vlanmc.member |= ((1 << port) | RTL8366_PORT_CPU); 
    680                         rtl8366rb_set_vlan_mc(rtl, i, &vlanmc); 
     679                        rtl8366rb_set_vlan_mc(smi, i, &vlanmc); 
    681680 
    682681                        /* Now update PVID register settings */ 
    683                         rtl8366rb_set_port_vlan_index(rtl, port, i); 
     682                        rtl8366rb_set_port_vlan_index(smi, port, i); 
    684683 
    685684                        return 0; 
     
    692691         */ 
    693692        for (i = 0; i < RTL8366_NUM_VLANS; ++i) { 
    694                 rtl8366rb_get_vlan_mc(rtl, i, &vlanmc); 
     693                rtl8366rb_get_vlan_mc(smi, i, &vlanmc); 
    695694 
    696695                /* 
     
    705704                        vlanmc.fid = 0; 
    706705 
    707                         rtl8366rb_set_vlan_mc(rtl, i, &vlanmc); 
     706                        rtl8366rb_set_vlan_mc(smi, i, &vlanmc); 
    708707 
    709708                        /* Now update PVID register settings */ 
    710                         rtl8366rb_set_port_vlan_index(rtl, port, i); 
     709                        rtl8366rb_set_port_vlan_index(smi, port, i); 
    711710 
    712711                        return 0; 
     
    714713        } 
    715714 
    716         dev_err(rtl->parent, 
     715        dev_err(smi->parent, 
    717716                "All 16 vlan member configurations are in use\n"); 
    718717 
     
    721720 
    722721 
    723 static int rtl8366rb_vlan_set_vlan(struct rtl8366rb *rtl, int enable) 
    724 { 
    725         struct rtl8366_smi *smi = &rtl->smi; 
     722static int rtl8366rb_vlan_set_vlan(struct rtl8366_smi *smi, int enable) 
     723{ 
    726724        u32 data = 0; 
    727725 
     
    736734} 
    737735 
    738 static int rtl8366rb_vlan_set_4ktable(struct rtl8366rb *rtl, int enable) 
    739 { 
    740         struct rtl8366_smi *smi = &rtl->smi; 
     736static int rtl8366rb_vlan_set_4ktable(struct rtl8366_smi *smi, int enable) 
     737{ 
    741738        u32 data = 0; 
    742739 
     
    751748} 
    752749 
    753 static int rtl8366rb_reset_vlan(struct rtl8366rb *rtl) 
     750static int rtl8366rb_reset_vlan(struct rtl8366_smi *smi) 
    754751{ 
    755752        struct rtl8366_vlan_4k vlan4k; 
     
    765762        vlanmc.fid = 0; 
    766763        for (i = 0; i < RTL8366_NUM_VLANS; i++) { 
    767                 err = rtl8366rb_set_vlan_mc(rtl, i, &vlanmc); 
     764                err = rtl8366rb_set_vlan_mc(smi, i, &vlanmc); 
    768765                if (err) 
    769766                        return err; 
     
    775772        vlan4k.untag = RTL8366_PORT_ALL; 
    776773        vlan4k.fid = 0; 
    777         err = rtl8366rb_set_vlan_4k(rtl, &vlan4k); 
     774        err = rtl8366rb_set_vlan_4k(smi, &vlan4k); 
    778775        if (err) 
    779776                return err; 
     
    781778        /* Set all ports PVID to default VLAN */ 
    782779        for (i = 0; i < RTL8366_NUM_PORTS; i++) { 
    783                 err = rtl8366rb_set_vlan_port_pvid(rtl, i, 0); 
     780                err = rtl8366rb_set_vlan_port_pvid(smi, i, 0); 
    784781                if (err) 
    785782                        return err; 
     
    801798{ 
    802799        struct rtl8366rb *rtl = (struct rtl8366rb *)file->private_data; 
     800        struct rtl8366_smi *smi = &rtl->smi; 
    803801        int i, j, len = 0; 
    804802        char *buf = rtl->buf; 
     
    816814                        unsigned long long counter = 0; 
    817815 
    818                         if (!rtl8366_get_mib_counter(rtl, i, j, &counter)) 
     816                        if (!rtl8366_get_mib_counter(smi, i, j, &counter)) 
    819817                                len += snprintf(buf + len, 
    820818                                                sizeof(rtl->buf) - len, 
     
    849847{ 
    850848        struct rtl8366rb *rtl = (struct rtl8366rb *)file->private_data; 
     849        struct rtl8366_smi *smi = &rtl->smi; 
    851850        int i, j, len = 0; 
    852851        char *buf = rtl->buf; 
     
    861860                struct rtl8366_vlan_mc vlanmc; 
    862861 
    863                 rtl8366rb_get_vlan_mc(rtl, i, &vlanmc); 
     862                rtl8366rb_get_vlan_mc(smi, i, &vlanmc); 
    864863 
    865864                len += snprintf(buf + len, sizeof(rtl->buf) - len, 
     
    870869                for (j = 0; j < RTL8366_NUM_PORTS; ++j) { 
    871870                        int index = 0; 
    872                         if (!rtl8366rb_get_port_vlan_index(rtl, j, &index)) { 
     871                        if (!rtl8366rb_get_port_vlan_index(smi, j, &index)) { 
    873872                                if (index == i) 
    874873                                        len += snprintf(buf + len, 
     
    10271026                                  struct switch_val *val) 
    10281027{ 
    1029         struct rtl8366rb *rtl = sw_to_rtl8366rb(dev); 
    1030         struct rtl8366_smi *smi = &rtl->smi; 
     1028        struct rtl8366_smi *smi = sw_to_rtl8366_smi(dev); 
    10311029        u32 data = 0; 
    10321030 
     
    10441042                                       struct switch_val *val) 
    10451043{ 
    1046         struct rtl8366rb *rtl = sw_to_rtl8366rb(dev); 
    1047         struct rtl8366_smi *smi = &rtl->smi; 
     1044        struct rtl8366_smi *smi = sw_to_rtl8366_smi(dev); 
    10481045        u32 data; 
    10491046 
     
    10711068                                     struct switch_val *val) 
    10721069{ 
    1073         struct rtl8366rb *rtl = sw_to_rtl8366rb(dev); 
    1074         struct rtl8366_smi *smi = &rtl->smi; 
     1070        struct rtl8366_smi *smi = sw_to_rtl8366_smi(dev); 
    10751071        u32 data; 
    10761072 
     
    10861082                                    struct switch_val *val) 
    10871083{ 
    1088         struct rtl8366rb *rtl = sw_to_rtl8366rb(dev); 
    1089         struct rtl8366_smi *smi = &rtl->smi; 
     1084        struct rtl8366_smi *smi = sw_to_rtl8366_smi(dev); 
    10901085        u32 data; 
    10911086 
     
    11071102                                       struct switch_val *val) 
    11081103{ 
    1109         struct rtl8366rb *rtl = sw_to_rtl8366rb(dev); 
     1104        struct rtl8366_smi *smi = sw_to_rtl8366_smi(dev); 
    11101105 
    11111106        if (attr->ofs == 1) 
    1112                 return rtl8366rb_vlan_set_vlan(rtl, val->value.i); 
     1107                return rtl8366rb_vlan_set_vlan(smi, val->value.i); 
    11131108        else 
    1114                 return rtl8366rb_vlan_set_4ktable(rtl, val->value.i); 
     1109                return rtl8366rb_vlan_set_4ktable(smi, val->value.i); 
    11151110} 
    11161111 
     
    11811176        struct rtl8366_vlan_4k vlan4k; 
    11821177        struct rtl8366rb *rtl = sw_to_rtl8366rb(dev); 
     1178        struct rtl8366_smi *smi = &rtl->smi; 
    11831179        char *buf = rtl->buf; 
    11841180 
     
    11881184        memset(buf, '\0', sizeof(rtl->buf)); 
    11891185 
    1190         rtl8366rb_get_vlan_mc(rtl, val->port_vlan, &vlanmc); 
    1191         rtl8366rb_get_vlan_4k(rtl, vlanmc.vid, &vlan4k); 
     1186        rtl8366rb_get_vlan_mc(smi, val->port_vlan, &vlanmc); 
     1187        rtl8366rb_get_vlan_4k(smi, vlanmc.vid, &vlan4k); 
    11921188 
    11931189        len += snprintf(buf + len, sizeof(rtl->buf) - len, "VLAN %d: Ports: ", 
     
    11961192        for (i = 0; i < RTL8366_NUM_PORTS; ++i) { 
    11971193                int index = 0; 
    1198                 if (!rtl8366rb_get_port_vlan_index(rtl, i, &index) && 
     1194                if (!rtl8366rb_get_port_vlan_index(smi, i, &index) && 
    11991195                    index == val->port_vlan) 
    12001196                        len += snprintf(buf + len, sizeof(rtl->buf) - len, 
     
    12251221                                    struct switch_val *val) 
    12261222{ 
    1227         struct rtl8366rb *rtl = sw_to_rtl8366rb(dev); 
    1228         struct rtl8366_smi *smi = &rtl->smi; 
     1223        struct rtl8366_smi *smi = sw_to_rtl8366_smi(dev); 
    12291224        u32 data = 0; 
    12301225 
     
    12501245                                    struct switch_val *val) 
    12511246{ 
    1252         struct rtl8366rb *rtl = sw_to_rtl8366rb(dev); 
    1253         struct rtl8366_smi *smi = &rtl->smi; 
     1247        struct rtl8366_smi *smi = sw_to_rtl8366_smi(dev); 
    12541248        u32 data = 0; 
    12551249 
     
    12671261                                       struct switch_val *val) 
    12681262{ 
    1269         struct rtl8366rb *rtl = sw_to_rtl8366rb(dev); 
    1270         struct rtl8366_smi *smi = &rtl->smi; 
     1263        struct rtl8366_smi *smi = sw_to_rtl8366_smi(dev); 
    12711264        u32 data = 0; 
    12721265 
     
    12861279{ 
    12871280        struct rtl8366rb *rtl = sw_to_rtl8366rb(dev); 
     1281        struct rtl8366_smi *smi = &rtl->smi; 
    12881282        int i, len = 0; 
    12891283        unsigned long long counter = 0; 
     
    13001294                len += snprintf(buf + len, sizeof(rtl->buf) - len, 
    13011295                                "%d:%s\t", i, rtl8366rb_mib_counters[i].name); 
    1302                 if (!rtl8366_get_mib_counter(rtl, i, val->port_vlan, &counter)) 
     1296                if (!rtl8366_get_mib_counter(smi, i, val->port_vlan, &counter)) 
    13031297                        len += snprintf(buf + len, sizeof(rtl->buf) - len, 
    13041298                                        "[%llu]\n", counter); 
     
    13171311{ 
    13181312        struct rtl8366_vlan_mc vlanmc; 
    1319         struct rtl8366rb *rtl = sw_to_rtl8366rb(dev); 
     1313        struct rtl8366_smi *smi = sw_to_rtl8366_smi(dev); 
    13201314        struct switch_port *port; 
    13211315        int i; 
     
    13241318                return -EINVAL; 
    13251319 
    1326         rtl8366rb_get_vlan_mc(rtl, val->port_vlan, &vlanmc); 
     1320        rtl8366rb_get_vlan_mc(smi, val->port_vlan, &vlanmc); 
    13271321 
    13281322        port = &val->value.ports[0]; 
     
    13461340        struct rtl8366_vlan_mc vlanmc; 
    13471341        struct rtl8366_vlan_4k vlan4k; 
    1348         struct rtl8366rb *rtl = sw_to_rtl8366rb(dev); 
     1342        struct rtl8366_smi *smi = sw_to_rtl8366_smi(dev); 
    13491343        struct switch_port *port; 
    13501344        int i; 
     
    13531347                return -EINVAL; 
    13541348 
    1355         rtl8366rb_get_vlan_mc(rtl, val->port_vlan, &vlanmc); 
    1356         rtl8366rb_get_vlan_4k(rtl, vlanmc.vid, &vlan4k); 
     1349        rtl8366rb_get_vlan_mc(smi, val->port_vlan, &vlanmc); 
     1350        rtl8366rb_get_vlan_4k(smi, vlanmc.vid, &vlan4k); 
    13571351 
    13581352        vlanmc.untag = 0; 
     
    13701364        vlan4k.untag = vlanmc.untag; 
    13711365 
    1372         rtl8366rb_set_vlan_mc(rtl, val->port_vlan, &vlanmc); 
    1373         rtl8366rb_set_vlan_4k(rtl, &vlan4k); 
     1366        rtl8366rb_set_vlan_mc(smi, val->port_vlan, &vlanmc); 
     1367        rtl8366rb_set_vlan_4k(smi, &vlan4k); 
    13741368        return 0; 
    13751369} 
     
    13771371static int rtl8366rb_sw_get_port_pvid(struct switch_dev *dev, int port, int *val) 
    13781372{ 
    1379         struct rtl8366rb *rtl = sw_to_rtl8366rb(dev); 
    1380         return rtl8366rb_get_vlan_port_pvid(rtl, port, val); 
     1373        struct rtl8366_smi *smi = sw_to_rtl8366_smi(dev); 
     1374        return rtl8366rb_get_vlan_port_pvid(smi, port, val); 
    13811375} 
    13821376 
    13831377static int rtl8366rb_sw_set_port_pvid(struct switch_dev *dev, int port, int val) 
    13841378{ 
    1385         struct rtl8366rb *rtl = sw_to_rtl8366rb(dev); 
    1386         return rtl8366rb_set_vlan_port_pvid(rtl, port, val); 
     1379        struct rtl8366_smi *smi = sw_to_rtl8366_smi(dev); 
     1380        return rtl8366rb_set_vlan_port_pvid(smi, port, val); 
    13871381} 
    13881382 
    13891383static int rtl8366rb_sw_reset_switch(struct switch_dev *dev) 
    13901384{ 
    1391         struct rtl8366rb *rtl = sw_to_rtl8366rb(dev); 
     1385        struct rtl8366_smi *smi = sw_to_rtl8366_smi(dev); 
    13921386        int err; 
    13931387 
    1394         err = rtl8366rb_reset_chip(rtl); 
    1395         if (err) 
    1396                 return err; 
    1397  
    1398         return rtl8366rb_reset_vlan(rtl); 
     1388        err = rtl8366rb_reset_chip(smi); 
     1389        if (err) 
     1390                return err; 
     1391 
     1392        return rtl8366rb_reset_vlan(smi); 
    13991393} 
    14001394 
     
    15581552static int rtl8366rb_setup(struct rtl8366rb *rtl) 
    15591553{ 
     1554        struct rtl8366_smi *smi = &rtl->smi; 
    15601555        int ret; 
    15611556 
    1562         ret = rtl8366rb_reset_chip(rtl); 
     1557        ret = rtl8366rb_reset_chip(smi); 
    15631558        if (ret) 
    15641559                return ret; 
  • branches/backfire/target/linux/generic-2.6/files/drivers/net/phy/rtl8366s.c

    r21934 r21935  
    233233} 
    234234 
    235 static int rtl8366s_reset_chip(struct rtl8366s *rtl) 
    236 { 
    237         struct rtl8366_smi *smi = &rtl->smi; 
     235static inline struct rtl8366_smi *sw_to_rtl8366_smi(struct switch_dev *sw) 
     236{ 
     237        struct rtl8366s *rtl = sw_to_rtl8366s(sw); 
     238        return &rtl->smi; 
     239} 
     240 
     241static int rtl8366s_reset_chip(struct rtl8366_smi *smi) 
     242{ 
    238243        int timeout = 10; 
    239244        u32 data; 
     
    324329} 
    325330 
    326 static int rtl8366_get_mib_counter(struct rtl8366s *rtl, int counter, 
     331static int rtl8366_get_mib_counter(struct rtl8366_smi *smi, int counter, 
    327332                                   int port, unsigned long long *val) 
    328333{ 
    329         struct rtl8366_smi *smi = &rtl->smi; 
    330334        int i; 
    331335        int err; 
     
    373377} 
    374378 
    375 static int rtl8366s_get_vlan_4k(struct rtl8366s *rtl, u32 vid, 
     379static int rtl8366s_get_vlan_4k(struct rtl8366_smi *smi, u32 vid, 
    376380                                struct rtl8366_vlan_4k *vlan4k) 
    377381{ 
    378         struct rtl8366_smi *smi = &rtl->smi; 
    379382        struct rtl8366s_vlan_4k vlan4k_priv; 
    380383        int err; 
     
    424427} 
    425428 
    426 static int rtl8366s_set_vlan_4k(struct rtl8366s *rtl, 
     429static int rtl8366s_set_vlan_4k(struct rtl8366_smi *smi, 
    427430                                const struct rtl8366_vlan_4k *vlan4k) 
    428431{ 
    429         struct rtl8366_smi *smi = &rtl->smi; 
    430432        struct rtl8366s_vlan_4k vlan4k_priv; 
    431433        int err; 
     
    468470} 
    469471 
    470 static int rtl8366s_get_vlan_mc(struct rtl8366s *rtl, u32 index, 
     472static int rtl8366s_get_vlan_mc(struct rtl8366_smi *smi, u32 index, 
    471473                                struct rtl8366_vlan_mc *vlanmc) 
    472474{ 
    473         struct rtl8366_smi *smi = &rtl->smi; 
    474475        struct rtl8366s_vlan_mc vlanmc_priv; 
    475476        int err; 
     
    509510} 
    510511 
    511 static int rtl8366s_set_vlan_mc(struct rtl8366s *rtl, u32 index, 
     512static int rtl8366s_set_vlan_mc(struct rtl8366_smi *smi, u32 index, 
    512513                                const struct rtl8366_vlan_mc *vlanmc) 
    513514{ 
    514         struct rtl8366_smi *smi = &rtl->smi; 
    515515        struct rtl8366s_vlan_mc vlanmc_priv; 
    516516        int err; 
     
    554554} 
    555555 
    556 static int rtl8366s_get_port_vlan_index(struct rtl8366s *rtl, int port, 
     556static int rtl8366s_get_port_vlan_index(struct rtl8366_smi *smi, int port, 
    557557                                       int *val) 
    558558{ 
    559         struct rtl8366_smi *smi = &rtl->smi; 
    560559        u32 data; 
    561560        int err; 
     
    576575} 
    577576 
    578 static int rtl8366s_get_vlan_port_pvid(struct rtl8366s *rtl, int port, 
     577static int rtl8366s_get_vlan_port_pvid(struct rtl8366_smi *smi, int port, 
    579578                                       int *val) 
    580579{ 
     
    583582        int index; 
    584583 
    585         err = rtl8366s_get_port_vlan_index(rtl, port, &index); 
     584        err = rtl8366s_get_port_vlan_index(smi, port, &index); 
    586585        if (err) 
    587586                return err; 
    588587 
    589         err = rtl8366s_get_vlan_mc(rtl, index, &vlanmc); 
     588        err = rtl8366s_get_vlan_mc(smi, index, &vlanmc); 
    590589        if (err) 
    591590                return err; 
     
    595594} 
    596595 
    597 static int rtl8366s_set_port_vlan_index(struct rtl8366s *rtl, int port, 
     596static int rtl8366s_set_port_vlan_index(struct rtl8366_smi *smi, int port, 
    598597                                        int index) 
    599598{ 
    600         struct rtl8366_smi *smi = &rtl->smi; 
    601599        u32 data; 
    602600        int err; 
     
    620618} 
    621619 
    622 static int rtl8366s_set_vlan_port_pvid(struct rtl8366s *rtl, int port, int val) 
     620static int rtl8366s_set_vlan_port_pvid(struct rtl8366_smi *smi, int port, int val) 
    623621{ 
    624622        int i; 
     
    630628 
    631629        /* Updating the 4K entry; lookup it and change the port member set */ 
    632         rtl8366s_get_vlan_4k(rtl, val, &vlan4k); 
     630        rtl8366s_get_vlan_4k(smi, val, &vlan4k); 
    633631        vlan4k.member |= ((1 << port) | RTL8366_PORT_CPU); 
    634632        vlan4k.untag = RTL8366_PORT_ALL_BUT_CPU; 
    635         rtl8366s_set_vlan_4k(rtl, &vlan4k); 
     633        rtl8366s_set_vlan_4k(smi, &vlan4k); 
    636634 
    637635        /* 
     
    640638         */ 
    641639        for (i = 0; i < RTL8366_NUM_VLANS; ++i) { 
    642                 rtl8366s_get_vlan_mc(rtl, i, &vlanmc); 
     640                rtl8366s_get_vlan_mc(smi, i, &vlanmc); 
    643641 
    644642                /* Try to find an existing vid and update port member set */ 
    645643                if (val == vlanmc.vid) { 
    646644                        vlanmc.member |= ((1 << port) | RTL8366_PORT_CPU); 
    647                         rtl8366s_set_vlan_mc(rtl, i, &vlanmc); 
     645                        rtl8366s_set_vlan_mc(smi, i, &vlanmc); 
    648646 
    649647                        /* Now update PVID register settings */ 
    650                         rtl8366s_set_port_vlan_index(rtl, port, i); 
     648                        rtl8366s_set_port_vlan_index(smi, port, i); 
    651649 
    652650                        return 0; 
     
    659657         */ 
    660658        for (i = 0; i < RTL8366_NUM_VLANS; ++i) { 
    661                 rtl8366s_get_vlan_mc(rtl, i, &vlanmc); 
     659                rtl8366s_get_vlan_mc(smi, i, &vlanmc); 
    662660 
    663661                /* 
     
    672670                        vlanmc.fid = 0; 
    673671 
    674                         rtl8366s_set_vlan_mc(rtl, i, &vlanmc); 
     672                        rtl8366s_set_vlan_mc(smi, i, &vlanmc); 
    675673 
    676674                        /* Now update PVID register settings */ 
    677                         rtl8366s_set_port_vlan_index(rtl, port, i); 
     675                        rtl8366s_set_port_vlan_index(smi, port, i); 
    678676 
    679677                        return 0; 
     
    681679        } 
    682680 
    683         dev_err(rtl->parent, 
     681        dev_err(smi->parent, 
    684682                "All 16 vlan member configurations are in use\n"); 
    685683 
     
    688686 
    689687 
    690 static int rtl8366s_vlan_set_vlan(struct rtl8366s *rtl, int enable) 
    691 { 
    692         struct rtl8366_smi *smi = &rtl->smi; 
     688static int rtl8366s_vlan_set_vlan(struct rtl8366_smi *smi, int enable) 
     689{ 
    693690        u32 data = 0; 
    694691 
     
    703700} 
    704701 
    705 static int rtl8366s_vlan_set_4ktable(struct rtl8366s *rtl, int enable) 
    706 { 
    707         struct rtl8366_smi *smi = &rtl->smi; 
     702static int rtl8366s_vlan_set_4ktable(struct rtl8366_smi *smi, int enable) 
     703{ 
    708704        u32 data = 0; 
    709705 
     
    718714} 
    719715 
    720 static int rtl8366s_reset_vlan(struct rtl8366s *rtl) 
     716static int rtl8366s_reset_vlan(struct rtl8366_smi *smi) 
    721717{ 
    722718        struct rtl8366_vlan_4k vlan4k; 
     
    732728        vlanmc.fid = 0; 
    733729        for (i = 0; i < RTL8366_NUM_VLANS; i++) { 
    734                 err = rtl8366s_set_vlan_mc(rtl, i, &vlanmc); 
     730                err = rtl8366s_set_vlan_mc(smi, i, &vlanmc); 
    735731                if (err) 
    736732                        return err; 
     
    742738        vlan4k.untag = RTL8366_PORT_ALL; 
    743739        vlan4k.fid = 0; 
    744         err = rtl8366s_set_vlan_4k(rtl, &vlan4k); 
     740        err = rtl8366s_set_vlan_4k(smi, &vlan4k); 
    745741        if (err) 
    746742                return err; 
     
    748744        /* Set all ports PVID to default VLAN */ 
    749745        for (i = 0; i < RTL8366_NUM_PORTS; i++) { 
    750                 err = rtl8366s_set_vlan_port_pvid(rtl, i, 0); 
     746                err = rtl8366s_set_vlan_port_pvid(smi, i, 0); 
    751747                if (err) 
    752748                        return err; 
     
    768764{ 
    769765        struct rtl8366s *rtl = (struct rtl8366s *)file->private_data; 
     766        struct rtl8366_smi *smi = &rtl->smi; 
    770767        int i, j, len = 0; 
    771768        char *buf = rtl->buf; 
     
    783780                        unsigned long long counter = 0; 
    784781 
    785                         if (!rtl8366_get_mib_counter(rtl, i, j, &counter)) 
     782                        if (!rtl8366_get_mib_counter(smi, i, j, &counter)) 
    786783                                len += snprintf(buf + len, 
    787784                                                sizeof(rtl->buf) - len, 
     
    816813{ 
    817814        struct rtl8366s *rtl = (struct rtl8366s *)file->private_data; 
     815        struct rtl8366_smi *smi = &rtl->smi; 
    818816        int i, j, len = 0; 
    819817        char *buf = rtl->buf; 
     
    828826                struct rtl8366_vlan_mc vlanmc; 
    829827 
    830                 rtl8366s_get_vlan_mc(rtl, i, &vlanmc); 
     828                rtl8366s_get_vlan_mc(smi, i, &vlanmc); 
    831829 
    832830                len += snprintf(buf + len, sizeof(rtl->buf) - len, 
     
    837835                for (j = 0; j < RTL8366_NUM_PORTS; ++j) { 
    838836                        int index = 0; 
    839                         if (!rtl8366s_get_port_vlan_index(rtl, j, &index)) { 
     837                        if (!rtl8366s_get_port_vlan_index(smi, j, &index)) { 
    840838                                if (index == i) 
    841839                                        len += snprintf(buf + len, 
     
    994992                                  struct switch_val *val) 
    995993{ 
    996         struct rtl8366s *rtl = sw_to_rtl8366s(dev); 
    997         struct rtl8366_smi *smi = &rtl->smi; 
     994        struct rtl8366_smi *smi = sw_to_rtl8366_smi(dev); 
    998995        u32 data = 0; 
    999996 
     
    10111008                                       struct switch_val *val) 
    10121009{ 
    1013         struct rtl8366s *rtl = sw_to_rtl8366s(dev); 
    1014         struct rtl8366_smi *smi = &rtl->smi; 
     1010        struct rtl8366_smi *smi = sw_to_rtl8366_smi(dev); 
    10151011        u32 data; 
    10161012 
     
    10381034                                     struct switch_val *val) 
    10391035{ 
    1040         struct rtl8366s *rtl = sw_to_rtl8366s(dev); 
    1041         struct rtl8366_smi *smi = &rtl->smi; 
     1036        struct rtl8366_smi *smi = sw_to_rtl8366_smi(dev); 
    10421037        u32 data; 
    10431038 
     
    10531048                                    struct switch_val *val) 
    10541049{ 
    1055         struct rtl8366s *rtl = sw_to_rtl8366s(dev); 
    1056         struct rtl8366_smi *smi = &rtl->smi; 
     1050        struct rtl8366_smi *smi = sw_to_rtl8366_smi(dev); 
    10571051        u32 data; 
    10581052 
     
    10741068                                       struct switch_val *val) 
    10751069{ 
    1076         struct rtl8366s *rtl = sw_to_rtl8366s(dev); 
     1070        struct rtl8366_smi *smi = sw_to_rtl8366_smi(dev); 
    10771071 
    10781072        if (attr->ofs == 1) 
    1079                 return rtl8366s_vlan_set_vlan(rtl, val->value.i); 
     1073                return rtl8366s_vlan_set_vlan(smi, val->value.i); 
    10801074        else 
    1081                 return rtl8366s_vlan_set_4ktable(rtl, val->value.i); 
     1075                return rtl8366s_vlan_set_4ktable(smi, val->value.i); 
    10821076} 
    10831077 
     
    11481142        struct rtl8366_vlan_4k vlan4k; 
    11491143        struct rtl8366s *rtl = sw_to_rtl8366s(dev); 
     1144        struct rtl8366_smi *smi = &rtl->smi; 
    11501145        char *buf = rtl->buf; 
    11511146 
     
    11551150        memset(buf, '\0', sizeof(rtl->buf)); 
    11561151 
    1157         rtl8366s_get_vlan_mc(rtl, val->port_vlan, &vlanmc); 
    1158         rtl8366s_get_vlan_4k(rtl, vlanmc.vid, &vlan4k); 
     1152        rtl8366s_get_vlan_mc(smi, val->port_vlan, &vlanmc); 
     1153        rtl8366s_get_vlan_4k(smi, vlanmc.vid, &vlan4k); 
    11591154 
    11601155        len += snprintf(buf + len, sizeof(rtl->buf) - len, "VLAN %d: Ports: ", 
     
    11631158        for (i = 0; i < RTL8366_NUM_PORTS; ++i) { 
    11641159                int index = 0; 
    1165                 if (!rtl8366s_get_port_vlan_index(rtl, i, &index) && 
     1160                if (!rtl8366s_get_port_vlan_index(smi, i, &index) && 
    11661161                    index == val->port_vlan) 
    11671162                        len += snprintf(buf + len, sizeof(rtl->buf) - len, 
     
    11921187                                    struct switch_val *val) 
    11931188{ 
    1194         struct rtl8366s *rtl = sw_to_rtl8366s(dev); 
    1195         struct rtl8366_smi *smi = &rtl->smi; 
     1189        struct rtl8366_smi *smi = sw_to_rtl8366_smi(dev); 
    11961190        u32 data = 0; 
    11971191 
     
    12181212                                    struct switch_val *val) 
    12191213{ 
    1220         struct rtl8366s *rtl = sw_to_rtl8366s(dev); 
    1221         struct rtl8366_smi *smi = &rtl->smi; 
     1214        struct rtl8366_smi *smi = sw_to_rtl8366_smi(dev); 
    12221215        u32 data = 0; 
    12231216 
     
    12351228                                       struct switch_val *val) 
    12361229{ 
    1237         struct rtl8366s *rtl = sw_to_rtl8366s(dev); 
    1238         struct rtl8366_smi *smi = &rtl->smi; 
     1230        struct rtl8366_smi *smi = sw_to_rtl8366_smi(dev); 
    12391231        u32 data = 0; 
    12401232 
     
    12541246{ 
    12551247        struct rtl8366s *rtl = sw_to_rtl8366s(dev); 
     1248        struct rtl8366_smi *smi = &rtl->smi; 
    12561249        int i, len = 0; 
    12571250        unsigned long long counter = 0; 
     
    12681261                len += snprintf(buf + len, sizeof(rtl->buf) - len, 
    12691262                                "%d:%s\t", i, rtl8366s_mib_counters[i].name); 
    1270                 if (!rtl8366_get_mib_counter(rtl, i, val->port_vlan, &counter)) 
     1263                if (!rtl8366_get_mib_counter(smi, i, val->port_vlan, &counter)) 
    12711264                        len += snprintf(buf + len, sizeof(rtl->buf) - len, 
    12721265                                        "[%llu]\n", counter); 
     
    12841277                                      struct switch_val *val) 
    12851278{ 
     1279        struct rtl8366_smi *smi = sw_to_rtl8366_smi(dev); 
    12861280        struct rtl8366_vlan_mc vlanmc; 
    1287         struct rtl8366s *rtl = sw_to_rtl8366s(dev); 
    12881281        struct switch_port *port; 
    12891282        int i; 
     
    12921285                return -EINVAL; 
    12931286 
    1294         rtl8366s_get_vlan_mc(rtl, val->port_vlan, &vlanmc); 
     1287        rtl8366s_get_vlan_mc(smi, val->port_vlan, &vlanmc); 
    12951288 
    12961289        port = &val->value.ports[0]; 
     
    13121305                                      struct switch_val *val) 
    13131306{ 
     1307        struct rtl8366_smi *smi = sw_to_rtl8366_smi(dev); 
    13141308        struct rtl8366_vlan_mc vlanmc; 
    13151309        struct rtl8366_vlan_4k vlan4k; 
    1316         struct rtl8366s *rtl = sw_to_rtl8366s(dev); 
    13171310        struct switch_port *port; 
    13181311        int i; 
     
    13211314                return -EINVAL; 
    13221315 
    1323         rtl8366s_get_vlan_mc(rtl, val->port_vlan, &vlanmc); 
    1324         rtl8366s_get_vlan_4k(rtl, vlanmc.vid, &vlan4k); 
     1316        rtl8366s_get_vlan_mc(smi, val->port_vlan, &vlanmc); 
     1317        rtl8366s_get_vlan_4k(smi, vlanmc.vid, &vlan4k); 
    13251318 
    13261319        vlanmc.untag = 0; 
     
    13381331        vlan4k.untag = vlanmc.untag; 
    13391332 
    1340         rtl8366s_set_vlan_mc(rtl, val->port_vlan, &vlanmc); 
    1341         rtl8366s_set_vlan_4k(rtl, &vlan4k); 
     1333        rtl8366s_set_vlan_mc(smi, val->port_vlan, &vlanmc); 
     1334        rtl8366s_set_vlan_4k(smi, &vlan4k); 
    13421335        return 0; 
    13431336} 
     
    13451338static int rtl8366s_sw_get_port_pvid(struct switch_dev *dev, int port, int *val) 
    13461339{ 
    1347         struct rtl8366s *rtl = sw_to_rtl8366s(dev); 
    1348         return rtl8366s_get_vlan_port_pvid(rtl, port, val); 
     1340        struct rtl8366_smi *smi = sw_to_rtl8366_smi(dev); 
     1341        return rtl8366s_get_vlan_port_pvid(smi, port, val); 
    13491342} 
    13501343 
    13511344static int rtl8366s_sw_set_port_pvid(struct switch_dev *dev, int port, int val) 
    13521345{ 
    1353         struct rtl8366s *rtl = sw_to_rtl8366s(dev); 
    1354         return rtl8366s_set_vlan_port_pvid(rtl, port, val); 
     1346        struct rtl8366_smi *smi = sw_to_rtl8366_smi(dev); 
     1347        return rtl8366s_set_vlan_port_pvid(smi, port, val); 
    13551348} 
    13561349 
    13571350static int rtl8366s_sw_reset_switch(struct switch_dev *dev) 
    13581351{ 
    1359         struct rtl8366s *rtl = sw_to_rtl8366s(dev); 
     1352        struct rtl8366_smi *smi = sw_to_rtl8366_smi(dev); 
    13601353        int err; 
    13611354 
    1362         err = rtl8366s_reset_chip(rtl); 
     1355        err = rtl8366s_reset_chip(smi); 
    13631356        if (err) 
    13641357                return err; 
    13651358 
    1366         return rtl8366s_reset_vlan(rtl); 
     1359        return rtl8366s_reset_vlan(smi); 
    13671360} 
    13681361 
     
    15261519static int rtl8366s_setup(struct rtl8366s *rtl) 
    15271520{ 
     1521        struct rtl8366_smi *smi = &rtl->smi; 
    15281522        int ret; 
    15291523 
    1530         ret = rtl8366s_reset_chip(rtl); 
     1524        ret = rtl8366s_reset_chip(smi); 
    15311525        if (ret) 
    15321526                return ret; 
Note: See TracChangeset for help on using the changeset viewer.