Merge develop into main (#419)

- Apply IRAM optimization to all platforms instead of only ESP32
- Implement performance optimizations
- Created `tt::hal::uart::open(uart_port_t)`
This commit is contained in:
Ken Van Hoeylandt
2025-11-23 00:11:08 +01:00
committed by GitHub
parent eba1f8955a
commit 6ab6ae5686
7 changed files with 62 additions and 38 deletions
@@ -1,5 +1,7 @@
#pragma once
#include "UartCompat.h"
namespace tt::hal::uart {
#ifdef ESP_PLATFORM
@@ -7,7 +9,7 @@ namespace tt::hal::uart {
struct Configuration {
/** The unique name for this UART */
std::string name;
/** The port idenitifier (e.g. UART_NUM_0) */
/** The port identifier (e.g. UART_NUM_0) */
uart_port_t port;
/** Receive GPIO pin */
gpio_num_t rxPin;
@@ -25,12 +27,13 @@ struct Configuration {
uart_config_t config;
};
#else
struct Configuration {
/** The unique name for this UART */
std::string name;
/** The port identifier (e.g. UART_NUM_0) */
uart_port_t port;
/** Initial baud rate in bits per second */
uint32_t baudRate;
};
@@ -119,6 +119,13 @@ public:
*/
std::unique_ptr<Uart> open(std::string name);
/**
* Opens a UART.
* @param[in] port the UART port as specified in the board configuration.
* @return the UART when it was successfully opened, or nullptr when it is in use.
*/
std::unique_ptr<Uart> open(uart_port_t port);
std::vector<std::string> getNames();
} // namespace tt::hal::uart