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

mlxsw: pci: Add KVD size relate resources

Add KVD size, and minimum sizes for the single and double
sections resources to resources 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 ce0bd2b0
...@@ -267,10 +267,16 @@ struct mlxsw_driver { ...@@ -267,10 +267,16 @@ struct mlxsw_driver {
struct mlxsw_resources { struct mlxsw_resources {
u8 max_span_valid:1, u8 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_single_min_size_valid:1,
kvd_double_min_size_valid:1;
u8 max_span; u8 max_span;
u8 max_lag; u8 max_lag;
u8 max_ports_in_lag; u8 max_ports_in_lag;
u32 kvd_size;
u32 kvd_single_min_size;
u32 kvd_double_min_size;
}; };
struct mlxsw_resources *mlxsw_core_resources_get(struct mlxsw_core *mlxsw_core); struct mlxsw_resources *mlxsw_core_resources_get(struct mlxsw_core *mlxsw_core);
......
...@@ -1158,6 +1158,9 @@ mlxsw_pci_config_profile_swid_config(struct mlxsw_pci *mlxsw_pci, ...@@ -1158,6 +1158,9 @@ mlxsw_pci_config_profile_swid_config(struct mlxsw_pci *mlxsw_pci,
#define MLXSW_MAX_SPAN_ID 0x2420 #define MLXSW_MAX_SPAN_ID 0x2420
#define MLXSW_MAX_LAG_ID 0x2520 #define MLXSW_MAX_LAG_ID 0x2520
#define MLXSW_MAX_PORTS_IN_LAG_ID 0x2521 #define MLXSW_MAX_PORTS_IN_LAG_ID 0x2521
#define MLXSW_KVD_SIZE_ID 0x1001
#define MLXSW_KVD_SINGLE_MIN_SIZE_ID 0x1002
#define MLXSW_KVD_DOUBLE_MIN_SIZE_ID 0x1003
#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
...@@ -1177,6 +1180,18 @@ static void mlxsw_pci_resources_query_parse(int id, u64 val, ...@@ -1177,6 +1180,18 @@ static void mlxsw_pci_resources_query_parse(int id, u64 val,
resources->max_ports_in_lag = val; resources->max_ports_in_lag = val;
resources->max_ports_in_lag_valid = 1; resources->max_ports_in_lag_valid = 1;
break; break;
case MLXSW_KVD_SIZE_ID:
resources->kvd_size = val;
resources->kvd_size_valid = 1;
break;
case MLXSW_KVD_SINGLE_MIN_SIZE_ID:
resources->kvd_single_min_size = val;
resources->kvd_single_min_size_valid = 1;
break;
case MLXSW_KVD_DOUBLE_MIN_SIZE_ID:
resources->kvd_double_min_size = val;
resources->kvd_double_min_size_valid = 1;
break;
default: default:
break; break;
} }
......
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