summaryrefslogtreecommitdiff
path: root/libcpu
diff options
context:
space:
mode:
authorchenhy0106 <[email protected]>2023-03-09 20:25:54 +0800
committerGitHub <[email protected]>2023-03-09 07:25:54 -0500
commitf6847af0cdd345c5903349dc7e7b04992ecef44f (patch)
tree23c4a7fdae02fe8759a1b61269748588fd77bfe8 /libcpu
parent95fea2f159633f0ad62f633b0970e09e0dec9044 (diff)
[libcpu/riscv/c906] fix "next_asid" type error (#7031)
MAX_ASID最大为0x10000,在next_asid==MAX_ASID时进入下一个generation。因此next_asid不能只有16位,否则将不能进入下一个generation。修改rt_uint16_t为rt_uint32_t。
Diffstat (limited to 'libcpu')
-rw-r--r--libcpu/risc-v/t-head/c906/mmu.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/libcpu/risc-v/t-head/c906/mmu.c b/libcpu/risc-v/t-head/c906/mmu.c
index 73481dccf0..75893d65e6 100644
--- a/libcpu/risc-v/t-head/c906/mmu.c
+++ b/libcpu/risc-v/t-head/c906/mmu.c
@@ -42,7 +42,7 @@ volatile __attribute__((aligned(4 * 1024)))
rt_ubase_t MMUTable[__SIZE(VPN2_BIT)];
static rt_uint8_t ASID_BITS = 0;
-static rt_uint16_t next_asid;
+static rt_uint32_t next_asid;
static rt_uint64_t global_asid_generation;
#define ASID_MASK ((1 << ASID_BITS) - 1)
#define ASID_FIRST_GENERATION (1 << ASID_BITS)