|
@@ -41,13 +41,22 @@
|
|
|
#define MLXSW_SP_KVDL_SINGLE_SIZE 16384
|
|
#define MLXSW_SP_KVDL_SINGLE_SIZE 16384
|
|
|
#define MLXSW_SP_KVDL_SINGLE_END \
|
|
#define MLXSW_SP_KVDL_SINGLE_END \
|
|
|
(MLXSW_SP_KVDL_SINGLE_SIZE + MLXSW_SP_KVDL_SINGLE_BASE - 1)
|
|
(MLXSW_SP_KVDL_SINGLE_SIZE + MLXSW_SP_KVDL_SINGLE_BASE - 1)
|
|
|
|
|
+
|
|
|
#define MLXSW_SP_KVDL_CHUNKS_BASE \
|
|
#define MLXSW_SP_KVDL_CHUNKS_BASE \
|
|
|
(MLXSW_SP_KVDL_SINGLE_BASE + MLXSW_SP_KVDL_SINGLE_SIZE)
|
|
(MLXSW_SP_KVDL_SINGLE_BASE + MLXSW_SP_KVDL_SINGLE_SIZE)
|
|
|
-#define MLXSW_SP_KVDL_CHUNKS_SIZE \
|
|
|
|
|
- (MLXSW_SP_KVD_LINEAR_SIZE - MLXSW_SP_KVDL_CHUNKS_BASE)
|
|
|
|
|
|
|
+#define MLXSW_SP_KVDL_CHUNKS_SIZE 49152
|
|
|
#define MLXSW_SP_KVDL_CHUNKS_END \
|
|
#define MLXSW_SP_KVDL_CHUNKS_END \
|
|
|
(MLXSW_SP_KVDL_CHUNKS_SIZE + MLXSW_SP_KVDL_CHUNKS_BASE - 1)
|
|
(MLXSW_SP_KVDL_CHUNKS_SIZE + MLXSW_SP_KVDL_CHUNKS_BASE - 1)
|
|
|
|
|
+
|
|
|
|
|
+#define MLXSW_SP_KVDL_LARGE_CHUNKS_BASE \
|
|
|
|
|
+ (MLXSW_SP_KVDL_CHUNKS_BASE + MLXSW_SP_KVDL_CHUNKS_SIZE)
|
|
|
|
|
+#define MLXSW_SP_KVDL_LARGE_CHUNKS_SIZE \
|
|
|
|
|
+ (MLXSW_SP_KVD_LINEAR_SIZE - MLXSW_SP_KVDL_LARGE_CHUNKS_BASE)
|
|
|
|
|
+#define MLXSW_SP_KVDL_LARGE_CHUNKS_END \
|
|
|
|
|
+ (MLXSW_SP_KVDL_LARGE_CHUNKS_SIZE + MLXSW_SP_KVDL_LARGE_CHUNKS_BASE - 1)
|
|
|
|
|
+
|
|
|
#define MLXSW_SP_CHUNK_MAX 32
|
|
#define MLXSW_SP_CHUNK_MAX 32
|
|
|
|
|
+#define MLXSW_SP_LARGE_CHUNK_MAX 512
|
|
|
|
|
|
|
|
struct mlxsw_sp_kvdl_part_info {
|
|
struct mlxsw_sp_kvdl_part_info {
|
|
|
unsigned int part_index;
|
|
unsigned int part_index;
|
|
@@ -192,6 +201,12 @@ static const struct mlxsw_sp_kvdl_part_info kvdl_parts_info[] = {
|
|
|
.end_index = MLXSW_SP_KVDL_CHUNKS_END,
|
|
.end_index = MLXSW_SP_KVDL_CHUNKS_END,
|
|
|
.alloc_size = MLXSW_SP_CHUNK_MAX,
|
|
.alloc_size = MLXSW_SP_CHUNK_MAX,
|
|
|
},
|
|
},
|
|
|
|
|
+ {
|
|
|
|
|
+ .part_index = 2,
|
|
|
|
|
+ .start_index = MLXSW_SP_KVDL_LARGE_CHUNKS_BASE,
|
|
|
|
|
+ .end_index = MLXSW_SP_KVDL_LARGE_CHUNKS_END,
|
|
|
|
|
+ .alloc_size = MLXSW_SP_LARGE_CHUNK_MAX,
|
|
|
|
|
+ },
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
static struct mlxsw_sp_kvdl_part *
|
|
static struct mlxsw_sp_kvdl_part *
|