Merge branch 'feature/optimize_esp32p4_active_power_eco1' into 'master'

feat(system): Optimize esp32p4 active state  power consumption

Closes PM-103 and IDF-7688

See merge request espressif/esp-idf!32950
This commit is contained in:
Wu Zheng Hui
2024-09-11 23:15:29 +08:00
95 changed files with 1059 additions and 206 deletions

View File

@@ -55,6 +55,7 @@ static esp_err_t lp_core_uart_param_config(const lp_core_uart_cfg_t *cfg)
/* Enable LP UART bus clock */
lp_uart_ll_enable_bus_clock(0, true);
lp_uart_ll_set_source_clk(hal.dev, clk_src);
lp_uart_ll_sclk_enable(0);
}
/* Initialize LP UART HAL with default parameters */

View File

@@ -352,6 +352,9 @@ static void hp_uart_write(void)
/* Write data to LP UART */
uart_write_bytes(UART_NUM_1, (const char *)tx_data, TEST_DATA_LEN + sizeof(start_pattern) + sizeof(end_pattern));
/* Wait for the LP UART receive data done */
unity_wait_for_signal("LP UART recv data done");
/* Uninstall the HP UART driver */
uart_driver_delete(UART_NUM_1);
vTaskDelay(1);
@@ -399,6 +402,9 @@ static void test_lp_uart_read(void)
/* Verify test data */
ESP_LOGI(TAG, "Verify Rx data");
TEST_ASSERT_EQUAL_HEX8_ARRAY(expected_rx_data, rx_data + data_idx, TEST_DATA_LEN);
/* Notify the HP UART data received done and delete the UART driver */
unity_send_signal("LP UART recv data done");
}
static void hp_uart_write_options(void)
@@ -438,6 +444,9 @@ static void hp_uart_write_options(void)
/* Write data to LP UART */
uart_write_bytes(UART_NUM_1, (const char *)tx_data, TEST_DATA_LEN + sizeof(start_pattern) + sizeof(end_pattern));
/* Wait for the LP UART receive data done */
unity_wait_for_signal("LP UART recv data done");
/* Uninstall the HP UART driver */
uart_driver_delete(UART_NUM_1);
vTaskDelay(1);
@@ -485,6 +494,9 @@ static void test_lp_uart_read_options(void)
/* Verify test data */
ESP_LOGI(TAG, "Verify Rx data");
TEST_ASSERT_EQUAL_HEX8_ARRAY(expected_rx_data, rx_data + data_idx, TEST_DATA_LEN);
/* Notify the HP UART data received done and delete the UART driver */
unity_send_signal("LP UART recv data done");
}
static void test_lp_uart_read_multi_byte(void)
@@ -531,6 +543,9 @@ static void test_lp_uart_read_multi_byte(void)
* begin with garbage data which fills the initial part of the receive buffer. */
ESP_LOGI(TAG, "Verify Rx data");
TEST_ASSERT_EQUAL_HEX8_ARRAY(expected_rx_data, rx_data + data_idx, TEST_DATA_LEN - 10);
/* Notify the HP UART data received done and delete the UART driver */
unity_send_signal("LP UART recv data done");
}
static void hp_uart_read_print(void)