Commit graph

8301 commits

Author SHA1 Message Date
ChenJianxing
3e3753faf4 update WiFi libs for both esp32 and esp32s2. 2020-02-13 16:58:36 +08:00
Ivan Grokhotkov
8d8337e80c Merge branch 'feat/sdspi_polling_spi' into 'master'
sdspi: allow using sdspi with other devices on the same bus

See merge request espressif/esp-idf!3177
2020-02-13 15:18:59 +08:00
Jiang Jiang Jian
b42fc77e11 Merge branch 'bugfix/ble_mesh_utf_8_comma' into 'master'
ble_mesh: Kconfig included a UTF-8 comma

See merge request espressif/esp-idf!7574
2020-02-13 11:10:43 +08:00
lly
326ccfca88 ble_mesh: Fix compile error with c++ files 2020-02-12 21:24:32 +08:00
Jiang Jiang Jian
dbe1164ecc Merge branch 'bugfix/fix_airkiss_bug' into 'master'
fix the bug for Airkiss

Closes WIFI-1670

See merge request espressif/esp-idf!7347
2020-02-12 20:12:19 +08:00
Chinmay Chhajed
6d96217204 Future events scheduling error in case of wifi and bluetooth.
After this commit, global interrupts will be disabled before taking
current time for scheduling further bluetooth events. Earlier disabling
interrupts was taking some time because of which WiFi events were
interrupting in current bluetooth scheduling.

Signed-off-by: Chinmay Chhajed <chinmay.chhajed@espressif.com>
2020-02-12 20:04:21 +08:00
lly
bfb27addda ble_mesh: Kconfig included a UTF-8 comma 2020-02-12 18:21:09 +08:00
Ivan Grokhotkov
b942327a25 Merge branch 'bugfix/esp_netif_hostname' into 'master'
esp_netif: fix get/set hostname API to reflect user settings

See merge request espressif/esp-idf!7547
2020-02-12 17:53:58 +08:00
zhangyanjiao
50b9ccf8b4 fix the bug for Airkiss
Closes https://github.com/espressif/esp-idf/issues/3362
2020-02-12 08:27:09 +00:00
Jiang Jiang Jian
cedea18acb Merge branch 'bugfix/wifi_clear_phy_status_when_cpu_start' into 'master'
soc: clear PHY status when cpu start

Closes AUD-1125

See merge request espressif/esp-idf!7493
2020-02-12 15:34:46 +08:00
Michael (XIAO Xufeng)
48a62b3490 sdspi: use polling transactions to increase reading speed. 2020-02-12 15:16:19 +08:00
Michael (XIAO Xufeng)
067f3d21c9 sdspi, vfs_fat: allow sharing SPI bus among devices, and mounting multiple SD cards 2020-02-12 15:16:08 +08:00
Michael (XIAO Xufeng)
278634dcbd sdspi: support crc16_be for esp32s2 2020-02-12 15:15:46 +08:00
Angus Gratton
c1d0daf36d Merge branch 'refactor/restructure_soc_component' into 'master'
soc: separate abstraction, description and implementation

See merge request espressif/esp-idf!7261
2020-02-12 07:50:10 +08:00
Ivan Grokhotkov
f9bc4fc08b Merge branch 'bugfix/watchpoint_on_shared_stacl' into 'master'
shared_stack: fixed watchpoint placement on shared stack

See merge request espressif/esp-idf!7522
2020-02-12 06:32:49 +08:00
Bruno Binet
7084015884 Update NVS Partition Generator Utility documentation
to add support for i16, u64, i64 types
2020-02-11 11:18:19 +00:00
Bruno Binet
cab895f459 NVS: add support for i16, u64, i64 types to NVS partition generation tool 2020-02-11 11:18:19 +00:00
Jakob Hasse
9b4815e3c8 ESP Event: multiple registrations to one event
* It's possible now to register the same handler
  several times to one specific event, using
  a dynamic handle object.
2020-02-11 10:52:05 +01:00
Renz Christian Bagaporo
16e0c93e40 ci: solve public headers errors 2020-02-11 14:30:42 +05:00
Renz Christian Bagaporo
b675df4b08 soc: use include_next for including common touch sensor hal header 2020-02-11 14:30:42 +05:00
Renz Christian Bagaporo
1f2e2fe8af soc: separate abstraction, description and implementation 2020-02-11 14:30:42 +05:00
Jiang Jiang Jian
7f4309d0f1 Merge branch 'feature/esp32_5p0_code_optimize' into 'master'
controller flash code optimize

See merge request espressif/esp-idf!7409
2020-02-11 17:29:08 +08:00
Jiang Jiang Jian
7647b5c668 Merge branch 'bugfix/eapol_log_verbosity' into 'master'
wpa_supplicant: Add wpa_supllicant debug logging as a configurable option

Closes WIFI-976

See merge request espressif/esp-idf!7289
2020-02-11 16:10:07 +08:00
David Cermak
3904be6b0f ESP-NETIF: add unit test for get/set hostname API 2020-02-11 07:36:32 +01:00
David Cermak
7c8cbe02e4 ESP-NETIF: fix get/set hostname API to reflect user settings
On startup of the common interface (ethernet, wifi), the lwip netif hostname was assigned to confg value .
Fixed to assign to esp-netif hostname if it exists

Closes https://github.com/espressif/esp-idf/issues/4737
2020-02-11 07:35:12 +01:00
Angus Gratton
c1eef95ec1 Merge branch 'bugfix/test_fp_switch' into 'master'
esp32: use semaphore in FP switch test, raise worker task priority

See merge request espressif/esp-idf!7526
2020-02-11 12:05:04 +08:00
Angus Gratton
ea34f3bb27 drivers: Remove high speed mode from LEDC docs for ESP32-S2, update headers to match 2020-02-11 14:36:47 +11:00
David Cermak
50588ff3f7 esp-compiler: add designated init macros to make esp configuration pattern viable under C++ 2020-02-10 19:40:28 +01:00
David Cermak
d8da662dec ESP-NETIF: Add unit test for additional API 2020-02-10 19:40:23 +01:00
Felipe Neves
9c8289b0d9 shared_stack: using watchpoint 1 to monitor the shared_stack instead of watchpoint 0 2020-02-10 12:03:30 -03:00
Felipe Neves
33c9826372 shared_stack: fixed watchpoint placement on shared_stack 2020-02-10 12:03:30 -03:00
David Cermak
02cdef086f ESP-NETIF: easier creation for WiFi interfaces with custom parameters
Closes https://github.com/espressif/esp-idf/issues/4611
Closes IDFGH-2523
2020-02-10 14:22:07 +01:00
Ivan Grokhotkov
7304651320 esp32: use semaphore in FP switch test, raise worker task priority 2020-02-10 13:36:43 +01:00
Angus Gratton
c5d05b5c4f Merge branch 'feature/usb_support4soc' into 'master'
Added usb registers structures

See merge request espressif/esp-idf!6811
2020-02-10 18:00:39 +08:00
Ivan Grokhotkov
f11b8f14c7 Merge branch 'feature/support_enc28j60' into 'master'
Added ENC28J60 Example

Closes IDFGH-2295

See merge request espressif/esp-idf!6877
2020-02-10 17:18:38 +08:00
Ivan Grokhotkov
70d99fa986 Merge branch 'bugfix/stage_two_bootloader_linking' into 'master'
Fixes accessing some files from 2nd part of the bootloader.

See merge request espressif/esp-idf!7531
2020-02-10 17:13:12 +08:00
Andrei Gramakov
4e8b4b9e49 soc: add USB peripheral register definitions, hal level, reg map, etc 2020-02-10 08:33:39 +00:00
Angus Gratton
59c39173f2 Merge branch 'feature/mqtt_unit_test' into 'master'
mqtt: basic set of unit tests, modify example tests to check ssl connect

See merge request espressif/esp-idf!7393
2020-02-10 15:10:56 +08:00
Supreet Deshpande
2bf329eb2c Fixes accessing some files from 2nd part of the bootloader. 2020-02-10 12:34:18 +05:30
morris
9e59be1aab ethernet: add enc28j60 example 2020-02-10 12:56:14 +08:00
Henry Gilbert
eda07acc81 Add ENC28J60 Ethernet Driver
Merges https://github.com/espressif/esp-idf/pull/4435
2020-02-10 12:56:14 +08:00
Ivan Grokhotkov
966f4227ad Merge branch 'refactor/simplify_console_examples' into 'master'
console: simplify console examples

Closes IDF-1110

See merge request espressif/esp-idf!7040
2020-02-10 04:18:58 +08:00
Konstantin Kondrashov
daa9c30c8e rmt/esp32s2: Update RMT: reg, struct, LL and test_utils/ref_clock.c 2020-02-09 20:03:31 +08:00
Ivan Grokhotkov
4bfd0b961b Merge branch 'fix/spi_on_esp32s2' into 'master'
spi: support esp32s2

See merge request espressif/esp-idf!7432
2020-02-09 19:45:16 +08:00
Ivan Grokhotkov
e5cb972c3a Merge branch 'bugfix/fix_esp32s2_flash_rw' into 'master'
flash(esp32s2): fix setting address field in spi user mode.

See merge request espressif/esp-idf!7380
2020-02-09 18:05:22 +08:00
Mahavir Jain
577abc4472 Merge branch 'bugfix/newlib_nano_lib_linking' into 'master'
esp_rom: link newlib nano from ROM only if SPIRAM cache workaround is disabled

See merge request espressif/esp-idf!7527
2020-02-08 12:48:12 +08:00
Ivan Grokhotkov
98bb3772e0 soc: spi_flash LL fixes 2020-02-07 16:18:31 +01:00
Wangjialin
aaf119e930 flash(esp32s2): fix setting address field in spi user mode. 2020-02-07 16:10:51 +01:00
suda-morris
75cadc2e41 console: simplify examples
1. simplify console examples
2. add "quit" command
3. support console command overwrite
4. add API reference
2020-02-07 20:15:06 +08:00
Mahavir Jain
3803b17048 esp_rom: link newlib nano from ROM only if SPIRAM cache workaround is disabled 2020-02-07 16:17:25 +05:30
David Cermak
3ecb731c23 mqtt: example test to check connection with different ssl parameters 2020-02-07 10:35:40 +01:00
David Cermak
b8e47eb56f mqtt: add basic set of unit tests 2020-02-07 10:35:40 +01:00
Ivan Grokhotkov
13623ef430 Merge branch 'feature/esp32s2_image_version' into 'master'
bootloader_support: add esp_chip_id_t value for ESP32-S2

See merge request espressif/esp-idf!7521
2020-02-07 16:43:21 +08:00
Angus Gratton
613c4e985f Merge branch 'doc/multi_target' into 'master'
docs: Multi target build support

Closes IDF-523

See merge request espressif/esp-idf!6791
2020-02-07 15:20:53 +08:00
Angus Gratton
f91080637c Merge branch 'bugfix/part_gen_subtype_fix' into 'master'
partition_table: Fix subtype in gen_esp32part.py

Closes IDFGH-2646

See merge request espressif/esp-idf!7508
2020-02-07 14:31:02 +08:00
Angus Gratton
eb85cfb9f6 docs: Temporarily mark RF calibration chapter as ESP32 only
Can be re-enabled once ESP32-S2 calibration support is added
2020-02-07 16:37:45 +11:00
Angus Gratton
11fac8637a docs: Resolve doxygen & Sphinx warnings 2020-02-07 16:37:45 +11:00
Shubham Kulkarni
e1c0fb0c62 log: Check for ISR context and use proper API to get Tick Count 2020-02-07 04:49:53 +00:00
Ivan Grokhotkov
0d69ed8620 bootloader_support: add esp_chip_id_t value for ESP32-S2 2020-02-06 19:50:14 +01:00
Sagar Bijwe
4f93a707f8 WiFi: Add support for ESP32S2
1) Update WiFi and PHY libs for ESP32S2.
2) Remove KConfig options ESP32S2 PHY lib selection.
3) Change target macros from ESP32S2BETA to ESP32S2
2020-02-06 14:19:30 +05:30
boarchuz
d0eb6c9701 Fix subtype in PartitionTable.find_by_type
Fix ptype->subtype

Closes https://github.com/espressif/esp-idf/pull/4723
2020-02-06 08:48:35 +01:00
Angus Gratton
fec005ec15 Merge branch 'bugfix/nvs_missing_get' into 'master'
NVS: Fixed missing implementations for string/blob

See merge request espressif/esp-idf!7492
2020-02-06 14:31:16 +08:00
Angus Gratton
fda4efa300 Merge branch 'bugfix/rtc_wdt_timeout' into 'master'
soc/esp32s2: Fix setting timeout for RTC_WDT. ESP32-S2 uses 90KHz instead of 150kHz

See merge request espressif/esp-idf!7499
2020-02-06 14:27:35 +08:00
Angus Gratton
bd9cb9a307 Merge branch 'bugfix/spiffs_case_when_use_mtime_is_not_set' into 'master'
spiffs: Fix for case when CONFIG_SPIFFS_USE_MTIME is not defined

See merge request espressif/esp-idf!7496
2020-02-06 14:26:42 +08:00
Angus Gratton
34b1ea9b3d Merge branch 'feature/netif_ppp_authtype_none' into 'master'
esp-netif: PPPoS fixes

Closes IDFGH-2553 and IDFGH-2548

See merge request espressif/esp-idf!7488
2020-02-06 14:14:43 +08:00
Angus Gratton
98618333a1 Merge branch 'bugfix/wps_config_init' into 'master'
WPS_CONFIG_INIT_DEFAULT(type) error

See merge request espressif/esp-idf!7311
2020-02-06 14:04:31 +08:00
Konstantin Kondrashov
739eb05bb9 esp32: add implementation of esp_timer based on TG0 LAC timer
Closes: IDF-979
2020-02-06 14:00:18 +08:00
Mahavir Jain
f515db1a3e Merge branch 'bugfix/fix_ota_with_chunked_servers' into 'master'
Fixed OTA with chunked servers

See merge request espressif/esp-idf!7457
2020-02-05 16:54:01 +08:00
Mahavir Jain
229b599494 Merge branch 'bugfix/remove_cjson_test_file_from_cmake_build' into 'master'
cJSON: include only source file objects for cmake build

See merge request espressif/esp-idf!7498
2020-02-05 16:46:29 +08:00
KonstantinKondrashov
47a5d14e59 soc/esp32s2: Fix setting timeout for RTC_WDT. ESP32-S2 uses 90KHz instead of 150kHz 2020-02-05 15:16:28 +08:00
Shubham Kulkarni
ba31458347 OTA: Fixed OTA with chunked servers and added example_test with chunked server 2020-02-05 11:56:37 +05:30
Mahavir Jain
e366b6ac21 cJSON: include only source file objects for cmake build
Test file can cause build issues in some cases, since it has its own main() function
2020-02-05 11:14:23 +05:30
KonstantinKondrashov
e85e99189f spiffs: Fix for case when CONFIG_SPIFFS_USE_MTIME is not defined
Closes: 2c793cef06
2020-02-05 03:00:22 +08:00
Ivan Grokhotkov
50466a5e4f Merge branch 'bugfix/esp32s2_ldscripts' into 'master'
esp32s2: LD script fixes/improvements and re-enable SystemView examples

Closes IDF-1357, IDF-1354, and IDF-1346

See merge request espressif/esp-idf!7431
2020-02-05 02:09:29 +08:00
Mahavir Jain
0b8f17e618 Merge branch 'nimble/bugfix_ble_hs_hci_rx_evt' into 'master'
NimBLE: Update submodule to fix bug in `ble_hs_hci_rx_evt`

See merge request espressif/esp-idf!7494
2020-02-04 19:35:50 +08:00
Ivan Grokhotkov
41631587f8 Merge branch 'feature/esp32s2_brownout' into 'master'
esp32s2: add brownout detector support

Closes IDF-751

See merge request espressif/esp-idf!7428
2020-02-04 17:00:46 +08:00
Prasad Alatkar
bc7ce8e584 Update NimBLE submodule to fix bug in ble_hs_hci_rx_evt 2020-02-04 12:27:47 +05:30
Xia Xiaotian
1833b8aeab soc: clear PHY status when cpu start 2020-02-04 14:37:16 +08:00
Jakob Hasse
e228a2102d Fixed missing implementations 2020-02-03 17:18:21 +01:00
Angus Gratton
6d2fa2e0f1 Merge branch 'feature/support_app_update_ut_for_s2_chip' into 'master'
app_update(s2): Enable app_update UTs

Closes IDF-1007

See merge request espressif/esp-idf!7415
2020-02-03 14:56:23 +08:00
Mahavir Jain
9ee50266cc Merge branch 'nimble/misc_host_flow_ctrl_changes' into 'master'
NimBLE: Misc fixes in NimBLE host flow control and `blecent` example

See merge request espressif/esp-idf!7042
2020-02-03 13:59:45 +08:00
David Cermak
7d45bfda21 esp_netif_lwip_ppp: fix posting ip-event data
Closes https://github.com/espressif/esp-idf/issues/4634
2020-01-31 15:21:30 +01:00
Axel Lin
3f5d19016a esp_netif_lwip_ppp: Allow esp_netif_ppp_set_auth set auth_type with NETIF_PPP_AUTHTYPE_NONE
The ppp_set_auth() is guard by #if PPP_AUTH_SUPPORT in lwIP, so
make it consistent. This also simplify the code a bit because the code
in #if PAP_SUPPORT guard and #if CHAP_SUPPORT guard are exactly the same.

Once NETIF_PPP_AUTHTYPE_NONE added to esp_netif_auth_type_t, it also allows
setting NETIF_PPP_AUTHTYPE_NONE with this change.

Signed-off-by: Axel Lin <axel.lin@gmail.com>

Merges https://github.com/espressif/esp-idf/pull/4639
2020-01-31 15:19:09 +01:00
Axel Lin
57a56b55c0 esp_netif_ppp: Add NETIF_PPP_AUTHTYPE_NONE to esp_netif_auth_type_t
To allow setting auth_type to PPPAUTHTYPE_NONE, add NETIF_PPP_AUTHTYPE_NONE
to esp_netif_auth_type_t.
So even PAP/CHAP are enabled in lwIP, the application still can set
auth_type to PPPAUTHTYPE_NONE.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
2020-01-31 13:41:50 +01:00
KonstantinKondrashov
aa42177e19 app_update(s2): Enable app_update UTs
Closes: IDF-1007
2020-01-31 10:34:08 +00:00
June
4f9c3e977e controller flash code optimize
fix ld file to link 3 bt rom functions
2020-01-31 06:29:46 +00:00
Hrudaynath Dhabe
9ebd2cc0f6 Fix wps config for support with gnu++11 as well as c99. 2020-01-31 05:36:41 +00:00
Hrudaynath Dhabe
ec50c5344b wpa_supplicant: Fix configurable debug log feature's warning issue 2020-01-31 05:34:07 +00:00
GOPTIONS\pfrost
851658109c Reduce log level of hexdumps to verbose
Revert "Reduce log level of hexdumps to verbose"

Add a menuconfig option to enable or disable the logging in wpa_supplicant

Clarify help message
2020-01-31 05:34:07 +00:00
Prasad Alatkar
4047f7e180 NimBLE: Misc changes in host flow control, ble_gap_unpair, ble_hs_hci_rx_evt & example
- Add menuconfig option for NimBLE host flow control
- Include changes in `blecent` example from upstream PR!702
- add ble_hs_lock in ble_gap_unpair Upstream PR!584
- ble_hs_hci_rx_evt, upstream PR!738

Closes https://github.com/espressif/esp-idf/issues/4243
2020-01-31 10:46:55 +05:30
Roland Dobai
5454c268f7 Docs: Omit kconfig configurations not available for the target 2020-01-30 10:30:06 +01:00
Angus Gratton
86034ad049 Merge branch 'feature/freertos_fpu_isr' into 'master'
feature/fpu: Enable usage of FPU inside of a ISR

Closes IDF-100

See merge request espressif/esp-idf!7348
2020-01-30 13:38:37 +08:00
Ivan Grokhotkov
ac1834e288 Merge branch 'feature/freertos_xtensa_folder' into 'master'
freertos: moved all xtensa specific files into a separated folder

See merge request espressif/esp-idf!7377
2020-01-29 17:04:34 +08:00
Angus Gratton
f5b82c5b1f Merge branch 'bugfix/esptool_elf2image_flashmode' into 'master'
esptool_py: pass flash mode/frequency/size to elf2image

See merge request espressif/esp-idf!7440
2020-01-28 14:22:35 +08:00
Felipe Neves
429712c6eb freertos: moved all xtensa specific files into a separated folder 2020-01-27 16:05:30 -03:00
Felipe Neves
5cbb3f05c0 freertos: Added experimental, optional FPU usage on level 1 ISR 2020-01-27 10:55:03 -03:00
Felipe Neves
670ea56df2 freertos: added fpu in isr test case 2020-01-27 10:55:03 -03:00
Michael (XIAO Xufeng)
7026087dc0 spi: support esp32s2 2020-01-26 17:24:12 +08:00
Michael (XIAO Xufeng)
9d41829e09 spi: update esp32s2 hardware description files 2020-01-26 17:24:11 +08:00
Ivan Grokhotkov
3eb190ce48 esp32s2: fix interrupt names used by SystemView 2020-01-24 10:48:38 +01:00
Ivan Grokhotkov
bb59ca3ab3 esp32s2: add missing ESP32S2_MEMMAP_TRACEMEM_TWOBANKS option
It is used when app-trace is enabled, to provide ping-pong buffers.
2020-01-24 10:48:38 +01:00
Ivan Grokhotkov
02a99e84c8 esp32s2: move trace memory reservation to soc_memory_layout.c 2020-01-24 10:48:38 +01:00
Ivan Grokhotkov
110f3c9ff5 esp32s2: put static .data and .bss directly after .iram.text
This results in a single large heap section instead of two smaller
ones.

Closes IDF-1354
2020-01-24 10:48:38 +01:00
Ivan Grokhotkov
27bff3517f esp32s2: fix "loadable ELF" build
Closes IDF-1346
2020-01-24 10:48:20 +01:00
Ivan Grokhotkov
fd15acb50f esp32s2: bootloader: move iram_loader segment higher
This gives extra 16kB for the application's static .data/.bss
2020-01-24 10:48:20 +01:00
Ivan Grokhotkov
354ce68dce soc: move reserved regions out of memory_layout_utils.c
These definitions have ended up being chip specific. Moving them into
respective soc_memory_layout.c makes the whole picture of memory
regions easier to see, and also makes adding support for new chips
easier.
2020-01-24 10:48:20 +01:00
Ivan Grokhotkov
81f0e7d90f Merge branch 'bugfix/esp32s2_freertos_tls' into 'master'
esp32s2: fix THREADPTR calculation, re-enable FreeRTOS TLS tests

Closes IDF-1239

See merge request espressif/esp-idf!7403
2020-01-24 17:47:43 +08:00
Ivan Grokhotkov
9fafdb7e6d Merge branch 'bugfix/esp32s2_newlib_nano' into 'master'
esp32s2: esp_rom: separate nano formatting functions, fix newlib tests

See merge request espressif/esp-idf!7447
2020-01-24 17:46:54 +08:00
Ivan Grokhotkov
6e527fb763 mbedtls: temporary disable HW crypto for ESP32S2
To be re-enabled once HW crypto accelerators support is merged:
IDF-714, IDF-716, IDF-803.
2020-01-23 18:14:10 +01:00
Ivan Grokhotkov
16e63f6a3f esp32s2: esp_rom: separate nano formatting functions, fix newlib tests 2020-01-23 18:07:37 +01:00
Ivan Grokhotkov
caef7ad9f2 esp32, esp32s2beta: move brownout.c to esp_common 2020-01-23 13:44:19 +01:00
Ivan Grokhotkov
70752baba4 esp32s2: add brownout detector support
1. add brownout detector HAL for esp32 and esp32s2
2. enable brownout reset for esp32 rev. 1 and above
3. add approximate brownout detector levels for esp32s2
2020-01-23 13:44:19 +01:00
Ivan Grokhotkov
09950797cb esptool_py: pass flash mode/frequency/size to elf2image
Otherwise the image gets generated with wrong parameters, and the
binary does not boot unless it has been "fixed" by esptool during the
upload.
2020-01-23 12:19:15 +01:00
Ivan Grokhotkov
46035032cf esp32s2: fix inconsistency between reg and struct headers
test_mux register doesn't exist in RTCCNTL anymore, remove it from
struct header. Also remove adc_ll_vref_output implementation, which
depends on that register.
2020-01-23 11:30:11 +01:00
Ivan Grokhotkov
cbb84e8f5e esp32s2: fix THREADPTR calculation, re-enable FreeRTOS TLS tests
1. Clarify THREADPTR calculation in FreeRTOS code, explaining where
the constant 0x10 offset comes from.

2. On the ESP32-S2, .flash.rodata section had different default
alignment (8 bytes instead of 16), which resulted in different offset
of the TLS sections. Unfortunately I haven’t found a way to query
section alignment from C code, or to use a constant value to define
section alignment in the linker script. The linker scripts are
modified to force a fixed 16 byte alignment for .flash.rodata on the
ESP32 and ESP32-S2beta. Note that the base address of .flash.rodata
was already 16 byte aligned, so this has not changed the actual
memory layout of the application.

Full explanation of the calculation below.

Assume we have the TLS template section base address
(tls_section_vma), the address of a TLS variable in the template
(address), and the final relocation value (offset). The linker
calculates:
offset = address - tls_section_vma + align_up(TCB_SIZE, alignment).

At run time, the TLS section gets copied from _thread_local_start
(in .rodata) to task_thread_local_start. Let’s assume that an address
of a variable in the runtime TLS section is runtime_address.
Access to this address will happen by calculating THREADPTR + offset.
So, by a series of substitutions:

THREADPTR + offset = runtime_address THREADPTR = runtime_address - offset
THREADPTR = runtime_address - (address - tls_section_vma + align_up(TCB_SIZE, alignment)) THREADPTR = (runtime_address - address) + tls_section_vma - align_up(TCB_SIZE, alignment)

The difference between runtime_address and address is same as the
difference between task_thread_local_start and _thread_local_start.
And tls_section_vma is the address of .rodata section, i.e.
_rodata_start. So we arrive to

THREADPTR = task_thread_local_start - _thread_local_start + _rodata_start - align_up(TCB_SIZE, alignment).

The idea with TCB_SIZE being added to the THREADPTR when computing
the relocation was to let the OS save TCB pointer in the TREADPTR
register. The location of the run-time TLS section was assumed to be
immediately after the TCB, aligned to whatever the section alignment
was. However in our case the problem is that the run-time TLS section
is stored not next to the TCB, but at the top of the stack. Plus,
even if it was stored next to the TCB, the size of a FreeRTOS TCB is
not equal to 8 bytes (TCB_SIZE hardcoded in the linker). So we have
to calculate THREADPTR in a slightly obscure way, to compensate for
these differences.

Closes IDF-1239
2020-01-23 11:29:22 +01:00
Angus Gratton
d672809080 Merge branch 'refactor/rename_esp32s2beta_to_esp32s2' into 'master'
global: rename esp32s2beta to esp32s2

See merge request espressif/esp-idf!7369
2020-01-23 09:16:30 +08:00
Angus Gratton
fbb5844151 Merge branch 'bugfix/esp_timer_stucks_into_esp_timer_impl_set_alarm' into 'master'
esp_timer/esp32: Fix esp_timer_impl_set_alarm() when CPU and APB freqs are changed

Closes WIFI-1576

See merge request espressif/esp-idf!7303
2020-01-23 09:14:53 +08:00
Hrishikesh Dhayagude
91c8f324a9 NimBLE: Use dynamic buffers instead of static memory.
The NimBLE host buffers that consume a significant amount of memory are
now allocated dynamically.
The advantage is that, the memory can be reclaimed in cases where BLE
is turned off and not required for the current boot cycle
2020-01-23 00:55:51 +08:00
morris
405b0e7f06 esp_rom: splict libgcc and libc outof rom.ld bundle file 2020-01-23 00:27:47 +08:00
KonstantinKondrashov
6061d5d65a esp_timer/esp32: Fix case when alarm_reg > counter_reg but FRC_TIMER_INT_STATUS is not set
Closes: WIFI-1576
Closes: https://github.com/espressif/esp-idf/issues/2954
2020-01-22 14:30:34 +08:00
morris
e30cd361a8 global: rename esp32s2beta to esp32s2 2020-01-22 12:14:38 +08:00
morris
95743f4ee6 update rtc_sleep_init for esp32s2 2020-01-22 10:19:05 +08:00
Felipe Neves
73592d9bc4 spin_lock: added new spinlock interface and decoupled it from RTOS
spin_lock: cleaned-up port files and removed portmux files

components/soc: decoupled compare and set operations from FreeRTOS

soc/spinlock: filled initial implementation of spinlock refactor

It will decouple the spinlocks into separated components with not depencences of freertos
an similar interface was provided focusing the readabillity and maintenance, also
naming to spinlocks were adopted. On FreeRTOS side the legacy portMUX macros
gained a form of wrapper functions that calls the spinlocks component thus
minimizing the impact on RTOS side.

This feature aims to close IDF-967

soc/spinlock: spinlocks passed on unit test, missing test corner cases

components/compare_set: added better function namings plus minor performance optimization on spinlocks

soc/spinlock: code reordering to remove ISC C90 mix error

freertos/portmacro: gor rid of critical sections multiline macros, placed inline functions instead

soc/spinlock: improved spinlock performance from internal RAM

For cases where the spinlock is executed from IRAM, there is no
need to check where the spinlock object is placed on memory,
removing this checks caused a great improvement on performance.
2020-01-22 06:20:34 +08:00
Ivan Grokhotkov
cc3df01f8f rom: add header guards in rom/opi_flash.h, fix error in rom/spi_flash.h 2020-01-21 11:58:10 +01:00
Ivan Grokhotkov
2c3e6481bb Merge branch 'feature/ci_check_cpp_guards' into 'master'
ci: add job to check for C++ guards in header files

Closes IDF-288

See merge request espressif/esp-idf!7050
2020-01-21 17:18:23 +08:00
Ivan Grokhotkov
f619a3174b Merge branch 'bugfix/nvs_new_nothrow' into 'master'
NVS: Change all new to new (nothrow)

See merge request espressif/esp-idf!6930
2020-01-21 17:06:19 +08:00
Ivan Grokhotkov
c11f77cb1a Merge branch 'feature/use_underlying_cmake_targets_for_idf_py' into 'master'
CMake: Use underlying flash targets for idf.py

See merge request espressif/esp-idf!7067
2020-01-21 17:05:47 +08:00
Jiang Jiang Jian
95f9db79d2 Merge branch 'feature/lwip_netinet_tcp_pr4637' into 'master'
lw_ip: Add netinet compatibility headers (PR 4637)

Closes IDFGH-2551

See merge request espressif/esp-idf!7408
2020-01-21 15:00:03 +08:00
Angus Gratton
e0fe136bf9 Merge branch 'bugfix/select_driver_not_installed' into 'master'
VFS: Check in select() if the UART driver is installed or not

Closes IDFGH-2540

See merge request espressif/esp-idf!7331
2020-01-21 11:08:38 +08:00
Angus Gratton
78e219bbe2 Merge branch 'bugfix/eth_int_allocate' into 'master'
PSRAM related fix

Closes IDFGH-2263 and IDFGH-2549

See merge request espressif/esp-idf!7310
2020-01-21 07:31:26 +08:00
Francesco Giancane
e48fe540be include/sys/socket.h: ensure SOMAXCONN symbol is defined
SOMAXCONN is expected to be defined in this header, but for the esp32
port is found in net/if.h from newlib.

Avoid the issue by including the net/if.h header in sys/socket.h so that
compatibility is preserved.

Signed-off-by: Francesco Giancane <francesco.giancane@accenture.com>

Merges https://github.com/espressif/esp-idf/pull/4637
2020-01-21 10:11:33 +11:00
Francesco Giancane
64377b54d1 include/netinet/tcp.h: wrap lwip/tcp.h header for compatibility
Some applications (i.e. Azure IoT SDK) are expecting this header to
exist and to contain the tcp constants and description.

The esp32 did not wrap the lwip/tcp.h header, thus this commit adds a
compatibility layer.

Signed-off-by: Francesco Giancane <francesco.giancane@accenture.com>

Merges https://github.com/espressif/esp-idf/pull/4637
2020-01-21 10:11:29 +11:00
Jiang Jiang Jian
10c426e5ef Merge branch 'bugfix/fix_sniffer_bug_caused_by_mode_switch' into 'master'
FIx sniffer bug caused by mode switch

Closes WIFI-466

See merge request espressif/esp-idf!5846
2020-01-20 21:08:31 +08:00
baohongde
097777ed66 components/bt: Fix error EIR type in config eir event 2020-01-20 20:46:05 +08:00
Tian Hao
30fbd99ad0 fix bug sleep may cause HCI timeout
When Host run different cpu and sleep enable, it may cause hci
timeout about 10s.
2020-01-20 17:44:03 +08:00
Tian Hao
f351effdb2 fix Kconfig use mistake cause some config not effect
1. Fix bluedroid task pinned_to_core un-effected
2. other minor sdkconfig bugs
2020-01-20 17:43:36 +08:00
xiehang
6cb271c20b esp_wifi: Small refactor for ic_set_vif 2020-01-20 11:47:02 +08:00
baohongde
5ca4c85497 components/bt: Fix connection fail and crash when receive unknown AT cmd 2020-01-20 11:32:26 +08:00
Angus Gratton
3f532c8895 Merge branch 'bugfix/esp_tls_blocking_timeout' into 'master'
esp-tls: add timeout for blocking connection

See merge request espressif/esp-idf!7316
2020-01-20 09:35:23 +08:00
Jiang Jiang Jian
1c8937bf14 Merge branch 'feature/esp32_5p0_new_features' into 'master'
esp32 5p0 features support

See merge request espressif/esp-idf!7028
2020-01-19 23:06:45 +08:00
morris
cc0459eea2 ethernet: always put eth_driver handle in SRAM
Closes https://github.com/espressif/esp-idf/issues/4635
2020-01-19 16:25:44 +08:00
morris
5ad0bdd8db ethernet: work with cache disabled
add ETH_MAC_FLAG_WORK_WITH_CACHE_DISABLE flag, make ethenret driver
possible to work when cache disabled

Closes https://github.com/espressif/esp-idf/issues/4406
2020-01-19 16:25:24 +08:00
morris
4fb879c11e spi: always put spihost handle in SRAM
Closes https://github.com/espressif/esp-idf/issues/4635
2020-01-19 16:08:53 +08:00
June
19730c81f0 esp32 5p0 new features support 2020-01-17 10:34:54 +00:00
xiehang
0d1a20ba18 esp_wifi:Fix double recycle bar crash issue 2020-01-17 14:28:27 +08:00
Ivan Grokhotkov
0c99aef08d Merge branch 'feature/bringup_723_cmake' into 'master'
bringup 723 cmake

See merge request espressif/esp-idf!6578
2020-01-17 09:20:34 +08:00
Mahavir Jain
c7f44a301d Merge branch 'feature/modify_esp_tls_structure' into 'master'
esp-tls: add API to retrieve sockfd for tls connection.

See merge request espressif/esp-idf!7329
2020-01-16 18:12:16 +08:00
Hrudaynath Dhabe
93bc830ac6 esp_wifi: esp_wifi_sta_get_ap_info function returns actual values of group cipher and pairwise cipher 2020-01-16 17:52:59 +08:00
morris
2422c52851 global: hello world on real esp32-s2 2020-01-16 17:43:59 +08:00
duyi
18a05e2ee0 update ld file for esp32-s2 2020-01-16 17:43:59 +08:00
Wangjialin
d4e5980823 flash: fix 80Mhz for new spi flash driver on esp32s2 2020-01-16 17:43:59 +08:00
Wangjialin
fad639f0d4 feature(psram): update psram initialization.
1. use spi functions in rom
2. remove unnecessary GPIO configurations.
3. remove unnecessary dummy settings.
4. enable dummy out function
5. flash and psram have independent timing setting registers.
6. no need to set 1.9v for LDO in 80Mhz
7. set IO driver ability to 1 by default.
8. no need to use GPIO matrix on esp32s2, IO MUX is recommended
9. enable spi clock mode and IO mode settings
2020-01-16 17:41:31 +08:00
Du Ya Yuan
0ad7602efe make spiram work 2020-01-16 17:41:31 +08:00
duyi
30a525aeb1 update cache config 2020-01-16 17:41:31 +08:00
morris
a8d31b0385 rtc: enable super wdt auto feed 2020-01-16 17:41:31 +08:00
morris
1c2cc5430e global: bring up esp32s2(not beta) 2020-01-16 17:41:31 +08:00
duyi
9c5a981ef1 remove unnecessary function in bootloader_support
1. Delete bootloader_clock_get_rated_freq_mhz, esp32s2 do not need it right now
2. Remove bootloader_flash_gpio_config () because it has the same function as bootloader_flash_dummy_config
2020-01-16 17:41:31 +08:00
Angus Gratton
eaafe7f599 Merge branch 'feature/add_setting_project_version_from_kconfig' into 'master'
build: Add CONFIG_APP_PROJECT_VER to set the project version from Kconfig

See merge request espressif/esp-idf!7125
2020-01-16 15:54:14 +08:00
David Cermak
98cf3142fa esp_tls: fail connection if esp_tls_conn_new() timeouts 2020-01-16 07:32:19 +00:00
David Cermak
aa3b1da384 esp_tls: added connection timeout to esp_tls_conn_new_sync() 2020-01-16 07:32:19 +00:00
Aditya Patwardhan
c7418042b4 esp32/esp-tls: provide API to retrieve sockfd value from esp_tls_t 2020-01-16 12:27:44 +05:30
Jiang Jiang Jian
2a6a560eb3 Merge branch 'bugfix/hfp_disconn_bridgera' into 'master'
hfp disconn issue for bridgera

See merge request espressif/esp-idf!7336
2020-01-16 11:33:36 +08:00
Ivan Grokhotkov
e9426d4ed1 Merge branch 'feature/improved_cxx_tests' into 'master'
Improved C++ tests

Closes IDF-1322

See merge request espressif/esp-idf!7283
2020-01-16 10:11:32 +08:00
KonstantinKondrashov
b49a657448 build: Add CONFIG_APP_PROJECT_VER to set the project version from Kconfig 2020-01-15 11:02:27 +00:00
Jakob Hasse
c75ec644f4 NVS: Changed all new to new (nothrow) 2020-01-15 14:01:35 +08:00
Angus Gratton
c1a1e19c2b Merge branch 'feature/freertos_optimized_taskselection' into 'master'
feature/freertos optimized task selection o S2 Beta or unicore configurations

Closes IDF-1116

See merge request espressif/esp-idf!6616
2020-01-15 13:29:21 +08:00
Angus Gratton
ee899cb2aa Merge branch 'feature/ver-4.2' into 'master'
global: bump version to 4.2

See merge request espressif/esp-idf!7335
2020-01-15 13:07:59 +08:00
weitianhua
8b2919ee2b hfp disconn issue for bridgera 2020-01-15 12:22:58 +08:00
Ivan Grokhotkov
80d7db9466 Merge branch 'bugfix/esp32s2_mac_addr_allocation' into 'master'
esp32s2 mac address allocation

Closes IDF-1191

See merge request espressif/esp-idf!7286
2020-01-15 11:58:14 +08:00
Renz Christian Bagaporo
fd74ec75d7 esptool_py: retain flash targets when building RAM loadable apps 2020-01-15 03:36:47 +00:00
Renz Christian Bagaporo
cc8bff703e esptool_py: create flash target functions 2020-01-15 03:36:47 +00:00
Jiang Jiang Jian
5f803b8283 Merge branch 'bugfix/enable_ipv6_address_autoconfig' into 'master'
lw-ip:  Enable IPv6 stateless address autoconfiguration

Closes WIFI-1237

See merge request espressif/esp-idf!6313
2020-01-15 11:27:56 +08:00
Ivan Grokhotkov
5466ff3f4d global: bump version to 4.2 2020-01-15 10:22:22 +08:00
Felipe Neves
5d7564a039 freertos/Kconfig: make optimized task selection dependent on FREERTOS_UNICORE option
freertos: fix decrement loop of high priority task selection
2020-01-14 09:58:14 -03:00
Felipe Neves
2c612ec1dc components/freertos: using the optimized task selection on esp32s2beta
components/freertos: cleaned up multicore option scheduler.

components/freertos:  more cleanup and test optimization to present realistic results

components/freertos: remove unused macros of optimized task selection when multicore is used
2020-01-14 09:58:14 -03:00
Felipe Neves
77bf1ff1c0 freertos/tests: added test to evaluate scheduling time
freertos/Kconfig: fix trailing space on optimized scheduler option

freertos/tests: moved test context variables inside of test task.

The public variables used on scheduling time test now were packed into a structure allocated on  test case task stack and passed to tasks as arguments saving RAM comsumption.
2020-01-14 09:58:14 -03:00
Felipe Neves
d4c82606fb components/freertos: added and enabled the optimized task selection
FreeRTOS  have an platform dependent configuration to enable selection task in a optimized way.

Provided the platform dependent functions in order to allow the scheduler to use the optimized algorithms by telling to the port layer where to found bitscan instruction i.e. NSAU.

This closes IDF-1116

components/freertos: added option to disable the optimized scheduler
2020-01-14 09:58:14 -03:00
Roland Dobai
a9c4dab4d3 VFS: Check in select() if the UART driver is installed or not
Closes https://github.com/espressif/esp-idf/issues/4627
2020-01-14 13:52:27 +01:00
morris
e1f9b283bc esp32s2: mac addr allocation 2020-01-14 15:19:38 +08:00
xiehang
c0148ef1e8 lwip: Enable IPv6 stateless address autoconfiguration 2020-01-14 07:15:26 +00:00
zhiweijian
86bebae4fb Component/bt: Fix GATTC trigger open event multiple times 2020-01-14 03:24:29 +00:00
Angus Gratton
ee269ed687 Merge branch 'bugfix/fatfs_corrupted_assert' into 'master'
fatfs: handle FR_INT_ERR as "filesystem corrupted"

Closes IDF-894

See merge request espressif/esp-idf!5912
2020-01-14 08:37:07 +08:00
Jakob Hasse
c8137c5298 C++: rtti unit tests, corresponding CI config 2020-01-13 16:39:21 +08:00
houwenxiang
4c065c217e driver(rmt): Fix the rmt err interrupt crash bug when sending 63 items 2020-01-13 08:30:20 +00:00
Jiang Jiang Jian
0a6e61ae6d Merge branch 'bugfix/btdm_fix_blufi_prepare_buf_len_invalid' into 'master'
component/bt: fix blufi prepare write buf len invalid

See merge request espressif/esp-idf!7048
2020-01-13 15:59:14 +08:00
Jiang Jiang Jian
f8e3bf4a7a Merge branch 'bugfix/mesh_ie_issues' into 'master'
mesh: fix mesh ie issues

See merge request espressif/esp-idf!7214
2020-01-13 15:58:00 +08:00
Angus Gratton
28d64e7f82 Merge branch 'bugfix/cmake_failure_on_spiffsgen_clean_project' into 'master'
spiffs: fix build issue on clean project

See merge request espressif/esp-idf!6596
2020-01-13 12:14:04 +08:00
Angus Gratton
a5a5c318f9 Merge branch 'bugfix/mmap_fail_on_esp32s2beta' into 'master'
spi_flash: reenable mmap tests on esp32s2beta

See merge request espressif/esp-idf!6595
2020-01-13 12:02:55 +08:00
Angus Gratton
ec20cf01b5 Merge branch 'feature/wider_alignment_range_malloc' into 'master'
feature/wider alignment range malloc

Closes IDF-648

See merge request espressif/esp-idf!6691
2020-01-13 12:02:35 +08:00
Angus Gratton
42d7b1d641 Merge branch 'bugfix/mbedtls_esp_bignum' into 'master'
mbedtls: esp bignum fix for 4096 keys

See merge request espressif/esp-idf!7211
2020-01-13 12:01:23 +08:00
chenyudong
79f0d460f5 mesh: fix mesh ie issues
Fix an error of mesh deinit lock.
Fix mesh send returns TIMEOUT.
Increase root window close time to 120s.
Clear ie.child when the child connected or fully associated.
Update rc_rssi when roots direct/forward.
Fix assoc in mesh ie wrong.
Mesh packets use AC_VI instead of AC_BE.
2020-01-13 10:58:18 +08:00
Jiang Jiang Jian
a27dfe6993 Merge branch 'bugfix/fix_ble_config_error_log_in_first_use_nvs' into 'master'
bugfix: remove the error code when there is no file in the nvs in config.c

See merge request espressif/esp-idf!7296
2020-01-13 10:24:43 +08:00
Ivan Grokhotkov
216dac8721 Merge branch 'test/add_esp32s2beta_ssc_build_job' into 'master'
test: add build ssc job for esp32s2beta

See merge request espressif/esp-idf!7068
2020-01-13 10:19:48 +08:00
Jiang Jiang Jian
7a7c4a5486 Merge branch 'bugfix/coex_schm' into 'master'
Bugfix/coex schm

See merge request espressif/esp-idf!7176
2020-01-12 20:37:42 +08:00
Jiang Jiang Jian
a9cf334f0a Merge branch 'feature/Add_tcp_sack' into 'master'
feature for add tcp sack

Closes WIFI-1600

See merge request espressif/esp-idf!7241
2020-01-12 20:28:21 +08:00
Jiang Jiang Jian
3634192ded Merge branch 'bugfix/ble_throughput_heap_size_too_large_fix' into 'master'
bugfix:Fixed throughput wasting memory and packet loss issues.

Closes BT-437 and BCI-141

See merge request espressif/esp-idf!7063
2020-01-12 20:25:02 +08:00
Jiang Jiang Jian
8ec233dfd0 Merge branch 'bugfix/sync_zephyr_v2.0_ble_mesh_fixes' into 'master'
ble_mesh: sync Zephyr v2.0 ble mesh fixes

Closes BLEMESH-56

See merge request espressif/esp-idf!6892
2020-01-12 20:23:57 +08:00
Felipe Neves
6a307ee70f heap: removed ptr check in diram area since aligned allocator does not support data allocated from IRAM 2020-01-10 10:15:32 -03:00
Felipe Neves
0d8a5ebec7 heap: added aligned calloc function plus tests 2020-01-10 10:05:28 -03:00
Felipe Neves
8e5ea171d3 newlib: reverted support of memalign function 2020-01-10 10:05:28 -03:00