Martin Vychodil
1e58eb6928
system/security: Memprot bypassing mitigation
...
Check Memprot lock bit(s) during the system startup, abort/reset on any Memprot parts found locked during this phase.
There is no legal reason to disallow the Memprot configuration by the system, so it's either a critical bug in the
application or an malicious attempt to bypass the system security.
Error message is printed before digital system reset.
Closes IDF-2700
2021-06-01 00:07:09 +02:00
Jiang Jiang Jian
efb9f87951
Merge branch 'bugfix/fix_728_series_reboot_failure' into 'master'
...
[system]: Fix two (re)boot failure issues on ESP32S3Beta
Closes WIFI-3548, WIFI-3559, and IDF-3170
See merge request espressif/esp-idf!13268
2021-04-30 03:20:47 +00:00
wuzhenghui
57d43d1bc5
fix 728 series reboot failure
2021-04-29 03:10:47 +00:00
Michael (XIAO Xufeng)
a0d13a31ec
uart: fix misleading files for UART2
...
Includes: header files, ld files and clk.c
ESP32-C3 only have UART0 and UART1.
2021-04-27 17:40:19 +08:00
Shu Chen
ff3320ca8a
esp32c3: fix typos of c3 path
2021-04-23 18:11:39 +08:00
Omar Chebib
bb9aa806f7
panic: handlers can now be placed in flash
...
By unchecking "Place panic handler code in IRAM" in the menuconfig,
the panic handlers will be placed in flash. Of course, flash cache must
be activated when entering panic handlers.
2021-04-15 11:58:46 +08:00
Martin Vychodil
f27c9c5139
esp32c3: memprot API upgrade and test application
...
Closes IDF-2641
2021-04-12 13:44:11 +10:00
Angus Gratton
cef3b26a91
Merge branch 'refactor/move_from_esp_system' into 'master'
...
Movements from esp_system
Closes IDF-2165
See merge request espressif/esp-idf!12695
2021-04-08 10:16:08 +00:00
Angus Gratton
70cab5bd81
Merge branch 'bugfix/ulp_riscv_unintended_wake' into 'master'
...
ulp: unintended wakeup in ulp_riscv
See merge request espressif/esp-idf!12894
2021-04-08 01:52:41 +00:00
Renz Bagaporo
586023790e
esp_system: move sleep modes to esp_hw_support, power down light sleep to esp_pm
2021-04-07 17:53:37 +08:00
Renz Bagaporo
8762bfebde
esp_system: move asysnc memcpy to esp_hw_support
2021-04-07 17:53:37 +08:00
Angus Gratton
c22eb769e7
Merge branch 'bugfix/panic_instrprohibited' into 'master'
...
esp_system: fix instrprohibited panic backtrace regression
See merge request espressif/esp-idf!13023
2021-04-07 05:14:19 +00:00
Renz Bagaporo
75624c5355
esp_system: fix instrprohibited panic backtrace regression
...
First PC should have been ignored in the case of InstProhibited panic
when printing backtrace.
2021-04-05 22:05:27 +08:00
Angus Gratton
6b57f33858
Merge branch 'refactor/movements_from_target_components' into 'master'
...
Movement from target components 1
See merge request espressif/esp-idf!12482
2021-04-05 02:37:21 +00:00
Renz Bagaporo
301c48b6b2
esp_system: remove duplicate panic backtrace code
2021-04-01 07:22:57 +00:00
Renz Bagaporo
a7bac58480
esp32: move system api to esp_system
2021-03-31 19:13:03 +08:00
Renz Bagaporo
7d85c42e52
esp32: move brownout and cache err int setup
2021-03-31 19:13:03 +08:00
Renz Bagaporo
3639c2322b
ulp: clear rtc int at initialization
...
Closes https://github.com/espressif/esp-idf/issues/6654
2021-03-31 17:15:55 +08:00
Angus Gratton
d44034c54d
Merge branch 'bugfix/dual_core_app_on_single_core_esp32' into 'master'
...
esp_system: fix dual core app issue on single core esp32
Closes IDF-2154
See merge request espressif/esp-idf!10728
2021-03-31 01:06:52 +00:00
Renz Bagaporo
8d32232899
esp_system: check early for single core variant
2021-03-29 06:50:47 +00:00
Renz Bagaporo
cb5a8342d4
esp_system: revert reset of systimer clk at startup
2021-03-25 15:37:48 +08:00
Angus Gratton
fa2946d651
Merge branch 'feature/support_esp32s3_beta_3' into 'master'
...
Support ESP32S3 beta 3 target
Closes IDF-2908
See merge request espressif/esp-idf!12661
2021-03-23 10:17:58 +00:00
KonstantinKondrashov
aa1338bf23
wdt: Fix timeout and RTC_SLOW_CLK
...
RTC_SLOW_CLK
ESP32: 150kHz
ESP32-S2: 90kHz
ESP32-S3: 150kHz
ESP32-C3: 150kHz
2021-03-19 00:15:18 +08:00
Marius Vikhammer
2aead8ba57
Support ESP32S3 Beta 3 target
...
Update ROM API. Port changes from bringup branch.
2021-03-18 10:24:22 +08:00
Angus Gratton
fd164b82b6
Merge branch 'refactor/move_from_xtensa' into 'master'
...
Movements from xtensa
Closes IDF-2164
See merge request espressif/esp-idf!10556
2021-03-11 00:24:25 +00:00
Angus Gratton
d6f4d99d93
core system: Fix warnings in compilation when assertions are disabled
...
Adds a CI config for hello world that sets this, to catch future regressions
2021-03-03 10:26:57 +11:00
Renz Bagaporo
1efdcd69d9
xtensa: move out trax
2021-02-26 19:45:48 +08:00
Renz Bagaporo
7e0e91bf76
arch: move debug helpers
2021-02-26 13:34:29 +08:00
Renz Bagaporo
91a5770fd2
arch: move shared stack implementation to esp_system
2021-02-26 13:34:29 +08:00
Cao Sen Miao
a8343bc470
esp_system: support gpio wakeup from deep sleep on esp32c3
2021-02-26 12:26:49 +08:00
Angus Gratton
a0eb455ec3
Merge branch 'refactor/misc_move_from_esp_common' into 'master'
...
Movements from esp_common
Closes IDF-1947
See merge request espressif/esp-idf!9692
2021-02-24 23:16:52 +00:00
Renz Bagaporo
1d55e6d6b8
esp_common: move brownout init
2021-02-24 12:16:37 +08:00
morris
bf2480f62d
efuse: can disable boot ROM log from Kconfig
2021-02-22 20:56:43 +08:00
Angus Gratton
807c8549e1
Merge branch 'bugfix/esp32s2_wakeup_from_light_sleep_fix' into 'master'
...
esp32s2 light sleep fix
Closes IDFCI-122
See merge request espressif/esp-idf!10269
2021-02-11 07:34:57 +08:00
Angus Gratton
dfda84c2ab
esp_system: Fix some ESP_EARLY_LOG lines not being output fully
...
At least on ESP32, calling esp_rom_uart_set_clock_baudrate() causes the
contents of the UART FIFO to be discarded.
2021-02-01 14:24:38 +11:00
Ivan Grokhotkov
9a20283485
Merge branch 'bugfix/scan_test_missing_build_apps_without_tests' into 'master'
...
ci: bugfix: scan_test missing build apps without tests
See merge request espressif/esp-idf!12138
2021-01-28 17:48:24 +08:00
Martin Vychodil
69096ddce5
Security: ESP32C3 memory protection feature (IRAM0/DRAM0)
...
Software support for PMS module.
Allows controlled memory access to IRAM (R/W/X) and DRAM0 (R/W)
On/locked by default, configurable in Kconfig (esp_system)
Closes https://jira.espressif.com:8443/browse/IDF-2092
2021-01-27 08:44:03 +01:00
Fu Hanxi
e4e375f488
fix: add spi_flash.h for s2, s3, c3 targets in cpu_start.c
...
update s2, s3, c3 ld files spi_flash_attach to esp_rom_spiflash_attach
2021-01-27 12:35:49 +08:00
Michael (XIAO Xufeng)
d7d1dee208
system: reset dma when soft reset
2021-01-25 04:51:40 +00:00
Chen Jian Xing
f71adec8fb
Support ESP32S3 (beta2) WiFi
2021-01-25 00:18:42 +08:00
Renz Bagaporo
2dc7b556f3
esp32s2: reset systimer clk on startup
2021-01-22 14:51:50 +08:00
Angus Gratton
5938b9a892
Merge branch 'feature/support_esp32c3_master_cmake_reset_reason' into 'master'
...
esp32c3: Add UTs for reset_reason
Closes IDF-2091
See merge request espressif/esp-idf!11546
2021-01-18 07:12:21 +08:00
Konstantin Kondrashov
d23c7690f2
esp32c3: Add UTs for reset_reason
2021-01-18 07:12:21 +08:00
Michael (XIAO Xufeng)
2d3f22918f
Merge branch 'feature/gdma_channel_allocator' into 'master'
...
gdma channel allocator
Closes IDF-2124
See merge request espressif/esp-idf!11570
2021-01-14 10:52:49 +08:00
Angus Gratton
f683db7aea
Merge branch 'feature/c3_IDF-2554' into 'master'
...
global: Uses CCOUNT API instead of XTHAL macro
Closes IDF-2554
See merge request espressif/esp-idf!11954
2021-01-13 12:55:21 +08:00
morris
40a6a0fac6
async_mcp: apply gdma driver
2021-01-13 10:52:27 +08:00
KonstantinKondrashov
dada7cd035
global: Uses CCOUNT API instead of XTHAL macro
2021-01-12 16:24:23 +08:00
morris
753a929525
global: fix sign-compare warnings
2021-01-12 14:05:08 +08:00
Chen Jian Xing
5b44295cb9
esp_wifi: fix esp32c3 code issues
...
1. enable wifi clk and rm dport header
2.syn phy_init_data.h from esp32
2021-01-10 16:16:28 +08:00
Omar Chebib
c218f669ba
panic on RISC-V: Take into account Merge Request comments
2020-12-31 15:46:17 +08:00
Ivan Grokhotkov
5962b1dc56
panic: print register dump on abort for RISC-V
...
Register values are necessary to perform host-side backtracing on
RISC-V. Print them in case of an abort as well.
2020-12-31 15:46:17 +08:00
Omar Chebib
b6a450f824
panic: Add support for SoC-level panic
...
SoC level exceptions such as watchdog timer and cache errors are now supported.
Such exceptions now triggers a panic, giving more information about how
and when it happened.
2020-12-31 15:46:17 +08:00
Angus Gratton
61c77d9212
esp_system: Add port-specific esp32c3 files
2020-12-24 13:40:01 +11:00
Angus Gratton
55155c3f82
esp_system: Rename _init_start symbol to _vector_table
2020-12-24 13:40:01 +11:00
Angus Gratton
cfbded2ea1
esp_system: Add extra MMU config step for ESP32-C3
2020-12-24 13:40:01 +11:00
Angus Gratton
a5aac93051
esp_rom: Small changes for esp32c3 support
...
Updated from internal commit 6d894813
2020-12-24 13:40:01 +11:00
morris
c39476d699
esp_rom: added esp_rom_install_uart_printf
2020-12-11 11:45:10 +08:00
Angus Gratton
5228d9f9ce
esp32c3: Apply one-liner/small changes for ESP32-C3
2020-12-01 10:58:50 +11:00
Renz Bagaporo
4cc6b5571b
esp_system: support riscv panic
2020-11-13 07:49:11 +11:00
Angus Gratton
420aef1ffe
Updates for riscv support
...
* Target components pull in xtensa component directly
* Use CPU HAL where applicable
* Remove unnecessary xtensa headers
* Compilation changes necessary to support non-xtensa gcc types (ie int32_t/uint32_t is no
longer signed/unsigned int).
Changes come from internal branch commit a6723fc
2020-11-13 07:49:11 +11:00
Angus Gratton
66fb5a29bb
Whitespace: Automated whitespace fixes (large commit)
...
Apply the pre-commit hook whitespace fixes to all files in the repo.
(Line endings, blank lines at end of file, trailing whitespace)
2020-11-11 07:36:35 +00:00
Jeroen Domburg
4b444316ab
Psram: Do not initialize spiram cache if no chip is found.
...
Closes https://github.com/espressif/esp-idf/issues/6063
2020-11-06 02:32:39 +00:00
morris
d084ef4473
gdma: fix wrong m2m mode wrong config
2020-10-27 16:53:19 +08:00
Ivan Grokhotkov
4dc1195ca5
esp_system: fix incorrect critical section usage in usb_console
...
spinlock_acquire does not disable interrupts, whereas
portENTER_CRITICAL does.
Closes IDF-2049
2020-10-13 17:39:31 +02:00
Martin Vychodil
497b730e8f
* memprot support for RTC_SLOW
...
* API upgrade
JIRA IDF-1636
2020-10-08 11:19:23 +08:00
jiangguangming
28145e0894
support flash instr and rodata copy to SPIRAM
2020-09-22 15:15:03 +08:00
morris
61f89b97c6
bringup esp32-s3 on FPGA
2020-09-22 15:15:03 +08:00
morris
6225932201
bootloader_support: add esp32-s3 initial support
2020-09-22 15:15:03 +08:00
morris
a3cc43485f
async memcpy: support async memcopy on esp32s2/s3
...
Added async memory copy API:
on esp32-s2, the implementation is based on CP_DMA
on esp32-s3, the implementation is based on GDMA
2020-09-16 21:30:54 +08:00
Michael (XIAO Xufeng)
1a1e1911f9
Merge branch 'bugfix/spi_dma_close_before_cpu_reset' into 'master'
...
spi: fix issue with closing DMA before CPU reset
Closes FCS-484
See merge request espressif/esp-idf!9844
2020-09-14 23:02:05 +08:00
Michael (XIAO Xufeng)
9e7eda9770
Merge branch 'feat/spi_flash_override_size' into 'master'
...
spi_flash: add config option to override flash size in bootloader header
See merge request espressif/esp-idf!10131
2020-09-03 02:57:31 +08:00
Michael (XIAO Xufeng)
37423083bb
spi_flash: add config option to override flash size in bootloader header
...
Sometimes the flash size read from bootloader is not correct. This may
forbid SPI Flash driver from reading the the area larger than the size
in bootloader header.
When the new config option is enabled, the latest configured
ESPTOOLPY_FLAHSIZE in the app header will be used to override the value
read from bootloader header.
2020-09-02 00:35:53 +08:00
me-no-dev
0aa1c13027
Fix USB CLK always reset and USB with swapped pins not working
2020-08-25 10:59:59 +03:00
Armando
aa93347972
spi: remove spi4 related macros and codes
2020-08-17 21:32:15 +08:00
Angus Gratton
62c4b569ad
Merge branch 'refactor/timekeeping_init' into 'master'
...
Timekeeping refactor
Closes IDF-1864
See merge request espressif/esp-idf!7824
2020-08-17 08:13:44 +08:00
liu zhifu
6ed4dd65a4
esp_wifi: optimize WiFi debug log
...
1. Add esp_wifi_statis_dump()
2. Optimize WiFi related debug log
2020-08-15 11:35:10 +08:00
Angus Gratton
1a47f025e9
Merge branch 'bugfix/cpu_start_build' into 'master'
...
esp_system: fix bootloader wdt enabled build issue
Closes IDFGH-3717
See merge request espressif/esp-idf!9816
2020-08-13 16:52:31 +08:00
Renz Bagaporo
da88671491
esp_system: link time, not runtime, dependency on esp_timer
2020-08-11 17:52:36 +08:00
Renz Bagaporo
346cf4430d
esp_system: introduce system time functions
...
- Introduce system time function and concept of system time provider.
esp_timer is system time provider when present.
- Set the reference point for system time, g_startup_time.
- Use the system time functions in newlib instead of calling esp_timer
functions directly
2020-08-10 15:12:38 +08:00
Renz Bagaporo
5785e4dfb6
newlib: move some functions to soc, esp32, esp32s2
2020-08-10 15:11:38 +08:00
Ivan Grokhotkov
5ff9cd495e
panic: skip over the first invalid PC in case of InstrFetchProhibited
...
InstrFetchProhibited usually occurs because of a jump to an invalid
pointer. In this case, PC in the exception frame is the address of
the jump destination. 'esp_ptr_executable' check in print_backtrace
function recognizes the first frame as invalid, and the backtrace is
interrupted. This prevents the user from finding the location where
the invalid pointer is dereferenced.
Bypass the 'esp_ptr_executable' check if the exception cause is
InstrFetchProhibited. Update the test case to no longer ignore this
issue.
2020-08-05 12:00:50 +02:00
Renz Bagaporo
43af455457
esp_system: fix bootloader wdt enabled build issue
...
Closes https://github.com/espressif/esp-idf/issues/5643
2020-08-05 10:39:12 +08:00
Jiang Jiang Jian
d1f9a238f3
Merge branch 'bugfix/sys_fix_build_error_about_livelock' into 'master'
...
components/sys: Fix build error about livelock when intwdt is disable
See merge request espressif/esp-idf!9312
2020-07-31 16:43:22 +08:00
Angus Gratton
75402afcae
Merge branch 'feature/esp32s3_clk_memory_layout' into 'master'
...
esp32s3: memory layout
See merge request espressif/esp-idf!9753
2020-07-29 13:48:25 +08:00
Ivan Grokhotkov
8ac56e904b
Merge branch 'bugfix/coredump_esp_panic_reason' into 'master'
...
Coredump ESP panic reason
See merge request espressif/esp-idf!9072
2020-07-28 23:49:10 +08:00
Alexey Gerenkov
21091c6b0e
coredump: Fixes ESP-specific panic reasons handling
2020-07-27 21:38:33 +03:00
morris
2917651478
esp_rom: extract common ets apis into esp_rom_sys.h
2020-07-27 15:27:01 +08:00
morris
19761e3113
esp32s3: clk, memory layout
2020-07-27 13:05:22 +08:00
baohongde
acb835d86f
components/sys: Fix build error about livelock when intwdt is disable
2020-07-23 02:21:32 +00:00
Angus Gratton
442736c5d6
Merge branch 'refactor/common_rom_uart_apis' into 'master'
...
esp_rom: extract common uart apis into esp_rom_uart.h
See merge request espressif/esp-idf!9313
2020-07-21 15:24:21 +08:00
Angus Gratton
3755fb6597
Merge branch 'feature/add_esp32s3_bootloader_ld_file' into 'master'
...
move part of esp32-s3 codes to master (bootloader linker, esp32s3 empty componnet)
See merge request espressif/esp-idf!9608
2020-07-21 14:51:04 +08:00
chenjianqiang
bff6b5b70e
bugfix(psram): configure MMU after PSRAM initialization
2020-07-20 12:21:32 +08:00
morris
d066c3ab2c
esp_system: add panic high interrupt handler for esp32s3
2020-07-20 11:15:24 +08:00
morris
345606e7f3
esp_rom: extract common uart apis into esp_rom_uart.h
2020-07-17 16:00:59 +08:00
morris
458b14a8ea
esp_rom: extract common efuse apis into esp_rom_efuse.h
2020-07-15 10:40:50 +08:00
Renz Christian Bagaporo
08ad0f8194
esp_system: remove usage of CONFIG_FREERTOS_UNICORE from panic handler
2020-07-06 15:33:56 +08:00
Darian Leung
97721d469c
TWAI: Add ESP32-S2 support
...
This commit adds TWAI driver support for the
ESP32-S2. The following features were added:
- Expanded BRP support
- Expanded CLKOUT Divider Support
- Updated example READMEs
2020-06-30 16:56:03 +08:00
Ivan Grokhotkov
e94848556b
esp32, esp32s2: update console initialization
2020-06-26 15:38:49 +02:00
Ivan Grokhotkov
34f441249b
esp32s2: add internal usb_console API
2020-06-26 15:38:49 +02:00
Renz Bagaporo
98f4ccaef5
esp_system: fix other core init issue
...
Core 1 was not being stopped when in single core mode resulting to GDB
timing out.
2020-06-19 18:40:10 +10:00
Renz Bagaporo
08cbfa6187
esp_system: fix various review issues
2020-06-19 18:40:10 +10:00
Renz Christian Bagaporo
67983d5c1c
esp_system: restore order of some init functions
2020-06-19 18:40:10 +10:00
Renz Christian Bagaporo
4d094eccca
esp_system: move brownout init due to dependency issue
2020-06-19 18:40:10 +10:00
Renz Christian Bagaporo
ef2a44d251
esp_system: introduce single core mode proxy config
2020-06-19 18:40:10 +10:00
Renz Christian Bagaporo
c53ad56515
esp_system: startup flow modifications
...
Changes the startup flow to the ff:
hardware -> core libraries init -> other libraries init -> os
init (optional) -> app_main
- hardware init resides in the port layer, and is the entry point
- core libraries init executes init functions of core components
- other libraries init executes init functions of other components (weak
references)
- after other lib is init, the app_main function is called, however,
an OS can wrap the real call to app_main to init its own stuff, and
*then* call the real app_main
2020-06-19 18:40:09 +10:00
Renz Bagaporo
bb5535ca5d
esp32, esp32s2: move startup code into esp_system
2020-06-19 18:40:09 +10:00
Renz Christian Bagaporo
62ef63e835
esp32, esp32s2: move clk init functions to esp_system
2020-06-19 18:40:09 +10:00
Li Shuai
72f583dfa7
add soft solution for esp32 eco3 live lock issue
2020-06-05 06:04:18 +00:00
Sachin Parekh
46d914ff45
gdb: Modify PC in case of invalid PC
...
Signed-off-by: Sachin Parekh <sachin.parekh@espressif.com>
2020-05-08 18:34:52 +05:30
Ivan Grokhotkov
c5f664d4ac
esp_system: remove duplicated esp_digital_reset function
...
esp_digital_reset was defined both in system_api.c and panic_handler.c
2020-05-04 10:13:14 +00:00
Ivan Grokhotkov
8bdfb265a4
panic handler: fix cache error handling
2020-05-04 10:13:14 +00:00
Martin Vychodil
7491ea677a
esp32s2: IRAM/DRAM memory protection
...
* new mem_prot API
* mem_prot on & locked by default (see Kconfig)
* feature activated in start_cpu0_default()
JIRA IDF-1355
2020-04-21 15:10:58 +02:00
Darian Leung
91841a53ff
WDT: Add LL and HAL for watchdog timers
...
This commit updates the watchdog timers (MWDT and RWDT)
in the following ways:
- Add seprate LL for MWDT and RWDT.
- Add a combined WDT HAL for all Watchdog Timers
- Update int_wdt.c and task_wdt.c to use WDT HAL
- Remove most dependencies on LL or direct register access
in other components. They will now use the WDT HAL
- Update use of watchdogs (including RTC WDT) in bootloader and
startup code to use the HAL layer.
2020-03-26 02:14:02 +08:00
Renz Bagaporo
ee519634a5
esp_system: retain backtrace no space
2020-03-10 19:56:24 +08:00
Renz Bagaporo
890510aecd
esp32, esp32s2: move reset reason source to esp_system
2020-03-10 19:56:24 +08:00
Renz Christian Bagaporo
af9b1131a3
esp_system: share abort panic with port layer
2020-03-10 19:56:24 +08:00
Renz Christian Bagaporo
2b100789b7
esp32, esp32s2: move panic handling code to new component
2020-03-10 19:56:24 +08:00