diff --git a/components/bootloader_support/src/bootloader_init.c b/components/bootloader_support/src/bootloader_init.c index d757e796..77edb7e7 100644 --- a/components/bootloader_support/src/bootloader_init.c +++ b/components/bootloader_support/src/bootloader_init.c @@ -553,7 +553,6 @@ void __assert_func(const char *file, int line, const char *func, const char *exp #include "esp8266/pin_mux_register.h" #include "esp8266/rom_functions.h" -#define CONFIG_CONSOLE_UART_BAUDRATE 74880 #define BOOTLOADER_CONSOLE_CLK_FREQ 52 * 1000 * 1000 extern int _bss_start; @@ -575,8 +574,6 @@ static void uart_console_configure(void) CLEAR_PERI_REG_MASK(UART_CONF1(CONFIG_CONSOLE_UART_NUM), UART_RX_FLOW_EN); CLEAR_PERI_REG_MASK(UART_CONF0(CONFIG_CONSOLE_UART_NUM), UART_TX_FLOW_EN); - uart_div_modify(CONFIG_CONSOLE_UART_NUM, BOOTLOADER_CONSOLE_CLK_FREQ / CONFIG_CONSOLE_UART_BAUDRATE); - WRITE_PERI_REG(UART_CONF0(CONFIG_CONSOLE_UART_NUM), 0 // None parity | (1 << 4) // 1-bit stop @@ -587,6 +584,8 @@ static void uart_console_configure(void) SET_PERI_REG_MASK(UART_CONF0(CONFIG_CONSOLE_UART_NUM), UART_RXFIFO_RST | UART_TXFIFO_RST); CLEAR_PERI_REG_MASK(UART_CONF0(CONFIG_CONSOLE_UART_NUM), UART_RXFIFO_RST | UART_TXFIFO_RST); #endif + + uart_div_modify(CONFIG_CONSOLE_UART_NUM, BOOTLOADER_CONSOLE_CLK_FREQ / CONFIG_CONSOLE_UART_BAUDRATE); } esp_err_t bootloader_init() diff --git a/components/esp8266/Kconfig b/components/esp8266/Kconfig index 80e23087..bf1a79f8 100644 --- a/components/esp8266/Kconfig +++ b/components/esp8266/Kconfig @@ -35,8 +35,6 @@ config SOC_FULL_ICACHE Enable this option, full 32 KB iram instead of 16 KB iram will be used as icache, so the heap use can use may reduce a lot. -endmenu - choice CONSOLE_UART_NUM prompt "UART peripheral to use for console output (0-1)" default CONSOLE_UART_CUSTOM_NUM_0 @@ -54,6 +52,13 @@ config CONSOLE_UART_NUM default 0 if CONSOLE_UART_CUSTOM_NUM_0 default 1 if CONSOLE_UART_CUSTOM_NUM_1 +config CONSOLE_UART_BAUDRATE + int "UART console baud rate" + default 74880 + range 1200 4000000 + +endmenu + menu WIFI config SCAN_AP_MAX diff --git a/components/esp8266/lib/VERSION b/components/esp8266/lib/VERSION index ea4a09d1..fe050314 100644 --- a/components/esp8266/lib/VERSION +++ b/components/esp8266/lib/VERSION @@ -1,6 +1,6 @@ gwen: crypto: 8943c89 - core: 782e796 + core: 4be8e4a net80211: 5319ba0 pp: 830c0c8 smartconfig:68bd9c5 diff --git a/components/esp8266/lib/libcore.a b/components/esp8266/lib/libcore.a index 029e731c..b32a48d2 100644 Binary files a/components/esp8266/lib/libcore.a and b/components/esp8266/lib/libcore.a differ diff --git a/components/esp8266/source/phy.h b/components/esp8266/source/phy.h index 6c2d7a76..32c5376d 100644 --- a/components/esp8266/source/phy.h +++ b/components/esp8266/source/phy.h @@ -30,7 +30,7 @@ void write_data_to_rtc(uint8_t *); void get_data_from_rtc(uint8_t *); -uint8_t chip_init(uint8_t* init_data, uint8_t *mac); +uint8_t chip_init(uint8_t* init_data, uint8_t *mac, uint32_t uart_baudrate); #ifdef __cplusplus } diff --git a/components/esp8266/source/phy_init.c b/components/esp8266/source/phy_init.c index 544c7506..099fb45d 100644 --- a/components/esp8266/source/phy_init.c +++ b/components/esp8266/source/phy_init.c @@ -84,7 +84,7 @@ esp_err_t esp_phy_rf_init(const esp_phy_init_data_t *init_data, esp_phy_calibrat } esp_efuse_mac_get_default(sta_mac); - chip_init(local_init_data, sta_mac); + chip_init(local_init_data, sta_mac, CONFIG_CONSOLE_UART_BAUDRATE); get_data_from_rtc((uint8_t *)calibration_data); memcpy(rx_gain_dc_table, calibration_data->rx_gain_dc_table, 4 * 125);