Skip to content

Commit

Permalink
be2net: cleanup be_get_drvinfo()
Browse files Browse the repository at this point in the history
Removing the be_cmd_get_fw_ver() query from be_get_drvinfo() and invoking
the same from be_setup() and/or post firmware download.

Signed-off-by: Kalesh AP <[email protected]>
Signed-off-by: Somnath Kotur <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
  • Loading branch information
Somnath Kotur authored and davem330 committed May 28, 2013
1 parent 3fb43eb commit eeb65ce
Show file tree
Hide file tree
Showing 3 changed files with 8 additions and 7 deletions.
1 change: 1 addition & 0 deletions drivers/net/ethernet/emulex/benet/be.h
Original file line number Diff line number Diff line change
Expand Up @@ -397,6 +397,7 @@ struct be_adapter {
u32 cmd_privileges;
/* Ethtool knobs and info */
char fw_ver[FW_VER_LEN];
char fw_on_flash[FW_VER_LEN];
int if_handle; /* Used to configure filtering */
u32 *pmac_id; /* MAC addr handle used by BE card */
u32 beacon_state; /* for set_phys_id */
Expand Down
8 changes: 2 additions & 6 deletions drivers/net/ethernet/emulex/benet/be_ethtool.c
Original file line number Diff line number Diff line change
Expand Up @@ -177,19 +177,15 @@ static void be_get_drvinfo(struct net_device *netdev,
struct ethtool_drvinfo *drvinfo)
{
struct be_adapter *adapter = netdev_priv(netdev);
char fw_on_flash[FW_VER_LEN];

memset(fw_on_flash, 0 , sizeof(fw_on_flash));
be_cmd_get_fw_ver(adapter, adapter->fw_ver, fw_on_flash);

strlcpy(drvinfo->driver, DRV_NAME, sizeof(drvinfo->driver));
strlcpy(drvinfo->version, DRV_VER, sizeof(drvinfo->version));
if (!memcmp(adapter->fw_ver, fw_on_flash, FW_VER_LEN))
if (!memcmp(adapter->fw_ver, adapter->fw_on_flash, FW_VER_LEN))
strlcpy(drvinfo->fw_version, adapter->fw_ver,
sizeof(drvinfo->fw_version));
else
snprintf(drvinfo->fw_version, sizeof(drvinfo->fw_version),
"%s [%s]", adapter->fw_ver, fw_on_flash);
"%s [%s]", adapter->fw_ver, adapter->fw_on_flash);

strlcpy(drvinfo->bus_info, pci_name(adapter->pdev),
sizeof(drvinfo->bus_info));
Expand Down
6 changes: 5 additions & 1 deletion drivers/net/ethernet/emulex/benet/be_main.c
Original file line number Diff line number Diff line change
Expand Up @@ -3193,7 +3193,7 @@ static int be_setup(struct be_adapter *adapter)
if (status)
goto err;

be_cmd_get_fw_ver(adapter, adapter->fw_ver, NULL);
be_cmd_get_fw_ver(adapter, adapter->fw_ver, adapter->fw_on_flash);

if (adapter->vlans_added)
be_vid_config(adapter);
Expand Down Expand Up @@ -3785,6 +3785,10 @@ int be_load_fw(struct be_adapter *adapter, u8 *fw_file)
else
status = be_fw_download(adapter, fw);

if (!status)
be_cmd_get_fw_ver(adapter, adapter->fw_ver,
adapter->fw_on_flash);

fw_exit:
release_firmware(fw);
return status;
Expand Down

0 comments on commit eeb65ce

Please sign in to comment.