Commit Graph

85 Commits

Author SHA1 Message Date
Michael (XIAO Xufeng)
3c283b490a Merge branch 'feature/async_memcpy' into 'master'
async_mcp: support async memory copy on esp32s2 and esp32s3

See merge request espressif/esp-idf!10242
2020-09-17 16:54:28 +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
Felipe Neves
e67162a7ea startup: namespaced start_app and start_app_other_core to avoid user code collision 2020-09-15 16:05:19 -03:00
Felipe Neves
a1e5dd58b2 startup: moved init core functions out of iram memory 2020-09-15 16:02:12 -03: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
Ivan Grokhotkov
77afbd51ae sleep: fix esp32 light sleep duration
Commit aa43ed8 was fixing the light sleep overhead calculation for
ESP32-S2. However it also changed the overhead values for ESP32,
resulting in incorrect light sleep time. This caused regression in
light sleep example test.

Revert the original values for the ESP32, keep different set of values
for each chip.
2020-09-09 23:34:54 +02:00
ninh
aa43ed8bb8 fix reboot or crash when enable lightsleep on esp32s2 2020-09-07 15:38:00 +08:00
Ivan Grokhotkov
9d3add538b Merge branch 'feature/toolchain_2020r3' into 'master'
Update toolchain to esp-2020r3

See merge request espressif/esp-idf!10250
2020-09-04 14:07:24 +08:00
Anton Maklakov
f63bbc169e toolchain: fix the C++ exception workaround for new toolchains that don't have such hook 2020-09-03 13:50:54 +07:00
Mahavir Jain
7f5b6d1843 Merge branch 'bugfix/time_spinlock' into 'master'
newlib: revert back from spinlocks to using newlib locks for time.h

Closes IDFGH-3858

See merge request espressif/esp-idf!10130
2020-09-03 12:34:29 +08:00
Marius Vikhammer
6fb996b1ac newlib: revert back from spinlocks to using newlib locks for time.h
Spinlocks from spinlock.h do not disable the scheduler and thus cannot safely
be directly used as a locking mechanism. A task holding the lock can get
pre-empted, and at that point the new running task will also be allowed to
take the spinlock and access whatever it was protecting.

Another issue is that the task holding a spinlock could migrate to a different
core which in turn would cause the application to fail asserts. The current
implementation assumes the core that takes the lock is also the core that
releases it.

Closes https://github.com/espressif/esp-idf/issues/5762
2020-09-03 09:56:02 +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
KonstantinKondrashov
b1e667cdcc esp_system: Disable UTs for ESP32-S2 linked to sleep mode
- disable source trigger behavior
- light sleep followed by deep sleep
- wake up from light sleep using timer
2020-09-01 17:10:28 +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
Renz Bagaporo
3f6e366f56 esp_system: force RTC_SLEEP_PD_XTAL on ESP32 via get pdflags
Based on the original code (`esp32/sleep_modes.c`), `RTC_SLEEP_PD_XTAL`
is always given as an argument to `esp_sleep_start`. Enforce this in
function to get power down flags to avoid redundancy.
2020-08-17 19:09:24 +08:00
Renz Bagaporo
0db3edd490 esp32: move sleep test to esp_system 2020-08-17 19:09:24 +08:00
Renz Bagaporo
fe65bf00b1 esp_system: use ext0, ext1, ulp wakeup prepare hal 2020-08-17 19:09:24 +08:00
Renz Bagaporo
4f5135030f esp_system: remove register level operations for timer wakeup 2020-08-17 19:09:24 +08:00
Renz Bagaporo
b30522f701 esp32, esp32s2: move sleep modes code to esp_system 2020-08-17 19:09:23 +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
c70c227591 esp_system: private system time functions for now 2020-08-11 17:52:36 +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
Ivan Grokhotkov
16c73edc67 Merge branch 'refactor/add_alias_name_for_ets_common_api' into 'master'
esp_rom: extract common ets apis into esp_rom_sys.h

See merge request espressif/esp-idf!9701
2020-07-28 15:04:55 +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
Renz Bagaporo
837052c86f esp_system: restore deleted no stack check flag
Restores the change of startup refactor changes removed the no stack
check protection flag when compiling the source file that contains
execution of constructors - which contains function to setup stack
guard. Restore that and update the source file, since this is in the 2nd
stage of the startup now.

Closes https://github.com/espressif/esp-idf/issues/5617
2020-07-22 11:57:18 +08: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
Angus Gratton
5c58564f90 Merge branch 'feature/support_for_esp32_pico_v3_02' into 'master'
psram: support for esp32-pico-v3-02

See merge request espressif/esp-idf!9405
2020-07-21 13:28:26 +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
6316e6eba2 esp_system: add CONFIG_ESP_SYSTEM_RTC_EXT_CRYS 2020-07-20 11:15:24 +08:00
Ivan Grokhotkov
c943516c96 esp_system: fix compilation error when security features are enabled
affects CONFIG_SECURE_DISABLE_ROM_DL_MODE, CONFIG_SECURE_ENABLE_SECURE_ROM_DL_MODE
2020-07-17 21:04:08 +02: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
Angus Gratton
24e49cc21d Merge branch 'refactor/panic_handler_follow_ups' into 'master'
Panic handler follow ups

See merge request espressif/esp-idf!7732
2020-07-15 08:21:09 +08:00
Shubham Kulkarni
d4ce5de16e Include header file soc/cpu.h in memprot.c and system_api.c
This fixes build issues with Vanilla FreeRTOS
2020-07-10 13:56:42 +05:30