zephyr-cp/nrf7002dk: give slot0 the unused 32 KB storage partition - #11335
Merged
Conversation
nordic_nrf7002dk reserves 32 KB for storage_partition. Nothing reads it: the port's only settings user is common-hal/_bleio/Adapter.c:351, and this board sets CONFIG_BT=n. CIRCUITPY is on the external mx25r64 on spi4, not internal flash. 0xC000 + 0xF4000 = 0x100000, exactly the end of the nRF5340 application core's 1024 KB internal flash. Not built. I don't have a nRF7002 to verify with. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This was referenced Sep 10, 2026
mikeysklar
added a commit
to mikeysklar/circuitpython
that referenced
this pull request
Sep 10, 2026
The ja translation overflows FLASH by 176 bytes on this board with the MicroPython v1.28.0 update. The board is at 99.99% on main, with 80 bytes free in that translation, so a routine upstream release does not fit. The other 12 translations build. The three new upstream modules are not the cause. On a board build py/modstring.c, py/modweakref.c and py/objtemplate.c all have zero .text, no symbols in the ELF and none of their error strings in the binary, because their feature gates sit above CircuitPython's ROM level. The growth is ordinary expansion across py/. msgpack is chosen because it is self contained and has no tie to any peripheral on this board, so nothing else loses a capability. This is temporary. adafruit#11335 gives slot0 the unused 32 KB storage partition, which is 186 times the shortfall, and this gate should be reverted when that lands. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
The port Kconfig defaults SETTINGS to y and prj.conf enables its NVS backend, which opens storage_partition. The previous commit deleted that partition, so the build failed in settings_nvs.c. Only _bleio uses settings, and this board has CONFIG_BT=n. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
mikeysklar
added a commit
to mikeysklar/circuitpython
that referenced
this pull request
Sep 10, 2026
adafruit#11335 gave the nRF7002 DK the flash it needed, so every board gets connect(network=). Removes CIRCUITPY_WIFI_CONNECT_NETWORK. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
mikeysklar
added a commit
to mikeysklar/circuitpython
that referenced
this pull request
Sep 11, 2026
This reverts commit 568bfb7. adafruit#11335 gave slot0 the unused 32 KB storage partition, so the temporary gate is no longer needed. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018Qu5DsShHZxKjosZ1NDqzv
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Delete the unused 32 KB
storage_partitiononnordic_nrf7002dkand give it to slot0. Settings is turned off to match.Why
This board is the port's flash ceiling. CI builds it for nearly every core PR, so additions get gated here.
radio.ping()connect()with a scan resultHow I tested it
Built on Linux against the pinned Zephyr. CI's
nordic_nrf7002dkbuild also passes.CONFIG_SETTINGS=nsettings_nvs.c,storage_partitionundeclared.configdiffSETTINGSand its 12 sub-options changeSETTINGS_NVS_SECTOR_COUNTfromprj.confHardware tested
None. I don't have an nRF7002 DK, so this needs someone with the board to boot it. Ordered board 9/10. Expected hardware test on 9/11.
Scope
Settings stays on port-wide. This is the first board without
storage_partition; the nRF52840 Zephyr boards move it.AI assistance
Claude traced the CI failure, wrote the
board.confchange and ran the build on my Linux machine.