[PATCH] riscv/start: Startup sequence update.
Hesham Almatary
hesham.almatary at cl.cam.ac.uk
Thu Apr 29 17:30:00 UTC 2021
On Wed, 28 Apr 2021 at 15:55, Somesh Deshmukh
<someshdeshmukh07 at gmail.com> wrote:
>
> - The current startup sequence performs the call to the bsp_fdt_copy() and then
> performs memset to the BSS region. In bsp_fdt_copy(), RTEMS allocates
> memory for bsp_fdt_blob into BSS region which is yet to initialize. With
> current startup sequence, the bsp_fdt_blob is getting erased after memset.
> The proposed fix performs the BSS region memset operation and then performs a
> call to the bsp_fdt_copy().
> ---
> bsps/riscv/shared/start/start.S | 12 ++++++------
> 1 file changed, 6 insertions(+), 6 deletions(-)
>
> diff --git a/bsps/riscv/shared/start/start.S b/bsps/riscv/shared/start/start.S
> index 04a62a26ce..277760a388 100644
> --- a/bsps/riscv/shared/start/start.S
> +++ b/bsps/riscv/shared/start/start.S
> @@ -74,17 +74,17 @@ SYM(_start):
> LADDR sp, _ISR_Stack_area_end
> #endif
>
> +/* Clear .bss */
> +LADDR a0, bsp_section_bss_begin
> +li a1, 0
> +LADDR a2, bsp_section_bss_size
> +call memset
> +
Looks good, thanks! Could you please just maintain the existing
whitespace formatting?
> #ifdef BSP_START_COPY_FDT_FROM_U_BOOT
> mv a0, a1
> call bsp_fdt_copy
> #endif
>
> - /* Clear .bss */
> - LADDR a0, bsp_section_bss_begin
> - li a1, 0
> - LADDR a2, bsp_section_bss_size
> - call memset
> -
> #ifdef RTEMS_SMP
> /* Give go to secondary processors */
> LADDR t0, .Lsecondary_processor_go
> --
> 2.25.1
>
> _______________________________________________
> devel mailing list
> devel at rtems.org
> http://lists.rtems.org/mailman/listinfo/devel
More information about the devel
mailing list