nfp: add phys_switch_id support
authorSimon Horman <simon.horman@netronome.com>
Thu, 29 Jun 2017 20:08:12 +0000 (22:08 +0200)
committerDavid S. Miller <davem@davemloft.net>
Sat, 1 Jul 2017 15:51:32 +0000 (08:51 -0700)
commit8f15df600dff00c8f28c8588bdd4dca55dff690b
tree3e781736505532d6c82a8041f3b7f1b313dff2ce
parentd643a75ac2bcc559994405d29c50ed086aeae434
nfp: add phys_switch_id support

Add phys_switch_id support by allowing lookup of
SWITCHDEV_ATTR_ID_PORT_PARENT_ID via the nfp_repr_port_attr_get
switchdev operation.

This is visible to user-space in the phys_switch_id attribute
of a netdev.

e.g.

cd /sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0
find . -name phys_switch_id | xargs grep .
./net/eth3/phys_switch_id:00154d1300bd
./net/eth4/phys_switch_id:00154d1300bd
./net/eth2/phys_switch_id:00154d1300bd
grep: ./net/eth5/phys_switch_id: Operation not supported

In the above eth2 and eth3 and representor netdevs for the first and second
physical port. eth4 is the representor for the PF. And eth5 is the PF netdev.

Signed-off-by: Simon Horman <simon.horman@netronome.com>
Reviewed-by: Jakub Kicinski <jakub.kicinski@netronome.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/netronome/nfp/nfp_net_common.c
drivers/net/ethernet/netronome/nfp/nfp_net_repr.c
drivers/net/ethernet/netronome/nfp/nfp_port.c
drivers/net/ethernet/netronome/nfp/nfp_port.h