be2net: use GET_MAC_LIST cmd to query mac-address from a pmac-id
The use of NTKW_MAC_QUERY cmd has been deprecated for Skyhawk-R. Replace the last remaining usage in be_vfs_mac_query() routine. Signed-off-by: Suresh Reddy <suresh.reddy@emulex.com> Signed-off-by: Sathya Perla <sathya.perla@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
		
							parent
							
								
									0b0ef1d027
								
							
						
					
					
						commit
						b188f0907a
					
				| @ -2742,7 +2742,8 @@ err: | ||||
|  *		  If pmac_id is returned, pmac_id_valid is returned as true | ||||
|  */ | ||||
| int be_cmd_get_mac_from_list(struct be_adapter *adapter, u8 *mac, | ||||
| 			     bool *pmac_id_valid, u32 *pmac_id, u8 domain) | ||||
| 			     bool *pmac_id_valid, u32 *pmac_id, u32 if_handle, | ||||
| 			     u8 domain) | ||||
| { | ||||
| 	struct be_mcc_wrb *wrb; | ||||
| 	struct be_cmd_req_get_mac_list *req; | ||||
| @ -2780,7 +2781,7 @@ int be_cmd_get_mac_from_list(struct be_adapter *adapter, u8 *mac, | ||||
| 	req->mac_type = MAC_ADDRESS_TYPE_NETWORK; | ||||
| 	if (*pmac_id_valid) { | ||||
| 		req->mac_id = cpu_to_le32(*pmac_id); | ||||
| 		req->iface_id = cpu_to_le16(adapter->if_handle); | ||||
| 		req->iface_id = cpu_to_le16(if_handle); | ||||
| 		req->perm_override = 0; | ||||
| 	} else { | ||||
| 		req->perm_override = 1; | ||||
| @ -2833,17 +2834,21 @@ out: | ||||
| 	return status; | ||||
| } | ||||
| 
 | ||||
| int be_cmd_get_active_mac(struct be_adapter *adapter, u32 curr_pmac_id, u8 *mac) | ||||
| int be_cmd_get_active_mac(struct be_adapter *adapter, u32 curr_pmac_id, u8 *mac, | ||||
| 			  u32 if_handle, bool active, u32 domain) | ||||
| { | ||||
| 	bool active = true; | ||||
| 
 | ||||
| 	if (!active) | ||||
| 		be_cmd_get_mac_from_list(adapter, mac, &active, &curr_pmac_id, | ||||
| 					 if_handle, domain); | ||||
| 	if (BEx_chip(adapter)) | ||||
| 		return be_cmd_mac_addr_query(adapter, mac, false, | ||||
| 					     adapter->if_handle, curr_pmac_id); | ||||
| 					     if_handle, curr_pmac_id); | ||||
| 	else | ||||
| 		/* Fetch the MAC address using pmac_id */ | ||||
| 		return be_cmd_get_mac_from_list(adapter, mac, &active, | ||||
| 						&curr_pmac_id, 0); | ||||
| 						&curr_pmac_id, | ||||
| 						if_handle, domain); | ||||
| } | ||||
| 
 | ||||
| int be_cmd_get_perm_mac(struct be_adapter *adapter, u8 *mac) | ||||
| @ -2862,7 +2867,7 @@ int be_cmd_get_perm_mac(struct be_adapter *adapter, u8 *mac) | ||||
| 						       adapter->if_handle, 0); | ||||
| 	} else { | ||||
| 		status = be_cmd_get_mac_from_list(adapter, mac, &pmac_valid, | ||||
| 						  NULL, 0); | ||||
| 						  NULL, adapter->if_handle, 0); | ||||
| 	} | ||||
| 
 | ||||
| 	return status; | ||||
| @ -2923,7 +2928,8 @@ int be_cmd_set_mac(struct be_adapter *adapter, u8 *mac, int if_id, u32 dom) | ||||
| 	int status; | ||||
| 
 | ||||
| 	status = be_cmd_get_mac_from_list(adapter, old_mac, &active_mac, | ||||
| 					  &pmac_id, dom); | ||||
| 					  &pmac_id, if_id, dom); | ||||
| 
 | ||||
| 	if (!status && active_mac) | ||||
| 		be_cmd_pmac_del(adapter, if_id, pmac_id, dom); | ||||
| 
 | ||||
|  | ||||
| @ -2057,8 +2057,10 @@ int be_cmd_get_fn_privileges(struct be_adapter *adapter, u32 *privilege, | ||||
| int be_cmd_set_fn_privileges(struct be_adapter *adapter, u32 privileges, | ||||
| 			     u32 vf_num); | ||||
| int be_cmd_get_mac_from_list(struct be_adapter *adapter, u8 *mac, | ||||
| 			     bool *pmac_id_active, u32 *pmac_id, u8 domain); | ||||
| int be_cmd_get_active_mac(struct be_adapter *adapter, u32 pmac_id, u8 *mac); | ||||
| 			     bool *pmac_id_active, u32 *pmac_id, | ||||
| 			     u32 if_handle, u8 domain); | ||||
| int be_cmd_get_active_mac(struct be_adapter *adapter, u32 pmac_id, u8 *mac, | ||||
| 			  u32 if_handle, bool active, u32 domain); | ||||
| int be_cmd_get_perm_mac(struct be_adapter *adapter, u8 *mac); | ||||
| int be_cmd_set_mac_list(struct be_adapter *adapter, u8 *mac_array, u8 mac_count, | ||||
| 			u32 domain); | ||||
|  | ||||
| @ -280,7 +280,8 @@ static int be_mac_addr_set(struct net_device *netdev, void *p) | ||||
| 	/* Decide if the new MAC is successfully activated only after
 | ||||
| 	 * querying the FW | ||||
| 	 */ | ||||
| 	status = be_cmd_get_active_mac(adapter, curr_pmac_id, mac); | ||||
| 	status = be_cmd_get_active_mac(adapter, curr_pmac_id, mac, | ||||
| 				       adapter->if_handle, true, 0); | ||||
| 	if (status) | ||||
| 		goto err; | ||||
| 
 | ||||
| @ -2872,14 +2873,11 @@ static int be_vfs_mac_query(struct be_adapter *adapter) | ||||
| 	int status, vf; | ||||
| 	u8 mac[ETH_ALEN]; | ||||
| 	struct be_vf_cfg *vf_cfg; | ||||
| 	bool active = false; | ||||
| 
 | ||||
| 	for_all_vfs(adapter, vf_cfg, vf) { | ||||
| 		be_cmd_get_mac_from_list(adapter, mac, &active, | ||||
| 					 &vf_cfg->pmac_id, 0); | ||||
| 
 | ||||
| 		status = be_cmd_mac_addr_query(adapter, mac, false, | ||||
| 					       vf_cfg->if_handle, 0); | ||||
| 		status = be_cmd_get_active_mac(adapter, vf_cfg->pmac_id, | ||||
| 					       mac, vf_cfg->if_handle, | ||||
| 					       false, vf+1); | ||||
| 		if (status) | ||||
| 			return status; | ||||
| 		memcpy(vf_cfg->mac_addr, mac, ETH_ALEN); | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user