fix(esp_rom): fix esp32c3 eco7 console rom function address

This commit is contained in:
Li Bo 2024-11-05 17:09:24 +08:00 committed by BOT
parent 3730567940
commit 0bda2f8990

View File

@ -25,9 +25,9 @@ IRAM_ATTR void esp_rom_output_tx_wait_idle(uint8_t uart_no)
#if CONFIG_IDF_TARGET_ESP32C3 #if CONFIG_IDF_TARGET_ESP32C3
/** /**
* The ESP32-C3 ROM has released two versions, one is the ECO3 version, * The ESP32-C3 ROM has released three versions, ECO7 (v1.1), ECO3, and
* and the other is the version before ECO3 (include ECO0 ECO1 ECO2). * the version before ECO3 (include ECO0 ECO1 ECO2).
* These two versions of the ROM code do not list uart_tx_switch wrap * These three versions of the ROM code do not list uart_tx_switch wrap
* function in the ROM interface, so here use the uart_tx_switch direct * function in the ROM interface, so here use the uart_tx_switch direct
* address instead. * address instead.
*/ */
@ -38,6 +38,8 @@ IRAM_ATTR void esp_rom_output_set_as_console(uint8_t uart_no)
if (efuse_hal_chip_revision() < 3) { if (efuse_hal_chip_revision() < 3) {
uart_tx_switch = (rom_func_t)0x4004b8ca; uart_tx_switch = (rom_func_t)0x4004b8ca;
} else if (efuse_hal_chip_revision() >= 101) {
uart_tx_switch = (rom_func_t)0x40001c44;
} else { } else {
uart_tx_switch = (rom_func_t)0x4004c166; uart_tx_switch = (rom_func_t)0x4004c166;
} }