summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSagar Shrikant Kadam <sagar.kadam@sifive.com>2020-06-28 07:45:02 -0700
committerAndes <uboot@andestech.com>2020-07-01 15:01:27 +0800
commitb6b233ddb78205abc76dde60179bd129368dc3e8 (patch)
tree1cf050e7dab7d3f8af5d65f768a58f8f561ba2a2
parent969251a5a4d3515abc233621bc8ca6f1c93d6dd4 (diff)
downloadu-boot-b6b233ddb78205abc76dde60179bd129368dc3e8.tar.gz
riscv: cpu: correctly handle the setting of CPU_FEAT_MMU bit
The conditional check to read "mmu-type" from the device tree is not rightly handled due to which the cpu feature doesn't include CPU_FEAT_MMU even if it's corresponding entry is present in the device tree. The initialization of cpu features is now taken care in cpu-uclass driver, so no need to zero out cpu_freq in riscv_cpu driver and can be removed. Signed-off-by: Sagar Shrikant Kadam <sagar.kadam@sifive.com> Reviewed-by: Pragnesh Patel <pragnesh.patel@sifive.com> Reviewed-by: Bin Meng <bin.meng@windriver.com>
-rw-r--r--drivers/cpu/riscv_cpu.c5
1 files changed, 1 insertions, 4 deletions
diff --git a/drivers/cpu/riscv_cpu.c b/drivers/cpu/riscv_cpu.c
index 76b0489d2a..112690fe3a 100644
--- a/drivers/cpu/riscv_cpu.c
+++ b/drivers/cpu/riscv_cpu.c
@@ -36,9 +36,6 @@ static int riscv_cpu_get_info(struct udevice *dev, struct cpu_info *info)
struct clk clk;
const char *mmu;
- /* Zero out the frequency, in case sizeof(ulong) != sizeof(u32) */
- info->cpu_freq = 0;
-
/* First try getting the frequency from the assigned clock */
ret = clk_get_by_index(dev, 0, &clk);
if (!ret) {
@@ -52,7 +49,7 @@ static int riscv_cpu_get_info(struct udevice *dev, struct cpu_info *info)
dev_read_u32(dev, "clock-frequency", (u32 *)&info->cpu_freq);
mmu = dev_read_string(dev, "mmu-type");
- if (!mmu)
+ if (mmu)
info->features |= BIT(CPU_FEAT_MMU);
return 0;