diff options
author | jfv <jfv@FreeBSD.org> | 2010-11-01 20:19:25 +0000 |
---|---|---|
committer | jfv <jfv@FreeBSD.org> | 2010-11-01 20:19:25 +0000 |
commit | a4ab528826d1ac9cc9de0ba3fead29d68b978e3e (patch) | |
tree | cbc2856488d5cba69f4f2bc4f0921e4e8502f757 /sys/dev/e1000/if_lem.h | |
parent | e0a2a85d3a72725ab12bf363f472b29193ad6aaa (diff) | |
download | FreeBSD-src-a4ab528826d1ac9cc9de0ba3fead29d68b978e3e.zip FreeBSD-src-a4ab528826d1ac9cc9de0ba3fead29d68b978e3e.tar.gz |
Sync the lem code up with the vlan and other fixes in em.
Delete a unneeded test from the beginning of em_xmit.
CRITICAL: shared code fix for 82574, a mutex might not be
released, this can cause hangs.
Diffstat (limited to 'sys/dev/e1000/if_lem.h')
-rw-r--r-- | sys/dev/e1000/if_lem.h | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/sys/dev/e1000/if_lem.h b/sys/dev/e1000/if_lem.h index 2f76aa8..e866d07e 100644 --- a/sys/dev/e1000/if_lem.h +++ b/sys/dev/e1000/if_lem.h @@ -328,11 +328,9 @@ struct adapter { struct task tx_task; struct taskqueue *tq; /* private task queue */ -#if __FreeBSD_version >= 700029 eventhandler_tag vlan_attach; eventhandler_tag vlan_detach; u32 num_vlans; -#endif /* Management and WOL features */ u32 wol; @@ -341,11 +339,22 @@ struct adapter { /* Multicast array memory */ u8 *mta; - /* Info about the board itself */ + + /* + ** Shadow VFTA table, this is needed because + ** the real vlan filter table gets cleared during + ** a soft reset and the driver needs to be able + ** to repopulate it. + */ + u32 shadow_vfta[EM_VFTA_SIZE]; + + /* Info about the interface */ uint8_t link_active; uint16_t link_speed; uint16_t link_duplex; uint32_t smartspeed; + uint32_t fc_setting; + struct em_int_delay_info tx_int_delay; struct em_int_delay_info tx_abs_int_delay; struct em_int_delay_info rx_int_delay; @@ -407,6 +416,9 @@ struct adapter { unsigned long no_tx_dma_setup; unsigned long watchdog_events; unsigned long rx_overruns; + unsigned long rx_irq; + unsigned long tx_irq; + unsigned long link_irq; /* 82547 workaround */ uint32_t tx_fifo_size; |