Commit e44d49cb authored by Nogah Frankel's avatar Nogah Frankel Committed by David S. Miller

mlxsw: pci: Add some miscellaneous resources

Add max system ports, max regions and max vlan groups to resource query.
Signed-off-by: default avatarNogah Frankel <nogahf@mellanox.com>
Reviewed-by: default avatarIdo Schimmel <idosch@mellanox.com>
Signed-off-by: default avatarJiri Pirko <jiri@mellanox.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 9497c042
...@@ -267,13 +267,16 @@ struct mlxsw_driver { ...@@ -267,13 +267,16 @@ struct mlxsw_driver {
}; };
struct mlxsw_resources { struct mlxsw_resources {
u8 max_span_valid:1, u32 max_span_valid:1,
max_lag_valid:1, max_lag_valid:1,
max_ports_in_lag_valid:1, max_ports_in_lag_valid:1,
kvd_size_valid:1, kvd_size_valid:1,
kvd_single_min_size_valid:1, kvd_single_min_size_valid:1,
kvd_double_min_size_valid:1, kvd_double_min_size_valid:1,
max_virtual_routers_valid:1; max_virtual_routers_valid:1,
max_system_ports_valid:1,
max_vlan_groups_valid:1,
max_regions_valid:1;
u8 max_span; u8 max_span;
u8 max_lag; u8 max_lag;
u8 max_ports_in_lag; u8 max_ports_in_lag;
...@@ -281,6 +284,9 @@ struct mlxsw_resources { ...@@ -281,6 +284,9 @@ struct mlxsw_resources {
u32 kvd_single_min_size; u32 kvd_single_min_size;
u32 kvd_double_min_size; u32 kvd_double_min_size;
u16 max_virtual_routers; u16 max_virtual_routers;
u16 max_system_ports;
u16 max_vlan_groups;
u16 max_regions;
/* Internal resources. /* Internal resources.
* Determined by the SW, not queried from the HW. * Determined by the SW, not queried from the HW.
......
...@@ -1162,6 +1162,9 @@ mlxsw_pci_config_profile_swid_config(struct mlxsw_pci *mlxsw_pci, ...@@ -1162,6 +1162,9 @@ mlxsw_pci_config_profile_swid_config(struct mlxsw_pci *mlxsw_pci,
#define MLXSW_KVD_SINGLE_MIN_SIZE_ID 0x1002 #define MLXSW_KVD_SINGLE_MIN_SIZE_ID 0x1002
#define MLXSW_KVD_DOUBLE_MIN_SIZE_ID 0x1003 #define MLXSW_KVD_DOUBLE_MIN_SIZE_ID 0x1003
#define MLXSW_MAX_VIRTUAL_ROUTERS_ID 0x2C01 #define MLXSW_MAX_VIRTUAL_ROUTERS_ID 0x2C01
#define MLXSW_MAX_SYSTEM_PORT_ID 0x2502
#define MLXSW_MAX_VLAN_GROUPS_ID 0x2906
#define MLXSW_MAX_REGIONS_ID 0x2901
#define MLXSW_RESOURCES_QUERY_MAX_QUERIES 100 #define MLXSW_RESOURCES_QUERY_MAX_QUERIES 100
#define MLXSW_RESOURCES_PER_QUERY 32 #define MLXSW_RESOURCES_PER_QUERY 32
...@@ -1197,6 +1200,18 @@ static void mlxsw_pci_resources_query_parse(int id, u64 val, ...@@ -1197,6 +1200,18 @@ static void mlxsw_pci_resources_query_parse(int id, u64 val,
resources->max_virtual_routers = val; resources->max_virtual_routers = val;
resources->max_virtual_routers_valid = 1; resources->max_virtual_routers_valid = 1;
break; break;
case MLXSW_MAX_SYSTEM_PORT_ID:
resources->max_system_ports = val;
resources->max_system_ports_valid = 1;
break;
case MLXSW_MAX_VLAN_GROUPS_ID:
resources->max_vlan_groups = val;
resources->max_vlan_groups_valid = 1;
break;
case MLXSW_MAX_REGIONS_ID:
resources->max_regions = val;
resources->max_regions_valid = 1;
break;
default: default:
break; break;
} }
......
...@@ -3040,12 +3040,6 @@ static struct mlxsw_config_profile mlxsw_sp_config_profile = { ...@@ -3040,12 +3040,6 @@ static struct mlxsw_config_profile mlxsw_sp_config_profile = {
.max_mid = MLXSW_SP_MID_MAX, .max_mid = MLXSW_SP_MID_MAX,
.used_max_pgt = 1, .used_max_pgt = 1,
.max_pgt = 0, .max_pgt = 0,
.used_max_system_port = 1,
.max_system_port = 64,
.used_max_vlan_groups = 1,
.max_vlan_groups = 127,
.used_max_regions = 1,
.max_regions = 400,
.used_flood_tables = 1, .used_flood_tables = 1,
.used_flood_mode = 1, .used_flood_mode = 1,
.flood_mode = 3, .flood_mode = 3,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment