Lines Matching refs:ret
80 int ret; in __smsc75xx_read_reg() local
90 ret = fn(dev, USB_VENDOR_REQUEST_READ_REGISTER, USB_DIR_IN in __smsc75xx_read_reg()
93 if (unlikely(ret < 0)) { in __smsc75xx_read_reg()
95 index, ret); in __smsc75xx_read_reg()
96 return ret; in __smsc75xx_read_reg()
102 return ret; in __smsc75xx_read_reg()
109 int ret; in __smsc75xx_write_reg() local
122 ret = fn(dev, USB_VENDOR_REQUEST_WRITE_REGISTER, USB_DIR_OUT in __smsc75xx_write_reg()
125 if (unlikely(ret < 0)) in __smsc75xx_write_reg()
127 index, ret); in __smsc75xx_write_reg()
129 return ret; in __smsc75xx_write_reg()
163 int ret; in __smsc75xx_phy_wait_not_busy() local
166 ret = __smsc75xx_read_reg(dev, MII_ACCESS, &val, in_pm); in __smsc75xx_phy_wait_not_busy()
167 if (ret < 0) { in __smsc75xx_phy_wait_not_busy()
169 return ret; in __smsc75xx_phy_wait_not_busy()
184 int ret; in __smsc75xx_mdio_read() local
189 ret = __smsc75xx_phy_wait_not_busy(dev, in_pm); in __smsc75xx_mdio_read()
190 if (ret < 0) { in __smsc75xx_mdio_read()
201 ret = __smsc75xx_write_reg(dev, MII_ACCESS, addr, in_pm); in __smsc75xx_mdio_read()
202 if (ret < 0) { in __smsc75xx_mdio_read()
207 ret = __smsc75xx_phy_wait_not_busy(dev, in_pm); in __smsc75xx_mdio_read()
208 if (ret < 0) { in __smsc75xx_mdio_read()
213 ret = __smsc75xx_read_reg(dev, MII_DATA, &val, in_pm); in __smsc75xx_mdio_read()
214 if (ret < 0) { in __smsc75xx_mdio_read()
219 ret = (u16)(val & 0xFFFF); in __smsc75xx_mdio_read()
223 return ret; in __smsc75xx_mdio_read()
231 int ret; in __smsc75xx_mdio_write() local
236 ret = __smsc75xx_phy_wait_not_busy(dev, in_pm); in __smsc75xx_mdio_write()
237 if (ret < 0) { in __smsc75xx_mdio_write()
243 ret = __smsc75xx_write_reg(dev, MII_DATA, val, in_pm); in __smsc75xx_mdio_write()
244 if (ret < 0) { in __smsc75xx_mdio_write()
255 ret = __smsc75xx_write_reg(dev, MII_ACCESS, addr, in_pm); in __smsc75xx_mdio_write()
256 if (ret < 0) { in __smsc75xx_mdio_write()
261 ret = __smsc75xx_phy_wait_not_busy(dev, in_pm); in __smsc75xx_mdio_write()
262 if (ret < 0) { in __smsc75xx_mdio_write()
298 int ret; in smsc75xx_wait_eeprom() local
301 ret = smsc75xx_read_reg(dev, E2P_CMD, &val); in smsc75xx_wait_eeprom()
302 if (ret < 0) { in smsc75xx_wait_eeprom()
304 return ret; in smsc75xx_wait_eeprom()
324 int ret; in smsc75xx_eeprom_confirm_not_busy() local
327 ret = smsc75xx_read_reg(dev, E2P_CMD, &val); in smsc75xx_eeprom_confirm_not_busy()
328 if (ret < 0) { in smsc75xx_eeprom_confirm_not_busy()
330 return ret; in smsc75xx_eeprom_confirm_not_busy()
347 int i, ret; in smsc75xx_read_eeprom() local
352 ret = smsc75xx_eeprom_confirm_not_busy(dev); in smsc75xx_read_eeprom()
353 if (ret) in smsc75xx_read_eeprom()
354 return ret; in smsc75xx_read_eeprom()
358 ret = smsc75xx_write_reg(dev, E2P_CMD, val); in smsc75xx_read_eeprom()
359 if (ret < 0) { in smsc75xx_read_eeprom()
361 return ret; in smsc75xx_read_eeprom()
364 ret = smsc75xx_wait_eeprom(dev); in smsc75xx_read_eeprom()
365 if (ret < 0) in smsc75xx_read_eeprom()
366 return ret; in smsc75xx_read_eeprom()
368 ret = smsc75xx_read_reg(dev, E2P_DATA, &val); in smsc75xx_read_eeprom()
369 if (ret < 0) { in smsc75xx_read_eeprom()
371 return ret; in smsc75xx_read_eeprom()
385 int i, ret; in smsc75xx_write_eeprom() local
390 ret = smsc75xx_eeprom_confirm_not_busy(dev); in smsc75xx_write_eeprom()
391 if (ret) in smsc75xx_write_eeprom()
392 return ret; in smsc75xx_write_eeprom()
396 ret = smsc75xx_write_reg(dev, E2P_CMD, val); in smsc75xx_write_eeprom()
397 if (ret < 0) { in smsc75xx_write_eeprom()
399 return ret; in smsc75xx_write_eeprom()
402 ret = smsc75xx_wait_eeprom(dev); in smsc75xx_write_eeprom()
403 if (ret < 0) in smsc75xx_write_eeprom()
404 return ret; in smsc75xx_write_eeprom()
410 ret = smsc75xx_write_reg(dev, E2P_DATA, val); in smsc75xx_write_eeprom()
411 if (ret < 0) { in smsc75xx_write_eeprom()
413 return ret; in smsc75xx_write_eeprom()
418 ret = smsc75xx_write_reg(dev, E2P_CMD, val); in smsc75xx_write_eeprom()
419 if (ret < 0) { in smsc75xx_write_eeprom()
421 return ret; in smsc75xx_write_eeprom()
424 ret = smsc75xx_wait_eeprom(dev); in smsc75xx_write_eeprom()
425 if (ret < 0) in smsc75xx_write_eeprom()
426 return ret; in smsc75xx_write_eeprom()
436 int i, ret; in smsc75xx_dataport_wait_not_busy() local
440 ret = smsc75xx_read_reg(dev, DP_SEL, &dp_sel); in smsc75xx_dataport_wait_not_busy()
441 if (ret < 0) { in smsc75xx_dataport_wait_not_busy()
443 return ret; in smsc75xx_dataport_wait_not_busy()
462 int i, ret; in smsc75xx_dataport_write() local
466 ret = smsc75xx_dataport_wait_not_busy(dev); in smsc75xx_dataport_write()
467 if (ret < 0) { in smsc75xx_dataport_write()
472 ret = smsc75xx_read_reg(dev, DP_SEL, &dp_sel); in smsc75xx_dataport_write()
473 if (ret < 0) { in smsc75xx_dataport_write()
480 ret = smsc75xx_write_reg(dev, DP_SEL, dp_sel); in smsc75xx_dataport_write()
481 if (ret < 0) { in smsc75xx_dataport_write()
487 ret = smsc75xx_write_reg(dev, DP_ADDR, addr + i); in smsc75xx_dataport_write()
488 if (ret < 0) { in smsc75xx_dataport_write()
493 ret = smsc75xx_write_reg(dev, DP_DATA, buf[i]); in smsc75xx_dataport_write()
494 if (ret < 0) { in smsc75xx_dataport_write()
499 ret = smsc75xx_write_reg(dev, DP_CMD, DP_CMD_WRITE); in smsc75xx_dataport_write()
500 if (ret < 0) { in smsc75xx_dataport_write()
505 ret = smsc75xx_dataport_wait_not_busy(dev); in smsc75xx_dataport_write()
506 if (ret < 0) { in smsc75xx_dataport_write()
514 return ret; in smsc75xx_dataport_write()
528 int ret; in smsc75xx_deferred_multicast_write() local
536 ret = smsc75xx_write_reg(dev, RFE_CTL, pdata->rfe_ctl); in smsc75xx_deferred_multicast_write()
537 if (ret < 0) in smsc75xx_deferred_multicast_write()
590 int ret; in smsc75xx_update_flowcontrol() local
611 ret = smsc75xx_write_reg(dev, FLOW, flow); in smsc75xx_update_flowcontrol()
612 if (ret < 0) { in smsc75xx_update_flowcontrol()
614 return ret; in smsc75xx_update_flowcontrol()
617 ret = smsc75xx_write_reg(dev, FCT_FLOW, fct_flow); in smsc75xx_update_flowcontrol()
618 if (ret < 0) { in smsc75xx_update_flowcontrol()
620 return ret; in smsc75xx_update_flowcontrol()
631 int ret; in smsc75xx_link_reset() local
637 ret = smsc75xx_write_reg(dev, INT_STS, INT_STS_CLEAR_ALL); in smsc75xx_link_reset()
638 if (ret < 0) { in smsc75xx_link_reset()
640 return ret; in smsc75xx_link_reset()
719 int ret; in smsc75xx_ethtool_set_wol() local
726 ret = device_set_wakeup_enable(&dev->udev->dev, pdata->wolopts); in smsc75xx_ethtool_set_wol()
727 if (ret < 0) in smsc75xx_ethtool_set_wol()
728 netdev_warn(dev->net, "device_set_wakeup_enable error %d\n", ret); in smsc75xx_ethtool_set_wol()
730 return ret; in smsc75xx_ethtool_set_wol()
793 int ret = smsc75xx_write_reg(dev, RX_ADDRH, addr_hi); in smsc75xx_set_mac_address() local
794 if (ret < 0) { in smsc75xx_set_mac_address()
795 netdev_warn(dev->net, "Failed to write RX_ADDRH: %d\n", ret); in smsc75xx_set_mac_address()
796 return ret; in smsc75xx_set_mac_address()
799 ret = smsc75xx_write_reg(dev, RX_ADDRL, addr_lo); in smsc75xx_set_mac_address()
800 if (ret < 0) { in smsc75xx_set_mac_address()
801 netdev_warn(dev->net, "Failed to write RX_ADDRL: %d\n", ret); in smsc75xx_set_mac_address()
802 return ret; in smsc75xx_set_mac_address()
806 ret = smsc75xx_write_reg(dev, ADDR_FILTX, addr_hi); in smsc75xx_set_mac_address()
807 if (ret < 0) { in smsc75xx_set_mac_address()
808 netdev_warn(dev->net, "Failed to write ADDR_FILTX: %d\n", ret); in smsc75xx_set_mac_address()
809 return ret; in smsc75xx_set_mac_address()
812 ret = smsc75xx_write_reg(dev, ADDR_FILTX + 4, addr_lo); in smsc75xx_set_mac_address()
813 if (ret < 0) in smsc75xx_set_mac_address()
814 netdev_warn(dev->net, "Failed to write ADDR_FILTX+4: %d\n", ret); in smsc75xx_set_mac_address()
816 return ret; in smsc75xx_set_mac_address()
821 int bmcr, ret, timeout = 0; in smsc75xx_phy_initialize() local
860 ret = smsc75xx_mdio_read(dev->net, dev->mii.phy_id, PHY_INT_SRC); in smsc75xx_phy_initialize()
861 if (ret < 0) { in smsc75xx_phy_initialize()
863 return ret; in smsc75xx_phy_initialize()
878 int ret = 0; in smsc75xx_set_rx_max_frame_length() local
882 ret = smsc75xx_read_reg(dev, MAC_RX, &buf); in smsc75xx_set_rx_max_frame_length()
883 if (ret < 0) { in smsc75xx_set_rx_max_frame_length()
884 netdev_warn(dev->net, "Failed to read MAC_RX: %d\n", ret); in smsc75xx_set_rx_max_frame_length()
885 return ret; in smsc75xx_set_rx_max_frame_length()
892 ret = smsc75xx_write_reg(dev, MAC_RX, buf); in smsc75xx_set_rx_max_frame_length()
893 if (ret < 0) { in smsc75xx_set_rx_max_frame_length()
894 netdev_warn(dev->net, "Failed to write MAC_RX: %d\n", ret); in smsc75xx_set_rx_max_frame_length()
895 return ret; in smsc75xx_set_rx_max_frame_length()
903 ret = smsc75xx_write_reg(dev, MAC_RX, buf); in smsc75xx_set_rx_max_frame_length()
904 if (ret < 0) { in smsc75xx_set_rx_max_frame_length()
905 netdev_warn(dev->net, "Failed to write MAC_RX: %d\n", ret); in smsc75xx_set_rx_max_frame_length()
906 return ret; in smsc75xx_set_rx_max_frame_length()
911 ret = smsc75xx_write_reg(dev, MAC_RX, buf); in smsc75xx_set_rx_max_frame_length()
912 if (ret < 0) { in smsc75xx_set_rx_max_frame_length()
913 netdev_warn(dev->net, "Failed to write MAC_RX: %d\n", ret); in smsc75xx_set_rx_max_frame_length()
914 return ret; in smsc75xx_set_rx_max_frame_length()
924 int ret; in smsc75xx_change_mtu() local
926 ret = smsc75xx_set_rx_max_frame_length(dev, new_mtu + ETH_HLEN); in smsc75xx_change_mtu()
927 if (ret < 0) { in smsc75xx_change_mtu()
929 return ret; in smsc75xx_change_mtu()
942 int ret; in smsc75xx_set_features() local
954 ret = smsc75xx_write_reg(dev, RFE_CTL, pdata->rfe_ctl); in smsc75xx_set_features()
955 if (ret < 0) { in smsc75xx_set_features()
957 return ret; in smsc75xx_set_features()
968 int ret; in smsc75xx_wait_ready() local
970 ret = __smsc75xx_read_reg(dev, PMT_CTL, &buf, in_pm); in smsc75xx_wait_ready()
972 if (ret < 0) { in smsc75xx_wait_ready()
973 netdev_warn(dev->net, "Failed to read PMT_CTL: %d\n", ret); in smsc75xx_wait_ready()
974 return ret; in smsc75xx_wait_ready()
991 int ret = 0, timeout = 0; in smsc75xx_phy_gig_workaround() local
1010 ret = smsc75xx_read_reg(dev, PMT_CTL, &buf); in smsc75xx_phy_gig_workaround()
1011 if (ret < 0) { in smsc75xx_phy_gig_workaround()
1012 netdev_warn(dev->net, "Failed to read PMT_CTL: %d\n", ret); in smsc75xx_phy_gig_workaround()
1013 return ret; in smsc75xx_phy_gig_workaround()
1018 ret = smsc75xx_write_reg(dev, PMT_CTL, buf); in smsc75xx_phy_gig_workaround()
1019 if (ret < 0) { in smsc75xx_phy_gig_workaround()
1020 netdev_warn(dev->net, "Failed to write PMT_CTL: %d\n", ret); in smsc75xx_phy_gig_workaround()
1021 return ret; in smsc75xx_phy_gig_workaround()
1027 ret = smsc75xx_read_reg(dev, PMT_CTL, &buf); in smsc75xx_phy_gig_workaround()
1028 if (ret < 0) { in smsc75xx_phy_gig_workaround()
1030 ret); in smsc75xx_phy_gig_workaround()
1031 return ret; in smsc75xx_phy_gig_workaround()
1048 int ret = 0, timeout; in smsc75xx_reset() local
1052 ret = smsc75xx_wait_ready(dev, 0); in smsc75xx_reset()
1053 if (ret < 0) { in smsc75xx_reset()
1055 return ret; in smsc75xx_reset()
1058 ret = smsc75xx_read_reg(dev, HW_CFG, &buf); in smsc75xx_reset()
1059 if (ret < 0) { in smsc75xx_reset()
1060 netdev_warn(dev->net, "Failed to read HW_CFG: %d\n", ret); in smsc75xx_reset()
1061 return ret; in smsc75xx_reset()
1066 ret = smsc75xx_write_reg(dev, HW_CFG, buf); in smsc75xx_reset()
1067 if (ret < 0) { in smsc75xx_reset()
1068 netdev_warn(dev->net, "Failed to write HW_CFG: %d\n", ret); in smsc75xx_reset()
1069 return ret; in smsc75xx_reset()
1075 ret = smsc75xx_read_reg(dev, HW_CFG, &buf); in smsc75xx_reset()
1076 if (ret < 0) { in smsc75xx_reset()
1077 netdev_warn(dev->net, "Failed to read HW_CFG: %d\n", ret); in smsc75xx_reset()
1078 return ret; in smsc75xx_reset()
1090 ret = smsc75xx_read_reg(dev, PMT_CTL, &buf); in smsc75xx_reset()
1091 if (ret < 0) { in smsc75xx_reset()
1092 netdev_warn(dev->net, "Failed to read PMT_CTL: %d\n", ret); in smsc75xx_reset()
1093 return ret; in smsc75xx_reset()
1098 ret = smsc75xx_write_reg(dev, PMT_CTL, buf); in smsc75xx_reset()
1099 if (ret < 0) { in smsc75xx_reset()
1100 netdev_warn(dev->net, "Failed to write PMT_CTL: %d\n", ret); in smsc75xx_reset()
1101 return ret; in smsc75xx_reset()
1107 ret = smsc75xx_read_reg(dev, PMT_CTL, &buf); in smsc75xx_reset()
1108 if (ret < 0) { in smsc75xx_reset()
1109 netdev_warn(dev->net, "Failed to read PMT_CTL: %d\n", ret); in smsc75xx_reset()
1110 return ret; in smsc75xx_reset()
1122 ret = smsc75xx_set_mac_address(dev); in smsc75xx_reset()
1123 if (ret < 0) { in smsc75xx_reset()
1125 return ret; in smsc75xx_reset()
1131 ret = smsc75xx_read_reg(dev, HW_CFG, &buf); in smsc75xx_reset()
1132 if (ret < 0) { in smsc75xx_reset()
1133 netdev_warn(dev->net, "Failed to read HW_CFG: %d\n", ret); in smsc75xx_reset()
1134 return ret; in smsc75xx_reset()
1142 ret = smsc75xx_write_reg(dev, HW_CFG, buf); in smsc75xx_reset()
1143 if (ret < 0) { in smsc75xx_reset()
1144 netdev_warn(dev->net, "Failed to write HW_CFG: %d\n", ret); in smsc75xx_reset()
1145 return ret; in smsc75xx_reset()
1148 ret = smsc75xx_read_reg(dev, HW_CFG, &buf); in smsc75xx_reset()
1149 if (ret < 0) { in smsc75xx_reset()
1150 netdev_warn(dev->net, "Failed to read HW_CFG: %d\n", ret); in smsc75xx_reset()
1151 return ret; in smsc75xx_reset()
1171 ret = smsc75xx_write_reg(dev, BURST_CAP, buf); in smsc75xx_reset()
1172 if (ret < 0) { in smsc75xx_reset()
1173 netdev_warn(dev->net, "Failed to write BURST_CAP: %d\n", ret); in smsc75xx_reset()
1174 return ret; in smsc75xx_reset()
1177 ret = smsc75xx_read_reg(dev, BURST_CAP, &buf); in smsc75xx_reset()
1178 if (ret < 0) { in smsc75xx_reset()
1179 netdev_warn(dev->net, "Failed to read BURST_CAP: %d\n", ret); in smsc75xx_reset()
1180 return ret; in smsc75xx_reset()
1186 ret = smsc75xx_write_reg(dev, BULK_IN_DLY, DEFAULT_BULK_IN_DELAY); in smsc75xx_reset()
1187 if (ret < 0) { in smsc75xx_reset()
1188 netdev_warn(dev->net, "Failed to write BULK_IN_DLY: %d\n", ret); in smsc75xx_reset()
1189 return ret; in smsc75xx_reset()
1192 ret = smsc75xx_read_reg(dev, BULK_IN_DLY, &buf); in smsc75xx_reset()
1193 if (ret < 0) { in smsc75xx_reset()
1194 netdev_warn(dev->net, "Failed to read BULK_IN_DLY: %d\n", ret); in smsc75xx_reset()
1195 return ret; in smsc75xx_reset()
1202 ret = smsc75xx_read_reg(dev, HW_CFG, &buf); in smsc75xx_reset()
1203 if (ret < 0) { in smsc75xx_reset()
1204 netdev_warn(dev->net, "Failed to read HW_CFG: %d\n", ret); in smsc75xx_reset()
1205 return ret; in smsc75xx_reset()
1212 ret = smsc75xx_write_reg(dev, HW_CFG, buf); in smsc75xx_reset()
1213 if (ret < 0) { in smsc75xx_reset()
1214 netdev_warn(dev->net, "Failed to write HW_CFG: %d\n", ret); in smsc75xx_reset()
1215 return ret; in smsc75xx_reset()
1218 ret = smsc75xx_read_reg(dev, HW_CFG, &buf); in smsc75xx_reset()
1219 if (ret < 0) { in smsc75xx_reset()
1220 netdev_warn(dev->net, "Failed to read HW_CFG: %d\n", ret); in smsc75xx_reset()
1221 return ret; in smsc75xx_reset()
1229 ret = smsc75xx_write_reg(dev, FCT_RX_FIFO_END, buf); in smsc75xx_reset()
1230 if (ret < 0) { in smsc75xx_reset()
1231 netdev_warn(dev->net, "Failed to write FCT_RX_FIFO_END: %d\n", ret); in smsc75xx_reset()
1232 return ret; in smsc75xx_reset()
1238 ret = smsc75xx_write_reg(dev, FCT_TX_FIFO_END, buf); in smsc75xx_reset()
1239 if (ret < 0) { in smsc75xx_reset()
1240 netdev_warn(dev->net, "Failed to write FCT_TX_FIFO_END: %d\n", ret); in smsc75xx_reset()
1241 return ret; in smsc75xx_reset()
1246 ret = smsc75xx_write_reg(dev, INT_STS, INT_STS_CLEAR_ALL); in smsc75xx_reset()
1247 if (ret < 0) { in smsc75xx_reset()
1248 netdev_warn(dev->net, "Failed to write INT_STS: %d\n", ret); in smsc75xx_reset()
1249 return ret; in smsc75xx_reset()
1252 ret = smsc75xx_read_reg(dev, ID_REV, &buf); in smsc75xx_reset()
1253 if (ret < 0) { in smsc75xx_reset()
1254 netdev_warn(dev->net, "Failed to read ID_REV: %d\n", ret); in smsc75xx_reset()
1255 return ret; in smsc75xx_reset()
1260 ret = smsc75xx_read_reg(dev, E2P_CMD, &buf); in smsc75xx_reset()
1261 if (ret < 0) { in smsc75xx_reset()
1262 netdev_warn(dev->net, "Failed to read E2P_CMD: %d\n", ret); in smsc75xx_reset()
1263 return ret; in smsc75xx_reset()
1268 ret = smsc75xx_read_reg(dev, LED_GPIO_CFG, &buf); in smsc75xx_reset()
1269 if (ret < 0) { in smsc75xx_reset()
1270 netdev_warn(dev->net, "Failed to read LED_GPIO_CFG: %d\n", ret); in smsc75xx_reset()
1271 return ret; in smsc75xx_reset()
1277 ret = smsc75xx_write_reg(dev, LED_GPIO_CFG, buf); in smsc75xx_reset()
1278 if (ret < 0) { in smsc75xx_reset()
1279 netdev_warn(dev->net, "Failed to write LED_GPIO_CFG: %d\n", ret); in smsc75xx_reset()
1280 return ret; in smsc75xx_reset()
1284 ret = smsc75xx_write_reg(dev, FLOW, 0); in smsc75xx_reset()
1285 if (ret < 0) { in smsc75xx_reset()
1286 netdev_warn(dev->net, "Failed to write FLOW: %d\n", ret); in smsc75xx_reset()
1287 return ret; in smsc75xx_reset()
1290 ret = smsc75xx_write_reg(dev, FCT_FLOW, 0); in smsc75xx_reset()
1291 if (ret < 0) { in smsc75xx_reset()
1292 netdev_warn(dev->net, "Failed to write FCT_FLOW: %d\n", ret); in smsc75xx_reset()
1293 return ret; in smsc75xx_reset()
1297 ret = smsc75xx_read_reg(dev, RFE_CTL, &pdata->rfe_ctl); in smsc75xx_reset()
1298 if (ret < 0) { in smsc75xx_reset()
1299 netdev_warn(dev->net, "Failed to read RFE_CTL: %d\n", ret); in smsc75xx_reset()
1300 return ret; in smsc75xx_reset()
1305 ret = smsc75xx_write_reg(dev, RFE_CTL, pdata->rfe_ctl); in smsc75xx_reset()
1306 if (ret < 0) { in smsc75xx_reset()
1307 netdev_warn(dev->net, "Failed to write RFE_CTL: %d\n", ret); in smsc75xx_reset()
1308 return ret; in smsc75xx_reset()
1311 ret = smsc75xx_read_reg(dev, RFE_CTL, &pdata->rfe_ctl); in smsc75xx_reset()
1312 if (ret < 0) { in smsc75xx_reset()
1313 netdev_warn(dev->net, "Failed to read RFE_CTL: %d\n", ret); in smsc75xx_reset()
1314 return ret; in smsc75xx_reset()
1325 ret = smsc75xx_phy_initialize(dev); in smsc75xx_reset()
1326 if (ret < 0) { in smsc75xx_reset()
1327 netdev_warn(dev->net, "Failed to initialize PHY: %d\n", ret); in smsc75xx_reset()
1328 return ret; in smsc75xx_reset()
1331 ret = smsc75xx_read_reg(dev, INT_EP_CTL, &buf); in smsc75xx_reset()
1332 if (ret < 0) { in smsc75xx_reset()
1333 netdev_warn(dev->net, "Failed to read INT_EP_CTL: %d\n", ret); in smsc75xx_reset()
1334 return ret; in smsc75xx_reset()
1340 ret = smsc75xx_write_reg(dev, INT_EP_CTL, buf); in smsc75xx_reset()
1341 if (ret < 0) { in smsc75xx_reset()
1342 netdev_warn(dev->net, "Failed to write INT_EP_CTL: %d\n", ret); in smsc75xx_reset()
1343 return ret; in smsc75xx_reset()
1347 ret = smsc75xx_read_reg(dev, MAC_CR, &buf); in smsc75xx_reset()
1348 if (ret < 0) { in smsc75xx_reset()
1349 netdev_warn(dev->net, "Failed to read MAC_CR: %d\n", ret); in smsc75xx_reset()
1350 return ret; in smsc75xx_reset()
1354 ret = smsc75xx_write_reg(dev, MAC_CR, buf); in smsc75xx_reset()
1355 if (ret < 0) { in smsc75xx_reset()
1356 netdev_warn(dev->net, "Failed to write MAC_CR: %d\n", ret); in smsc75xx_reset()
1357 return ret; in smsc75xx_reset()
1360 ret = smsc75xx_read_reg(dev, MAC_TX, &buf); in smsc75xx_reset()
1361 if (ret < 0) { in smsc75xx_reset()
1362 netdev_warn(dev->net, "Failed to read MAC_TX: %d\n", ret); in smsc75xx_reset()
1363 return ret; in smsc75xx_reset()
1368 ret = smsc75xx_write_reg(dev, MAC_TX, buf); in smsc75xx_reset()
1369 if (ret < 0) { in smsc75xx_reset()
1370 netdev_warn(dev->net, "Failed to write MAC_TX: %d\n", ret); in smsc75xx_reset()
1371 return ret; in smsc75xx_reset()
1376 ret = smsc75xx_read_reg(dev, FCT_TX_CTL, &buf); in smsc75xx_reset()
1377 if (ret < 0) { in smsc75xx_reset()
1378 netdev_warn(dev->net, "Failed to read FCT_TX_CTL: %d\n", ret); in smsc75xx_reset()
1379 return ret; in smsc75xx_reset()
1384 ret = smsc75xx_write_reg(dev, FCT_TX_CTL, buf); in smsc75xx_reset()
1385 if (ret < 0) { in smsc75xx_reset()
1386 netdev_warn(dev->net, "Failed to write FCT_TX_CTL: %d\n", ret); in smsc75xx_reset()
1387 return ret; in smsc75xx_reset()
1392 ret = smsc75xx_set_rx_max_frame_length(dev, dev->net->mtu + ETH_HLEN); in smsc75xx_reset()
1393 if (ret < 0) { in smsc75xx_reset()
1395 return ret; in smsc75xx_reset()
1398 ret = smsc75xx_read_reg(dev, MAC_RX, &buf); in smsc75xx_reset()
1399 if (ret < 0) { in smsc75xx_reset()
1400 netdev_warn(dev->net, "Failed to read MAC_RX: %d\n", ret); in smsc75xx_reset()
1401 return ret; in smsc75xx_reset()
1406 ret = smsc75xx_write_reg(dev, MAC_RX, buf); in smsc75xx_reset()
1407 if (ret < 0) { in smsc75xx_reset()
1408 netdev_warn(dev->net, "Failed to write MAC_RX: %d\n", ret); in smsc75xx_reset()
1409 return ret; in smsc75xx_reset()
1414 ret = smsc75xx_read_reg(dev, FCT_RX_CTL, &buf); in smsc75xx_reset()
1415 if (ret < 0) { in smsc75xx_reset()
1416 netdev_warn(dev->net, "Failed to read FCT_RX_CTL: %d\n", ret); in smsc75xx_reset()
1417 return ret; in smsc75xx_reset()
1422 ret = smsc75xx_write_reg(dev, FCT_RX_CTL, buf); in smsc75xx_reset()
1423 if (ret < 0) { in smsc75xx_reset()
1424 netdev_warn(dev->net, "Failed to write FCT_RX_CTL: %d\n", ret); in smsc75xx_reset()
1425 return ret; in smsc75xx_reset()
1451 int ret; in smsc75xx_bind() local
1455 ret = usbnet_get_endpoints(dev, intf); in smsc75xx_bind()
1456 if (ret < 0) { in smsc75xx_bind()
1457 netdev_warn(dev->net, "usbnet_get_endpoints failed: %d\n", ret); in smsc75xx_bind()
1458 return ret; in smsc75xx_bind()
1484 ret = smsc75xx_wait_ready(dev, 0); in smsc75xx_bind()
1485 if (ret < 0) { in smsc75xx_bind()
1493 ret = smsc75xx_reset(dev); in smsc75xx_bind()
1494 if (ret < 0) { in smsc75xx_bind()
1495 netdev_warn(dev->net, "smsc75xx_reset error %d\n", ret); in smsc75xx_bind()
1512 return ret; in smsc75xx_bind()
1536 int ret; in smsc75xx_write_wuff() local
1538 ret = smsc75xx_write_reg(dev, cfg_base, wuf_cfg); in smsc75xx_write_wuff()
1539 if (ret < 0) { in smsc75xx_write_wuff()
1541 return ret; in smsc75xx_write_wuff()
1544 ret = smsc75xx_write_reg(dev, mask_base, wuf_mask1); in smsc75xx_write_wuff()
1545 if (ret < 0) { in smsc75xx_write_wuff()
1547 return ret; in smsc75xx_write_wuff()
1550 ret = smsc75xx_write_reg(dev, mask_base + 4, 0); in smsc75xx_write_wuff()
1551 if (ret < 0) { in smsc75xx_write_wuff()
1553 return ret; in smsc75xx_write_wuff()
1556 ret = smsc75xx_write_reg(dev, mask_base + 8, 0); in smsc75xx_write_wuff()
1557 if (ret < 0) { in smsc75xx_write_wuff()
1559 return ret; in smsc75xx_write_wuff()
1562 ret = smsc75xx_write_reg(dev, mask_base + 12, 0); in smsc75xx_write_wuff()
1563 if (ret < 0) { in smsc75xx_write_wuff()
1565 return ret; in smsc75xx_write_wuff()
1575 int ret; in smsc75xx_enter_suspend0() local
1577 ret = smsc75xx_read_reg_nopm(dev, PMT_CTL, &val); in smsc75xx_enter_suspend0()
1578 if (ret < 0) { in smsc75xx_enter_suspend0()
1580 return ret; in smsc75xx_enter_suspend0()
1586 ret = smsc75xx_write_reg_nopm(dev, PMT_CTL, val); in smsc75xx_enter_suspend0()
1587 if (ret < 0) { in smsc75xx_enter_suspend0()
1589 return ret; in smsc75xx_enter_suspend0()
1601 int ret; in smsc75xx_enter_suspend1() local
1603 ret = smsc75xx_read_reg_nopm(dev, PMT_CTL, &val); in smsc75xx_enter_suspend1()
1604 if (ret < 0) { in smsc75xx_enter_suspend1()
1606 return ret; in smsc75xx_enter_suspend1()
1612 ret = smsc75xx_write_reg_nopm(dev, PMT_CTL, val); in smsc75xx_enter_suspend1()
1613 if (ret < 0) { in smsc75xx_enter_suspend1()
1615 return ret; in smsc75xx_enter_suspend1()
1622 ret = smsc75xx_write_reg_nopm(dev, PMT_CTL, val); in smsc75xx_enter_suspend1()
1623 if (ret < 0) { in smsc75xx_enter_suspend1()
1625 return ret; in smsc75xx_enter_suspend1()
1637 int ret; in smsc75xx_enter_suspend2() local
1639 ret = smsc75xx_read_reg_nopm(dev, PMT_CTL, &val); in smsc75xx_enter_suspend2()
1640 if (ret < 0) { in smsc75xx_enter_suspend2()
1642 return ret; in smsc75xx_enter_suspend2()
1648 ret = smsc75xx_write_reg_nopm(dev, PMT_CTL, val); in smsc75xx_enter_suspend2()
1649 if (ret < 0) { in smsc75xx_enter_suspend2()
1651 return ret; in smsc75xx_enter_suspend2()
1663 int ret; in smsc75xx_enter_suspend3() local
1665 ret = smsc75xx_read_reg_nopm(dev, FCT_RX_CTL, &val); in smsc75xx_enter_suspend3()
1666 if (ret < 0) { in smsc75xx_enter_suspend3()
1668 return ret; in smsc75xx_enter_suspend3()
1676 ret = smsc75xx_read_reg_nopm(dev, PMT_CTL, &val); in smsc75xx_enter_suspend3()
1677 if (ret < 0) { in smsc75xx_enter_suspend3()
1679 return ret; in smsc75xx_enter_suspend3()
1685 ret = smsc75xx_write_reg_nopm(dev, PMT_CTL, val); in smsc75xx_enter_suspend3()
1686 if (ret < 0) { in smsc75xx_enter_suspend3()
1688 return ret; in smsc75xx_enter_suspend3()
1695 ret = smsc75xx_write_reg_nopm(dev, PMT_CTL, val); in smsc75xx_enter_suspend3()
1696 if (ret < 0) { in smsc75xx_enter_suspend3()
1698 return ret; in smsc75xx_enter_suspend3()
1709 int ret; in smsc75xx_enable_phy_wakeup_interrupts() local
1714 ret = smsc75xx_mdio_read_nopm(dev->net, mii->phy_id, PHY_INT_SRC); in smsc75xx_enable_phy_wakeup_interrupts()
1715 if (ret < 0) { in smsc75xx_enable_phy_wakeup_interrupts()
1717 return ret; in smsc75xx_enable_phy_wakeup_interrupts()
1721 ret = smsc75xx_mdio_read_nopm(dev->net, mii->phy_id, PHY_INT_MASK); in smsc75xx_enable_phy_wakeup_interrupts()
1722 if (ret < 0) { in smsc75xx_enable_phy_wakeup_interrupts()
1724 return ret; in smsc75xx_enable_phy_wakeup_interrupts()
1727 ret |= mask; in smsc75xx_enable_phy_wakeup_interrupts()
1729 smsc75xx_mdio_write_nopm(dev->net, mii->phy_id, PHY_INT_MASK, ret); in smsc75xx_enable_phy_wakeup_interrupts()
1737 int ret; in smsc75xx_link_ok_nopm() local
1740 ret = smsc75xx_mdio_read_nopm(dev->net, mii->phy_id, MII_BMSR); in smsc75xx_link_ok_nopm()
1741 if (ret < 0) { in smsc75xx_link_ok_nopm()
1743 return ret; in smsc75xx_link_ok_nopm()
1746 ret = smsc75xx_mdio_read_nopm(dev->net, mii->phy_id, MII_BMSR); in smsc75xx_link_ok_nopm()
1747 if (ret < 0) { in smsc75xx_link_ok_nopm()
1749 return ret; in smsc75xx_link_ok_nopm()
1752 return !!(ret & BMSR_LSTATUS); in smsc75xx_link_ok_nopm()
1757 int ret; in smsc75xx_autosuspend() local
1770 ret = smsc75xx_enable_phy_wakeup_interrupts(dev, in smsc75xx_autosuspend()
1772 if (ret < 0) { in smsc75xx_autosuspend()
1774 return ret; in smsc75xx_autosuspend()
1782 ret = smsc75xx_enable_phy_wakeup_interrupts(dev, in smsc75xx_autosuspend()
1784 if (ret < 0) { in smsc75xx_autosuspend()
1786 return ret; in smsc75xx_autosuspend()
1798 int ret; in smsc75xx_suspend() local
1800 ret = usbnet_suspend(intf, message); in smsc75xx_suspend()
1801 if (ret < 0) { in smsc75xx_suspend()
1803 return ret; in smsc75xx_suspend()
1815 ret = smsc75xx_autosuspend(dev, link_up); in smsc75xx_suspend()
1828 ret = smsc75xx_read_reg_nopm(dev, WUCSR, &val); in smsc75xx_suspend()
1829 if (ret < 0) { in smsc75xx_suspend()
1836 ret = smsc75xx_write_reg_nopm(dev, WUCSR, val); in smsc75xx_suspend()
1837 if (ret < 0) { in smsc75xx_suspend()
1842 ret = smsc75xx_read_reg_nopm(dev, PMT_CTL, &val); in smsc75xx_suspend()
1843 if (ret < 0) { in smsc75xx_suspend()
1850 ret = smsc75xx_write_reg_nopm(dev, PMT_CTL, val); in smsc75xx_suspend()
1851 if (ret < 0) { in smsc75xx_suspend()
1856 ret = smsc75xx_enter_suspend2(dev); in smsc75xx_suspend()
1861 ret = smsc75xx_enable_phy_wakeup_interrupts(dev, in smsc75xx_suspend()
1863 if (ret < 0) { in smsc75xx_suspend()
1876 ret = smsc75xx_mdio_read_nopm(dev->net, mii->phy_id, in smsc75xx_suspend()
1878 if (ret < 0) { in smsc75xx_suspend()
1883 ret |= MODE_CTRL_STS_EDPWRDOWN; in smsc75xx_suspend()
1886 PHY_MODE_CTRL_STS, ret); in smsc75xx_suspend()
1889 ret = smsc75xx_enter_suspend1(dev); in smsc75xx_suspend()
1899 ret = smsc75xx_write_reg_nopm(dev, WUF_CFGX + i * 4, 0); in smsc75xx_suspend()
1900 if (ret < 0) { in smsc75xx_suspend()
1912 ret = smsc75xx_write_wuff(dev, filter++, val, 0x0007); in smsc75xx_suspend()
1913 if (ret < 0) { in smsc75xx_suspend()
1925 ret = smsc75xx_write_wuff(dev, filter++, val, 0x0003); in smsc75xx_suspend()
1926 if (ret < 0) { in smsc75xx_suspend()
1933 ret = smsc75xx_read_reg_nopm(dev, WUCSR, &val); in smsc75xx_suspend()
1934 if (ret < 0) { in smsc75xx_suspend()
1941 ret = smsc75xx_write_reg_nopm(dev, WUCSR, val); in smsc75xx_suspend()
1942 if (ret < 0) { in smsc75xx_suspend()
1948 ret = smsc75xx_read_reg_nopm(dev, WUCSR, &val); in smsc75xx_suspend()
1949 if (ret < 0) { in smsc75xx_suspend()
1956 ret = smsc75xx_write_reg_nopm(dev, WUCSR, val); in smsc75xx_suspend()
1957 if (ret < 0) { in smsc75xx_suspend()
1963 ret = smsc75xx_read_reg_nopm(dev, WUCSR, &val); in smsc75xx_suspend()
1964 if (ret < 0) { in smsc75xx_suspend()
1971 ret = smsc75xx_write_reg_nopm(dev, WUCSR, val); in smsc75xx_suspend()
1972 if (ret < 0) { in smsc75xx_suspend()
1979 ret = smsc75xx_read_reg_nopm(dev, WUCSR, &val); in smsc75xx_suspend()
1980 if (ret < 0) { in smsc75xx_suspend()
1987 ret = smsc75xx_write_reg_nopm(dev, WUCSR, val); in smsc75xx_suspend()
1988 if (ret < 0) { in smsc75xx_suspend()
1996 ret = smsc75xx_read_reg_nopm(dev, PMT_CTL, &val); in smsc75xx_suspend()
1997 if (ret < 0) { in smsc75xx_suspend()
2006 ret = smsc75xx_write_reg_nopm(dev, PMT_CTL, val); in smsc75xx_suspend()
2007 if (ret < 0) { in smsc75xx_suspend()
2015 ret = smsc75xx_read_reg_nopm(dev, WUCSR, &val); in smsc75xx_suspend()
2016 if (ret < 0) { in smsc75xx_suspend()
2024 ret = smsc75xx_write_reg_nopm(dev, WUCSR, val); in smsc75xx_suspend()
2025 if (ret < 0) { in smsc75xx_suspend()
2033 ret = smsc75xx_read_reg_nopm(dev, WUCSR, &val); in smsc75xx_suspend()
2034 if (ret < 0) { in smsc75xx_suspend()
2041 ret = smsc75xx_write_reg_nopm(dev, WUCSR, val); in smsc75xx_suspend()
2042 if (ret < 0) { in smsc75xx_suspend()
2050 ret = smsc75xx_read_reg_nopm(dev, WUCSR, &val); in smsc75xx_suspend()
2051 if (ret < 0) { in smsc75xx_suspend()
2058 ret = smsc75xx_write_reg_nopm(dev, WUCSR, val); in smsc75xx_suspend()
2059 if (ret < 0) { in smsc75xx_suspend()
2066 ret = smsc75xx_read_reg_nopm(dev, MAC_RX, &val); in smsc75xx_suspend()
2067 if (ret < 0) { in smsc75xx_suspend()
2068 netdev_warn(dev->net, "Failed to read MAC_RX: %d\n", ret); in smsc75xx_suspend()
2074 ret = smsc75xx_write_reg_nopm(dev, MAC_RX, val); in smsc75xx_suspend()
2075 if (ret < 0) { in smsc75xx_suspend()
2076 netdev_warn(dev->net, "Failed to write MAC_RX: %d\n", ret); in smsc75xx_suspend()
2082 ret = smsc75xx_enter_suspend0(dev); in smsc75xx_suspend()
2089 if (ret && PMSG_IS_AUTO(message)) in smsc75xx_suspend()
2091 return ret; in smsc75xx_suspend()
2099 int ret; in smsc75xx_resume() local
2109 ret = smsc75xx_read_reg_nopm(dev, WUCSR, &val); in smsc75xx_resume()
2110 if (ret < 0) { in smsc75xx_resume()
2112 return ret; in smsc75xx_resume()
2118 ret = smsc75xx_write_reg_nopm(dev, WUCSR, val); in smsc75xx_resume()
2119 if (ret < 0) { in smsc75xx_resume()
2121 return ret; in smsc75xx_resume()
2125 ret = smsc75xx_read_reg_nopm(dev, PMT_CTL, &val); in smsc75xx_resume()
2126 if (ret < 0) { in smsc75xx_resume()
2128 return ret; in smsc75xx_resume()
2134 ret = smsc75xx_write_reg_nopm(dev, PMT_CTL, val); in smsc75xx_resume()
2135 if (ret < 0) { in smsc75xx_resume()
2137 return ret; in smsc75xx_resume()
2144 ret = smsc75xx_read_reg_nopm(dev, PMT_CTL, &val); in smsc75xx_resume()
2145 if (ret < 0) { in smsc75xx_resume()
2147 return ret; in smsc75xx_resume()
2152 ret = smsc75xx_write_reg_nopm(dev, PMT_CTL, val); in smsc75xx_resume()
2153 if (ret < 0) { in smsc75xx_resume()
2155 return ret; in smsc75xx_resume()
2159 ret = smsc75xx_wait_ready(dev, 1); in smsc75xx_resume()
2160 if (ret < 0) { in smsc75xx_resume()
2162 return ret; in smsc75xx_resume()