Angus Gratton
d531b56d93
Merge branch 'bugfix/spinlock_performance' into 'master'
...
freertos: Reduce CPU spinlock (portmux) overhead
See merge request !497
2017-09-05 09:16:10 +08:00
Angus Gratton
8ce09c2c1c
mbedtls: Don't assign ctx->fd until connect() or bind() has succeeded
...
Avoid leaking closed file descriptors via ctx->fd
Reported: https://esp32.com/viewtopic.php?f=13&t=2910&sid=8568b1fd93a4c8d5760628a638efc48b#p13620
2017-09-05 11:08:35 +10:00
Angus Gratton
11a87ca811
Merge branch 'bugfix/bootloader_ota_sel' into 'master'
...
Fix bootloader OTA regression
See merge request !1205
2017-09-05 07:25:08 +08:00
Ivan Grokhotkov
e93c33050e
ethernet: enable EMAC module clock on initialization
2017-09-04 22:43:52 +08:00
Ivan Grokhotkov
b38186dc43
sdmmc: use periph_ctrl to enable peripheral when initializing the host
2017-09-04 22:43:52 +08:00
Ivan Grokhotkov
956a28a95c
driver: add periph_ctrl support for SDMMC, SDIO slave, CAN, EMAC
2017-09-04 22:43:51 +08:00
michael
b834fcf78a
fix(spi_master): this fix the SPI MOSI output missing bug.
2017-09-04 22:43:51 +08:00
Jiang Jiang Jian
f254555a41
Merge branch 'feature/btdm_add_set_local_MTU_API_for_gatt' into 'master'
...
component/bt: add set local MTU API
See merge request !1152
2017-09-04 21:32:23 +08:00
Alexey Gerenkov
cf29dd47a9
apptrace lock acquire function was re-designed to minimize waiting time with disabled IRQs
2017-09-04 20:44:11 +08:00
Ivan Grokhotkov
b3c6748a0b
ci: add extra unit test job
2017-09-04 20:39:35 +08:00
Jeroen Domburg
0e74ec67be
Fix rebooting when PSRAM is active
2017-09-04 19:00:47 +08:00
Ivan Grokhotkov
9da1bf1a45
Merge branch 'bugfix/lwip_send_timeout' into 'master'
...
match sys tick with lwip_send_timeout
See merge request !1203
2017-09-04 18:19:59 +08:00
Angus Gratton
a19aaf2072
esp32: Update wifi lib to use new spinlock implementation
2017-09-04 19:11:51 +10:00
Angus Gratton
4486d4cb10
portmux: Add vPortCPUAcquireMutexTimeout() function
...
Refactor app_trace locking to use this function.
2017-09-04 19:11:51 +10:00
Angus Gratton
397c0bfb4b
freertos scheduler test: Free timer group interrupt handle when test finishes
2017-09-04 19:11:51 +10:00
Angus Gratton
5c996a1b29
freertos: Inline vPortCPUAcquireMutex/vPortCPUReleaseMutex into implementations
...
Further improves performance:
No contention -> 134 cycles
Recursion -> 117 cycles
Contention -> 323 cycles
2017-09-04 19:11:51 +10:00
Angus Gratton
db58a2732b
freertos: vPortCPUReleaseMutex() no longer returns a value
...
Unlocking a never-locked mutex is an assertion failure in debug mode.
In release mode, this further improves performance:
No-Contention -> 153 cycles
Recursion No-Contention -> 138 cycles
Contention -> 378 cycles
2017-09-04 19:11:51 +10:00
Angus Gratton
4d42b2d100
freertos spinlock/portmux: Reduce spinlocking overhead
...
Ref TW7117
Microbenchmarks in unit tests:
(All numbers in cycles per benchmarked operation):
Release mode
No lock contention lock/unlock - 301 -> 167 (-45%)
Recursive no contention lock/unlock - 289 -> 148 (-49%)
Lock contention two CPUs (lock/unlock) 699 -> 400 (-43%)
Debug mode
No lock contention lock/unlock - 355 -> 203 (-43%)
Recursive no contention lock/unlock - 345 -> 188 (-46%)
Lock contention two CPUs (lock/unlock) 761 -> 483 (-36%)
2017-09-04 19:11:51 +10:00
Angus Gratton
f2952de3a5
freertos spinlocks/portmux: Add combination unit tests & microbenchmarks
2017-09-04 19:11:51 +10:00
Angus Gratton
f487bb19d7
Merge branch 'bugfix/ci_build_examples_more' into 'master'
...
CI build_examples: Fix build flakiness
See merge request !1191
2017-09-04 16:02:12 +08:00
Angus Gratton
2806b57fc1
build system: Don't make menuconfig if "make clean" run with no sdkconfig
2017-09-04 17:40:15 +10:00
Angus Gratton
867b20837f
build system: Explicitly disallow 'clean' along with non-cleaning targets
...
Too hard to stage the dependencies so that all clean steps complete before any build steps begin. Also, using and then
deleting and then regenerating SDKCONFIG_MAKEFILE in one pass is really hard to manage successfully.
2017-09-04 17:40:15 +10:00
Angus Gratton
97efaab27b
build system tests: Run inside PWD same as build_examples.sh
2017-09-04 17:40:15 +10:00
Angus Gratton
774c9d0a61
ci: Add two more example build jobs per CI pass
2017-09-04 17:40:15 +10:00
Angus Gratton
c275ad4ca4
build system: Add dependencies to component clean steps
...
Build directory must exist, component_project_vars.mk must be generated if it is going to be.
2017-09-04 17:40:15 +10:00
Angus Gratton
2544355301
build_examples: Small cleanups
...
* Override MAKEFLAGS via make not via shell variables
* Remove build_examples in gitlab-ci
* Don't use mktemp for any logs
2017-09-04 17:40:15 +10:00
Angus Gratton
3dfcc312c8
ota_ops: Fix get_selected_boot_partition() in case there is no factory partition
...
get_selected_boot_partition() now follows the same basic logic as the bootloader to find the
default boot partition.
2017-09-04 17:37:28 +10:00
Angus Gratton
1cd2ce2471
bootloader: Fix regression preventing OTA updates
...
Regression introduced in 43e231c
.
Thanks to @yanbe for pointing out issue in https://github.com/espressif/esp-idf/pull/955
This is a different fix, tries to keep the behaviour that 43e231c
was aiming to correct (unnecessarily testing an
invalid slot more than once.)
2017-09-04 17:37:28 +10:00
zhangyanjiao
547b7b0246
match sys tick with lwip_send_timeout
2017-09-04 14:52:16 +08:00
Ivan Grokhotkov
c0269bc1cd
nvs: check CRC of items on full pages
...
Previously NVS did check CRC values of key-value pairs on the active
page, but the check for full pages was missing. This adds the necessary
check and a test for it.
2017-09-04 14:37:33 +08:00
Jeroen Domburg
c0510c4266
Merge branch 'feature/psram_in_address_space' into 'master'
...
Feature/psram in address space
See merge request !1069
2017-09-04 14:18:23 +08:00
Dong Heng
d523a5181b
example/openssl_client: Fix http string "printf" error without end character '\0'
2017-09-04 13:29:19 +08:00
Jeroen Domburg
153275b743
Merge branch 'bugfix/uart_5mbaud' into 'master'
...
Fix off-by-one in 5MBaud arg checking; propagate errors better
See merge request !1184
2017-09-04 12:06:33 +08: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
zhiweijian
f1c4eda373
Component/bt: add set local MTU API
...
- add esp_ble_gatt_set_local_mtu( ) API
- modify esp_ble_gattc_config_mtu(esp_gatt_if_t gattc_if, uint16_t conn_id)
- modify gattc demo
2017-09-01 21:55:28 +08:00
Jiang Jiang Jian
3a1de7dba3
Merge branch 'bugfix/btdm_fix_connection_parameters_update' into 'master'
...
component/bt: fix connection parameters update
See merge request !1099
2017-09-01 20:15:30 +08:00
Jiang Jiang Jian
73473ad351
Merge branch 'bugfix/btdm_optimize_gatt_security_server_demo' into 'master'
...
component/bt: optimize gatt security server demo
See merge request !1047
2017-09-01 20:13:13 +08:00
Ivan Grokhotkov
b9ff771e2c
deep sleep: don't use protected DPORT access in wake stub
2017-09-01 18:35:42 +08:00
Jeroen Domburg
518edac42f
Add GD chip into qio data, so (at least my) ESP-WROVER uses QIO mode succesfully.
2017-09-01 16:53:05 +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
Jeroen Domburg
fe140fe347
Fix off-by-one in 5MBaud arg checking; propagate errors better
2017-09-01 12:15:28 +08:00
Darian Leung
4fbeaba77f
Bugfix/ added esp_adc_cal include guards
2017-09-01 12:07:37 +08:00
Ivan Grokhotkov
98e5c475b3
Merge branch 'feature/light_sleep' into 'master'
...
Rename esp_deep_sleep_ APIs to esp_sleep_, introduce light sleep function
See merge request !1168
2017-09-01 11:10:52 +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
f8b719d911
soc/rtc: add sleep flag to control powerdown of VDD_SDIO
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
9a2c62cf2b
unity: add reference clock for use in unit tests
2017-09-01 10:34:36 +08:00