Skip to content
This repository was archived by the owner on Dec 26, 2023. It is now read-only.

Commit efa170f

Browse files
yonschcarlescufi
authored andcommitted
soc: rp2040: Added UF2 output file support
Added support for the UF2 file format for the RP2040 SoC Signed-off-by: Yonatan Schachter <[email protected]>
1 parent 3f33207 commit efa170f

File tree

4 files changed

+17
-0
lines changed

4 files changed

+17
-0
lines changed

Kconfig.zephyr

+1
Original file line numberDiff line numberDiff line change
@@ -462,6 +462,7 @@ config BUILD_OUTPUT_UF2_FAMILY_ID
462462
default "0xada52840" if SOC_NRF52840_QIAA
463463
default "0x4fb2d5bd" if SOC_SERIES_IMX_RT
464464
default "0x2abc77ec" if SOC_SERIES_LPC55XXX
465+
default "0xe48bff56" if SOC_SERIES_RP2XXX
465466
default "0x68ed2b88" if SOC_SERIES_SAMD21
466467
default "0x55114460" if SOC_SERIES_SAMD51
467468
default "0x647824b6" if SOC_SERIES_STM32F0X

boards/arm/rpi_pico/doc/index.rst

+9
Original file line numberDiff line numberDiff line change
@@ -83,6 +83,15 @@ command (assuming JLink is used):
8383
8484
$ 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'
8585
86+
Using UF2
87+
---------
88+
89+
If you don't have an SWD adapter, you can flash the Raspberry Pi Pico with
90+
a UF2 file. By default, building an app for this board will generate a
91+
`build/zephyr/zephyr.uf2` file. If the Pico is powered on with the `BOOTSEL`
92+
button pressed, it will appear on the host as a mass storage device. The
93+
UF2 file should be drag-and-dropped to the device, which will flash the Pico.
94+
8695
Debugging
8796
=========
8897

boards/arm/rpi_pico/rpi_pico_defconfig

+1
Original file line numberDiff line numberDiff line change
@@ -6,3 +6,4 @@ CONFIG_CONSOLE=y
66
CONFIG_UART_CONSOLE=y
77
CONFIG_GPIO=y
88
CONFIG_USE_DT_CODE_PARTITION=y
9+
CONFIG_BUILD_OUTPUT_UF2=y

soc/arm/rpi_pico/rp2/Kconfig.defconfig.rp2040

+6
Original file line numberDiff line numberDiff line change
@@ -6,3 +6,9 @@
66
config SOC
77
default "rp2040"
88
depends on SOC_RP2040
9+
10+
config BUILD_OUTPUT_UF2_USE_FLASH_BASE
11+
default y if RP2_REQUIRES_SECOND_STAGE_BOOT
12+
13+
config BUILD_OUTPUT_UF2_USE_FLASH_OFFSET
14+
default y if !RP2_REQUIRES_SECOND_STAGE_BOOT

0 commit comments

Comments
 (0)