Devlink ports can have specific flavour according to the purpose of use. This patch extend attrs_set so the driver can say which flavour port has. Initial flavours are: physical, cpu, dsa User can query this to see right away what is the purpose of each port.
Showing the changes to include/uapi/linux (1 of 5 files). Show all
Unified · Split
| @@ -132,6 +132,16 @@ enum devlink_eswitch_encap_mode { · 131 unmodified lines | ||
| 132 | 132 | DEVLINK_ESWITCH_ENCAP_MODE_BASIC, |
| 133 | 133 | }; |
| 134 | 134 | |
| 135 | +enum devlink_port_flavour { | |
| 136 | + DEVLINK_PORT_FLAVOUR_PHYSICAL, /* Any kind of a port physically | |
| 137 | + * facing the user. | |
| 138 | + */ | |
| 139 | + DEVLINK_PORT_FLAVOUR_CPU, /* CPU port */ | |
| 140 | + DEVLINK_PORT_FLAVOUR_DSA, /* Distributed switch architecture | |
| 141 | + * interconnect port. | |
| 142 | + */ | |
| 143 | +}; | |
| 144 | + | |
| 135 | 145 | enum devlink_attr { |
| 136 | 146 | /* don't change the order or add anything between, this is ABI! */ |
| 137 | 147 | DEVLINK_ATTR_UNSPEC, |
| @@ -224,6 +234,7 @@ enum devlink_attr { · 86 unmodified lines | ||
| 224 | 234 | DEVLINK_ATTR_DPIPE_TABLE_RESOURCE_ID, /* u64 */ |
| 225 | 235 | DEVLINK_ATTR_DPIPE_TABLE_RESOURCE_UNITS,/* u64 */ |
| 226 | 236 | |
| 237 | + DEVLINK_ATTR_PORT_FLAVOUR, /* u16 */ | |
| 227 | 238 | DEVLINK_ATTR_PORT_NUMBER, /* u32 */ |
| 228 | 239 | DEVLINK_ATTR_PORT_SPLIT_SUBPORT_NUMBER, /* u32 */ |
| 229 | 240 | |