-
Notifications
You must be signed in to change notification settings - Fork 6.8k
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
Device Tree Memory Layout #25865
Comments
@galak what is your point view? How should we start adding new sram areas ? |
There are my ideas listed below:
Thus each board can define it's memory as splitter pieces of SRAM's for Zephyr (as sram0) and additional special purposes. This is especially important for STM32H7, where multiple SRAM regions from different domains (D1, D2, D3) are presented and depending on usage can have impact on performance/implementation. |
There are examples already like the nxp_lpc55S6x_common.dtsi in which we have multiple SRAM regions defined in the DTS. That is pretty straight forward to support. We can select which memory region to use via zephyr,sram & optionally (zephyr,code-partition). the more complicated scenarios come into play if we want to utilize multiple regions and how that would work. Less from a DTS point of view, but more on how we interpret the data. |
Does Zephyr already has documentation for |
there's a little bit of docs at https://docs.zephyrproject.org/latest/reference/devicetree/index.html |
@galak txs for feedback, I though this was blocked for some reason. |
@galak What do you mean under data interpretation? |
I just mean we already produce defines for the various memory regions. If there are more than one SRAM region, how would you like to utilize them? |
Using scenario:
Do I understand it right that my using scenario from above can be covered by produced defines? @galak What are your ideas for more than one SRAM regions utilization? |
@Nukersson Could you solve this issue? I try to use SRAM3 of H743 to solve D cach issues. Thank you for your question. Take a look here. This is solution currently not merged into main branch, cause there are multiple additional improvement suggestions how to handle it in Zephyr. But the code seems to work. |
Thanks for the hint I will give it a try |
Please feel free to point on needed improvements and add your own commits. |
Currently there is only one SRAM of type "mimo-sram" defined in each *.dts file of each board.
Is it possible to create multiple SRAM segments in SoC and then choose one of them or multiple at same time from *.dts file accordingly?
One of the application fields would be SRAM implementation in STM3H7 series with it's axi-sram, sram0, sram1, sram2... - each of them placed at own (not necessarily comsequtiv) memory address.
The text was updated successfully, but these errors were encountered: