aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/e1000e/e1000.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/e1000e/e1000.h')
-rw-r--r--drivers/net/e1000e/e1000.h25
1 files changed, 19 insertions, 6 deletions
diff --git a/drivers/net/e1000e/e1000.h b/drivers/net/e1000e/e1000.h
index 5a89dff52264..4d3d1c2991c9 100644
--- a/drivers/net/e1000e/e1000.h
+++ b/drivers/net/e1000e/e1000.h
@@ -147,6 +147,18 @@ struct e1000_ring {
147 struct e1000_queue_stats stats; 147 struct e1000_queue_stats stats;
148}; 148};
149 149
150/* PHY register snapshot values */
151struct e1000_phy_regs {
152 u16 bmcr; /* basic mode control register */
153 u16 bmsr; /* basic mode status register */
154 u16 advertise; /* auto-negotiation advertisement */
155 u16 lpa; /* link partner ability register */
156 u16 expansion; /* auto-negotiation expansion reg */
157 u16 ctrl1000; /* 1000BASE-T control register */
158 u16 stat1000; /* 1000BASE-T status register */
159 u16 estatus; /* extended status register */
160};
161
150/* board specific private data structure */ 162/* board specific private data structure */
151struct e1000_adapter { 163struct e1000_adapter {
152 struct timer_list watchdog_timer; 164 struct timer_list watchdog_timer;
@@ -202,8 +214,8 @@ struct e1000_adapter {
202 /* Tx stats */ 214 /* Tx stats */
203 u64 tpt_old; 215 u64 tpt_old;
204 u64 colc_old; 216 u64 colc_old;
205 u64 gotcl_old; 217 u32 gotc;
206 u32 gotcl; 218 u64 gotc_old;
207 u32 tx_timeout_count; 219 u32 tx_timeout_count;
208 u32 tx_fifo_head; 220 u32 tx_fifo_head;
209 u32 tx_head_addr; 221 u32 tx_head_addr;
@@ -227,8 +239,8 @@ struct e1000_adapter {
227 u64 hw_csum_err; 239 u64 hw_csum_err;
228 u64 hw_csum_good; 240 u64 hw_csum_good;
229 u64 rx_hdr_split; 241 u64 rx_hdr_split;
230 u64 gorcl_old; 242 u32 gorc;
231 u32 gorcl; 243 u64 gorc_old;
232 u32 alloc_rx_buff_failed; 244 u32 alloc_rx_buff_failed;
233 u32 rx_dma_failed; 245 u32 rx_dma_failed;
234 246
@@ -250,6 +262,9 @@ struct e1000_adapter {
250 struct e1000_phy_info phy_info; 262 struct e1000_phy_info phy_info;
251 struct e1000_phy_stats phy_stats; 263 struct e1000_phy_stats phy_stats;
252 264
265 /* Snapshot of PHY registers */
266 struct e1000_phy_regs phy_regs;
267
253 struct e1000_ring test_tx_ring; 268 struct e1000_ring test_tx_ring;
254 struct e1000_ring test_rx_ring; 269 struct e1000_ring test_rx_ring;
255 u32 test_icr; 270 u32 test_icr;
@@ -286,8 +301,6 @@ struct e1000_info {
286#define FLAG_HAS_CTRLEXT_ON_LOAD (1 << 5) 301#define FLAG_HAS_CTRLEXT_ON_LOAD (1 << 5)
287#define FLAG_HAS_SWSM_ON_LOAD (1 << 6) 302#define FLAG_HAS_SWSM_ON_LOAD (1 << 6)
288#define FLAG_HAS_JUMBO_FRAMES (1 << 7) 303#define FLAG_HAS_JUMBO_FRAMES (1 << 7)
289#define FLAG_HAS_STATS_ICR_ICT (1 << 9)
290#define FLAG_HAS_STATS_PTC_PRC (1 << 10)
291#define FLAG_HAS_SMART_POWER_DOWN (1 << 11) 304#define FLAG_HAS_SMART_POWER_DOWN (1 << 11)
292#define FLAG_IS_QUAD_PORT_A (1 << 12) 305#define FLAG_IS_QUAD_PORT_A (1 << 12)
293#define FLAG_IS_QUAD_PORT (1 << 13) 306#define FLAG_IS_QUAD_PORT (1 << 13)