diff options
author | Anup Patel <anup.patel@wdc.com> | 2020-08-18 11:51:16 +0530 |
---|---|---|
committer | Anup Patel <anup@brainfault.org> | 2020-09-01 10:28:26 +0530 |
commit | 7b0b289887380d2e71210f12b5ce0f3afc011b35 (patch) | |
tree | 14af735edbeccd13b12a41964c959b14b6488cb4 /lib/sbi/sbi_hart.c | |
parent | 4f3bad6e43f0e5a1a124847edf910e309ae9d59a (diff) |
lib: sbi: Remove redundant SBI_HART_HAS_PMP feature
The SBI_HART_HAS_PMP feature is redundant because we already
have number of PMP regions returned by sbi_hart_pmp_count().
Checking whether PMP is supported for a HART can be simply done
by checking non-zero value returned by sbi_hart_pmp_count().
Signed-off-by: Anup Patel <anup.patel@wdc.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Reviewed-by: Atish Patra <atish.patra@wdc.com>
Diffstat (limited to 'lib/sbi/sbi_hart.c')
-rw-r--r-- | lib/sbi/sbi_hart.c | 15 |
1 files changed, 1 insertions, 14 deletions
diff --git a/lib/sbi/sbi_hart.c b/lib/sbi/sbi_hart.c index fa20bd2..80ed86a 100644 --- a/lib/sbi/sbi_hart.c +++ b/lib/sbi/sbi_hart.c @@ -158,9 +158,6 @@ void sbi_hart_pmp_dump(struct sbi_scratch *scratch) unsigned long prot, addr, size; unsigned int i, pmp_count; - if (!sbi_hart_has_feature(scratch, SBI_HART_HAS_PMP)) - return; - pmp_count = sbi_hart_pmp_count(scratch); for (i = 0; i < pmp_count; i++) { pmp_get(i, &prot, &addr, &size); @@ -190,9 +187,6 @@ int sbi_hart_pmp_check_addr(struct sbi_scratch *scratch, unsigned long addr, unsigned long prot, size, tempaddr; unsigned int i, pmp_count; - if (!sbi_hart_has_feature(scratch, SBI_HART_HAS_PMP)) - return SBI_OK; - pmp_count = sbi_hart_pmp_count(scratch); for (i = 0; i < pmp_count; i++) { pmp_get(i, &prot, &tempaddr, &size); @@ -213,7 +207,7 @@ static int pmp_init(struct sbi_scratch *scratch, u32 hartid) ulong prot, addr, log2size; const struct sbi_platform *plat = sbi_platform_ptr(scratch); - if (!sbi_hart_has_feature(scratch, SBI_HART_HAS_PMP)) + if (!sbi_hart_pmp_count(scratch)) return 0; /* Firmware PMP region to protect OpenSBI firmware */ @@ -276,9 +270,6 @@ static inline char *sbi_hart_feature_id2string(unsigned long feature) return NULL; switch (feature) { - case SBI_HART_HAS_PMP: - fstr = "pmp"; - break; case SBI_HART_HAS_SCOUNTEREN: fstr = "scounteren"; break; @@ -375,10 +366,6 @@ static void hart_detect_features(struct sbi_scratch *scratch) __detect_pmp(CSR_PMPADDR15); #undef __detect_pmp - /* Set hart PMP feature if we have at least one PMP region */ - if (hfeatures->pmp_count) - hfeatures->features |= SBI_HART_HAS_PMP; - /* Detect if hart supports SCOUNTEREN feature */ trap.cause = 0; val = csr_read_allowed(CSR_SCOUNTEREN, (unsigned long)&trap); |