diff --git a/include/sbi/sbi_platform.h b/include/sbi/sbi_platform.h index 389203b0..58b9069d 100644 --- a/include/sbi/sbi_platform.h +++ b/include/sbi/sbi_platform.h @@ -41,7 +41,6 @@ #define SBI_PLATFORM_HART_INDEX2ID_OFFSET (0x60 + (__SIZEOF_POINTER__ * 2)) #define SBI_PLATFORM_TLB_RANGE_FLUSH_LIMIT_DEFAULT (1UL << 12) -#define SBI_PLATFORM_TLB_FIFO_NUM_ENTRIES 8 #ifndef __ASSEMBLER__ @@ -330,7 +329,7 @@ static inline u32 sbi_platform_tlb_fifo_num_entries(const struct sbi_platform *p { if (plat && sbi_platform_ops(plat)->get_tlb_num_entries) return sbi_platform_ops(plat)->get_tlb_num_entries(); - return SBI_PLATFORM_TLB_FIFO_NUM_ENTRIES; + return sbi_scratch_last_hartindex() + 1; } /** diff --git a/platform/generic/platform.c b/platform/generic/platform.c index 66a0b77c..4246efdb 100644 --- a/platform/generic/platform.c +++ b/platform/generic/platform.c @@ -260,7 +260,7 @@ static u32 generic_tlb_num_entries(void) { if (generic_plat && generic_plat->tlb_num_entries) return generic_plat->tlb_num_entries(generic_plat_match); - return SBI_PLATFORM_TLB_FIFO_NUM_ENTRIES; + return sbi_scratch_last_hartindex() + 1; } static int generic_pmu_init(void)