Commit f3243bed authored by Junhui Liu's avatar Junhui Liu Committed by Paul Walmsley
Browse files

riscv: mm: Return intended SATP mode for noXlvl options



Change the return value of match_noXlvl() to return the SATP mode that
will be used, rather than the mode being disabled. This enables unified
logic for return value judgement with the function that obtains mmu-type
from the fdt, avoiding extra conversion. This only changes the naming,
with no functional impact.

Signed-off-by: default avatarJunhui Liu <junhui.liu@pigmoral.tech>
Reviewed-by: default avatarAlexandre Ghiti <alexghiti@rivosinc.com>
Reviewed-by: default avatarNutty Liu <liujingqi@lanxincomputing.com>
Link: https://lore.kernel.org/r/20250722-satp-from-fdt-v1-1-5ba22218fa5f@pigmoral.tech


Signed-off-by: default avatarPaul Walmsley <pjw@kernel.org>
parent 4d4a3cc7
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -41,9 +41,9 @@ static char *get_early_cmdline(uintptr_t dtb_pa)
static u64 match_noXlvl(char *cmdline)
{
	if (strstr(cmdline, "no4lvl"))
		return SATP_MODE_48;
		return SATP_MODE_39;
	else if (strstr(cmdline, "no5lvl"))
		return SATP_MODE_57;
		return SATP_MODE_48;

	return 0;
}
+2 −2
Original line number Diff line number Diff line
@@ -864,9 +864,9 @@ static __init void set_satp_mode(uintptr_t dtb_pa)

	kernel_map.page_offset = PAGE_OFFSET_L5;

	if (satp_mode_cmdline == SATP_MODE_57) {
	if (satp_mode_cmdline == SATP_MODE_48) {
		disable_pgtable_l5();
	} else if (satp_mode_cmdline == SATP_MODE_48) {
	} else if (satp_mode_cmdline == SATP_MODE_39) {
		disable_pgtable_l5();
		disable_pgtable_l4();
		return;