/* * SPDX-FileCopyrightText: 2010-2024 Espressif Systems (Shanghai) CO LTD * * SPDX-License-Identifier: Apache-2.0 *//* ... */#include<stdint.h>#include<stdbool.h>#include<stddef.h>#include"soc/soc_caps.h"#include"esp_rom_caps.h"#include"esp_rom_uart.h"#include"rom/ets_sys.h"#include"sdkconfig.h"8 includes#if!ESP_ROM_HAS_OUTPUT_PUTC_FUNCvoidesp_rom_output_putc(charc){if(c=='\n'){esp_rom_output_tx_one_char('\r');esp_rom_output_tx_one_char('\n');}{...}elseif(c=='\r'){}{...}else{esp_rom_output_tx_one_char(c);}{...}}{...}/* ... */#endif// !ESP_ROM_HAS_OUTPUT_PUTC_FUNC#if!ESP_ROM_HAS_OUTPUT_TO_CHANNELS_FUNCvoid(*_putc1)(charc)=esp_rom_output_putc;void(*_putc2)(charc)=NULL;voidesp_rom_output_to_channels(charc){if(_putc1){_putc1(c);}{...}if(_putc2){_putc2(c);}{...}}{ ... }#endif/* ... */// !ESP_ROM_HAS_OUTPUT_TO_CHANNELS_FUNCvoidesp_rom_install_channel_putc(intchannel,void(*putc)(charc)){switch(channel){case1:#if!ESP_ROM_HAS_OUTPUT_TO_CHANNELS_FUNC_putc1=putc;#endif#if!CONFIG_IDF_TARGET_LINUXets_install_putc1(putc);#endifbreak;...case2:#if!ESP_ROM_HAS_OUTPUT_TO_CHANNELS_FUNC_putc2=putc;#endif#if!CONFIG_IDF_TARGET_LINUXets_install_putc2(putc);#endifbreak;...default:break;...}{...}}{ ... }#ifESP_ROM_HAS_ETS_PRINTF_BUGvoidesp_rom_install_uart_printf(void){#if!ESP_ROM_HAS_OUTPUT_TO_CHANNELS_FUNC_putc1=esp_rom_output_putc;#endif#if!CONFIG_IDF_TARGET_LINUXexternvoidets_install_uart_printf(void);externboolg_uart_print;externboolg_usb_print;// If ROM log is disabled permanently via eFuse or temporarily via RTC storage register,// this ROM symbol will be set to false, and cause ``esp_rom_printf`` can't work on esp-idf side.g_uart_print=true;g_usb_print=true;ets_install_uart_printf();/* ... */#endif// !CONFIG_IDF_TARGET_LINUX}{...}/* ... */#endif#ifCONFIG_IDF_TARGET_ESP32externuint32_tg_ticks_per_us_pro;#ifSOC_CPU_CORES_NUM>1#ifndefCONFIG_ESP_SYSTEM_SINGLE_CORE_MODEexternuint32_tg_ticks_per_us_app;#endif/* ... */#endifvoidesp_rom_set_cpu_ticks_per_us(uint32_tticks_per_us){/* Update scale factors used by esp_rom_delay_us */g_ticks_per_us_pro=ticks_per_us;#ifSOC_CPU_CORES_NUM>1#ifndefCONFIG_ESP_SYSTEM_SINGLE_CORE_MODEg_ticks_per_us_app=ticks_per_us;#endif/* ... */#endif}{ ... }#endif/* ... */// CONFIG_IDF_TARGET_ESP32
Details
Show: from
Types: Columns:
All items filtered out
All items filtered out
This file uses the notable symbols shown below. Click anywhere in the file to view more details.