提交 15e376b4 编写于 作者: J Jeff Garzik

e1000: 3 new driver stats for managability testing

Add 3 extra packet redirect counters for tracking purposes to make sure
we can test that all packets arrive properly.

Originally from Jesse Brandeburg <jesse.brandeburg@intel.com>,
rewritten to use feature flags by me.
Signed-off-by: NJeff Garzik <jeff@garzik.org>
上级 1f753861
...@@ -100,6 +100,9 @@ static const struct e1000_stats e1000_gstrings_stats[] = { ...@@ -100,6 +100,9 @@ static const struct e1000_stats e1000_gstrings_stats[] = {
{ "rx_csum_offload_errors", E1000_STAT(hw_csum_err) }, { "rx_csum_offload_errors", E1000_STAT(hw_csum_err) },
{ "rx_header_split", E1000_STAT(rx_hdr_split) }, { "rx_header_split", E1000_STAT(rx_hdr_split) },
{ "alloc_rx_buff_failed", E1000_STAT(alloc_rx_buff_failed) }, { "alloc_rx_buff_failed", E1000_STAT(alloc_rx_buff_failed) },
{ "tx_smbus", E1000_STAT(stats.mgptc) },
{ "rx_smbus", E1000_STAT(stats.mgprc) },
{ "dropped_smbus", E1000_STAT(stats.mgpdc) },
}; };
#define E1000_QUEUE_STATS_LEN 0 #define E1000_QUEUE_STATS_LEN 0
......
...@@ -458,6 +458,9 @@ e1000_set_mac_type(struct e1000_hw *hw) ...@@ -458,6 +458,9 @@ e1000_set_mac_type(struct e1000_hw *hw)
if (hw->mac_type == e1000_80003es2lan) if (hw->mac_type == e1000_80003es2lan)
hw->rx_needs_kicking = TRUE; hw->rx_needs_kicking = TRUE;
if (hw->mac_type > e1000_82544)
hw->has_smbus = TRUE;
return E1000_SUCCESS; return E1000_SUCCESS;
} }
......
...@@ -1464,6 +1464,7 @@ struct e1000_hw { ...@@ -1464,6 +1464,7 @@ struct e1000_hw {
boolean_t bad_tx_carr_stats_fd; boolean_t bad_tx_carr_stats_fd;
boolean_t has_manc2h; boolean_t has_manc2h;
boolean_t rx_needs_kicking; boolean_t rx_needs_kicking;
boolean_t has_smbus;
}; };
......
...@@ -3743,6 +3743,13 @@ e1000_update_stats(struct e1000_adapter *adapter) ...@@ -3743,6 +3743,13 @@ e1000_update_stats(struct e1000_adapter *adapter)
adapter->phy_stats.receive_errors += phy_tmp; adapter->phy_stats.receive_errors += phy_tmp;
} }
/* Management Stats */
if (adapter->hw.has_smbus) {
adapter->stats.mgptc += E1000_READ_REG(hw, MGTPTC);
adapter->stats.mgprc += E1000_READ_REG(hw, MGTPRC);
adapter->stats.mgpdc += E1000_READ_REG(hw, MGTPDC);
}
spin_unlock_irqrestore(&adapter->stats_lock, flags); spin_unlock_irqrestore(&adapter->stats_lock, flags);
} }
#ifdef CONFIG_PCI_MSI #ifdef CONFIG_PCI_MSI
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册