[dpdk-dev] [PATCH v3 3/4] net/ixgbe: add firmware version get
Yang, Qiming
qiming.yang at intel.com
Wed Jan 4 10:48:23 CET 2017
Yes, etrack_id is an unique value. But not all NICs have this value.
I didn't find any value about fw version in fm10k.
I40e is 8 bit too.
firmware-version: 5.04 0x800024ca
-----Original Message-----
From: Yigit, Ferruh
Sent: Wednesday, January 4, 2017 5:06 PM
To: Yang, Qiming <qiming.yang at intel.com>; dev at dpdk.org; thomas.monjalon at 6wind.com
Cc: Horton, Remy <remy.horton at intel.com>
Subject: Re: [PATCH v3 3/4] net/ixgbe: add firmware version get
On 1/4/2017 2:44 AM, Yang, Qiming wrote:
> You can see the kernel version ethtool, use command 'ethtool -i <ixgbe NIC name>'
> driver: ixgbe
> version: 4.2.1-k
> firmware-version: 0x61bf0001
>
> Ixgbe's FW version do not have the major and minor number, and the original purpose of this function is get FW version, so I think it's enough.
Is etrack_id a unique value that defines the FW version on its own?
And is above definition true for all NICs (or at least Intel ones)?
Because I can see i40e is using 4 bit value for etrack_id ?
>
> -----Original Message-----
> From: Yigit, Ferruh
> Sent: Tuesday, January 3, 2017 11:04 PM
> To: Yang, Qiming <qiming.yang at intel.com>; dev at dpdk.org; thomas.monjalon at 6wind.com
> Cc: Horton, Remy <remy.horton at intel.com>
> Subject: Re: [PATCH v3 3/4] net/ixgbe: add firmware version get
>
> On 12/27/2016 12:30 PM, Qiming Yang wrote:
>> This patch add a new function ixgbe_fw_version_get.
>>
>> Signed-off-by: Qiming Yang <qiming.yang at intel.com>
>
> <...>
>
>>
>> static void
>> +ixgbe_fw_version_get(struct rte_eth_dev *dev, __rte_unused u32 *fw_major,
>> + __rte_unused u32 *fw_minor, __rte_unused u32 *fw_patch, u32
>> +*etrack_id)
>
> This API at least provide major and minor fw versions I think. Isn't there any kind of FW version information for ixgbe? Just providing etrack_id is not looking good.
>
>> +{
>> + struct ixgbe_hw *hw = IXGBE_DEV_PRIVATE_TO_HW(dev->data->dev_private);
>> + u16 eeprom_verh, eeprom_verl;
>> +
>> + ixgbe_read_eeprom(hw, 0x2e, &eeprom_verh);
>> + ixgbe_read_eeprom(hw, 0x2d, &eeprom_verl);
>> +
>> + *etrack_id = (eeprom_verh << 16) | eeprom_verl; }
>> +
>> +static void
>> ixgbe_dev_info_get(struct rte_eth_dev *dev, struct rte_eth_dev_info
>> *dev_info) {
>> struct rte_pci_device *pci_dev = IXGBE_DEV_TO_PCI(dev);
>>
>
More information about the dev
mailing list