Skip to content

Commit

Permalink
soc: rp2040: Added UF2 output file support
Browse files Browse the repository at this point in the history
Added support for the UF2 file format for the RP2040 SoC

Signed-off-by: Yonatan Schachter <yonatan.schachter@gmail.com>
  • Loading branch information
yonsch authored and carlescufi committed Feb 2, 2022
1 parent 3f33207 commit efa170f
Show file tree
Hide file tree
Showing 4 changed files with 17 additions and 0 deletions.
1 change: 1 addition & 0 deletions Kconfig.zephyr
Original file line number Diff line number Diff line change
Expand Up @@ -462,6 +462,7 @@ config BUILD_OUTPUT_UF2_FAMILY_ID
default "0xada52840" if SOC_NRF52840_QIAA
default "0x4fb2d5bd" if SOC_SERIES_IMX_RT
default "0x2abc77ec" if SOC_SERIES_LPC55XXX
default "0xe48bff56" if SOC_SERIES_RP2XXX
default "0x68ed2b88" if SOC_SERIES_SAMD21
default "0x55114460" if SOC_SERIES_SAMD51
default "0x647824b6" if SOC_SERIES_STM32F0X
Expand Down
9 changes: 9 additions & 0 deletions boards/arm/rpi_pico/doc/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -83,6 +83,15 @@ command (assuming JLink is used):
$ openocd -f interface/jlink.cfg -c 'transport select swd' -f target/rp2040.cfg -c "adapter speed 2000" -c 'targets rp2040.core0' -c 'program path/to/zephyr.elf verify reset exit'
Using UF2
---------

If you don't have an SWD adapter, you can flash the Raspberry Pi Pico with
a UF2 file. By default, building an app for this board will generate a
`build/zephyr/zephyr.uf2` file. If the Pico is powered on with the `BOOTSEL`
button pressed, it will appear on the host as a mass storage device. The
UF2 file should be drag-and-dropped to the device, which will flash the Pico.

Debugging
=========

Expand Down
1 change: 1 addition & 0 deletions boards/arm/rpi_pico/rpi_pico_defconfig
Original file line number Diff line number Diff line change
Expand Up @@ -6,3 +6,4 @@ CONFIG_CONSOLE=y
CONFIG_UART_CONSOLE=y
CONFIG_GPIO=y
CONFIG_USE_DT_CODE_PARTITION=y
CONFIG_BUILD_OUTPUT_UF2=y
6 changes: 6 additions & 0 deletions soc/arm/rpi_pico/rp2/Kconfig.defconfig.rp2040
Original file line number Diff line number Diff line change
Expand Up @@ -6,3 +6,9 @@
config SOC
default "rp2040"
depends on SOC_RP2040

config BUILD_OUTPUT_UF2_USE_FLASH_BASE
default y if RP2_REQUIRES_SECOND_STAGE_BOOT

config BUILD_OUTPUT_UF2_USE_FLASH_OFFSET
default y if !RP2_REQUIRES_SECOND_STAGE_BOOT

0 comments on commit efa170f

Please sign in to comment.