-
-
Notifications
You must be signed in to change notification settings - Fork 345
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
add a base hardware config without 'factory' #2933
Conversation
…arge OTA partitions
PR Summary
|
Sounds like a good use case to add support for removing partitions in inherited maps. For example:
This would avoid the need to duplicate definitions from the standard map. |
Here's a patch you can try:
|
sounds like a good solution. |
quick test shows expected result. Thank you |
one thought:
although I could see this to be more change than the use case justifies, especially if there is no other similar "action" that might get it's own explicit statement. |
As there's not really any other useful interpretation of a zero-length partition I think it's probably the most appropriate choice. The main purpose of these layered configurations is so that small changes or additions can be accommodated without having to replicate the entire schema. It also allows new architectures to be supported. The programmer is always free to write a complete config from scratch of course. I'll raise a PR with the change. |
I will go ahead and close this, then [edit] actually, since you say |
Thank you for raising this issue! |
This PR adds the ability to 'drop' a previously defined partition from a hardware configuration by setting `"size": 0` in an inherited config. This is silently ignored if the partition is undefined. Issue #2933 highlighted the need to be able to eliminate the `factory` partition and use OTA partitions instead. A couple of sample applications contained redundant `subtype` overrides since these are already defined in `spiffs-two-roms`, so this has been tidied. Note: Typically the Esp32 `spiffs-two-roms` configuration is used as a base for OTA updates. This retains the `factory` partition so if not required this can be dropped to liberate the 1M allocation.
partition to allow two large OTA partitions
when working with OTA on the esp32c3, it became clear that
factory
would never be overwritten by OTA, making it difficult to fully upgrade the device over OTA when running an OTA version already.ESP-IDF suggests to drop the
factory
partition altogether to be able to configure two large OTA.this hardware definition does provide a basis for a
factory
less OTA setup including the OTADATA partition the bootloader needs. For size considerations, I have moved it to the end of the 4M flash area to avoid moving around the first partition.