• Parav Pandit's avatar
    devlink: Extend SF port attributes to have external attribute · a1ab3e45
    Parav Pandit authored
    Extended SF port attributes to have optional external flag similar to
    PCI PF and VF port attributes.
    
    External atttibute is required to generate unique phys_port_name when PF number
    and SF number are overlapping between two controllers similar to SR-IOV
    VFs.
    
    When a SF is for external controller an example view of external SF
    port and config sequence.
    
    On eswitch system:
    $ devlink dev eswitch set pci/0033:01:00.0 mode switchdev
    
    $ devlink port show
    pci/0033:01:00.0/196607: type eth netdev enP51p1s0f0np0 flavour physical port 0 splittable false
    pci/0033:01:00.0/131072: type eth netdev eth0 flavour pcipf controller 1 pfnum 0 external true splittable false
      function:
        hw_addr 00:00:00:00:00:00
    
    $ devlink port add pci/0033:01:00.0 flavour pcisf pfnum 0 sfnum 77 controller 1
    pci/0033:01:00.0/163840: type eth netdev eth1 flavour pcisf controller 1 pfnum 0 sfnum 77 splittable false
      function:
        hw_addr 00:00:00:00:00:00 state inactive opstate detached
    
    phys_port_name construction:
    $ cat /sys/class/net/eth1/phys_port_name
    c1pf0sf77
    Signed-off-by: default avatarParav Pandit <parav@nvidia.com>
    Reviewed-by: default avatarJiri Pirko <jiri@nvidia.com>
    Reviewed-by: default avatarVu Pham <vuhuong@nvidia.com>
    Signed-off-by: default avatarSaeed Mahameed <saeedm@nvidia.com>
    a1ab3e45
devlink.h 59 KB