[PATCH] RISC-V: simplify BUILTIN_DTB processing
Anup Patel
anup at brainfault.org
Fri Jan 15 05:43:30 EST 2021
On Fri, Jan 15, 2021 at 3:18 PM Vitaly Wool <vitaly.wool at konsulko.com> wrote:
>
>
>
> On Fri, 15 Jan 2021, 10:39 Anup Patel, <anup at brainfault.org> wrote:
>>
>> On Tue, Jan 12, 2021 at 2:51 AM Vitaly Wool <vitaly.wool at konsulko.com> wrote:
>> >
>> > Provide __dtb_start as a parameter to setup_vm() in case
>> > CONFIG_BUILTIN_DTB is true, so we don't have to duplicate
>> > BUILTIN_DTB specific processing in MMU-enabled and MMU-disabled
>> > versions of setup_vm().
>> >
>> > Signed-off-by: Vitaly Wool <vitaly.wool at konsulko.com>
>> > ---
>> > arch/riscv/kernel/head.S | 4 ++++
>> > arch/riscv/mm/init.c | 4 ----
>> > 2 files changed, 4 insertions(+), 4 deletions(-)
>> >
>> > diff --git a/arch/riscv/kernel/head.S b/arch/riscv/kernel/head.S
>> > index 16e9941900c4..f5a9bad86e58 100644
>> > --- a/arch/riscv/kernel/head.S
>> > +++ b/arch/riscv/kernel/head.S
>> > @@ -260,7 +260,11 @@ clear_bss_done:
>> >
>> > /* Initialize page tables and relocate to virtual addresses */
>> > la sp, init_thread_union + THREAD_SIZE
>> > +#ifdef CONFIG_BUILTIN_DTB
>> > + la a0, __dtb_start
>> > +#else
>> > mv a0, s1
>> > +#endif /* CONFIG_BUILTIN_DTB */
>> > call setup_vm
>> > #ifdef CONFIG_MMU
>> > la a0, early_pg_dir
>> > diff --git a/arch/riscv/mm/init.c b/arch/riscv/mm/init.c
>> > index 5b17f8d22f91..45faad7c4291 100644
>> > --- a/arch/riscv/mm/init.c
>> > +++ b/arch/riscv/mm/init.c
>> > @@ -615,11 +615,7 @@ static void __init setup_vm_final(void)
>> > #else
>> > asmlinkage void __init setup_vm(uintptr_t dtb_pa)
>> > {
>> > -#ifdef CONFIG_BUILTIN_DTB
>> > - dtb_early_va = (void *) __dtb_start;
>> > -#else
>> > dtb_early_va = (void *)dtb_pa;
>> > -#endif
>> > dtb_early_pa = dtb_pa;
>> > }
>> >
>> > --
>> > 2.20.1
>> >
>>
>> We can avoid the early DTB mapping for MMU-enabled case when
>> BUILTIN_DTB is enabled (same as previous discussion). Otherwise
>> looks good to me.
>
>
> Right, but I had already submitted the patch which takes care of that, and you have reviewed it too IIRC :)
Ahh, I assumed this patch is based on latest stable Linux-5.11-rcX.
Either you can create a series with two patches OR you can squash this patch
into your previous patch.
Regards,
Anup
More information about the linux-riscv
mailing list