-
Notifications
You must be signed in to change notification settings - Fork 7k
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
ESP32-S3 APP_CPU flash support #82781
ESP32-S3 APP_CPU flash support #82781
Conversation
The following west manifest projects have changed revision in this Pull Request:
✅ All manifest checks OK Note: This message is automatically posted and updated by the Manifest GitHub Action. |
60e8a4f
to
b488392
Compare
b488392
to
5b65a2f
Compare
da8bd65
to
b41f514
Compare
b41f514
to
df1a4ec
Compare
df1a4ec
to
f787892
Compare
Create the cache memory node instead of hardcoding addresses. Signed-off-by: Marek Matej <[email protected]>
f787892
to
ba904fc
Compare
ba904fc
to
b1a10e5
Compare
Update to support APP_CPU flash access. - fix the map_rom_segment so it can be used in other context - add IROM and DROM region size in Kconfig - update the memory.h by using dts records - fix the appcpu ld file to support flash Signed-off-by: Marek Matej <[email protected]>
b1a10e5
to
7d75f6f
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should this be defined in DTS?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not really, current dts is not very good for making memory layouts, so I prefer this way of splitting the memory
#else | ||
cache_hal_disable(CACHE_TYPE_ALL); | ||
#endif /* CONFIG_SOC_SERIES_ESP32 */ | ||
|
||
/* Clear the MMU entries that are already set up, | ||
* so the new app only has the mappings it creates. | ||
*/ | ||
mmu_hal_unmap_all(); | ||
if (core == 0) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We are only building this file for core==0, right?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
that is true, however it is called 2nd time when creating maps for the APP_CPU.
@@ -68,28 +72,32 @@ | |||
|
|||
#define HDR_ATTR __attribute__((section(".entry_addr"))) __attribute__((used)) | |||
|
|||
#if !defined(CONFIG_SOC_ESP32_APPCPU) && !defined(CONFIG_SOC_ESP32S3_APPCPU) | |||
#define PART_OFFSET FIXED_PARTITION_OFFSET(slot0_partition) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Does it make sense to use APPCPU_SLOT_OFFSET
instead of PART_OFFSET
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Anyway, not blocking at all.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
no it doesn't, the code is used in both cases PRO_CPU and APP_CPU
This PR enables flash support for
APP_CPU
target on ESP32-S3 chip.