diff options
Diffstat (limited to 'drivers/net/igb/e1000_hw.h')
-rw-r--r-- | drivers/net/igb/e1000_hw.h | 30 |
1 files changed, 20 insertions, 10 deletions
diff --git a/drivers/net/igb/e1000_hw.h b/drivers/net/igb/e1000_hw.h index 119869b1124d..82a533f5192a 100644 --- a/drivers/net/igb/e1000_hw.h +++ b/drivers/net/igb/e1000_hw.h | |||
@@ -41,21 +41,37 @@ struct e1000_hw; | |||
41 | #define E1000_DEV_ID_82576_FIBER 0x10E6 | 41 | #define E1000_DEV_ID_82576_FIBER 0x10E6 |
42 | #define E1000_DEV_ID_82576_SERDES 0x10E7 | 42 | #define E1000_DEV_ID_82576_SERDES 0x10E7 |
43 | #define E1000_DEV_ID_82576_QUAD_COPPER 0x10E8 | 43 | #define E1000_DEV_ID_82576_QUAD_COPPER 0x10E8 |
44 | #define E1000_DEV_ID_82576_QUAD_COPPER_ET2 0x1526 | ||
44 | #define E1000_DEV_ID_82576_NS 0x150A | 45 | #define E1000_DEV_ID_82576_NS 0x150A |
46 | #define E1000_DEV_ID_82576_NS_SERDES 0x1518 | ||
45 | #define E1000_DEV_ID_82576_SERDES_QUAD 0x150D | 47 | #define E1000_DEV_ID_82576_SERDES_QUAD 0x150D |
46 | #define E1000_DEV_ID_82575EB_COPPER 0x10A7 | 48 | #define E1000_DEV_ID_82575EB_COPPER 0x10A7 |
47 | #define E1000_DEV_ID_82575EB_FIBER_SERDES 0x10A9 | 49 | #define E1000_DEV_ID_82575EB_FIBER_SERDES 0x10A9 |
48 | #define E1000_DEV_ID_82575GB_QUAD_COPPER 0x10D6 | 50 | #define E1000_DEV_ID_82575GB_QUAD_COPPER 0x10D6 |
51 | #define E1000_DEV_ID_82580_COPPER 0x150E | ||
52 | #define E1000_DEV_ID_82580_FIBER 0x150F | ||
53 | #define E1000_DEV_ID_82580_SERDES 0x1510 | ||
54 | #define E1000_DEV_ID_82580_SGMII 0x1511 | ||
55 | #define E1000_DEV_ID_82580_COPPER_DUAL 0x1516 | ||
49 | 56 | ||
50 | #define E1000_REVISION_2 2 | 57 | #define E1000_REVISION_2 2 |
51 | #define E1000_REVISION_4 4 | 58 | #define E1000_REVISION_4 4 |
52 | 59 | ||
60 | #define E1000_FUNC_0 0 | ||
53 | #define E1000_FUNC_1 1 | 61 | #define E1000_FUNC_1 1 |
62 | #define E1000_FUNC_2 2 | ||
63 | #define E1000_FUNC_3 3 | ||
64 | |||
65 | #define E1000_ALT_MAC_ADDRESS_OFFSET_LAN0 0 | ||
66 | #define E1000_ALT_MAC_ADDRESS_OFFSET_LAN1 3 | ||
67 | #define E1000_ALT_MAC_ADDRESS_OFFSET_LAN2 6 | ||
68 | #define E1000_ALT_MAC_ADDRESS_OFFSET_LAN3 9 | ||
54 | 69 | ||
55 | enum e1000_mac_type { | 70 | enum e1000_mac_type { |
56 | e1000_undefined = 0, | 71 | e1000_undefined = 0, |
57 | e1000_82575, | 72 | e1000_82575, |
58 | e1000_82576, | 73 | e1000_82576, |
74 | e1000_82580, | ||
59 | e1000_num_macs /* List is 1-based, so subtract 1 for true count. */ | 75 | e1000_num_macs /* List is 1-based, so subtract 1 for true count. */ |
60 | }; | 76 | }; |
61 | 77 | ||
@@ -70,7 +86,6 @@ enum e1000_nvm_type { | |||
70 | e1000_nvm_unknown = 0, | 86 | e1000_nvm_unknown = 0, |
71 | e1000_nvm_none, | 87 | e1000_nvm_none, |
72 | e1000_nvm_eeprom_spi, | 88 | e1000_nvm_eeprom_spi, |
73 | e1000_nvm_eeprom_microwire, | ||
74 | e1000_nvm_flash_hw, | 89 | e1000_nvm_flash_hw, |
75 | e1000_nvm_flash_sw | 90 | e1000_nvm_flash_sw |
76 | }; | 91 | }; |
@@ -79,8 +94,6 @@ enum e1000_nvm_override { | |||
79 | e1000_nvm_override_none = 0, | 94 | e1000_nvm_override_none = 0, |
80 | e1000_nvm_override_spi_small, | 95 | e1000_nvm_override_spi_small, |
81 | e1000_nvm_override_spi_large, | 96 | e1000_nvm_override_spi_large, |
82 | e1000_nvm_override_microwire_small, | ||
83 | e1000_nvm_override_microwire_large | ||
84 | }; | 97 | }; |
85 | 98 | ||
86 | enum e1000_phy_type { | 99 | enum e1000_phy_type { |
@@ -92,6 +105,7 @@ enum e1000_phy_type { | |||
92 | e1000_phy_gg82563, | 105 | e1000_phy_gg82563, |
93 | e1000_phy_igp_3, | 106 | e1000_phy_igp_3, |
94 | e1000_phy_ife, | 107 | e1000_phy_ife, |
108 | e1000_phy_82580, | ||
95 | }; | 109 | }; |
96 | 110 | ||
97 | enum e1000_bus_type { | 111 | enum e1000_bus_type { |
@@ -288,6 +302,7 @@ struct e1000_mac_operations { | |||
288 | 302 | ||
289 | struct e1000_phy_operations { | 303 | struct e1000_phy_operations { |
290 | s32 (*acquire)(struct e1000_hw *); | 304 | s32 (*acquire)(struct e1000_hw *); |
305 | s32 (*check_polarity)(struct e1000_hw *); | ||
291 | s32 (*check_reset_block)(struct e1000_hw *); | 306 | s32 (*check_reset_block)(struct e1000_hw *); |
292 | s32 (*force_speed_duplex)(struct e1000_hw *); | 307 | s32 (*force_speed_duplex)(struct e1000_hw *); |
293 | s32 (*get_cfg_done)(struct e1000_hw *hw); | 308 | s32 (*get_cfg_done)(struct e1000_hw *hw); |
@@ -325,20 +340,14 @@ struct e1000_mac_info { | |||
325 | 340 | ||
326 | enum e1000_mac_type type; | 341 | enum e1000_mac_type type; |
327 | 342 | ||
328 | u32 collision_delta; | ||
329 | u32 ledctl_default; | 343 | u32 ledctl_default; |
330 | u32 ledctl_mode1; | 344 | u32 ledctl_mode1; |
331 | u32 ledctl_mode2; | 345 | u32 ledctl_mode2; |
332 | u32 mc_filter_type; | 346 | u32 mc_filter_type; |
333 | u32 tx_packet_delta; | ||
334 | u32 txcw; | 347 | u32 txcw; |
335 | 348 | ||
336 | u16 current_ifs_val; | ||
337 | u16 ifs_max_val; | ||
338 | u16 ifs_min_val; | ||
339 | u16 ifs_ratio; | ||
340 | u16 ifs_step_size; | ||
341 | u16 mta_reg_count; | 349 | u16 mta_reg_count; |
350 | u16 uta_reg_count; | ||
342 | 351 | ||
343 | /* Maximum size of the MTA register table in all supported adapters */ | 352 | /* Maximum size of the MTA register table in all supported adapters */ |
344 | #define MAX_MTA_REG 128 | 353 | #define MAX_MTA_REG 128 |
@@ -463,6 +472,7 @@ struct e1000_mbx_info { | |||
463 | 472 | ||
464 | struct e1000_dev_spec_82575 { | 473 | struct e1000_dev_spec_82575 { |
465 | bool sgmii_active; | 474 | bool sgmii_active; |
475 | bool global_device_reset; | ||
466 | }; | 476 | }; |
467 | 477 | ||
468 | struct e1000_hw { | 478 | struct e1000_hw { |