nfp: initialize netdev's dev_port with correct id
`dev_port` is used to differentiate devices that instantiate from the same function, which is the case in most of NFP NICs. In some customized scenario, `dev_port` is used to rename netdev instead of `phys_port_name`. Example rules using `dev_port`: SUBSYSTEM=="net", ACTION=="add", KERNELS=="0000:e1:00.0", ATTR{dev_port}=="0", NAME:="ens8np0" SUBSYSTEM=="net", ACTION=="add", KERNELS=="0000:e1:00.0", ATTR{dev_port}=="1", NAME:="ens8np1" To take port split case into account, here we initialize `dev_port` according to the port sequence in eth_table from management firmware instead of using port label id directly. And management firmware makes sure that port sequence matches its label id. Signed-off-by: Yinjun Zhang <yinjun.zhang@corigine.com> Acked-by: Simon Horman <simon.horman@corigine.com> Signed-off-by: Louis Peens <louis.peens@corigine.com> Link: https://lore.kernel.org/r/20230405120829.28817-1-louis.peens@corigine.com Signed-off-by: Paolo Abeni <pabeni@redhat.com>
This commit is contained in:
parent
905a9eb5f6
commit
0ebd4fd6b9
@ -189,6 +189,7 @@ int nfp_port_init_phy_port(struct nfp_pf *pf, struct nfp_app *app,
|
||||
|
||||
port->eth_port = &pf->eth_tbl->ports[id];
|
||||
port->eth_id = pf->eth_tbl->ports[id].index;
|
||||
port->netdev->dev_port = id;
|
||||
if (pf->mac_stats_mem)
|
||||
port->eth_stats =
|
||||
pf->mac_stats_mem + port->eth_id * NFP_MAC_STATS_SIZE;
|
||||
|
Loading…
x
Reference in New Issue
Block a user