mirror of
https://github.com/espressif/esp-idf.git
synced 2026-04-27 19:13:21 +00:00
fix(console): release default console UART pins if console is switched in bootloader
Also print out console UART pin number in app cpu_startup stage Closes https://github.com/espressif/esp-idf/issues/16764 Closes https://github.com/espressif/esp-idf/issues/17459
This commit is contained in:
@@ -97,6 +97,7 @@
|
||||
#include "hal/cache_hal.h"
|
||||
#include "hal/cache_ll.h"
|
||||
#include "hal/efuse_ll.h"
|
||||
#include "soc/uart_pins.h"
|
||||
#include "hal/cpu_utility_ll.h"
|
||||
#include "soc/periph_defs.h"
|
||||
#include "esp_cpu.h"
|
||||
@@ -773,8 +774,15 @@ NOINLINE_ATTR static void system_early_init(const soc_reset_reason_t *rst_reas)
|
||||
// In a single thread mode, the freertos is not started yet. So don't have to use a critical section.
|
||||
int __DECLARE_RCC_ATOMIC_ENV __attribute__((unused)); // To avoid build errors about spinlock's __DECLARE_RCC_ATOMIC_ENV
|
||||
esp_rom_uart_set_clock_baudrate(CONFIG_ESP_CONSOLE_ROM_SERIAL_PORT_NUM, clock_hz, CONFIG_ESP_CONSOLE_UART_BAUDRATE);
|
||||
int console_uart_tx_pin = U0TXD_GPIO_NUM;
|
||||
int console_uart_rx_pin = U0RXD_GPIO_NUM;
|
||||
#if CONFIG_ESP_CONSOLE_UART_CUSTOM
|
||||
console_uart_tx_pin = (CONFIG_ESP_CONSOLE_UART_TX_GPIO >= 0) ? CONFIG_ESP_CONSOLE_UART_TX_GPIO : U0TXD_GPIO_NUM;
|
||||
console_uart_rx_pin = (CONFIG_ESP_CONSOLE_UART_RX_GPIO >= 0) ? CONFIG_ESP_CONSOLE_UART_RX_GPIO : U0RXD_GPIO_NUM;
|
||||
#endif
|
||||
#endif
|
||||
ESP_EARLY_LOGI(TAG, "GPIO %d and %d are used as console UART I/O pins", console_uart_rx_pin, console_uart_tx_pin);
|
||||
#endif // CONFIG_ESP_CONSOLE_UART
|
||||
#endif // !CONFIG_IDF_ENV_FPGA
|
||||
|
||||
#if SOC_DEEP_SLEEP_SUPPORTED
|
||||
// Need to unhold the IOs that were hold right before entering deep sleep, which are used as wakeup pins
|
||||
|
||||
Reference in New Issue
Block a user