Skip to content
  • Parav Pandit's avatar
    a1ab3e45
    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: Extend SF port attributes to have external attribute
    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>
Loading