Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Renesas LVGL not capable of Bare Metal? #10

Open
FloHomi opened this issue Jun 5, 2024 · 7 comments
Open

Renesas LVGL not capable of Bare Metal? #10

FloHomi opened this issue Jun 5, 2024 · 7 comments

Comments

@FloHomi
Copy link

FloHomi commented Jun 5, 2024

Hi,
The code is, as far I understand, not capable of bare metal. I have some projects without external sram and therefore have only limited recources.
renesas_glcdc for example does not check for rtos or not and throws an error.

#ifdef _RENESAS_RA_
    #include "LVGL_thread.h"

I added instead "hal_data.h" to fix the error, but the screen still did not show anything...

Has someone tried it or has a idea?

@kisvegabor
Copy link
Member

Thank you for reporting it. We haven't tried without OS yet as it seems FreeRTOS is used in Dave2D too.

@becseya can you take a look at it?

@becseya
Copy link
Contributor

becseya commented Jun 13, 2024

LVGL_thread.h is a core component of this project, it glues everything together. And it does not get generated if the FreeRTOS component is disabled.

Running bare metal would require significant changes, which I would discuss internally before doing so.

@FloHomi
Copy link
Author

FloHomi commented Jun 13, 2024

That would be great!
Thanks for all your great work here you two :-)

@becseya
Copy link
Contributor

becseya commented Jun 19, 2024

@jeremy-baker We looked into files generated by FSP, and found that crucial global variables (g_display0_ctrl, g_display0_cfg, g_i2c_master1_ctrl, etc. defined in ra_gen/common_data.c and ra_gen/LVGL_thread.c) are not being generated if FreeRTOS component is removed from the configuration.xml.

Is there a way to support a bare metal application via FSP?

@jeremy-baker
Copy link
Collaborator

@becseya you would need to create a new FSP project, and choose No RTOS, and add the required components (you can export the configuration from the existing FreeROTS based project, and import it into the bare metal project configuration). The structure of the code would be different for a bare-metal project, so different include files would be required.

@becseya
Copy link
Contributor

becseya commented Jun 26, 2024

@jeremy-baker what do you mean by "component export"? I've tried the following methods with no success:

  • creating FSP user pack and starting a new project with that
    -> r_glcdc and other components missing from the configuration
  • Importing the other projects xml file the as additional board pin configuration in a newly created project
    -> r_glcdc and other components missing from the configuration
  • manually editing the .xml file of a newly created project
    -> compilation error
  • exporting the Pin configuration into a .csv file
    -> couldn't find where to import it

@jeremy-baker
Copy link
Collaborator

jeremy-baker commented Jun 26, 2024

I mean export the configuration of a stack, e.g. exporting the Graphic LCD stack from the configuration of a working project, and importing the configuration into a new project. In the project that already has the stack configured (e.g. Graphics LCD (r_glcdc), right click on the component and select "Export", to export the configuration to an XML file :-

image

Then to import that into a different project, right click in the stacks area of the configurator (the red box shows where I clicked), and select "Import" :-

image.

If you want to export a pin configuration from one project, go to the pins tab of hte configurator, click on "Manage Configuration...", then select the pin configuration to export, and click "Export" :-

image

Import a pin configuration from the same place, using the "Import" button.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants