path: root/drivers/net/ethernet/intel/igb/e1000_nvm.h
diff options
authorCarolyn Wyborny <carolyn.wyborny@intel.com>2012-10-18 07:16:19 +0000
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>2012-10-29 23:49:29 -0700
commit0b1a6f2ee85d77d02e73ea8be43e1a9d8d97ccee (patch)
tree81fc5687ac4df40f1024a52ebb425dc81c471e58 /drivers/net/ethernet/intel/igb/e1000_nvm.h
parentigb: Enable auto-crossover during forced operation on 82580 and above. (diff)
igb: Update firmware version info for ethtool output.
There are multiple places in our device nvm where the version is stored. This update fixes some output errors with some types of images and refactors the way the version data is gathered and stored for ethtool output. Signed-off-by: Carolyn Wyborny <carolyn.wyborny@intel.com> Tested-by: Aaron Brown <aaron.f.brown@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Diffstat (limited to 'drivers/net/ethernet/intel/igb/e1000_nvm.h')
1 files changed, 16 insertions, 0 deletions
diff --git a/drivers/net/ethernet/intel/igb/e1000_nvm.h b/drivers/net/ethernet/intel/igb/e1000_nvm.h
index 825b0228cac0..7012d458c6f7 100644
--- a/drivers/net/ethernet/intel/igb/e1000_nvm.h
+++ b/drivers/net/ethernet/intel/igb/e1000_nvm.h
@@ -40,4 +40,20 @@ s32 igb_write_nvm_spi(struct e1000_hw *hw, u16 offset, u16 words, u16 *data);
s32 igb_validate_nvm_checksum(struct e1000_hw *hw);
s32 igb_update_nvm_checksum(struct e1000_hw *hw);
+struct e1000_fw_version {
+ u32 etrack_id;
+ u16 eep_major;
+ u16 eep_minor;
+ u8 invm_major;
+ u8 invm_minor;
+ u8 invm_img_type;
+ bool or_valid;
+ u16 or_major;
+ u16 or_build;
+ u16 or_patch;
+void igb_get_fw_version(struct e1000_hw *hw, struct e1000_fw_version *fw_vers);