Hello,

This is not documented in the datasheet, since the fw version is  the 
EEPROM/NVM version and not related directly to the hw.  The fw_version location 
will depend on what tool created your EEPROM.  This is not obvious to the user, 
which is why we have functions to take care of this.  The history is long and 
the locations of the data varied.

To get this string value, during init we call igb_set_fw_version, which calls 
e1000_get_fw_version, which does the check of all the eeprom words needed to 
determine the correct fw_version.  If you are looking at the upstream version 
of the driver, then all functions begin "igb_."

Let me know if there's more info I can provide.

Thanks,

Carolyn

> -----Original Message-----
> From: Stijn Vander Maelen [mailto:[email protected]]
> Sent: Thursday, January 16, 2014 2:33 PM
> To: Wyborny, Carolyn
> Subject: Re: ethtool - igb -firmware version retrieved from driver ?
> 
> hate it to reply to myself.
> the card I'm looking at is:
> Intel Corporation 82576 Gigabit Network Connection
> 
> I've grepped through the 766 pages of the Intel(r) 82576 Gigabit Ethernet
> Controller Datasheet but I'm still not clear as to where I need to look.
> 
> On 16-1-2014 14:49, Stijn Vander Maelen wrote:
> > [reply inline]
> >>> Eg:
> >>> ~ # ethtool -i vmnic4
> >>> driver: igb
> >>> version: 2.1.11.1
> >>> firmware-version: 1.2-1 <-----
> >>>
> >>> But when I look at the actual eeprom data:
> >>> ~ # /usr/sbin/ethtool -e vmnic4 offset 0x64 length 2|grep 0x|awk
> >>> '{print $3$2}'
> >>> 1332 <-------
> >>> Or 1-3-32 which is the correct value.
> >>>
> >>> Am I correct in assuming that that ethtool retrieves the
> >>> firmware-version from data presented to it via igb driver ?
> >>> If the answer is yes I'll try to find the driver where this is fixed.
> >>>
> >>
> >> Hello,
> >>
> >> Copying e1000-devel as well since that's our support email list.  Yes,
> >> I own support of igb driver.  The driver configures a firmware version
> >> string during probe using multiple fields in the eeprom,  depending on
> >> the part.  This is the current behavior anyway, but in the past this
> >> was variable and has been evolving as our internal eeprom tools have
> >> evolved.  Current version of igb at SF or upstream has the current
> >> mechanism. The function that handles this is igb_set_fw_version.
> >>
> >> Let me know if there is more info I can provide.
> >
> > Thanks for the reply Carolyn.
> >
> > I'm still struggling. I looked at the 5.0.5 driver's igb_set_fw_version
> > but I'm getting lost at where we're getting the fw_version from:
> > snprintf(adapter->fw_version,                 sizeof(adapter->fw_version),
> > (first time I'm navigating this code)
> >
> > I tried with CentOS 6.5 and 5.0.5-k driver but ethtool still reports the
> > 1.2.1 firmware-version.
> > Yet, when I look with ethtool -e at offset 0x64 it prints 1.3.32.
> > Am I looking at the wrong offset ?
> >
> > Regards,
> > Stijn
> >
> >>
> >> Thanks,
> >>
> >> Carolyn
> >>
> >
> >
> 
> 
> Regards,
> Stijn Vander Maelen
> 
> --
> Customer Support Engineer - Server Virtualization
> Phone:  +1-919-574-3404 - Email:  [email protected]
> RTP TAC:  9:30 am - 5:30 pm (EST/EDT)
> ***
> Technical Support Worldwide contacts:
> http://www.cisco.com/en/US/support/tsd_cisco_worldwide_contacts.html
> ***

------------------------------------------------------------------------------
CenturyLink Cloud: The Leader in Enterprise Cloud Services.
Learn Why More Businesses Are Choosing CenturyLink Cloud For
Critical Workloads, Development Environments & Everything In Between.
Get a Quote or Start a Free Trial Today. 
http://pubads.g.doubleclick.net/gampad/clk?id=119420431&iu=/4140/ostg.clktrk
_______________________________________________
E1000-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/e1000-devel
To learn more about Intel&#174; Ethernet, visit 
http://communities.intel.com/community/wired

Reply via email to