Re: [PATCH 4/4] RISC-V: Fix maximum allowed phsyical memory for RV32

From: Anup Patel
Date: Sun Jan 10 2021 - 23:05:38 EST


On Thu, Jan 7, 2021 at 2:57 PM Atish Patra <atish.patra@xxxxxxx> wrote:
>
> Linux kernel can only map 1GB of address space for RV32 as the page offset
> is set to 0xC0000000. The current description in the Kconfig is confusing
> as it indicates that RV32 can support 2GB of physical memory. That is
> simply not true for current kernel. In future, a 2GB split support can be
> added to allow 2GB physical address space.
>
> Signed-off-by: Atish Patra <atish.patra@xxxxxxx>

Just for information, Alex's also has a patch to simplify this. Refer,
"[RFC PATCH 05/12] riscv: Simplify MAXPHYSMEM config"

Looks good to me.

Reviewed-by: Anup Patel <anup@xxxxxxxxxxxxxx>

> ---
> arch/riscv/Kconfig | 6 ++++--
> 1 file changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/arch/riscv/Kconfig b/arch/riscv/Kconfig
> index 81b76d44725d..e9e2c1f0a690 100644
> --- a/arch/riscv/Kconfig
> +++ b/arch/riscv/Kconfig
> @@ -137,7 +137,7 @@ config PA_BITS
>
> config PAGE_OFFSET
> hex
> - default 0xC0000000 if 32BIT && MAXPHYSMEM_2GB
> + default 0xC0000000 if 32BIT && MAXPHYSMEM_1GB
> default 0x80000000 if 64BIT && !MMU
> default 0xffffffff80000000 if 64BIT && MAXPHYSMEM_2GB
> default 0xffffffe000000000 if 64BIT && MAXPHYSMEM_128GB
> @@ -247,10 +247,12 @@ config MODULE_SECTIONS
>
> choice
> prompt "Maximum Physical Memory"
> - default MAXPHYSMEM_2GB if 32BIT
> + default MAXPHYSMEM_1GB if 32BIT
> default MAXPHYSMEM_2GB if 64BIT && CMODEL_MEDLOW
> default MAXPHYSMEM_128GB if 64BIT && CMODEL_MEDANY
>
> + config MAXPHYSMEM_1GB
> + bool "1GiB"
> config MAXPHYSMEM_2GB
> bool "2GiB"
> config MAXPHYSMEM_128GB
> --
> 2.25.1
>
>
> _______________________________________________
> linux-riscv mailing list
> linux-riscv@xxxxxxxxxxxxxxxxxxx
> http://lists.infradead.org/mailman/listinfo/linux-riscv

Regards,
Anup