[Core] Allow ChibiOS SIO driver for UART driver (#22839)

* onekey: stm32f3_disco: add usart pins and activate peripheral

Signed-off-by: Stefan Kerkmann <karlk90@pm.me>

* chibios: uart: change SD1 prefix to UART

Signed-off-by: Stefan Kerkmann <karlk90@pm.me>

* chibios: uart: add SIO driver and RP2040 compatibility

Signed-off-by: Stefan Kerkmann <karlk90@pm.me>
Co-authored-by: Sergey Vlasov <sigprof@gmail.com>

* Update platforms/chibios/drivers/uart.h

Co-authored-by: Joel Challis <git@zvecr.com>

---------

Signed-off-by: Stefan Kerkmann <karlk90@pm.me>
Co-authored-by: Sergey Vlasov <sigprof@gmail.com>
Co-authored-by: Joel Challis <git@zvecr.com>
This commit is contained in:
Stefan Kerkmann
2024-02-20 11:34:24 +01:00
committed by GitHub
co-authored by Sergey Vlasov Joel Challis
parent 865a8f42a6
commit 61fa6949fb
14 changed files with 428 additions and 149 deletions
@@ -1,4 +1,4 @@
// Copyright 2022 Stefan Kerkmann
// Copyright 2024 Stefan Kerkmann
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
@@ -55,8 +55,32 @@
# define SERIAL_USART_RX_PIN GP1
#endif
/**======================
** UART Driver
*========================**/
#if !defined(UART_DRIVER)
# define UART_DRIVER SIOD0
#endif
#if !defined(UART_TX_PIN)
# define UART_TX_PIN GP0
#endif
#if !defined(UART_RX_PIN)
# define UART_RX_PIN GP1
#endif
#if !defined(UART_CTS_PIN)
# define UART_CTS_PIN GP2
#endif
#if !defined(UART_RTS_PIN)
# define UART_RTS_PIN GP3
#endif
/**======================
** Double-tap
*========================**/
#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET
#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET
@@ -3,6 +3,10 @@
#pragma once
/**======================
** I2C Driver
*========================**/
#ifndef I2C_DRIVER
# define I2C_DRIVER I2CD0
#endif
@@ -13,6 +17,26 @@
# define I2C1_SCL_PIN D0
#endif
/**======================
** UART Driver
*========================**/
#ifndef UART_DRIVER
# define UART_DRIVER SIOD0
#endif
#ifndef UART_TX_PIN
# define UART_TX_PIN D3
#endif
#ifndef UART_RX_PIN
# define UART_RX_PIN D2
#endif
/**======================
** Double-tap
*========================**/
#ifndef RP2040_BOOTLOADER_DOUBLE_TAP_RESET
# define RP2040_BOOTLOADER_DOUBLE_TAP_RESET
#endif
@@ -3,6 +3,10 @@
#pragma once
/**======================
** I2C Driver
*========================**/
#ifndef I2C_DRIVER
# define I2C_DRIVER I2CD1
#endif
@@ -13,6 +17,26 @@
# define I2C1_SCL_PIN D0
#endif
/**======================
** UART Driver
*========================**/
#ifndef UART_DRIVER
# define UART_DRIVER SIOD0
#endif
#ifndef UART_TX_PIN
# define UART_TX_PIN D3
#endif
#ifndef UART_RX_PIN
# define UART_RX_PIN D2
#endif
/**======================
** Double-tap
*========================**/
#ifndef RP2040_BOOTLOADER_DOUBLE_TAP_RESET
# define RP2040_BOOTLOADER_DOUBLE_TAP_RESET
#endif