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

Support for the Nordic nRF5340 #498

Merged
merged 19 commits into from
Oct 11, 2024
Merged

Support for the Nordic nRF5340 #498

merged 19 commits into from
Oct 11, 2024

Conversation

dgarske
Copy link
Contributor

@dgarske dgarske commented Aug 27, 2024

Support for the Nordic nRF5340 (application and network cores):

  • Added nRF5340 driver support for Clock, Internal Flash (NVMC), GPIO, RTC, SPU, OTP, UART, SPI, QSPI and IPC.
  • Added support for updating the network core (Sign using "--id 2") (WOLFBOOT_PART_ID).
  • Added IPC signaling between app and net cores to indicate if shared memory is available for updates.
  • Added logging for delta version errors.
  • Added Cortex-M hard-fault handler support (enabled with DEBUG_HARDFAULT).
  • Cleanup the nRF52 port
  • Improved external QSPI and internal Flash tests and logging.
  • Improved internal printf support for formatter length.

Testing:

Run from wolfBoot root

# Clean build and program factory version 1
./tools/scripts/nrf5340/build_flash.sh

# Build full update version 2 and flash to external (also reprograms internal flash)
./tools/scripts/nrf5340/build_flash.sh --update

# Build dela update version 3 and flash to external (also reprograms internal flash)
./tools/scripts/nrf5340/build_flash.sh --delta

@dgarske dgarske self-assigned this Aug 27, 2024
@dgarske dgarske force-pushed the nrf5340 branch 2 times, most recently from 24855d9 to c5f3d29 Compare September 3, 2024 14:34
@dgarske dgarske marked this pull request as ready for review September 3, 2024 14:34
@dgarske dgarske force-pushed the nrf5340 branch 2 times, most recently from 6f8b67f to e54b419 Compare September 10, 2024 23:50
@dgarske dgarske force-pushed the nrf5340 branch 3 times, most recently from 4c60a7e to f732d3a Compare September 26, 2024 22:58
@dgarske dgarske force-pushed the nrf5340 branch 2 times, most recently from 3f2b682 to 7cc3af7 Compare September 30, 2024 21:41
* Added nRF5340 driver support for Clock, Internal Flash (NVMC), GPIO, SPU, OTP, UART, SPI, QSPI and IPC.
* Added support for updating the network core (Sign using "--id 2")
* Cleanup the nRF52 port
* Improved external QSPI and internal Flash tests and logging.
* Improved internal printf support for formatter length.
…using cached value (Many QSPI hardware peripherals do not support a single byte write). Fix delta build error with DISABLE_BACKUP. Added tests for updating both cores in build_flash.sh.
…ry. Allows using update_flash logic including encrypted and delta updates.
… Added support for nRF5340 core synchronization (`NRF_SYNC_CORES`). Added test for `WOLFBOOT_FLASH_MULTI_SECTOR_ERASE`.
… in shared ram. Fixed bug with swap offset on network core external memory map and "erase" init.
…asional corrupt characters to be printed. Improve core state description in logging. Enabled network core test app GPIO work on `LED2 P0.29`.
…zation levels breaking sleep. Also demonstrates synchronized boot and LED's matching from both cores.
…ault on network core reset. Cleanup make logic for using custom partition id (WOLFBOOT_PART_ID). On net update allow app core to continue booting if synchronization is enabled.
…e QSPI driver requires READ.CNT to be a multiple of 4 bytes (so read a bit more if odd remainder).
@dgarske dgarske assigned danielinux and unassigned dgarske Oct 9, 2024
@danielinux danielinux merged commit 63dd623 into wolfSSL:master Oct 11, 2024
99 checks passed
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

Successfully merging this pull request may close these issues.

2 participants