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

Supporting Pimoroni Pico Plus2 #77859

Draft
wants to merge 26 commits into
base: main
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
6b69efb
dts: arm: Move rpi_pico under raspberrypi
ajf58 Aug 27, 2024
4952aab
dts: arm: rp2040: Improve naming of included files
ajf58 Aug 27, 2024
941299c
drivers: clock_control: rpi_pico: Correct bitfields during init
ajf58 Aug 29, 2024
6524a4a
drivers: clock_control: rpi_pico: Make pinctrl-0 optional
ajf58 Sep 27, 2024
4c531ce
soc: rp2350: Add initial support for the Raspberry Pi RP2350
ajf58 Aug 21, 2024
b263b95
drivers: clock_control: rpi_pico: Add support for the RP2350.
ajf58 Aug 21, 2024
7172207
drivers: hwinfo: rp2350: Add initial support for RP2350
ajf58 Aug 23, 2024
f45c165
drivers: clock_control: rpi_pico: Start tick generators for timers
ajf58 Sep 1, 2024
72e1110
drivers: watchdog: rpi_pico: Add support for RP2350
soburi Sep 2, 2024
9cf8069
drivers: counter: rpi_pico_timer: Add support for RP2350
ajf58 Sep 25, 2024
a961443
pinctrl: raspberrypi: rp2350: Add support for RP2350X
ajf58 Sep 9, 2024
2416b11
boards: Add initial support for the Raspberry Pi Pico 2
ajf58 Aug 21, 2024
d997327
UF2: Enable support for Raspberry Pi RP2350
oscardagrach Sep 20, 2024
9ccfddf
samples: rpi_pico2: Add ADC-related samples for rpi_pico2
ajf58 Aug 31, 2024
04bda46
tests: drivers: adc_api: Add support for the Raspberry Pi Pico 2
ajf58 Sep 3, 2024
abe81ad
tests: drivers: counter_basic_api: Add support for the Raspberry Pi P…
ajf58 Sep 25, 2024
4f48aea
doc: rpi_pico2: Document Raspberry Pi Pico 2 and related changes
ajf58 Aug 31, 2024
8188b54
boards: raspberrypi: rpi_pico2: add OpenOCD runner configuration
ajf58 Sep 27, 2024
0785ebc
boards: raspberrypi: rpi_pico2: Tidy up OpenOCD configuration
ajf58 Sep 27, 2024
4b62349
boards: Add initial support for the Raspberry Pi Pico 2
ajf58 Aug 21, 2024
0505b5b
dts: bindings: gpio: Add STEMMA-QT connector
soburi Nov 9, 2024
3b5e814
rp2350b
soburi Sep 2, 2024
ec41925
pimoroni pico_plus2
soburi Aug 22, 2024
ba05841
gpio64
soburi Aug 31, 2024
b4bb79c
gpio_rpi_pico
soburi Sep 14, 2024
11c503c
64bit
soburi Sep 14, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 1 addition & 1 deletion CODEOWNERS
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
Expand Up @@ -422,7 +422,7 @@
/dts/arm/nxp/ @mmahadevan108 @dleach02
/dts/arm/nxp/nxp_s32* @manuargue
/dts/arm/microchip/ @franciscomunoz @albertofloyd @sjvasanth1
/dts/arm/rpi_pico/ @yonsch
/dts/arm/raspberry/rpi_pico/ @yonsch
/dts/arm/silabs/efm32_pg_1b.dtsi @rdmeneze
/dts/arm/silabs/efm32gg11b* @oanerer
/dts/arm/silabs/efr32bg13p* @mnkp
Expand Down
3 changes: 2 additions & 1 deletion Kconfig.zephyr
Original file line number Diff line number Diff line change
Expand Up @@ -765,7 +765,8 @@ config BUILD_OUTPUT_UF2_FAMILY_ID
default "0xada52840" if SOC_NRF52840_QIAA
default "0x4fb2d5bd" if SOC_SERIES_IMXRT10XX || SOC_SERIES_IMXRT11XX
default "0x2abc77ec" if SOC_SERIES_LPC55XXX
default "0xe48bff56" if SOC_SERIES_RP2XXX
default "0xe48bff56" if SOC_SERIES_RP2040
default "0xe48bff57" if SOC_SERIES_RP2350
default "0x68ed2b88" if SOC_SERIES_SAMD21
default "0x55114460" if SOC_SERIES_SAMD51
default "0x647824b6" if SOC_SERIES_STM32F0X
Expand Down
2 changes: 1 addition & 1 deletion MAINTAINERS.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3501,7 +3501,7 @@ Raspberry Pi Pico Platforms:
- boards/raspberrypi/
- boards/adafruit/kb2040/
- boards/sparkfun/pro_micro_rp2040/
- dts/arm/rpi_pico/
- dts/arm/raspberrypi/rpi_pico/
- dts/bindings/*/raspberrypi,pico*
- drivers/*/*rpi_pico
- drivers/*/*rpi_pico*/
Expand Down
3 changes: 0 additions & 3 deletions boards/adafruit/kb2040/adafruit_kb2040-pinctrl.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -48,9 +48,6 @@
};
};

clocks_default: clocks_default {
};

ws2812_pio0_default: ws2812_pio0_default {
ws2812 {
pinmux = <PIO0_P17>;
Expand Down
7 changes: 1 addition & 6 deletions boards/adafruit/kb2040/adafruit_kb2040.dts
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@

/dts-v1/;

#include <rpi_pico/rp2040.dtsi>
#include <raspberrypi/rpi_pico/rp2040.dtsi>
#include "adafruit_kb2040-pinctrl.dtsi"
#include "sparkfun_pro_micro_connector.dtsi"
#include <freq.h>
Expand Down Expand Up @@ -56,11 +56,6 @@
};
};

&clocks {
pinctrl-0 = <&clocks_default>;
pinctrl-names = "default";
};

&uart0 {
current-speed = <115200>;
status = "okay";
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -59,9 +59,6 @@
};
};

clocks_default: clocks_default {
};

ws2812_pio1_default: ws2812_pio1_default {
ws2812 {
pinmux = <PIO1_P12>;
Expand Down
7 changes: 1 addition & 6 deletions boards/adafruit/qt_py_rp2040/adafruit_qt_py_rp2040.dts
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@

/dts-v1/;

#include <rpi_pico/rp2040.dtsi>
#include <raspberrypi/rpi_pico/rp2040.dtsi>
#include "adafruit_qt_py_rp2040-pinctrl.dtsi"
#include "seeed_xiao_connector.dtsi"
#include <freq.h>
Expand Down Expand Up @@ -56,11 +56,6 @@
};
};

&clocks {
pinctrl-0 = <&clocks_default>;
pinctrl-names = "default";
};

&uart1 {
current-speed = <115200>;
status = "okay";
Expand Down
4 changes: 2 additions & 2 deletions boards/nordic/nrf9160dk/board.c
Original file line number Diff line number Diff line change
Expand Up @@ -95,8 +95,8 @@

#if USE_RESET_GPIO
static void chip_reset(const struct device *gpio,
struct gpio_callback *cb, uint32_t pins)
struct gpio_callback *cb, gpio_port_pins_t pins)
{

Check notice on line 99 in boards/nordic/nrf9160dk/board.c

View workflow job for this annotation

GitHub Actions / Run compliance checks on patch series (PR)

You may want to run clang-format on this change

boards/nordic/nrf9160dk/board.c:99 -static void chip_reset(const struct device *gpio, - struct gpio_callback *cb, gpio_port_pins_t pins) +static void chip_reset(const struct device *gpio, struct gpio_callback *cb, gpio_port_pins_t pins)
const uint32_t stamp = k_cycle_get_32();

printk("GPIO reset line asserted, device reset.\n");
Expand Down Expand Up @@ -136,7 +136,7 @@
return rc;
}

gpio_init_callback(&gpio_ctx, chip_reset, BIT(pin));
gpio_init_callback(&gpio_ctx, chip_reset, GPIO_BIT(pin));

rc = gpio_add_callback(gpio, &gpio_ctx);
if (rc) {
Expand Down
9 changes: 9 additions & 0 deletions boards/pimoroni/pico_plus2/Kconfig.defconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# Copyright (c) 2024 TOKITA Hiroshi
# SPDX-License-Identifier: Apache-2.0

if BOARD_PICO_PLUS2

config USB_SELF_POWERED
default n

endif # BOARD_PICO_PLUS2
5 changes: 5 additions & 0 deletions boards/pimoroni/pico_plus2/Kconfig.pico_plus2
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# Copyright (c) 2024 TOKITA Hiroshi
# SPDX-License-Identifier: Apache-2.0

config BOARD_PICO_PLUS2
select SOC_RP2350B
32 changes: 32 additions & 0 deletions boards/pimoroni/pico_plus2/board.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
# SPDX-License-Identifier: Apache-2.0

# This configuration allows selecting what debug adapter debugging rpi_pico
# by a command-line argument.
# It is mainly intended to support both the 'picoprobe' and 'raspberrypi-swd'
# adapter described in "Getting started with Raspberry Pi Pico".
# And any other SWD debug adapter might also be usable with this configuration.

# Set RPI_PICO_DEBUG_ADAPTER to select debug adapter by command-line arguments.
# e.g.) west build -b rpi_pico -- -DRPI_PICO_DEBUG_ADAPTER=raspberrypi-swd
# The value is treated as a part of an interface file name that
# the debugger's configuration file.
# The value must be the 'stem' part of the name of one of the files
# in the openocd interface configuration file.
# The setting is store to CMakeCache.txt.
if ("${RPI_PICO_DEBUG_ADAPTER}" STREQUAL "")
set(RPI_PICO_DEBUG_ADAPTER "cmsis-dap")
endif()

board_runner_args(openocd --cmd-pre-init "source [find interface/${RPI_PICO_DEBUG_ADAPTER}.cfg]")
board_runner_args(openocd --cmd-pre-init "transport select swd")
board_runner_args(openocd --cmd-pre-init "source [find target/rp2350.cfg]")

# The adapter speed is expected to be set by interface configuration.
# But if not so, set 2000 to adapter speed.
board_runner_args(openocd --cmd-pre-init "set_adapter_speed_if_not_set 2000")

board_runner_args(uf2 "--board-id=RP2350")

include(${ZEPHYR_BASE}/boards/common/openocd.board.cmake)
include(${ZEPHYR_BASE}/boards/common/uf2.board.cmake)
include(${ZEPHYR_BASE}/boards/common/pyocd.board.cmake)
5 changes: 5 additions & 0 deletions boards/pimoroni/pico_plus2/board.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
board:
name: pico_plus2
vendor: pimoroni

Check failure on line 3 in boards/pimoroni/pico_plus2/board.yml

View workflow job for this annotation

GitHub Actions / Run compliance checks on patch series (PR)

BoardYml

/home/runner/work/zephyr/zephyr/boards/pimoroni/pico_plus2/board.yml:3 invalid vendor: pimoroni
socs:
- name: rp2350b
Loading
Loading