Skip to content

Commit

Permalink
boards: waveshare_rp2040: add RP2040 Geek
Browse files Browse the repository at this point in the history
evaluated interfaces:

  * UART1 (UART) TX/RX : Zephyr Shell Console
  * USB OTG FS DM/DP (device) : Zephyr Shell Console
  * TIMER/RTC/WATCHDOG : Zephyr Shell Command 'timer'
  * PWM3 (PWM) : Zephyr Shell Command 'pwm'
  * I2C0 (I2C) SDA/SCL on IO header : Zephyr Shell Command 'i2c scan'
  * SPI0 (SPI) MOSI/NSS/SCK/MISO : on SD-Card
  * SPI1 (SPI) MOSI/NSS/SCK/MISO : on LCD-1.14
  * DBG header GP2 : Zephyr Shell Command 'gpio'
  * DBG header GP2 as Button : Zephyr Sample Application
  * DBG header GP3 : Zephyr Shell Command 'gpio'
  * DBG header GP3 as LED : Zephyr Sample Application (GPIO/PWM)
  * ST7789V LCD over SPI1 : Zephyr Display/LVGL Sample Application
  * SDMMC over SPI0 as SDHC : Zephyr FAT-FS Sample Application

configured but not yet tested interfaces:

  * I2C1 (I2C) SDA/SCL on DBG header
  * ADC (CH[2-3]) on IO header

Signed-off-by: Stephan Linz <[email protected]>
  • Loading branch information
rexut committed Nov 22, 2023
1 parent 30f01b8 commit 4cddafe
Show file tree
Hide file tree
Showing 23 changed files with 1,253 additions and 2 deletions.
4 changes: 4 additions & 0 deletions boards/arm/waveshare_rp2040/Kconfig.board
Original file line number Diff line number Diff line change
Expand Up @@ -28,3 +28,7 @@ config BOARD_WAVESHARE_RP2040_LCD_0_96
config BOARD_WAVESHARE_RP2040_PLUS
bool "Waveshare RP2040-Plus Board"
depends on SOC_RP2040

config BOARD_WAVESHARE_RP2040_GEEK
bool "Waveshare RP2040-Geek Board"
depends on SOC_RP2040
16 changes: 16 additions & 0 deletions boards/arm/waveshare_rp2040/Kconfig.defconfig
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ config BOARD
default "waveshare_rp2040_eth" if BOARD_WAVESHARE_RP2040_ETH
default "waveshare_rp2040_lcd_0_96" if BOARD_WAVESHARE_RP2040_LCD_0_96
default "waveshare_rp2040_plus" if BOARD_WAVESHARE_RP2040_PLUS
default "waveshare_rp2040_geek" if BOARD_WAVESHARE_RP2040_GEEK
depends on BOARD_WAVESHARE_RP2040

config BOARD_WAVESHARE_RP2040_MINI
Expand All @@ -29,12 +30,14 @@ config BOARD_WAVESHARE_RP2040_PICO
config BOARD_WAVESHARE_RP2040_LCD
bool
default y if BOARD_WAVESHARE_RP2040_LCD_0_96
default y if BOARD_WAVESHARE_RP2040_GEEK
default n

config BOARD_WAVESHARE_RP2040
bool
default y if BOARD_WAVESHARE_RP2040_MINI
default y if BOARD_WAVESHARE_RP2040_PICO
default y if BOARD_WAVESHARE_RP2040_GEEK
default n

config RP2_FLASH_W25Q080
Expand All @@ -49,6 +52,10 @@ config GPIO
default y
depends on DT_HAS_RASPBERRYPI_PICO_GPIO_ENABLED

config REGULATOR
default y
depends on DT_HAS_REGULATOR_FIXED_ENABLED

choice WS2812_STRIP_DRIVER
default WS2812_STRIP_RPI_PICO_PIO
depends on DT_HAS_WORLDSEMI_WS2812_RPI_PICO_PIO_ENABLED
Expand All @@ -58,17 +65,25 @@ config I2C_DW_CLOCK_SPEED
default 125
depends on I2C_DW && BOARD_WAVESHARE_RP2040

choice ST7789V_PIXEL_FORMAT
default ST7789V_RGB565 if BOARD_WAVESHARE_RP2040_GEEK
depends on BOARD_WAVESHARE_RP2040_LCD && DISPLAY
endchoice

config LV_Z_BITS_PER_PIXEL
default 16 if BOARD_WAVESHARE_RP2040_LCD_0_96
default 16 if BOARD_WAVESHARE_RP2040_GEEK
depends on BOARD_WAVESHARE_RP2040_LCD && DISPLAY && LVGL

choice LV_COLOR_DEPTH
default LV_COLOR_DEPTH_16 if BOARD_WAVESHARE_RP2040_LCD_0_96
default LV_COLOR_DEPTH_16 if BOARD_WAVESHARE_RP2040_GEEK
depends on BOARD_WAVESHARE_RP2040_LCD && DISPLAY && LVGL
endchoice

config LV_COLOR_16_SWAP
default y if BOARD_WAVESHARE_RP2040_LCD_0_96
default y if BOARD_WAVESHARE_RP2040_GEEK
depends on BOARD_WAVESHARE_RP2040_LCD && DISPLAY && LVGL

config USB_SELF_POWERED
Expand All @@ -83,6 +98,7 @@ config USB_MAX_POWER
default 240 if BOARD_WAVESHARE_RP2040_ETH # 480mA
default 250 if BOARD_WAVESHARE_RP2040_LCD_0_96 # 500mA
default 250 if BOARD_WAVESHARE_RP2040_PLUS # 500mA
default 100 if BOARD_WAVESHARE_RP2040_GEEK # 200mA
depends on USB_DEVICE_STACK && BOARD_WAVESHARE_RP2040

# Workaround for not being able to have commas in macro arguments
Expand Down
Loading

0 comments on commit 4cddafe

Please sign in to comment.