Mahavir Jain
61820f5b30
cpu_start: let individual core clear its interrupt matrix
...
There was race condition where interrupt entries set by APP cpu core
could have been cleared during PRO cpu startup.
This was observed while setting up "cache access error" interrupt in
SMP mode for ESP32-S3.
This fix allows to NOT modify or clear any entries set by other core
(APP or PRO) and thus avoiding any race conditions during startup code.
2021-10-20 15:16:25 +05:30
Mahavir Jain
bdeaeb8d7f
esp_system: enable "cache disable but cache accessed" interrupt for ESP32-S3
2021-10-20 15:16:25 +05:30
Omar Chebib
8048677b4c
Xtensa: Branch and jump intructions referencing a relative label have been replaced
...
As branches/jumps on Xtensa have a maximum range for the destination, it is
unsafe to refer to a label to another compilation unit in a branch/jump instruction.
The labels have been replaced by absolute addresses.
2021-10-19 12:21:12 +08:00
Zim Kalinowski
6dc684d2fa
Merge branch 'feature/github-7517' into 'master'
...
[system] fix compiler warning with silent panic option
Closes IDFGH-5812
See merge request espressif/esp-idf!15420
2021-10-11 08:56:57 +00:00
Zim Kalinowski
584806a78a
updated copyright text
2021-10-11 11:38:35 +08:00
Zim Kalinowski
f2b538b9e7
Merge branch 'master' into feature/github-7517
2021-10-09 18:58:27 +08:00
Armando
2655a506c9
mspi: support auto detect octal flash vendor
2021-10-08 15:59:57 +08:00
Armando
c45c6f52f1
adc: support adc efuse-based calibration on esp32s3
2021-09-14 11:42:50 +08:00
David Čermák
9f957cbfe2
Merge branch 'bugfix/memprot_panic_print_const_correction' into 'master'
...
panic: Fix minor const string correction on meprot panic print
See merge request espressif/esp-idf!14851
2021-09-13 06:13:33 +00:00
baohongde
006a10b050
components/doc: Update doc about high-level interrupt
...
some bugfix.
2021-09-09 20:40:09 +08:00
David Cermak
0ee4c235eb
panic/memprot: Fix minor const string correction on panic print
2021-09-09 11:46:21 +02:00
baohongde
6d63fe06fa
components/os: add config option to choose system check intterupt level.
2021-09-09 11:29:12 +08:00
baohongde
8a4696d25a
components/os: Fix live lock int bt isr using ocd multicore debug
...
components/os: Fix live lock in bt isr immediately
2021-09-09 11:29:08 +08:00
baohongde
d1db2df316
components/bt: High level interrupt in bluetooth
...
components/os: Move ETS_T1_WDT_INUM, ETS_CACHEERR_INUM and ETS_DPORT_INUM to l5 interrupt
components/os: high level interrupt(5)
components/os: hli_api: meta queue: fix out of bounds access, check for overflow
components/os: hli: don't spill registers, instead save them to a separate region
Level 4 interrupt has a chance of preempting a window overflow or underflow exception.
Therefore it is not possible to use standard context save functions,
as the SP on entry to Level 4 interrupt may be invalid (e.g. in WindowUnderflow4).
Instead, mask window overflows and save the entire general purpose register file,
plus some of the special registers.
Then clear WindowStart, allowing the C handler to execute without spilling the old windows.
On exit from the interrupt handler, do everything in reverse.
components/bt: using high level interrupt in lc
components/os: Add DRAM_ATTR to avoid feature `Allow .bss segment placed in external memory`
components/bt: optimize code structure
components/os: Modify the BT assert process to adapt to coredump and HLI
components/os: Disable exception mode after saving special registers
To store some registers first, avoid stuck due to live lock after disabling exception mode
components/os: using dport instead of AHB in BT to fix live lock
components/bt: Fix hli queue send error
components/bt: Fix CI fail
# Conflicts:
# components/bt/CMakeLists.txt
# components/bt/component.mk
# components/bt/controller/bt.c
# components/bt/controller/lib
# components/esp_common/src/int_wdt.c
# components/esp_system/port/soc/esp32/dport_panic_highint_hdl.S
# components/soc/esp32/include/soc/soc.h
2021-09-09 11:29:06 +08:00
Cao Sen Miao
6c0aebe279
esp_flash: add opi flash support in esp_flash chip driver, for MXIC
2021-09-07 14:44:40 +08:00
boarchuz
ec70bc0523
fix compiler warning with silent panic option
2021-09-04 14:46:26 +10:00
gaoxiaojie
191a494e08
support dcache 64Byte and 16k
2021-09-02 02:27:40 +08:00
jiangguangming
f7137254e9
flash_mmap: register flash2spiram info to ROM
2021-09-02 02:27:40 +08:00
Armando
a3dc625da6
mspi: support 120MHz Quad Flash and PSRAM on ESP32S3
2021-08-31 16:06:44 +08:00
Martin Vychodil
58aed7df98
ESP32S2: No assert()/abort() in Memprot API, use esp_err_t instead
...
JIRA IDF-3634
2021-08-26 09:20:00 +02:00
Shu Chen
f8f9e545e8
Merge branch 'feature/support_esp32h2_hw_support' into 'master'
...
Feature/support esp32h2 hw support
Closes IDF-3378 and IDF-3396
See merge request espressif/esp-idf!14545
2021-08-26 06:00:27 +00:00
sly
11dfd802e0
esp32h2: add rtc clock support
2021-08-26 11:25:39 +08:00
Wu Zheng Hui
3128a2544b
Adjust the variable name &
...
Add mapping support for different sizes of spi ram
2021-08-25 16:06:28 +08:00
wuzhenghui
6ab495b4dc
esp32h2: chip env support
...
brownout init fixed
2021-08-25 11:02:47 +08:00
Jiang Jiang Jian
6e1f8a68b9
Merge branch 'feature/support_esp32s3_wifi_lightsleep' into 'master'
...
support esp32s3 wifi lightsleep
Closes IDF-1781
See merge request espressif/esp-idf!14569
2021-08-06 12:51:46 +00:00
Li Shuai
d73a09cd8b
light sleep: add wifi mac sleep support for esp32s3
2021-08-04 21:58:33 +08:00
Li Shuai
366d0a724a
light sleep: set wifi light sleep clock source to rtc slow clock
2021-08-04 21:31:47 +08:00
Zim Kalinowski
1fd56e0b87
Merge branch 'feature/systimer_generate_rtos_tick' into 'master'
...
freertos(esp32s3): SysTick uses systimer
Closes IDF-2613
See merge request espressif/esp-idf!12246
2021-08-04 12:33:52 +00:00
Konstantin Kondrashov
29f581fc70
freertos(esp32s3): SysTick uses systimer
2021-08-04 20:33:44 +08:00
Armando (Dou Yiwen)
03fb3973a2
Merge branch 'feature/support_quad_flash_octal_psram_on_esp32s3' into 'master'
...
mspi: support up-to-80MHz quad flash & up-to-80MHz octal psram on esp32s3
Closes IDF-3603
See merge request espressif/esp-idf!14346
2021-08-04 03:57:16 +00:00
Armando
0f91a01a46
mspi: support up-to-80MHz quad flash & up-to-80MHz octal psram on esp32s3
2021-08-03 16:54:00 +08:00
Konstantin Kondrashov
4972605b16
esp_common: Add API for IPC to run small pieces of code on the other CPU, in the context of the level 4 interrupt
2021-08-03 14:35:29 +08:00
Jiang Jiang Jian
aebdaf08a6
Merge branch 'bugfix/esp32s3_app_core_clock_gate_invalid_issue' into 'master'
...
fix app cpu core clock gate invalid issue
Closes WIFI-3899
See merge request espressif/esp-idf!14518
2021-07-31 03:00:58 +00:00
Cao Sen Miao
c29b3e2e36
spi_flash: move the unlock patch to bootloader and add support for GD
2021-07-29 10:46:33 +08:00
Li Shuai
8a10ba4179
system: fix app cpu core clock gate invalid issue
2021-07-28 11:34:29 +08:00
Wangjialin
2b986fbd49
For esp_restart API, reset uart0 core first, then reset uart0 apb side, so as to prevent uart output garbage after cpu reset. (UART0 RST bits will be cleared in ROM)
...
Add UART0/1 core reset on esp32c3, in case uart driver would also reset uart hardwares.
2021-07-21 11:41:04 +08:00
morris
2058e89448
Merge branch 'feature/fpga_bootloader' into 'master'
...
Boot ESP32 & ESP32-S2 apps on FPGA
See merge request espressif/esp-idf!8270
2021-07-18 08:06:38 +00:00
Angus Gratton
bbbbd5cf0c
esp32s2: FPGA can boot to Hello World
2021-07-16 10:50:06 +10:00
Omar Chebib
0771bd1711
espsystem: Rearchitecture and fix eh_frame_parser bugs
...
eh_frame_parser is architecture independent, thus the files have
been rearchitectured. Some bugs have been fixed in the test.
A README file has also been added to eh_frame_parser host test
directory.
eh_frame_parser is now able to detect empty gaps in .eh_frame_hdr
table (missing DWARF information).
Fix a bug occuring when parsing backtraces originated from abort().
Fix build missing dependencies issue.
2021-07-15 12:47:51 +08:00
Omar Chebib
b967dc0dbf
espsystem: add support for RISC-V panic backtrace
...
Add .eh_frame and .eh_frame_hdr sections to the binary (can be
enabled/disabled within menuconfig). These sections are parsed
when a panic occurs. Their DWARF instructions are decoded and
executed at runtime, to retrieve the whole backtrace. This
parser has been tested on both RISC-V and x86 architectures.
This feature needs esptool's merge adjacent ELF sections feature.
2021-07-13 15:42:40 +08:00
morris
1560d6f1ba
soc: add reset reasons in soc component
2021-07-13 10:45:38 +08:00
Shu Chen
ee23a489b9
esp32h2: code clean up
2021-07-01 19:53:50 +08:00
Shu Chen
5e3689ae0f
esp32h2: update esp_system and esp_hw_support to support esp32h2
2021-07-01 19:53:11 +08:00
Shu Chen
7d4b2617e1
esp32h2: copy esp_system and esp_hw_support from esp32c3
...
Copy the esp32c3 code without any change:
* components/esp_hw_support/include/soc/esp32h2
* components/esp_hw_support/port/esp32h2
* components/esp_system/port/soc/esp32h2
2021-07-01 19:53:11 +08:00
Angus Gratton
2f8debdde1
Merge branch 'feature/esp32s3_remove_rtc_apb_freq_reg' into 'master'
...
esp32s3: Remove APB frequency RTC register
See merge request espressif/esp-idf!11137
2021-06-29 23:50:23 +00:00
Angus Gratton
1969e4b8e5
Merge branch 'bugfix/panic_handler_disable_wdts_early' into 'master'
...
esp_system: Reconfigure the WDTs at the start of the panic handler
Closes IDFCI-361
See merge request espressif/esp-idf!14138
2021-06-29 23:48:40 +00:00
Angus Gratton
57fa883127
esp32s3: Remove APB frequency RTC register
...
Usage of this register changed between ESP32-S3 beta2 and the
final chip.
2021-06-29 17:38:46 +10:00
Angus Gratton
14c7d4965b
esp_system: Reconfigure the WDTs at the start of the panic handler
...
This is mostly important on ESP32 ECO3 with the
ESP32_ECO3_CACHE_LOCK_FIX, because when we stall the other CPU core
before we disable the TG1 WDT then the first CPU can get stuck
in WDT ISR handle_livelock_int routine waiting for the other CPU.
2021-06-28 17:24:39 +10:00
Ivan Grokhotkov
d7928bf1db
Merge branch 'feature/esp32c3_apptrace' into 'master'
...
apptrace: refactoring & esp32c3 support
See merge request espressif/esp-idf!11702
2021-06-28 06:00:24 +00:00
Armando
bc248278f8
spiflash: add octal spi psram support on 727
2021-06-25 19:41:57 +08:00
Alexey Gerenkov
20fd09728f
apptrace: Adds ESP32-C3 support
2021-06-24 13:16:14 +03:00
Marius Vikhammer
f124536948
system: add support for reset reason hint on S3
2021-06-15 13:39:51 +08:00
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