aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKalesh AP <kalesh.purayil@emulex.com>2014-07-17 06:50:26 -0400
committerDavid S. Miller <davem@davemloft.net>2014-07-17 19:38:15 -0400
commite97e3cda5b43edf250f67cbf90b1d438ee56b2dc (patch)
treef626d1ce03d92430cfc8f0c5f7be5f962d033b51
parent6bdf8f55d27707ea3f7af0aaddf0e3bb79cf6aed (diff)
be2net: reduce arguments passed to FW-cmd routines
A pointer to adapter struct is passed anyway to all of the FW-cmd routines in be_cmds.c. For routines which query data from FW, the adapter pointer is enough to return the queried fields. There is no need to separately pass pointers to individual members of the adapter structure. This patch fixes this for be_cmd_get_fw_ver() and be_cmd_get_fw_cfg() routines. Signed-off-by: Kalesh AP <kalesh.purayil@emulex.com> Signed-off-by: Sathya Perla <sathya.perla@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--drivers/net/ethernet/emulex/benet/be_cmds.c19
-rw-r--r--drivers/net/ethernet/emulex/benet/be_cmds.h6
-rw-r--r--drivers/net/ethernet/emulex/benet/be_main.c10
3 files changed, 13 insertions, 22 deletions
diff --git a/drivers/net/ethernet/emulex/benet/be_cmds.c b/drivers/net/ethernet/emulex/benet/be_cmds.c
index e632bd2d561c..791094c33535 100644
--- a/drivers/net/ethernet/emulex/benet/be_cmds.c
+++ b/drivers/net/ethernet/emulex/benet/be_cmds.c
@@ -1749,8 +1749,7 @@ err:
1749} 1749}
1750 1750
1751/* Uses synchronous mcc */ 1751/* Uses synchronous mcc */
1752int be_cmd_get_fw_ver(struct be_adapter *adapter, char *fw_ver, 1752int be_cmd_get_fw_ver(struct be_adapter *adapter)
1753 char *fw_on_flash)
1754{ 1753{
1755 struct be_mcc_wrb *wrb; 1754 struct be_mcc_wrb *wrb;
1756 struct be_cmd_req_get_fw_version *req; 1755 struct be_cmd_req_get_fw_version *req;
@@ -1772,9 +1771,8 @@ int be_cmd_get_fw_ver(struct be_adapter *adapter, char *fw_ver,
1772 status = be_mcc_notify_wait(adapter); 1771 status = be_mcc_notify_wait(adapter);
1773 if (!status) { 1772 if (!status) {
1774 struct be_cmd_resp_get_fw_version *resp = embedded_payload(wrb); 1773 struct be_cmd_resp_get_fw_version *resp = embedded_payload(wrb);
1775 strcpy(fw_ver, resp->firmware_version_string); 1774 strcpy(adapter->fw_ver, resp->firmware_version_string);
1776 if (fw_on_flash) 1775 strcpy(adapter->fw_on_flash, resp->fw_on_flash_version_string);
1777 strcpy(fw_on_flash, resp->fw_on_flash_version_string);
1778 } 1776 }
1779err: 1777err:
1780 spin_unlock_bh(&adapter->mcc_lock); 1778 spin_unlock_bh(&adapter->mcc_lock);
@@ -1997,8 +1995,7 @@ err:
1997} 1995}
1998 1996
1999/* Uses mbox */ 1997/* Uses mbox */
2000int be_cmd_query_fw_cfg(struct be_adapter *adapter, u32 *port_num, 1998int be_cmd_query_fw_cfg(struct be_adapter *adapter)
2001 u32 *mode, u32 *caps, u16 *asic_rev)
2002{ 1999{
2003 struct be_mcc_wrb *wrb; 2000 struct be_mcc_wrb *wrb;
2004 struct be_cmd_req_query_fw_cfg *req; 2001 struct be_cmd_req_query_fw_cfg *req;
@@ -2017,10 +2014,10 @@ int be_cmd_query_fw_cfg(struct be_adapter *adapter, u32 *port_num,
2017 status = be_mbox_notify_wait(adapter); 2014 status = be_mbox_notify_wait(adapter);
2018 if (!status) { 2015 if (!status) {
2019 struct be_cmd_resp_query_fw_cfg *resp = embedded_payload(wrb); 2016 struct be_cmd_resp_query_fw_cfg *resp = embedded_payload(wrb);
2020 *port_num = le32_to_cpu(resp->phys_port); 2017 adapter->port_num = le32_to_cpu(resp->phys_port);
2021 *mode = le32_to_cpu(resp->function_mode); 2018 adapter->function_mode = le32_to_cpu(resp->function_mode);
2022 *caps = le32_to_cpu(resp->function_caps); 2019 adapter->function_caps = le32_to_cpu(resp->function_caps);
2023 *asic_rev = le32_to_cpu(resp->asic_revision) & 0xFF; 2020 adapter->asic_rev = le32_to_cpu(resp->asic_revision) & 0xFF;
2024 } 2021 }
2025 2022
2026 mutex_unlock(&adapter->mbox_lock); 2023 mutex_unlock(&adapter->mbox_lock);
diff --git a/drivers/net/ethernet/emulex/benet/be_cmds.h b/drivers/net/ethernet/emulex/benet/be_cmds.h
index c0f7167049b7..a9219a94d37d 100644
--- a/drivers/net/ethernet/emulex/benet/be_cmds.h
+++ b/drivers/net/ethernet/emulex/benet/be_cmds.h
@@ -2071,16 +2071,14 @@ int be_cmd_reset(struct be_adapter *adapter);
2071int be_cmd_get_stats(struct be_adapter *adapter, struct be_dma_mem *nonemb_cmd); 2071int be_cmd_get_stats(struct be_adapter *adapter, struct be_dma_mem *nonemb_cmd);
2072int lancer_cmd_get_pport_stats(struct be_adapter *adapter, 2072int lancer_cmd_get_pport_stats(struct be_adapter *adapter,
2073 struct be_dma_mem *nonemb_cmd); 2073 struct be_dma_mem *nonemb_cmd);
2074int be_cmd_get_fw_ver(struct be_adapter *adapter, char *fw_ver, 2074int be_cmd_get_fw_ver(struct be_adapter *adapter);
2075 char *fw_on_flash);
2076int be_cmd_modify_eqd(struct be_adapter *adapter, struct be_set_eqd *, int num); 2075int be_cmd_modify_eqd(struct be_adapter *adapter, struct be_set_eqd *, int num);
2077int be_cmd_vlan_config(struct be_adapter *adapter, u32 if_id, u16 *vtag_array, 2076int be_cmd_vlan_config(struct be_adapter *adapter, u32 if_id, u16 *vtag_array,
2078 u32 num); 2077 u32 num);
2079int be_cmd_rx_filter(struct be_adapter *adapter, u32 flags, u32 status); 2078int be_cmd_rx_filter(struct be_adapter *adapter, u32 flags, u32 status);
2080int be_cmd_set_flow_control(struct be_adapter *adapter, u32 tx_fc, u32 rx_fc); 2079int be_cmd_set_flow_control(struct be_adapter *adapter, u32 tx_fc, u32 rx_fc);
2081int be_cmd_get_flow_control(struct be_adapter *adapter, u32 *tx_fc, u32 *rx_fc); 2080int be_cmd_get_flow_control(struct be_adapter *adapter, u32 *tx_fc, u32 *rx_fc);
2082int be_cmd_query_fw_cfg(struct be_adapter *adapter, u32 *port_num, 2081int be_cmd_query_fw_cfg(struct be_adapter *adapter);
2083 u32 *function_mode, u32 *function_caps, u16 *asic_rev);
2084int be_cmd_reset_function(struct be_adapter *adapter); 2082int be_cmd_reset_function(struct be_adapter *adapter);
2085int be_cmd_rss_config(struct be_adapter *adapter, u8 *rsstable, 2083int be_cmd_rss_config(struct be_adapter *adapter, u8 *rsstable,
2086 u32 rss_hash_opts, u16 table_size, const u8 *rss_hkey); 2084 u32 rss_hash_opts, u16 table_size, const u8 *rss_hkey);
diff --git a/drivers/net/ethernet/emulex/benet/be_main.c b/drivers/net/ethernet/emulex/benet/be_main.c
index 38f35e2d7a63..8ffcffab62f8 100644
--- a/drivers/net/ethernet/emulex/benet/be_main.c
+++ b/drivers/net/ethernet/emulex/benet/be_main.c
@@ -3425,10 +3425,7 @@ static int be_get_config(struct be_adapter *adapter)
3425 u16 profile_id; 3425 u16 profile_id;
3426 int status; 3426 int status;
3427 3427
3428 status = be_cmd_query_fw_cfg(adapter, &adapter->port_num, 3428 status = be_cmd_query_fw_cfg(adapter);
3429 &adapter->function_mode,
3430 &adapter->function_caps,
3431 &adapter->asic_rev);
3432 if (status) 3429 if (status)
3433 return status; 3430 return status;
3434 3431
@@ -3617,7 +3614,7 @@ static int be_setup(struct be_adapter *adapter)
3617 if (status) 3614 if (status)
3618 goto err; 3615 goto err;
3619 3616
3620 be_cmd_get_fw_ver(adapter, adapter->fw_ver, adapter->fw_on_flash); 3617 be_cmd_get_fw_ver(adapter);
3621 3618
3622 if (BE2_chip(adapter) && fw_major_num(adapter->fw_ver) < 4) { 3619 if (BE2_chip(adapter) && fw_major_num(adapter->fw_ver) < 4) {
3623 dev_err(dev, "Firmware on card is old(%s), IRQs may not work.", 3620 dev_err(dev, "Firmware on card is old(%s), IRQs may not work.",
@@ -4247,8 +4244,7 @@ int be_load_fw(struct be_adapter *adapter, u8 *fw_file)
4247 status = be_fw_download(adapter, fw); 4244 status = be_fw_download(adapter, fw);
4248 4245
4249 if (!status) 4246 if (!status)
4250 be_cmd_get_fw_ver(adapter, adapter->fw_ver, 4247 be_cmd_get_fw_ver(adapter);
4251 adapter->fw_on_flash);
4252 4248
4253fw_exit: 4249fw_exit:
4254 release_firmware(fw); 4250 release_firmware(fw);