lkml.org 
[lkml]   [2020]   [Nov]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.4 081/151] riscv: Set text_offset correctly for M-Mode
    Date
    From: Sean Anderson <seanga2@gmail.com>

    [ Upstream commit 79605f1394261995c2b955c906a5a20fb27cdc84 ]

    M-Mode Linux is loaded at the start of RAM, not 2MB later. Perhaps this
    should be calculated based on PAGE_OFFSET somehow? Even better would be to
    deprecate text_offset and instead introduce something absolute.

    Signed-off-by: Sean Anderson <seanga2@gmail.com>
    Signed-off-by: Palmer Dabbelt <palmerdabbelt@google.com>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    arch/riscv/kernel/head.S | 5 +++++
    1 file changed, 5 insertions(+)

    diff --git a/arch/riscv/kernel/head.S b/arch/riscv/kernel/head.S
    index 72f89b7590dd6..344793159b97d 100644
    --- a/arch/riscv/kernel/head.S
    +++ b/arch/riscv/kernel/head.S
    @@ -26,12 +26,17 @@ ENTRY(_start)
    /* reserved */
    .word 0
    .balign 8
    +#ifdef CONFIG_RISCV_M_MODE
    + /* Image load offset (0MB) from start of RAM for M-mode */
    + .dword 0
    +#else
    #if __riscv_xlen == 64
    /* Image load offset(2MB) from start of RAM */
    .dword 0x200000
    #else
    /* Image load offset(4MB) from start of RAM */
    .dword 0x400000
    +#endif
    #endif
    /* Effective size of kernel image */
    .dword _end - _start
    --
    2.27.0


    \
     
     \ /
      Last update: 2020-11-17 14:39    [W:3.839 / U:0.004 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site