On Sun,  8 Jan 2017 12:11:34 +0800
Qiming Yang <qiming.y...@intel.com> wrote:

>  static void
> +i40e_fw_version_get(struct rte_eth_dev *dev, char *fw_version, int fw_length)
> +{
> +     struct i40e_hw *hw = I40E_DEV_PRIVATE_TO_HW(dev->data->dev_private);
> +
> +     snprintf(fw_version, fw_length,
> +              "%d.%d%d 0x%08x",
> +              ((hw->nvm.version >> 12) & 0xf),
> +              ((hw->nvm.version >> 4) & 0xff),
> +              (hw->nvm.version & 0xf), hw->nvm.eetrack);


It would be good to have same constants and format between Linux kernel
driver and DPDK.

Use %u as format specifier for unsigned values

static inline char *i40e_nvm_version_str(struct i40e_hw *hw)
{
        static char buf[32];
        u32 full_ver;
        u8 ver, patch;
        u16 build;

        full_ver = hw->nvm.oem_ver;
        ver = (u8)(full_ver >> I40E_OEM_VER_SHIFT);
        build = (u16)((full_ver >> I40E_OEM_VER_BUILD_SHIFT) &
                 I40E_OEM_VER_BUILD_MASK);
        patch = (u8)(full_ver & I40E_OEM_VER_PATCH_MASK);

        snprintf(buf, sizeof(buf),
                 "%x.%02x 0x%x %d.%d.%d",
                 (hw->nvm.version & I40E_NVM_VERSION_HI_MASK) >>
                        I40E_NVM_VERSION_HI_SHIFT,
                 (hw->nvm.version & I40E_NVM_VERSION_LO_MASK) >>
                        I40E_NVM_VERSION_LO_SHIFT,
                 hw->nvm.eetrack, ver, build, patch);

Reply via email to