Commit Graph

15811 Commits

Author SHA1 Message Date
Felipe Neves
09bc1580be intr_allocator: add abstractions for priority, type and edge-ack interrupt controller functions 2021-01-05 15:39:46 +08:00
Felipe Neves
810be86f21 freertos/riscv: move freertos aware interrupt code from vectors to the freertos riscv port.
The riscv vectors.S in riscv component contains the trap vector, which is responsible to
defer interrupts and examine if a task context switch is needed, this change cleans up
this code by hiding all freertos details behind on two functions rtos_it_enter/exit and
their implementations are placed in freertos riscv port files.
2021-01-05 15:39:46 +08:00
David Čermák
e1d9abafa8 Merge branch 'bugfix/http_client_test_memcorupt' into 'master'
ci/test: Fix esp_http_client test not to use pointer after free

Closes IDFCI-350

See merge request espressif/esp-idf!11829
2021-01-05 15:15:32 +08:00
Mahavir Jain
2bfdd036b2 Merge branch 'bugfix/http_client_buffer_overread' into 'master'
esp_http_client: Fix buffer overread, update https_request example to use HTTP/1.1

Closes IDFGH-4303 and IDFGH-4288

See merge request espressif/esp-idf!11864
2021-01-05 14:11:06 +08:00
Krzysztof Budzynski
cf84ae1e62 Merge branch 'docs/provide_user_guide_for_esp32-DevKitM-1' into 'master'
provide user guide for  ESP32-DevKitM-1

See merge request espressif/esp-idf!11677
2021-01-05 12:32:13 +08:00
Dai Zi Yan
703aef654b provide user guide for ESP32-DevKitM-1 2021-01-05 12:32:08 +08:00
Jiang Jiang Jian
e784469966 Merge branch 'bugfix/spp_data_send_delay' into 'master'
Add API to config QoS

See merge request espressif/esp-idf!9493
2021-01-05 10:32:51 +08:00
Bao Hong De
64d30fa6c4 Add API to config QoS 2021-01-05 10:32:47 +08:00
Michael (XIAO Xufeng)
de365a85db Merge branch 'fix/esp32s3_gpio47' into 'master'
gpio: fixed GPIO47 not available issue on ESP32s3

See merge request espressif/esp-idf!11867
2021-01-05 10:25:30 +08:00
Angus Gratton
60ec13b122 Merge branch 'feature/make_uf2' into 'master'
tools: Wrap flash binaries into a UF2 file for flashing through USB MSC

See merge request espressif/esp-idf!11587
2021-01-05 07:17:27 +08:00
Michael (XIAO Xufeng)
6b5377f11a gpio: fixed GPIO47 not available issue on ESP32s3 2021-01-04 20:21:06 +08:00
Shubham Kulkarni
3452e06e7e https_request example: Perform request over HTTP/1.1 to enable keepalive timeout
Closes: https://github.com/espressif/esp-idf/issues/6133
2021-01-04 15:39:39 +05:30
Shubham Kulkarni
6337ce9c3c esp_http_client.c: Clear raw_len for response buffer after dispatching HTTP_EVENT_ON_FINISH event
Closes: https://github.com/espressif/esp-idf/issues/6146
2021-01-04 15:39:39 +05:30
Michael (XIAO Xufeng)
56cdf4268f Merge branch 'ci/alternative_flash_performance' into 'master'
ci: only run flash performance test on specified runners

Closes IDF-2520

See merge request espressif/esp-idf!11673
2021-01-04 15:35:53 +08:00
Angus Gratton
8c6dba18f2 Merge branch 'feature/esp32c3_panic_support' into 'master'
Add panic support to ESP32C3 board

Closes IDF-2543 and IDF-2386

See merge request espressif/esp-idf!11741
2021-01-04 10:40:50 +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
a90dcfba1a panic: Add support for SoC-level panic
Activate "invalid access to cache raises panic (PRO CPU)" CI unit
test in order to test SoC-level panics.
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
Krzysztof Budzynski
af59168983 Merge branch 'docs/update_docs_for_doc_751' into 'master'
docs: update the documents based on customer feedbacks

See merge request espressif/esp-idf!11751
2020-12-31 15:44:44 +08:00
Angus Gratton
e20833124e Merge branch 'feature/c3_build_master' into 'master'
C3: build on master

Closes IDF-1757 and IDF-2489

See merge request espressif/esp-idf!11822
2020-12-31 15:06:55 +08:00
Wang Fang
cf505d0ead docs: update the documents based on customer feedbacks 2020-12-31 05:40:43 +00:00
Angus Gratton
db4fb49432 esp_common: Fix issue with SPIRAM_ALLOW_BSS_SEG_EXTERNAL_MEMORY not visible on c3
Create a common symbol name to use from linker.lf fragments
2020-12-31 15:20:05 +11:00
Marius Vikhammer
eed154a583 esp_system: sync with C3 changes
Fixes interrupt allocation issue
2020-12-31 15:20:05 +11:00
Marius Vikhammer
f54e9269f3 esp_system: Don't compile sleep_mode.c on c3 2020-12-31 15:20:05 +11:00
Marius Vikhammer
5f130ff909 CI: enable C3 template app 2020-12-31 15:20:05 +11:00
Marius Vikhammer
68608f804c esp32c3: Misc fixes needed to build & run 2020-12-31 15:20:05 +11:00
Michael (XIAO Xufeng)
7f147e09e9 Merge branch 'fix/efuse_utility_early_logd' into 'master'
efuse: revert EARLY_LOGD to LOGD

See merge request espressif/esp-idf!11828
2020-12-31 11:46:57 +08:00
Marius Vikhammer
0301c66bf0 esp32c3: Disable components that are not yet supported 2020-12-31 09:27:38 +11:00
Marius Vikhammer
3458469204 newlib: Update esp32c3 ROM support, use single init function 2020-12-31 09:27:37 +11:00
Jakob Hasse
a7683fc256 [system/tools]: gdbstub support C3
Closes IDF-1757
Closes IDF-2489
2020-12-31 09:27:00 +11:00
Marius Vikhammer
77eb6b1397 System: add C3 root kconfig settings 2020-12-31 09:27:00 +11:00
Angus Gratton
62cc864cbe Merge branch 'feature/c3_hw_sup_merge_master' into 'master'
esp_hw_support: merge C3 changes to master

See merge request espressif/esp-idf!11820
2020-12-30 20:06:23 +08:00
Mahavir Jain
7d387cf65e Merge branch 'fix/i2c_pm_lock' into 'master'
i2c: Acquire PM lock after acquiring mutex

See merge request espressif/esp-idf!11704
2020-12-30 15:44:34 +08:00
Michael (XIAO Xufeng)
707b1bd9b1 efuse: revert EARLY_LOGD to LOGD
introduced in 5cc329b9d0
2020-12-30 12:37:44 +08:00
David Cermak
2c50ec2cf9 ci/test: Fix esp_http_client test not to use pointer after free 2020-12-30 05:33:51 +01:00
chaijie
d505474f78 1. Fix CPU switch to 160M issue;
2. increase lightsleep voltage to make sure wakeup successfully;
3. add judgement code to whether wait or not when switch CPU frequency.
2020-12-30 12:32:31 +08:00
Marius Vikhammer
eb788deb03 esp_hw_support: merge C3 changes to master
Merge RTC related C3 changes to master
2020-12-30 12:20:41 +08:00
Angus Gratton
ec75f923ef Merge branch 'ci/raise_esptool_errors' into 'master'
ci: Don't swallow exception details from flashing process

See merge request espressif/esp-idf!11803
2020-12-30 11:22:57 +08:00
Angus Gratton
641b92da75 Merge branch 'feature/add_c3_target_master' into 'master'
tools: merge C3 changes into master

Closes IDF-2364 and IDF-2564

See merge request espressif/esp-idf!11800
2020-12-30 10:39:14 +08:00
He Yin Ling
faeaddbd22 Merge branch 'bugfix/ci_socket_tests' into 'master'
ci: Made socket example tests more robust

Closes IDFCI-325

See merge request espressif/esp-idf!11733
2020-12-30 09:52:25 +08:00
Angus Gratton
1760f47681 Merge branch 'feature/newlib_lock_retarget' into 'master'
newlib 3.3.0 _RETARGETABLE_LOCKING support

Closes IDF-2129

See merge request espressif/esp-idf!9141
2020-12-30 09:11:35 +08:00
Ivan Grokhotkov
7ab57605cb test: panic: make stack overflow test more robust
The previous approach was to allocate an array on the stack, and
have the array extend past the stack size. This worked by would
result in SP being moved near the end of the stack. If an interrupt
triggered at that time, interrupt prologue would try to save the
context to the stack, tripping the stack overflow watchpoint.

Replacing this with the approach which doesn't move the SP and simply
writes to decreasing addresses from SP, until stack overflow check
triggers.
2020-12-30 01:10:09 +01:00
Marius Vikhammer
7fe16bae25 tools: merge C3 changes into master 2020-12-30 07:04:12 +08:00
Ivan Grokhotkov
de798541dc tools: use riscv32-esp-elf toolchain for ESP32-S2 RISC-V ULP
riscv32-esp-elf toolchain (used for ESP32-C3) can also be used for
ESP32-S2 RISC-V ULP coprocessor.

This removes the riscv-none-embed-gcc toolchain which was originally
used for the ULP, and updates the docs and CMake files to use
riscv32-esp-elf.

Some flags are cleaned up and workarounds removed from CMake toolchain
file.
2020-12-29 19:19:18 +00:00
David Čermák
39cbf2f7ed Merge branch 'bugfix/mdns_resolve_nonstrict_answers' into 'master'
mdns: Allow resolve (it's own) non-strict answers

Closes WIFI-3106 and IDFGH-4352

See merge request espressif/esp-idf!11586
2020-12-30 01:55:01 +08:00
Roland Dobai
548ea1bdd5 tools: Wrap flash binaries into a UF2 file for flashing through USB MSC
@mmoskal This commit adds basic support for UF2 into ESP-IDF.
2020-12-29 18:14:47 +01:00
Ivan Grokhotkov
b7b9ea4361 newlib: add _RETARGETABLE_LOCKING support
This adds support for the retargetable locking implementation in
newlib 3. This feature will be enabled in the future toolchain builds.
With the present version of the toolchain, this code doesn't get used.

When _RETARGETABLE_LOCKING gets enabled, newlib locking implementation
will be modified as follows:

- Legacy ESP-specific _lock_xxx functions are preserved. This is done
  because ROM copies of newlib in ESP32 and ESP32-S2 rely on these
  functions through the function pointer table. Also there is some
  code in IDF which still uses these locking functions.

- New __retarget_lock_xxx functions are introduced. Newlib expects
  these functions to be provided by the system. These functions work
  pretty much the same way as the ESP-specific _lock_xxx functions,
  except one major difference: _lock_acquire receives the lock pointer
  by value, and as such doesn't support lazy initialization.

- Static locks used by newlib are now explicitly initialized at
  startup. Since it is unlikely that these static locks are used at
  the same time, all compatible locks are set to point to the same
  mutex. This saves a bit of RAM. Note that there are still many locks
  not initialized statically, in particular those inside FILE
  structures.
2020-12-29 16:18:04 +01:00
Ivan Grokhotkov
b1c4107275 vfs: zero-initialize struct stat in *_stat and *_fstat handlers
...otherwise some fields will contain garbage values.
This wasn't noticed until HAVE_BLKSIZE got enabled in newlib builds.
2020-12-29 16:18:04 +01:00
Ivan Grokhotkov
7f3b16a99d freertos: always enable static allocation
to use it for newlib locks
2020-12-29 16:18:04 +01:00