diff --git a/components/soc/esp32c5/include/soc/Kconfig.soc_caps.in b/components/soc/esp32c5/include/soc/Kconfig.soc_caps.in index 2f3d7b4989..9fb7594140 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 a4cd2d4b73..6c19e7ba6d 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 |