wolfSSL / wolfBoot

wolfBoot is a portable, OS-agnostic, secure bootloader for microcontrollers, supporting firmware authentication and firmware update mechanisms.
https://www.wolfssl.com
GNU General Public License v3.0
365 stars 100 forks source link

RZN2L - Separating App and Loader with FreeRTOS #448

Open KeuntekLee opened 6 months ago

KeuntekLee commented 6 months ago

Hi.

I have some question about RZN2L example codes.

Examples in this repository for RZN2L, the app is created with Baremetal project.

Is this example and features (Separating App and Loader) can be done with App program with FreeRTOS?

BR

dgarske commented 6 months ago

Hi BR (@KeuntekLee ),

Will you confirm you are using the latest RZ work in https://github.com/wolfSSL/wolfBoot/pull/444 ?

wolfBoot itself is RTOS agnostic, so using FreeRTOS with your own application is supported.

@miyazakh will you help support this ticket?

Thanks, David Garske, wolfSSL

miyazakh commented 6 months ago

Hi BR(@KeuntekLee),

Thank you for your interest in our wolfBoot example on Renesas RZ. As David mentions, wolfBoot is independent to RTOS. I think that the app can be run under RTOS though startup code might need to be tweaked. In addition to that, in this example, the app is downloaded into System RAM, which has enough memory space to run it with RTOS.

KeuntekLee commented 6 months ago

Hi BR(@miyazakh ),

Thanks for the comments. In my case, the app with FreeRTOS is less than 200Kb, so I think it might fit in the System RAM area. As you mentioned, the startup code needs to be modified when the app is not the baremetal-based. I fully understand that wolfBoot is not dependent on this scenario, and just ask about some examples on this case for reference (FreeRTOS app + xspi bootloader). If you have future item of this, please let me know.

miyazakh commented 6 months ago

Hi BR(@KeuntekLee)

Unfortunately, I don't have an example that runs it with RTOS now. The easiest way for a trial is to use the example in wolfBoot rep and download your example instead of the original app.