diff options
Diffstat (limited to 'drivers/net/e1000e/es2lan.c')
-rw-r--r-- | drivers/net/e1000e/es2lan.c | 28 |
1 files changed, 27 insertions, 1 deletions
diff --git a/drivers/net/e1000e/es2lan.c b/drivers/net/e1000e/es2lan.c index e2aa3b788564..4bb9d88ad976 100644 --- a/drivers/net/e1000e/es2lan.c +++ b/drivers/net/e1000e/es2lan.c | |||
@@ -814,7 +814,9 @@ static s32 e1000_reset_hw_80003es2lan(struct e1000_hw *hw) | |||
814 | ew32(IMC, 0xffffffff); | 814 | ew32(IMC, 0xffffffff); |
815 | icr = er32(ICR); | 815 | icr = er32(ICR); |
816 | 816 | ||
817 | return 0; | 817 | ret_val = e1000_check_alt_mac_addr_generic(hw); |
818 | |||
819 | return ret_val; | ||
818 | } | 820 | } |
819 | 821 | ||
820 | /** | 822 | /** |
@@ -1340,6 +1342,29 @@ static s32 e1000_write_kmrn_reg_80003es2lan(struct e1000_hw *hw, u32 offset, | |||
1340 | } | 1342 | } |
1341 | 1343 | ||
1342 | /** | 1344 | /** |
1345 | * e1000_read_mac_addr_80003es2lan - Read device MAC address | ||
1346 | * @hw: pointer to the HW structure | ||
1347 | **/ | ||
1348 | static s32 e1000_read_mac_addr_80003es2lan(struct e1000_hw *hw) | ||
1349 | { | ||
1350 | s32 ret_val = 0; | ||
1351 | |||
1352 | /* | ||
1353 | * If there's an alternate MAC address place it in RAR0 | ||
1354 | * so that it will override the Si installed default perm | ||
1355 | * address. | ||
1356 | */ | ||
1357 | ret_val = e1000_check_alt_mac_addr_generic(hw); | ||
1358 | if (ret_val) | ||
1359 | goto out; | ||
1360 | |||
1361 | ret_val = e1000_read_mac_addr_generic(hw); | ||
1362 | |||
1363 | out: | ||
1364 | return ret_val; | ||
1365 | } | ||
1366 | |||
1367 | /** | ||
1343 | * e1000_power_down_phy_copper_80003es2lan - Remove link during PHY power down | 1368 | * e1000_power_down_phy_copper_80003es2lan - Remove link during PHY power down |
1344 | * @hw: pointer to the HW structure | 1369 | * @hw: pointer to the HW structure |
1345 | * | 1370 | * |
@@ -1403,6 +1428,7 @@ static void e1000_clear_hw_cntrs_80003es2lan(struct e1000_hw *hw) | |||
1403 | } | 1428 | } |
1404 | 1429 | ||
1405 | static struct e1000_mac_operations es2_mac_ops = { | 1430 | static struct e1000_mac_operations es2_mac_ops = { |
1431 | .read_mac_addr = e1000_read_mac_addr_80003es2lan, | ||
1406 | .id_led_init = e1000e_id_led_init, | 1432 | .id_led_init = e1000e_id_led_init, |
1407 | .check_mng_mode = e1000e_check_mng_mode_generic, | 1433 | .check_mng_mode = e1000e_check_mng_mode_generic, |
1408 | /* check_for_link dependent on media type */ | 1434 | /* check_for_link dependent on media type */ |