be2net: use hba_port_num instead of port_num
Subsystems (2)
PATCH 6/6 be2net: use hba_port_num instead of port_num
Use hba_port_num for phy loopback and ethtool phy identification.
From: Suresh R <[email protected]>
Signed-off-by Ajit Khaparde <[email protected]>
--- drivers/net/benet/be.h | 1 + drivers/net/benet/be_cmds.c | 54 ++++++++++++++++++++++++++++++++++++++++ drivers/net/benet/be_cmds.h | 12 +++++++++ drivers/net/benet/be_ethtool.c | 12 ++++---- drivers/net/benet/be_hw.h | 47 ++++++++++++++++++++++++++++++++++ drivers/net/benet/be_main.c | 4 +++ 6 files changed, 124 insertions(+), 6 deletions(-)
drivers/net/benet/be.h +1 -0
@@ -318,6 +318,7 @@ struct be_adapter {struct be_vf_cfg vf_cfg[BE_MAX_VF ];u8 is_virtfn;u32 sli_family; +u8 hba_port_num;u16 pvid; };
drivers/net/benet/be_cmds.c +54 -0
57 lines not on this page · raw message
drivers/net/benet/be_cmds.h +12 -0
@@ -169,6 +169,7 @@ struct be_mcc_mailbox {#define OPCODE_COMMON_SET_QOS 28#define OPCODE_COMMON_MCC_CREATE_EXT 90#define OPCODE_COMMON_SEEPROM_READ 30 +#define OPCODE_COMMON_GET_CNTL_ATTRIBUTES 32#define OPCODE_COMMON_NTWK_RX_FILTER 34#define OPCODE_COMMON_GET_FW_VERSION 35#define OPCODE_COMMON_SET_FLOW_CONTROL 36
@@ -1030,6 +1031,16 @@ struct be_cmd_resp_set_qos {u32 rsvd; }; +/*********************** Controller Attributes ***********************/ +struct be_cmd_req_cntl_attribs { +struct be_cmd_req_hdr hdr; +}; + +struct be_cmd_resp_cntl_attribs { +struct be_cmd_resp_hdr hdr; +struct mgmt_controller_attrib attribs; +}; +extern int be_pci_fnum_get (struct be_adapter *adapter);extern int be_cmd_POST (struct be_adapter *adapter); extern int be_cmd_mac_addr_query(struct be_adapter *adapter, u8 *mac_addr,
@@ -1115,4 +1126,5 @@ extern int be_cmd_get_phy_info(struct be_adapter *adapter,extern int be_cmd_set_qos (struct be_adapter *adapter,u32 bps,u32 domain);extern void be_detect_dump_ue (struct be_adapter *adapter);extern int be_cmd_get_die_temperature (struct be_adapter *adapter); +extern int be_cmd_get_cntl_attributes (struct be_adapter *adapter);
drivers/net/benet/be_ethtool.c +6 -6
@@ -513,7 +513,7 @@ be_phys_id(struct net_device *netdev, u32 data)int status;u32 cur; -be_cmd_get_beacon_state (adapter, adapter->port_num, &cur); +be_cmd_get_beacon_state (adapter, adapter->hba_port_num, &cur);if (cur ==BEACON_STATE_ENABLED )return 0 ;
@@ -521,12 +521,12 @@ be_phys_id(struct net_device *netdev, u32 data)if (data <2 ) data =2 ; - status =be_cmd_set_beacon_state (adapter, adapter->port_num,0 ,0 , + status =be_cmd_set_beacon_state (adapter, adapter->hba_port_num,0 ,0 ,BEACON_STATE_ENABLED );set_current_state (TASK_INTERRUPTIBLE );schedule_timeout (data*HZ ); - status =be_cmd_set_beacon_state (adapter, adapter->port_num,0 ,0 , + status =be_cmd_set_beacon_state (adapter, adapter->hba_port_num,0 ,0 ,BEACON_STATE_DISABLED );return status;
@@ -605,12 +605,12 @@ err:static u64 be_loopback_test (struct be_adapter *adapter,u8 loopback_type,u64 *status) { -be_cmd_set_loopback (adapter, adapter->port_num, +be_cmd_set_loopback (adapter, adapter->hba_port_num, loopback_type,1 ); - *status =be_cmd_loopback_test (adapter, adapter->port_num, + *status =be_cmd_loopback_test (adapter, adapter->hba_port_num, loopback_type,1500 ,2 ,0xabc ); -be_cmd_set_loopback (adapter, adapter->port_num, +be_cmd_set_loopback (adapter, adapter->hba_port_num,BE_NO_LOOPBACK ,1 );return *status; }
drivers/net/benet/be_hw.h +47 -0
53 lines not on this page · raw message
drivers/net/benet/be_main.c +4 -0
@@ -2868,6 +2868,10 @@ static int be_get_config(struct be_adapter *adapter)else adapter->max_vlans =BE_NUM_VLANS_SUPPORTED ; + status =be_cmd_get_cntl_attributes (adapter); +if (status) +return status; +return 0 ; }
Signature · 1 line
1.7.1