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
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
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