From 66f7731bd86327fde3436f28ff635b0d9944e8ae Mon Sep 17 00:00:00 2001 From: Xiaoyu Liu Date: Tue, 25 Jun 2024 11:57:07 +0800 Subject: [PATCH] change(lp_uart): Enable SOC_ULP_LP_UART_SUPPORTED on ESP32C5 --- components/soc/esp32c5/include/soc/Kconfig.soc_caps.in | 4 ++++ components/soc/esp32c5/include/soc/soc_caps.h | 2 +- components/ulp/lp_core/include/lp_core_uart.h | 4 ++-- examples/system/.build-test-rules.yml | 6 +++--- examples/system/ulp/lp_core/lp_uart/lp_uart_echo/README.md | 3 ++- examples/system/ulp/lp_core/lp_uart/lp_uart_print/README.md | 3 ++- 6 files changed, 14 insertions(+), 8 deletions(-) diff --git a/components/soc/esp32c5/include/soc/Kconfig.soc_caps.in b/components/soc/esp32c5/include/soc/Kconfig.soc_caps.in index ad5ad1da43..91bebae6a5 100644 --- a/components/soc/esp32c5/include/soc/Kconfig.soc_caps.in +++ b/components/soc/esp32c5/include/soc/Kconfig.soc_caps.in @@ -143,6 +143,10 @@ config SOC_LP_PERIPHERALS_SUPPORTED bool default y +config SOC_ULP_LP_UART_SUPPORTED + bool + default y + config SOC_CLK_TREE_SUPPORTED bool default y diff --git a/components/soc/esp32c5/include/soc/soc_caps.h b/components/soc/esp32c5/include/soc/soc_caps.h index 25d312c41c..97a258718f 100644 --- a/components/soc/esp32c5/include/soc/soc_caps.h +++ b/components/soc/esp32c5/include/soc/soc_caps.h @@ -64,7 +64,7 @@ // #define SOC_LP_AON_SUPPORTED 1 // TODO: [ESP32C5] IDF-8638 #define SOC_LP_PERIPHERALS_SUPPORTED 1 // #define SOC_LP_I2C_SUPPORTED 1 // TODO: [ESP32C5] IDF-8634 -// #define SOC_ULP_LP_UART_SUPPORTED 1 // TODO: [ESP32C5] IDF-8633 +#define SOC_ULP_LP_UART_SUPPORTED 1 #define SOC_CLK_TREE_SUPPORTED 1 // #define SOC_ASSIST_DEBUG_SUPPORTED 1 // TODO: [ESP32C5] IDF-8663 #define SOC_WDT_SUPPORTED 1 diff --git a/components/ulp/lp_core/include/lp_core_uart.h b/components/ulp/lp_core/include/lp_core_uart.h index 3b367a548d..bd91f5fbcf 100644 --- a/components/ulp/lp_core/include/lp_core_uart.h +++ b/components/ulp/lp_core/include/lp_core_uart.h @@ -23,7 +23,7 @@ extern "C" { #define LP_UART_DEFAULT_RX_GPIO_NUM GPIO_NUM_15 #define LP_UART_DEFAULT_RTS_GPIO_NUM (-1) #define LP_UART_DEFAULT_CTS_GPIO_NUM (-1) -#elif CONFIG_IDF_TARGET_ESP32C6 +#elif (CONFIG_IDF_TARGET_ESP32C6 || CONFIG_IDF_TARGET_ESP32C5) #define LP_UART_DEFAULT_TX_GPIO_NUM GPIO_NUM_5 #define LP_UART_DEFAULT_RX_GPIO_NUM GPIO_NUM_4 #define LP_UART_DEFAULT_RTS_GPIO_NUM GPIO_NUM_2 @@ -83,7 +83,7 @@ typedef struct { #define LP_UART_DEFAULT_CLOCK_CONFIG() \ .lp_uart_source_clk = LP_UART_SCLK_DEFAULT, \ -/* Default LP UART GPIO settings and protocol parametes */ +/* Default LP UART GPIO settings and protocol parameters */ #define LP_CORE_UART_DEFAULT_CONFIG() \ { \ LP_UART_DEFAULT_GPIO_CONFIG() \ diff --git a/examples/system/.build-test-rules.yml b/examples/system/.build-test-rules.yml index 1211b2d70f..f7c2230280 100644 --- a/examples/system/.build-test-rules.yml +++ b/examples/system/.build-test-rules.yml @@ -281,7 +281,7 @@ examples/system/ulp/lp_core/gpio: examples/system/ulp/lp_core/gpio_intr_pulse_counter: enable: - - if: (SOC_LP_CORE_SUPPORTED == 1) and (SOC_ULP_LP_UART_SUPPORTED == 1) + - if: (SOC_LP_CORE_SUPPORTED == 1) and (SOC_ULP_LP_UART_SUPPORTED == 1 and SOC_DEEP_SLEEP_SUPPORTED == 1) depends_components: - ulp @@ -303,13 +303,13 @@ examples/system/ulp/lp_core/lp_i2c: examples/system/ulp/lp_core/lp_uart/lp_uart_echo: disable: - - if: SOC_ULP_LP_UART_SUPPORTED != 1 + - if: (SOC_ULP_LP_UART_SUPPORTED != 1) or (SOC_DEEP_SLEEP_SUPPORTED != 1) depends_components: - ulp examples/system/ulp/lp_core/lp_uart/lp_uart_print: disable: - - if: SOC_ULP_LP_UART_SUPPORTED != 1 + - if: (SOC_ULP_LP_UART_SUPPORTED != 1) or (SOC_DEEP_SLEEP_SUPPORTED != 1) depends_components: - ulp diff --git a/examples/system/ulp/lp_core/lp_uart/lp_uart_echo/README.md b/examples/system/ulp/lp_core/lp_uart/lp_uart_echo/README.md index 909255ff52..bc653d3cd9 100644 --- a/examples/system/ulp/lp_core/lp_uart/lp_uart_echo/README.md +++ b/examples/system/ulp/lp_core/lp_uart/lp_uart_echo/README.md @@ -13,7 +13,7 @@ This example demonstrates the usage of the LP UART driver from the LP core by re ### Hardware Required -To run this example, you should have an ESP32-C6 based development board and a host machine with a serial input connection. +To run this example, you should have an ESP based development board that supports the LP UART peripheral on the LP Core and a host machine with a serial input connection. #### Pin Assignment: @@ -22,6 +22,7 @@ To run this example, you should have an ESP32-C6 based development board and a h | | Rx | Tx | | ----------------------- | -------| -------| | ESP32-C6 | GPIO4 | GPIO5 | +| ESP32-C5 | GPIO4 | GPIO5 | | ESP32-P4 | GPIO15 | GPIO14 | | Host machine | Tx | Rx | diff --git a/examples/system/ulp/lp_core/lp_uart/lp_uart_print/README.md b/examples/system/ulp/lp_core/lp_uart/lp_uart_print/README.md index cbe260c640..c592445267 100644 --- a/examples/system/ulp/lp_core/lp_uart/lp_uart_print/README.md +++ b/examples/system/ulp/lp_core/lp_uart/lp_uart_print/README.md @@ -13,7 +13,7 @@ This example demonstrates how to use print statements from a program running on ### Hardware Required -To run this example, you should have an ESP32-C6 based development board and a host machine with a serial input connection. +To run this example, you should have an ESP based development board that supports the LP UART peripheral on the LP Core and a host machine with a serial input connection. #### Pin Assignment: @@ -23,6 +23,7 @@ To run this example, you should have an ESP32-C6 based development board and a h | | Tx | | ----------------------- | -------| | ESP32-C6 | GPIO5 | +| ESP32-C5 | GPIO5 | | ESP32-P4 | GPIO14 | | Host machine | Rx |