Commit graph

5993 commits

Author SHA1 Message Date
Alexey Gerenkov
bf8ff8c98b 1) Thread detach functionality added
2) Recursive mutexes support
3) C++ test updated
2017-09-06 10:30:23 +08:00
Alexey Gerenkov
c631c6b358 1) Mux API was added
2) C++ test for threading and mux functions
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
Ivan Grokhotkov
aad24cb6c7 Merge branch 'bugfix/unit_test_build' into 'master'
build system: fix building tests specified via TEST_COMPONENTS

See merge request !1219
2017-09-06 08:48:44 +08:00
krzychb
73297f1aa3 Separate section on touch detection 2017-09-05 20:43:15 +02:00
Ivan Grokhotkov
3c3c5e69c6 build system: fix building tests specified via TEST_COMPONENTS 2017-09-05 18:07:00 +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
9471ce9135 dhcpserver: Move DHCP option names to a separate header
Avoids naming conflicts. Resolves TW13826.
2017-09-05 17:28:40 +10:00
Angus Gratton
48333aea48 bluedroid: Move fixed_queue.h to implementation of hci_layer.c
Avoids pulling types like list_node into the public interface.

Closes https://github.com/espressif/esp-idf/issues/948
2017-09-05 17:14:40 +10:00
Angus Gratton
1be6bf6790 dhcpserver: Move list_node to implementation not public interface
Was unused in the public interface.

Closes https://github.com/espressif/esp-idf/issues/948
2017-09-05 17:14:23 +10:00
Alex Burr
93cc3a77cb uart: Add api call to switch on hardware support for 'software' flow control.
Cherry-picks https://github.com/espressif/esp-idf/pull/890
2017-09-05 16:30:21 +10:00
krzychb
7c7d29dc4a Implemented 2 of 3 review comments 2017-09-05 08:28:44 +02:00
krzychb
ba42c46cb3 Touch Pad driver overview 2017-09-05 08:28:44 +02:00
Angus Gratton
95c2aed126 build system: Remove obsolete GenerateBuildDirTarget macro eval 2017-09-05 16:28:42 +10:00
Deomid Ryabkov
1ea082a053 Expand vars before splitting fields
This allows making entire partition table line a variable.

Merges https://github.com/espressif/esp-idf/pull/841
2017-09-05 16:23:54 +10:00
Angus Gratton
f17bbff4b5 Merge branch 'feature/tcp_msl_menuconfig' into 'master'
components/lwip: Expose TCP_MSL in menuconfig. (github #783)

See merge request !1175
2017-09-05 14:18:36 +08:00
Angus Gratton
5f3cb9f9dc build system: Document --warn-undefined-variables and add a config item for it 2017-09-05 16:11:03 +10: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
167f2cf9e1 Merge branch 'bugfix/nvs_item_crc_check' into 'master'
nvs: check CRC of items on full pages

See merge request !1200
2017-09-05 12:09:40 +08: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
Angus Gratton
74a017e1e4 Merge branch 'bugfix/mbedtls_net_failures' into 'master'
mbedtls: Don't assign ctx->fd until connect() or bind() has succeeded

See merge request !1211
2017-09-05 11:28:43 +08:00
Ivan Grokhotkov
9362d66812 Merge branch 'feature/adc_calibration' into 'master'
Bugfix/ added esp_adc_cal include guards

See merge request !1192
2017-09-05 11:23:05 +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
Ivan Grokhotkov
70cdb03ffa Merge branch 'bugfix/openssl_client_example' into 'master'
example/openssl_client: Fix http string "printf" error without end character '\0'

See merge request !1201
2017-09-05 11:15:55 +08:00
Alexey Gerenkov
fb8b0c534a esp32: Fixes infinite loop caused by exception during core dumping 2017-09-05 11:15:27 +08:00
Ivan Grokhotkov
51e8f439b8 Merge branch 'bugfix/cpu_clk_disable_spi' into 'master'
spi_master, sdmmc: fix regressions due to peripherals being disabled by default

See merge request !1193
2017-09-05 10:41:51 +08:00
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