|
@@ -5540,6 +5540,20 @@ static int efx_ef10_ptp_set_ts_config(struct efx_nic *efx,
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+static int efx_ef10_get_phys_port_id(struct efx_nic *efx,
|
|
|
+ struct netdev_phys_item_id *ppid)
|
|
|
+{
|
|
|
+ struct efx_ef10_nic_data *nic_data = efx->nic_data;
|
|
|
+
|
|
|
+ if (!is_valid_ether_addr(nic_data->port_id))
|
|
|
+ return -EOPNOTSUPP;
|
|
|
+
|
|
|
+ ppid->id_len = ETH_ALEN;
|
|
|
+ memcpy(ppid->id, nic_data->port_id, ppid->id_len);
|
|
|
+
|
|
|
+ return 0;
|
|
|
+}
|
|
|
+
|
|
|
static int efx_ef10_vlan_rx_add_vid(struct efx_nic *efx, __be16 proto, u16 vid)
|
|
|
{
|
|
|
if (proto != htons(ETH_P_8021Q))
|
|
@@ -5647,11 +5661,11 @@ const struct efx_nic_type efx_hunt_a0_vf_nic_type = {
|
|
|
.vswitching_probe = efx_ef10_vswitching_probe_vf,
|
|
|
.vswitching_restore = efx_ef10_vswitching_restore_vf,
|
|
|
.vswitching_remove = efx_ef10_vswitching_remove_vf,
|
|
|
- .sriov_get_phys_port_id = efx_ef10_sriov_get_phys_port_id,
|
|
|
#endif
|
|
|
.get_mac_address = efx_ef10_get_mac_address_vf,
|
|
|
.set_mac_address = efx_ef10_set_mac_address,
|
|
|
|
|
|
+ .get_phys_port_id = efx_ef10_get_phys_port_id,
|
|
|
.revision = EFX_REV_HUNT_A0,
|
|
|
.max_dma_mask = DMA_BIT_MASK(ESF_DZ_TX_KER_BUF_ADDR_WIDTH),
|
|
|
.rx_prefix_size = ES_DZ_RX_PREFIX_SIZE,
|
|
@@ -5776,6 +5790,7 @@ const struct efx_nic_type efx_hunt_a0_nic_type = {
|
|
|
.set_mac_address = efx_ef10_set_mac_address,
|
|
|
.tso_versions = efx_ef10_tso_versions,
|
|
|
|
|
|
+ .get_phys_port_id = efx_ef10_get_phys_port_id,
|
|
|
.revision = EFX_REV_HUNT_A0,
|
|
|
.max_dma_mask = DMA_BIT_MASK(ESF_DZ_TX_KER_BUF_ADDR_WIDTH),
|
|
|
.rx_prefix_size = ES_DZ_RX_PREFIX_SIZE,
|