XiaXiaotian
50b6912bf8
Increase maximum number of WiFi dynamic transmitting buffer
2017-10-31 15:18:20 +08:00
XiaXiaotian
87d3986b87
Fix the return value of esp_now_send()
2017-10-31 15:18:20 +08:00
Deng Xin
ccfbecd25f
Wifi: bugfix of get wrong ap information in all channel scan
...
fix the issue get wrong ap information in all channel scan
2017-10-31 11:35:11 +08:00
Liu Zhi Fu
1195ced75c
esp32: reduce default wifi static tx buffer
...
Modify the the default WiFi static tx buffer from 32 to 16
2017-10-28 12:15:40 +08:00
Ivan Grokhotkov
eb5752c635
esp_restart: fix possible race while stalling other CPU, enable WDT early
...
Previously esp_restart would stall the other CPU before enabling RTC_WDT.
If the other CPU was executing an s32c1i instruction, the lock signal
from CPU to the arbiter would still be held after CPU was stalled. If
the CPU running esp_restart would then try to access the same locked
memory pool, it would be stuck, because lock signal would never be
released.
With this change, esp_restart resets the other CPU before stalling it.
Ideally, we would want to reset the CPU and keep it in reset, but the
hardware doesn't have such feature for PRO_CPU (it is possible to hold
APP_CPU in reset using DPORT register). Given that ROM code will not use
s32c1i in the first few hundred cycles, doing reset and then stall seems
to be safe.
In addition to than, RTC_WDT initialization is moved to the beginning of
the function, to prevent possible lock-up if CPU stalling still has any
issue.
2017-10-26 19:53:53 +08:00
Angus Gratton
2c2e7f6303
Merge branch 'bugfix/optmize_ipv6_event' into 'master'
...
bugfix: add netif info in event message when got ipv6 address
See merge request !959
2017-10-23 17:00:10 +08:00
Tian Zhong Xing
55e95b04bd
bugfix: add netif info in event message when got ipv6 address
2017-10-23 13:50:43 +08:00
Ivan Grokhotkov
59b7d98fec
Merge branch 'feature/dfs' into 'master'
...
Dynamic frequency scaling
See merge request !1189
2017-10-22 12:34:11 +08:00
Ivan Grokhotkov
b6f37bda97
Merge branch 'feature/i2s_built_in_adc' into 'master'
...
feature(I2S-ADC): add ADC mode for I2S.
See merge request !1077
2017-10-20 15:52:56 +08:00
Ivan Grokhotkov
90bbcbcdc0
unit tests: fix warnings, build with -Werror
...
- libsodium: silence warnings
- unit tests: fix warnings
- spiram: fix warnings
- ringbuf test: enable by default, reduce delays
2017-10-19 21:35:23 +08:00
Ivan Grokhotkov
ae7404972c
sleep: don't power down VDD_SDIO in light sleep if SPIRAM is enabled
2017-10-19 21:35:23 +08:00
Ivan Grokhotkov
d55ddfe56d
update libstdc++.a built with pSRAM workaround
2017-10-19 21:35:22 +08:00
Ivan Grokhotkov
cc67500d3e
unit test: adapt tests to single core configuration
2017-10-19 21:35:21 +08:00
He Yin Ling
1fc2ac8b09
unit-test: esp timer use same name as ets timer
...
We will use case name to select test cases in UT jobs.
Same case name is not allowed.
2017-10-19 21:35:21 +08:00
Ivan Grokhotkov
8e01b4aef8
Merge branch 'docs/esp32_hooks' into 'master'
...
docs/Added documentation about esp32 hooks
See merge request !1417
2017-10-19 12:32:36 +08:00
Ivan Grokhotkov
54d2dc7681
Merge branch 'bugfix/fix_some_wifi_bugs' into 'master'
...
esp32: fix some wifi bugs
See merge request !1414
2017-10-18 16:20:09 +08:00
Darian Leung
461f8da704
docs/Added documentation about esp32 hooks
...
This commit adds documentation about the esp32 Idle and Tick Hooks
2017-10-18 15:19:35 +08:00
Angus Gratton
78f70d4e79
Merge branch 'bugfix/cxx_exceptions' into 'master'
...
Full C++ Exception Support option (& reclaim memory when exceptions disabled)
See merge request !1353
2017-10-18 15:08:10 +08:00
Deng Xin
80b14fc77f
esp32: fix some wifi bugs
...
1. Fix WiFi timer enable twice issue
2. Fix a softAP compatibility issue
3. Fix ebuf alloc counter issue
4. remove nvs_flash_init() in esp_wifi_init()
5. Fix scan only find few APs after set bssid
6. Fix can not connect to hidden SoftAP
7. Remove group key entry before connecting ot AP
2017-10-18 14:53:19 +08:00
Ivan Grokhotkov
fba9678c56
uart: add support for REF_TICK
2017-10-18 14:19:20 +08:00
Ivan Grokhotkov
bfeecd2b56
freertos: deprecate XT_CLOCK_FREQ
...
- freertos: add deprecated definition for XT_CLOCK_FREQ
- flash_ops: don't use XT_CLOCK_FREQ
- unity: don't use XT_CLOCK_FREQ
- hw_random: don't use XT_CLOCK_FREQ
- core_dump: don't use XT_CLOCK_FREQ
- app_trace: don't use XT_CLOCK_FREQ
- xtensa_init: init xt_tick_divisor
2017-10-18 14:19:19 +08:00
Ivan Grokhotkov
df3c857a30
esp32: add power management hooks for WiFi library
2017-10-18 14:19:19 +08:00
Ivan Grokhotkov
eb0c34e5c9
esp_timer: add support for frequency scaling
2017-10-18 14:19:18 +08:00
Ivan Grokhotkov
3f818f4862
pm: support for tracing using GPIOs
2017-10-18 14:19:18 +08:00
Ivan Grokhotkov
535695f0b9
freertos: add frequency switching hooks to ISR and idle task
2017-10-18 14:19:17 +08:00
Ivan Grokhotkov
42d51a4224
esp32: initialize PM at startup, add Kconfig options
2017-10-18 14:19:17 +08:00
Ivan Grokhotkov
68e1751b78
pm: initial implementation for ESP32
2017-10-18 14:19:16 +08:00
Ivan Grokhotkov
47e3c9dd4b
pm: initial version of power management APIs
2017-10-18 14:19:16 +08:00
Ivan Grokhotkov
4798b7d775
unit tests: add test to dump esp_timer stats
2017-10-18 14:19:15 +08:00
Ivan Grokhotkov
3788b35f87
unit tests: more robust esp_timer test
2017-10-18 14:19:15 +08:00
Ivan Grokhotkov
37e9bc715c
esp_clk.h: make public, add getters for RTC time, CPU/APB freq
2017-10-18 14:19:14 +08:00
Ivan Grokhotkov
f13623d97d
make esp_timer.h public
2017-10-18 12:31:38 +08:00
Ivan Grokhotkov
566f018996
crosscore_int: add support for FREQ_SWITCH event
2017-10-18 12:31:38 +08:00
Tian Hao
09862b5918
component/esp32 : update phy & rtc
...
RTC V230
add BT AGC saturation protection, replace RTC V229.
PHY V362
Power up print: "phy_version: 362.0, 61e8d92, Sep 8 2017, 18:48:13"
1. esp_init_data_v3.bin
modify TX target power
modify WIFI & BT RX gain table
2. modify phy_close_rf()
3. add phy_set_most_tpw()
4. 26M crystal work OK
5. noise_check_loop ok
2017-10-17 18:02:42 +08:00
Ivan Grokhotkov
7babc74fce
Merge branch 'feature/reduce_min_num_of_wifi_static_tx_buffer' into 'master'
...
Reduce minimum number of WiFi static tx buffer
See merge request !1398
2017-10-17 17:40:14 +08:00
Angus Gratton
9c7477ef34
cxx: Add KConfig option for C++ exceptions, disable by default
...
Fixes https://github.com/espressif/esp-idf/issues/1072
(Additional 20KB is still used if C++ exception support is enabled in
menuconfig.)
2017-10-17 15:29:25 +08:00
Ivan Grokhotkov
6e7dd5962b
Merge branch 'bugfix/add_mutex_for_dual_core_hooks' into 'master'
...
freertos/Add mutex for dual core hooks
See merge request !1406
2017-10-17 14:15:09 +08:00
Ivan Grokhotkov
08d6ca4f70
Merge branch 'bugfix/ets_timer_iram' into 'master'
...
wifi/bt coexistence: Fix disabled cache access race when writing to flash
See merge request !1409
2017-10-17 14:12:43 +08:00
Ivan Grokhotkov
d3bb9de36a
Merge branch 'feature/spiram_init_in_app' into 'master'
...
spiram: expose function to initialize SPI RAM cache
See merge request !1281
2017-10-17 04:56:35 +08:00
Ivan Grokhotkov
b58e19f8a2
Merge branch 'bugfix/soc_component_rodata' into 'master'
...
soc: place constant data from rtc_clk.c into DRAM
See merge request !1321
2017-10-17 04:54:43 +08:00
Angus Gratton
094cf4d79d
wifi/bt coexistence: Fix disabled cache access race when writing to flash
...
Moves the ets_timer_arm() / ets_timer_disarm() code paths to RAM
Overhead is 740 bytes of IRAM, 0 bytes DRAM
(For comparison: If all of esp_timer.c is moved to RAM, overhead is 1068 bytes IRAM and 480 bytes DRAM.)
2017-10-16 19:47:33 +08:00
Jiang Jiang Jian
99f2996779
Merge branch 'bugfix/tw15595_eth_got_ip_log_error' into 'master'
...
esp32/tcpipadapter: correct eth ip got event info
See merge request !1388
2017-10-16 17:30:14 +08:00
Darian Leung
7584f89278
esp32/Add mutex for dual core hooks
...
This commit adds critical sections for the dual core hooks
2017-10-16 11:47:38 +08:00
Ivan Grokhotkov
1da3204a7c
spiram: expose function to initialize SPI RAM cache
...
Some frameworks based on ESP-IDF need to be able to decide whether to
initialize SPI RAM after the application has started. This change splits
out part of esp_spiram_init which manipulate cache MMU into a separate
function. Applications can disable cache, call esp_spiram_init_cache,
re-enable cache, and then call esp_spiram_init.
Disabling and re-enabling the cache can be achieved using functions
provided in esp_spi_flash.h.
2017-10-16 09:15:11 +08:00
He Yin Ling
3a271a4ae7
Merge branch 'bugfix/freertos_dual_core_hooks' into 'master'
...
bugfix/freertos_dual_core_hooks
See merge request !1399
2017-10-14 09:41:03 +08:00
Darian Leung
95d63137d1
bugfix/freertos_dual_core_hooks
...
This commit fixes bugs with the dual core changes to freeRTOS tick and idle hooks.
Interrupt watchdog now registers tick hooks to both cores.
API for cross core tick and idle hook registration were also added
2017-10-13 18:27:53 +08:00
XiaXiaotian
c730f676c3
Reduce minimum number of WiFi static tx buffer
...
Calibrate tx power after sending five packets
2017-10-13 17:11:31 +08:00
Jiang Jiang Jian
713dee57f0
Merge branch 'feature/add_const_for_wifi_api' into 'master'
...
esp32: add const for some WiFi api
See merge request !1394
2017-10-13 17:08:29 +08:00
Liu Zhi Fu
e04a0d66b8
esp32/tcpipadapter: correct eth ip got event info
...
1. Raise SYSTEM_EVENT_ETH_GOT_IP when eth got ip
2. Add default handler for SYSTEM_EVENT_ETH_GOT_IP
3. Minor change about ethernet kconfig
2017-10-13 15:56:51 +08:00
Jiang Jiang Jian
6ff5c32ae5
Merge branch 'feature/alloc_memories_of_wifi_and_lwip_in_spiram_first' into 'master'
...
Allocate some memories in SPIRAM first.
See merge request !1367
2017-10-13 15:47:27 +08:00
Liu Zhi Fu
0e586a4cdf
esp32: add const for some WiFi api
...
Add const if the pointer parameter is const
2017-10-13 15:10:34 +08:00
XiaXiaotian
5df39cd4b6
Allocate some memories in SPIRAM first.
...
Try to allocate some WiFi and LWIP memories in SPIRAM first. If
failed, try to allocate in internal RAM then.
2017-10-13 10:11:24 +08:00
Jiang Jiang Jian
dbee895741
Merge branch 'bugfix/phy_init_remove_descriptions' into 'master'
...
phy init: remove descriptions of PHY init parameters
See merge request !1363
2017-10-12 19:00:10 +08:00
Jiang Jiang Jian
3f1198529f
Merge branch 'bugfix/fail_to_connect_in_wps' into 'master'
...
WiFi :bug fix of fail to connect in wps
See merge request !1384
2017-10-12 17:39:29 +08:00
Angus Gratton
3a4bd7f16c
Merge branch 'bugfix/wifi_tx_buffer_doc' into 'master'
...
wifi docs: Clarify WIFI_DYNAMIC_TX_BUFFER_NUM config item limit
See merge request !1375
2017-10-12 13:20:28 +08:00
Angus Gratton
f3681e22de
wifi docs: Clarify WIFI_DYNAMIC_TX_BUFFER_NUM config item limit
...
Setting WIFI_DYNAMIC_TX_BUFFER_NUM to zero is not possible.
Also edit some of the related config docs a little.
2017-10-12 15:53:53 +11:00
Deng Xin
a99c89f6af
bug fix of fail to connect in wps
2017-10-12 12:01:11 +08:00
Deng Xin
a05867f673
Wifi: bugfix of fail to reconnect after reboot
...
fix the issue fail to reconnect after reboot
2017-10-11 17:58:36 +08:00
Jiang Jiang Jian
904d6c8f2b
Merge branch 'feature/scan_optimize' into 'master'
...
wifi: scan optimize
See merge request !1334
2017-10-10 13:39:16 +08:00
Deng Xin
d515494d1b
wifi: optimize scan feature
...
1. add the threshold of match AP in fast scan
2. add blacklist feature
3. make sure would wrong if password didn't set
4. add scan example
2017-10-10 12:27:02 +08:00
Jiang Jiang Jian
3106ca1c1e
Merge branch 'bugfix/btdm_ea_overloaded' into 'master'
...
component/bt: increase programming delay for event arbiter to allow for heavy workload
See merge request !1338
2017-10-10 12:26:25 +08:00
Ivan Grokhotkov
fdc24eb118
phy init: remove descriptions of PHY init parameters
2017-10-09 14:40:08 +08:00
Daniel Campora
1c046f30a6
freertos: Make the tick/idle hooks dual core compatible
...
The way these hooks are implemented at the moment, once you register a tick or idle task hook, it is run by both cores, leading to intermittent crashes that are difficult to explain (and debug). One solution is to register the hook with the core that is currently running, which is what this patch attempts to do.
Merges https://github.com/espressif/esp-idf/pull/781
2017-10-09 13:04:20 +11:00
wangmengyang
2797966c47
component/bt: increase programming delay for event arbiter to allow for heavy workload
2017-09-30 18:12:45 +08:00
Jeroen Domburg
b6a2bd1184
Revert "esp32: New Task Watchdog API"
...
This reverts commit 616baa239d
.
2017-09-30 18:07:19 +08:00
Darian Leung
616baa239d
esp32: New Task Watchdog API
...
Legacy API of task watchdog used the same function esp_task_wdt_feed() to add
and feed a task. This caused issues of implicitly adding a task to the wdt list
if the function was used in shared code.
The new API introduces init, adding, feeding, deleting, deinit functions. Tasks
must now be explicitly added to the task watchdog using their handles. Deletion
must also be explicit using task handles. This resolves the issue of implicit
task additions to the task watchdog due to shared code calling
esp_task_wdt_feed().
Task watchdog is now fully configurable at runtime by calling the init and
deinit functions.
Also added functions to get the handles of idle tasks of the other core. This
helps when adding idle tasks to the watchdog at run time.
Configuring the task watchdog using menu config is still available, however
menu config will only result in calling the init and add functions for idle
tasks shortly after the scheduler starts.
Menu config also allows for using legacy behavior, however the legacy behavior
willcall the new API functions but with slight variations to make them legacy
compatible.
Documentation and example have also been updated
gcov_rtio.c headers updated to prevent error of freertos header files being
included in the wrong order.
Resolves issue TW#13265
2017-09-29 23:10:55 +08:00
Darian Leung
ae9041ab71
esp32: Fix task watchdog timer triggering issues TW#14794
...
The two task watchdog timer bugs are as follows...
1) If only a single task existed on the wdt task list, and esp_task_wdt_feed()
was only called once, the watchdog triggers but fails to print task name
2) If a single task already exists on the task wdt list, and another task calls
esp_task_wdt_feed() once, the watchdog fails to trigger
Problem stemmed from the loop responsible for resetting the watchdog timer
having incorrect loop parameters. The loop failed to traverse the full length
of the task wdt list
2017-09-29 22:12:58 +08:00
Jeroen Domburg
740f8a79f0
Add logic to make external RAM usable with malloc()
2017-09-28 17:17:50 +08:00
Ivan Grokhotkov
73e8afc5b9
soc: place constant data from rtc_clk.c into DRAM
...
In release mode, switches in rtc_clk_bbpll_set would be converted to
jump tables. These tables would be placed into .rodata, which caused
rtc_clk_cpu_freq_set to be unusable while cache is disabled. This
manifested itself in crashes when exiting from light sleep:
https://esp32.com/posting.php?mode=reply&f=13&t=3089#pr14590
2017-09-26 17:08:49 +08:00
Ivan Grokhotkov
7d436c9a44
Merge branch 'bugfix/timestamp' into 'master'
...
fix(global, log): correct the CCOUNT register when switching CPU clock during boot 2nd and before scheduler.
See merge request !1296
2017-09-26 16:15:42 +08:00
michael
9d9e771933
fix(global, log): fix esp_log(_early)_timestamp
readings after startup by correct the CCOUNT register when switching CPU clock.
...
TW#13332, Closes #700
2017-09-26 15:18:17 +08:00
Liu Zhi Fu
762f8da078
esp32: support wifi country code
...
1. Add completed support for WiFi country code
2. Modify esp_wifi_set_country API
2017-09-26 13:36:53 +08:00
Ivan Grokhotkov
fd02668d8b
Merge branch 'feature/record_more_info_of_scanned_ap' into 'master'
...
Record more information of scanned AP
See merge request !1289
2017-09-26 10:13:48 +08:00
Ivan Grokhotkov
7bfbc5bf7c
Merge branch 'bugfix/light_sleep' into 'master'
...
Light sleep fix
See merge request !1303
2017-09-22 16:37:59 +08:00
XiaXiaotian
98dfb8c0b9
Record more information of scanned AP
2017-09-22 15:43:33 +08:00
Ivan Grokhotkov
6b61c6d39f
esp32: exclude DPORT-related code in single core mode
2017-09-22 12:07:05 +08:00
Ivan Grokhotkov
3f761e1a83
light sleep: make sure code to be placed into IRAM is not inlined
2017-09-22 11:41:30 +08:00
Deng Xin
ee25caf4b2
WiFi: optimize scan feature
...
1. Add all channel scan feature
2. Add sort matched SSID by authmode feature
2017-09-21 14:28:49 +08:00
Alexey Gerenkov
b09f4acb27
Added proper handling of apptrace and pthread initialization errors
2017-09-14 20:47:43 +02:00
krzychb
a1ebeed303
Changed initialization sequence of application tracing component on APP CPU so it follows completion of initialization of the same component on PRO CPU. Previously, because of missing locking mechanism, both components were printing logs to UART at the same time. As results logs contained only corrupted characters / were not legible at all. Internal tracking: esp-idf/openocd-esp32, Issue 15
2017-09-14 20:47:43 +02:00
Jiang Jiang Jian
5aa52709c2
Merge branch 'bugfix/fix_some_wifi_lib_bugs' into 'master'
...
Fix some wifi lib bugs
See merge request !1255
2017-09-14 20:39:02 +08:00
Jiang Jiang Jian
c74d944edf
Merge branch 'feature/refractor_smartconfig' into 'master'
...
Refractor smartconfig
See merge request !1253
2017-09-14 20:38:30 +08:00
Jeroen Domburg
0460069582
Merge branch 'bugfix/panic_dport_no_mutex' into 'master'
...
Panic: stop dport access handler without trying to use a lock
See merge request !1244
2017-09-14 18:07:06 +08:00
XiaXiaotian
6bfbe6e4ed
Fix some wifi lib bugs
...
1. add adc2 coexistence
2. change NOW() to WDEV_NOW()
3. call ets_timer_done() before calling ets_timer_setfn()
4. fix the bug that api lock is not unlocked when call esp_wifi_stop()
twice
5. more hmac tx buffer limit from 32 to 64.
2017-09-14 15:19:46 +08:00
Wangjialin
2fceec4d85
feature(I2S-ADC): add ADC mode for I2S.
...
1. Support built-in ADC for I2S.
2. Modify code of ADC, made no change to the original APIs.
3. Add APIs in I2S:
esp_err_t i2s_set_adc_mode(adc_unit_t adc_unit, adc1_channel_t adc_channel);
4. Add I2S ADC/DAC example code.
5. add old-fashion definition to make it more compatible
6. replase spi_flash_ APIs with esp_partition_ APIs
7. add example of generating audio table from wav
8. change example sound
2017-09-14 13:24:08 +08:00
Jeroen Domburg
6d95934a3c
Make 80MHz PSRAM work as well, add testcase for weirdness reported on esp32 forums, clean up unused define in psram code
2017-09-14 10:47:44 +08:00
Jeroen Domburg
875ae6a134
Add option to allocate external RAM using heap_alloc_caps
2017-09-14 10:47:44 +08:00
Jiang Jiang Jian
33a4a6a510
Merge branch 'feature/add_espnow' into 'master'
...
add ESPNOW feature
See merge request !1061
2017-09-13 20:32:53 +08:00
XiaXiaotian
6753f6cb59
Refractor smartconfig
...
Move code of receiving smartconfig packets and getting password to
wifi lib. Open source code of sending smartconfig ACK to cellphone
in IDF.
2017-09-13 16:55:30 +08:00
Jiang Jiang Jian
f1e3b0df02
Merge branch 'feature/adv_scan_simultaneously' into 'master'
...
component/bt : support adv & scan simultaneously
See merge request !1209
2017-09-13 11:50:57 +08:00
Jeroen Domburg
9c56d9e75e
Make sure functions that are in ROM in the non-external-ram-workaround version, are in RAM (and not in flash) in the ext-ram workaround version.
2017-09-13 10:36:56 +08:00
Ivan Grokhotkov
b6d82eeceb
Merge branch 'feature/gcov_over_apptrace' into 'master'
...
esp32: Adds gcov over JTAG feature
See merge request !1117
2017-09-12 18:54:26 +08:00
Tian Hao
00a7cdbb0b
component/bt : support adv & scan simultaneously
...
1. Occupy conn[9] for adv. The max connection number of bluetooth controller decrease to 9. (Previously, it is 10)
2. modify the enum of setting BLE TX power corresponding to connection's.
3. fix libbtdm_app.a cwitch jump table
2017-09-12 16:10:30 +08:00
XiaXiaotian
e4ba31a8b9
add ESPNOW feature
...
ESPNOW is a kind of WiFi communication bettween WiFi devices, no
matter they are connected to each other or not. Once two WiFi
devices are paired, they can send data to or receive data from
each other. The data is transmitted in action frame which can
be encrypted with CCMP method. ESPNOW also support mutilcast frame
transmitting.
2017-09-12 12:12:13 +08:00
Jeroen Domburg
b3fd494e71
Panic: stop dport access handler without trying to use a lock
2017-09-11 17:24:22 +08:00
Ivan Grokhotkov
33cb16fd2a
esp32: fix cache error interrupt handler
...
Cache error interrupt would read DPORT registers, which caused DPORT
access protection to kick in. Disable DPORT protection before doing the
reads.
2017-09-08 09:59:09 +08:00
Alexey Gerenkov
891f0db31d
esp32: Adds gcov over JTAG feature
...
Implements function to dump GCOV data to host via JTAG.
The following functionality was added:
- Host file I/O
- GCOV runtime I/O stubs
- GCOV example
2017-09-07 18:13:16 +03:00
Ivan Grokhotkov
5425d8569c
Merge branch 'feature/pthread_api' into 'master'
...
esp32: pthread API
See merge request !1146
2017-09-07 17:49:42 +08:00
Ivan Grokhotkov
40df6546c0
Merge branch 'feature/multi_heap_poisoning' into 'master'
...
Heap tracing & poisoning features
See merge request !749
2017-09-07 17:47:51 +08:00
Ivan Grokhotkov
b9dfb437ab
Merge branch 'bugfix/intr_free' into 'master'
...
fix(intr): fix the logic for allocating and freeing interrupts.
See merge request !1124
2017-09-07 17:45:18 +08:00
Angus Gratton
ec498ad86d
libgcc: Place assembly functions (including __xtensa_libgcc_window_spill) in IRAM
2017-09-07 16:32:05 +10:00
Angus Gratton
5c417963eb
multi_heap: Add heap poisoning features
2017-09-07 16:32:05 +10:00
Liu Zhi Fu
a568ad2c9d
esp32: update wifi lib for a bunch of small feature and bugfix
...
1. Update RTC V229: add BT AGC saturation protection
2. Update PHY V359: (1). esp_init_data_v2.bin -- modify WIFI and BT RX gain table Setting
(2). modify phy_close_rf()
(3). noisefloor add limit and no print
3. WiFi supports modem sleep dynamic frequency switch
4. Fix disabling AMPDU cause esp_wifi_init fail issue
5. Fix sniffer mode cause WiFi can't connect issue
6. Optimize an internal rx buffer full issue
7. Rollback the internal wifi init flag when wifi init fail
2017-09-07 11:01:12 +08:00
Angus Gratton
4809c70899
Merge branch 'feature/register_heaps_runtime' into 'master'
...
heap: Support adding new heap regions at runtime
See merge request !1159
2017-09-07 10:18:21 +08:00
michael
73ba29e6df
refactor(intr): remove useless tags in the debug log.
2017-09-06 15:20:04 +08:00
michael
c82e51cf79
fix(intr): always assign the same intr to a same source, disable the source only when all the handlers disabled.
...
also document handlers sharing a same source.
TW#13454, https://github.com/nodemcu/nodemcu-firmware/issues/1874
Breaking change: handles assigned to a same source should have the same flag now.
2017-09-06 15:20:01 +08:00
Alexey Gerenkov
5094965e98
According to comments
2017-09-06 10:30:23 +08:00
Alexey Gerenkov
0b09c7006d
pthread: Initial version of thread API
2017-09-06 10:30:23 +08:00
Jeroen Domburg
604308f4ab
Merge branch 'bugfix/soft_reboot_psram' into 'master'
...
Fix rebooting when external RAM is active
See merge request !1207
2017-09-05 15:43:30 +08:00
Angus Gratton
74d5f85c53
Merge branch 'feature/build_warn_undefined_vars' into 'master'
...
Add --warn-undefined-variables to MAKEFLAGS (github #138 )
See merge request !1214
2017-09-05 15:39:48 +08:00
Angus Gratton
8670844acf
build system: Restore ifdef/ifndef in Makefiles, clean up examples build
2017-09-05 16:11:03 +10:00
Deomid Ryabkov
9903ea1c11
Add --warn-undefined-variables to MAKEFLAGS
...
Fix warnings where undefined vars are used.
Make Kconfig emit "FOO=" for unset bool options
To ensure make variables are always defined, even if empty.
When writing auto.conf, include symbols disabled by dependency to make sure all make variables are always defined.
Fixes espressif/esp-idf#137
Cherry-picked from https://github.com/espressif/esp-idf/pull/138
2017-09-05 16:10:46 +10:00
Angus Gratton
5361c08989
heap: Support adding new heap regions at runtime
...
To facilitate this, the list of registered heap regions is now a linked list
(allowing entries to be appended at runtime.)
2017-09-05 14:07:02 +10:00
Ivan Grokhotkov
8433fed7f4
Merge branch 'bugfix/core_dump_loop' into 'master'
...
esp32: Fixes infinite loop caused by exception during core dumping
See merge request !1210
2017-09-05 11:40:31 +08:00
Ivan Grokhotkov
c007213fed
Merge branch 'bugfix/deep_sleep_wakeup_stub' into 'master'
...
deep sleep: don't use protected DPORT access in wake stub
See merge request !1194
2017-09-05 11:22:52 +08:00
Alexey Gerenkov
fb8b0c534a
esp32: Fixes infinite loop caused by exception during core dumping
2017-09-05 11:15:27 +08:00
Jeroen Domburg
0e74ec67be
Fix rebooting when PSRAM is active
2017-09-04 19:00:47 +08:00
Angus Gratton
a19aaf2072
esp32: Update wifi lib to use new spinlock implementation
2017-09-04 19:11:51 +10:00
Jeroen Domburg
34372a091c
Add initial SPI RAM support. This adds support for an ESP-PSRAM32 chip connected to the default flash pins and GPIO 16 and 17. The RAM is mapped to address 0x3F800000, but otherwise ignored by esp-idf as of yet.
2017-09-04 12:05:49 +08:00
Ivan Grokhotkov
b9ff771e2c
deep sleep: don't use protected DPORT access in wake stub
2017-09-01 18:35:42 +08:00
Ivan Grokhotkov
5666fc0a56
Merge branch 'feature/esp_timer_improvements' into 'master'
...
esp_timer improvements
See merge request !1172
2017-09-01 16:14:01 +08:00
Ivan Grokhotkov
f31efb697c
newlib: rename esp_setup_time_syscalls to esp_set_time_from_rtc
...
This function no longer sets up syscalls, and new name reflects its
purpose better.
2017-09-01 10:36:14 +08:00
Ivan Grokhotkov
d2acf1ce77
sleep: add light sleep, factor out APIs common for deep/light sleep
2017-09-01 10:36:14 +08:00
Ivan Grokhotkov
65b046f17f
dport access: introduce pause/resume instead of deinit
2017-09-01 10:36:14 +08:00
Ivan Grokhotkov
06af8cd086
esp_timer: return signed timestamp (int64_t)
...
Since timestamps are 64-bit, loosing one bit of range due to sign does
not present an issue, however for applications doing calculations on
timestamps, signed return type is more convenient.
2017-09-01 10:34:36 +08:00
Ivan Grokhotkov
c5632d3012
esp32: use ref_clock in esp_timer and delay tests
2017-09-01 10:34:36 +08:00
Ivan Grokhotkov
1af6384349
esp_timer: lock-free implementation of esp_timer_get_time
...
The implementation of esp_timer_get_time used a critical section, which
resulted in a call time of ~1.8us. To make esp_timer_get_time more
useable as a high-resolution time source, this change replaces the lock
with polling. Call time is reduced to ~0.7us.
2017-09-01 10:34:36 +08:00
Ivan Grokhotkov
d4e950d311
Merge branch 'feature/cxx_exceptions' into 'master'
...
Partial support for C++ exceptions
See merge request !930
2017-09-01 00:27:41 +08:00
Geza Husi
eb8bd937c6
deep_sleep: RTC-GPIO pin calculation incorrect
...
Merges https://github.com/espressif/esp-idf/pull/822
2017-08-30 17:55:00 +10:00
Lacy Rhoades
c61b3e89f1
Typo fixes
...
Merges https://github.com/espressif/esp-idf/pull/831
2017-08-30 17:55:00 +10:00
Deomid Ryabkov
8c1acb0363
Provide a default for CONFIG_BT_RESERVE_DRAM
...
...when BT is not built
Merges https://github.com/espressif/esp-idf/pull/910
2017-08-30 17:55:00 +10:00
Ivan Grokhotkov
a25eb825e1
Merge branch 'bugfix/dport_protect_crypto' into 'master'
...
add protection for crypto registers in DPORT
See merge request !928
2017-08-30 11:45:35 +08:00
Ivan Grokhotkov
547ef83020
Merge branch 'feature/disable_some_perip_clk_when_cpu_start' into 'master'
...
Disable some peripheral clocks when cpu starts
See merge request !1089
2017-08-30 11:43:38 +08:00
Angus Gratton
1e22bcdfde
esp32: Add KConfig option to disable ROM Console fallback on first boot
2017-08-29 14:52:00 +10:00
XiaXiaotian
4776f73ca4
Disable some peripheral clocks when cpu starts
...
All peripheral clocks are default enabled after chip is powered on.
When CPU starts, if reset reason is CPU reset, disable those clocks
that are not enabled before reset. Otherwise, disable all those
useless clocks.
These peripheral clocks must be enabled when the peripherals are
initialized and disabled when they are deinitialized.
2017-08-29 11:18:42 +08:00
Ivan Grokhotkov
82763a02af
Merge branch 'feature/ets_timer' into 'master'
...
esp_timer: add high-resolution timer api
See merge request !1090
2017-08-28 16:38:11 +08:00
Jeroen Domburg
a589411a3c
Place uart_tx_wait_idle in IRAM
2017-08-28 11:35:27 +08:00
Ivan Grokhotkov
d8b66e5088
soc: release interrupts which are not reserved by timers any more
2017-08-28 11:35:27 +08:00
Ivan Grokhotkov
857a29872d
esp_timer: add high resolution software timer API
2017-08-28 11:35:26 +08:00
Jeroen Domburg
3e4627479b
Place uart_tx_wait_idle in IRAM
2017-08-25 17:46:28 +08:00
Angus Gratton
703d143619
hwcrypto: Fix bug with concurrent SHA access
...
If two different types of SHA hashes were active in the hardware
concurrently, a race condition meant the SHA unit could be incorrectly
reset leading to all-zero results.
2017-08-25 16:08:03 +10:00
Angus Gratton
afb6119504
dport access: Fix WDT bug (permanent locking) in non-pinned tasks
...
If scheduler switches cores in narrow window during esp_dport_access_stall_other_cpu_start(), could cause the stall
interrupt to occur on the running CPU - halting the CPU until WDT cleans up.
Related to https://github.com/espressif/esp-idf/issues/630
2017-08-25 16:08:03 +10:00
Angus Gratton
50e0a54630
esp32 hwcrypto: Use spinlock instead of lock to protect AES
...
More than doubles performance of mbedTLS AES self-tests.
2017-08-25 16:08:03 +10:00
Angus Gratton
2624e10055
esp32 hwcrypto: Use AES registers directly
2017-08-25 16:08:03 +10:00
Angus Gratton
e256fb6d96
hwcrypto: Use DPORT-safe accesses with AES
2017-08-25 16:08:03 +10:00
Angus Gratton
d0c300c52d
hwcrypto: SHA acceleration using safe DPORT reads
2017-08-25 16:08:03 +10:00
Angus Gratton
cb31222e8b
dport access: Add _DPORT_REG_SET_BIT & _DPORT_REG_CLR_BIT
2017-08-25 16:08:02 +10:00
Angus Gratton
dc8c33892e
dport access: Fix nested calls to DPORT_STALL_OTHER_CPU_START()
2017-08-25 16:08:02 +10:00
Wu Jian Gang
791daea835
Merge branch 'bugfix/xtal_freq_40' into 'master'
...
esp32: by default, set 40MHz crystal frequency
See merge request !1140
2017-08-24 20:40:22 +08:00
Ivan Grokhotkov
0ead095512
Merge branch 'bugfix/dport_stall_in_esp32_component' into 'master'
...
Also do dport stalling in esp32 component
See merge request !1141
2017-08-24 14:35:16 +08:00