blob: 45b01093d55336698d2a4774efb8671adc3a5e05 [file]
/*
* Copyright (c) 2026 Rik te Winkel for https://justanotherelectronicsblog.com/
*
* SPDX-License-Identifier: BSD-3-Clause
*/
// -----------------------------------------------------
// NOTE: THIS HEADER IS ALSO INCLUDED BY ASSEMBLER SO
// SHOULD ONLY CONSIST OF PREPROCESSOR DIRECTIVES
// -----------------------------------------------------
#ifndef _BOARDS_RP2350_BELLSNWHISTLES_H
#define _BOARDS_RP2350_BELLSNWHISTLES_H
pico_board_cmake_set(PICO_PLATFORM, rp2350)
// For board detection
#define JAEBLOG_RP2350_BELLSNWHISTLES
// --- RP2350 VARIANT ---
#define PICO_RP2350A 0
// --- BOARD SPECIFIC ---
// HSTX
#define RP2350_BELLSNWHISTLES_DVI_CKN_PIN 15
#define RP2350_BELLSNWHISTLES_DVI_CKP_PIN 14
#define RP2350_BELLSNWHISTLES_DVI_D0N_PIN 13
#define RP2350_BELLSNWHISTLES_DVI_D0P_PIN 12
#define RP2350_BELLSNWHISTLES_DVI_D1N_PIN 19
#define RP2350_BELLSNWHISTLES_DVI_D1P_PIN 18
#define RP2350_BELLSNWHISTLES_DVI_D2N_PIN 17
#define RP2350_BELLSNWHISTLES_DVI_D2P_PIN 16
// SD
#define RP2350_BELLSNWHISTLES_SD_SCK_PIN 22
#define RP2350_BELLSNWHISTLES_SD_MOSI_PIN 20
#define RP2350_BELLSNWHISTLES_SD_MISO_PIN 23
#define RP2350_BELLSNWHISTLES_SD_CS_PIN 21
// --- UART ---
#ifndef PICO_DEFAULT_UART
#define PICO_DEFAULT_UART 0
#endif
#ifndef PICO_DEFAULT_UART_TX_PIN
#define PICO_DEFAULT_UART_TX_PIN 0
#endif
#ifndef PICO_DEFAULT_UART_RX_PIN
#define PICO_DEFAULT_UART_RX_PIN 1
#endif
// --- LED ---
#ifndef PICO_DEFAULT_LED_PIN
#define PICO_DEFAULT_LED_PIN 46
#endif
// no PICO_DEFAULT_WS2812_PIN
// --- I2C ---
#ifndef PICO_DEFAULT_I2C
#define PICO_DEFAULT_I2C 0
#endif
#ifndef PICO_DEFAULT_I2C_SDA_PIN
#define PICO_DEFAULT_I2C_SDA_PIN 8
#endif
#ifndef PICO_DEFAULT_I2C_SCL_PIN
#define PICO_DEFAULT_I2C_SCL_PIN 9
#endif
// --- SPI ---
#ifndef PICO_DEFAULT_SPI
#define PICO_DEFAULT_SPI 0
#endif
#ifndef PICO_DEFAULT_SPI_SCK_PIN
#define PICO_DEFAULT_SPI_SCK_PIN 6
#endif
#ifndef PICO_DEFAULT_SPI_TX_PIN
#define PICO_DEFAULT_SPI_TX_PIN 7
#endif
#ifndef PICO_DEFAULT_SPI_RX_PIN
#define PICO_DEFAULT_SPI_RX_PIN 4
#endif
#ifndef PICO_DEFAULT_SPI_CSN_PIN
#define PICO_DEFAULT_SPI_CSN_PIN 5
#endif
// --- FLASH ---
#define PICO_BOOT_STAGE2_CHOOSE_W25Q080 1
#ifndef PICO_FLASH_SPI_CLKDIV
#define PICO_FLASH_SPI_CLKDIV 2
#endif
pico_board_cmake_set_default(PICO_FLASH_SIZE_BYTES, (4 * 1024 * 1024))
#ifndef PICO_FLASH_SIZE_BYTES
#define PICO_FLASH_SIZE_BYTES (4 * 1024 * 1024)
#endif
// --- PSRAM ---
#ifndef PICO_PSRAM_CS_PIN
#define PICO_PSRAM_CS_PIN 47
#endif
// PSRAM not fitted by default, so auto-detect
#ifndef PICO_AUTO_DETECT_PSRAM_SIZE
#define PICO_AUTO_DETECT_PSRAM_SIZE 1
#endif
pico_board_cmake_set_default(PICO_RP2350_A2_SUPPORTED, 0)
#ifndef PICO_RP2350_A2_SUPPORTED
#define PICO_RP2350_A2_SUPPORTED 0
#endif
#endif