]> granicus.if.org Git - esp-idf/log
esp-idf
7 years agoCore timer 2 is unusable for FreeRTOS ticks because it triggers a high-level interrup...
Jeroen Domburg [Sun, 15 Jan 2017 03:11:58 +0000 (11:11 +0800)]
Core timer 2 is unusable for FreeRTOS ticks because it triggers a high-level interrupt. This commit deletes the option to select it.

7 years agoMerge branch 'feature/esp32_core_dump' into 'master'
Ivan Grokhotkov [Fri, 13 Jan 2017 03:51:40 +0000 (11:51 +0800)]
Merge branch 'feature/esp32_core_dump' into 'master'

esp32 core dump to flash

1.  menuconfig option to select where to store core dump: flash, uart or disable
2. Saving of core dump to flash
3. Partition table definitions files with core dump partition
4. Python scripts to support core dump generation from GDB command line

See merge request !341

7 years agoesp32: Fixes issues discussed during code review of MR!341
Alexey Gerenkov [Tue, 10 Jan 2017 11:48:47 +0000 (14:48 +0300)]
esp32: Fixes issues discussed during code review of MR!341

The following issues mentioned during MR!341 review were fixed:
1) Core dump test application description
2) Usage of CONFIG_ESP32_ENABLE_COREDUMP_TO_FLASH and CONFIG_ESP32_ENABLE_COREDUMP_TO_UART
3) FLASH_GUARD_START macro usage is fixed in flash API
4) Core dump module logging facility
5) cache util functions doc updated
6) interactive delay before print core dump to uart
7) core dump partion support in build system

7 years agoMerge branch 'bug/ets_timer_crash' into 'master'
Jiang Jiang Jian [Thu, 12 Jan 2017 13:33:28 +0000 (21:33 +0800)]
Merge branch 'bug/ets_timer_crash' into 'master'

tw9503: fix ets timer crash bug

1. tw9503: call ets_timer_disarm before calling ets_timer_setfn

2. change CHECK_AP_CONN to CHECK_STA_CONN

See merge request !414

7 years agotw9503: fix ets timer crash bug
XiaXiaotian [Thu, 12 Jan 2017 12:39:36 +0000 (20:39 +0800)]
tw9503: fix ets timer crash bug

1. tw9503: call ets_timer_disarm before calling ets_timer_setfn

2. change CHECK_AP_CONN to CHECK_STA_CONN

7 years agoMerge branch 'bugfix/btdm_adv_stop' into 'master'
Wu Jian Gang [Thu, 12 Jan 2017 09:32:09 +0000 (17:32 +0800)]
Merge branch 'bugfix/btdm_adv_stop' into 'master'

component/bt : fix adv stop bug

fix advertising cannot stop bug.

See merge request !412

7 years agoMerge branch 'feature/btdm_attr_table' into 'master'
Wu Jian Gang [Thu, 12 Jan 2017 09:31:39 +0000 (17:31 +0800)]
Merge branch 'feature/btdm_attr_table' into 'master'

component bt:Added the create attribute table method to the new API

GATT Server service table APIs.
Have already modify the style and other things as @jeroen  suggestion in other MR(the MR have been closed)

See merge request !399

7 years agocomponent/bt : fix adv stop bug
Tian Hao [Thu, 12 Jan 2017 08:29:07 +0000 (16:29 +0800)]
component/bt : fix adv stop bug

7 years agocomponent/bt : gatt server table fix uuid discovery bug
Tian Hao [Thu, 12 Jan 2017 08:25:09 +0000 (16:25 +0800)]
component/bt : gatt server table fix uuid discovery bug

7 years agoMerge branch 'bugfix/deep_sleep' into 'master'
Ivan Grokhotkov [Thu, 12 Jan 2017 07:53:09 +0000 (15:53 +0800)]
Merge branch 'bugfix/deep_sleep' into 'master'

deep sleep related fixes

A few fixes for deep sleep behavior:

- Fix a regression that deep sleep stub crashed if `ESP32_DEEP_SLEEP_WAKEUP_DELAY` option was enabled — the stub called `ets_update_cpu_frequency`, which was recently redefined to be an IRAM function, rather than a ROM one. Fixed by restoring the ROM definition as `ets_update_cpu_frequency_rom`, and using that in the deep sleep stub.

- By default, don't power down RTC_SLOW_MEM if there is any data in .rtc.data or .rtc.bss sections. This provides better out-of-the box experience, as variables attributed to .rtc.data are actually preserved during deep sleep.

- Store boot time in RTC_STORE registers instead of using a variable with RTC_DATA_ATTR. This allows RTC_SLOW_MEM to be powered down in deep sleep if no variables with RTC_DATA_ATTR are present in the program.

Fixes https://github.com/espressif/esp-idf/issues/182

See merge request !409

7 years agocomponent/bt : mv demo name
Tian Hao [Thu, 12 Jan 2017 06:44:26 +0000 (14:44 +0800)]
component/bt : mv demo name

1. mv demo name
2. fix a docs

7 years agonewlib: use RTC_STORE registers to keep boot time instead of RTC_SLOW_MEM
Ivan Grokhotkov [Wed, 11 Jan 2017 09:28:09 +0000 (17:28 +0800)]
newlib: use RTC_STORE registers to keep boot time instead of RTC_SLOW_MEM

This allows RTC_SLOW_MEM to be powered down in deep sleep if no other variables are placed into RTC_SLOW_MEM.

7 years agodeep sleep: keep RTC_SLOW_MEM powered on if data is placed into RTC slow memory
Ivan Grokhotkov [Wed, 11 Jan 2017 09:23:23 +0000 (17:23 +0800)]
deep sleep: keep RTC_SLOW_MEM powered on if data is placed into RTC slow memory

7 years agodeep sleep: fix regression due to moving ets_update_cpu_frequency into IRAM
Ivan Grokhotkov [Wed, 11 Jan 2017 09:17:13 +0000 (17:17 +0800)]
deep sleep: fix regression due to moving ets_update_cpu_frequency into IRAM

Deep sleep stub may call ets_update_cpu_frequency, which has been moved from ROM to IRAM.
Restore the ROM version in the linker script, call it ets_update_cpu_frequency_rom, use it in the deep sleep stub.

7 years agoMerge branch 'bugfix/btdm_dualcore_tmp_solution' into 'master'
Jiang Jiang Jian [Thu, 12 Jan 2017 03:50:18 +0000 (11:50 +0800)]
Merge branch 'bugfix/btdm_dualcore_tmp_solution' into 'master'

component/bt : modify bluedroid task to core0

use tmp solution to resolve the dual core bug.

Run bluedroid all task on core0.

See merge request !408

7 years agoMerge branch 'feature/wpa2_example' into 'master'
Jiang Jiang Jian [Thu, 12 Jan 2017 03:49:52 +0000 (11:49 +0800)]
Merge branch 'feature/wpa2_example' into 'master'

wpa2 enterprise: add example for wpa2 enterprise

See merge request !410

7 years agocomponent/bt : Optimize Gatt attr table and fix some bugs
Island [Wed, 11 Jan 2017 16:48:48 +0000 (00:48 +0800)]
component/bt : Optimize Gatt attr table and fix some bugs

1. Optimize GATT attribute table structure
2. fix read/write bugs
3. add docs

7 years agoMerge branch 'bugfix/mbedtls_tests' into 'master'
Ivan Grokhotkov [Thu, 12 Jan 2017 01:47:15 +0000 (09:47 +0800)]
Merge branch 'bugfix/mbedtls_tests' into 'master'

fix mbedtls unit tests, fix IDF_VER when building a project outside ESP-IDF tree

- mbedTLS test needs about 5% more time to run (in debug mode) when building with 5.2.0, compared to 4.8.5. Increase the timeout to let the test pass.
- when doing `git describe` in IDF_VER definition, `-C $(IDF_PATH)` is needed to get the version of ESP-IDF, and not the project being built (which may not even be in git)

See merge request !411

7 years agoesp32: Adds documentation and comments to core dump feature files
Alexey Gerenkov [Fri, 6 Jan 2017 10:06:43 +0000 (13:06 +0300)]
esp32: Adds documentation and comments to core dump feature files

7 years agoesp32: Fixes several issues in core dump feature
Alexey Gerenkov [Tue, 3 Jan 2017 19:01:40 +0000 (22:01 +0300)]
esp32: Fixes several issues in core dump feature

1) PS is fixed up to allow GDB backtrace to work properly
2) MR!341 discussion: in core dump module: esp_panicPutXXX was replaced by ets_printf.
3) MR!341 discussion: core dump flash magic number was changed.
4) MR!341 discussion: SPI flash access API was redesigned to allow flexible critical section management.
5) test app for core dump feature was added
6) fixed base64 file reading issues on Windows platform
7) now raw bin core file is deleted upon core loader failure by epscoredump.py

7 years agoesp32: Add core dump printing to UART feature
Alexey Gerenkov [Tue, 3 Jan 2017 11:16:41 +0000 (14:16 +0300)]
esp32: Add core dump printing to UART feature

7 years agoesp32: Add core dump saving to flash feature
Alexey Gerenkov [Wed, 21 Dec 2016 23:56:23 +0000 (02:56 +0300)]
esp32: Add core dump saving to flash feature

Complimentary changes:
1) Partition table definitions files with core dump partition
2) Special sub-type for core dump partition
3) Special version of spi_flash_xxx
4) espcoredump.py is script to get core dump from flash and print useful info
5) FreeRTOS API was extended to get tasks snapshots

7 years agobuild system: fix IDF_VER for projects outside of ESP-IDF tree
Ivan Grokhotkov [Wed, 11 Jan 2017 14:47:44 +0000 (22:47 +0800)]
build system: fix IDF_VER for projects outside of ESP-IDF tree

7 years agowpa2 enterprise: add example for wpa2 enterprise
XiaXiaotian [Wed, 11 Jan 2017 10:20:01 +0000 (18:20 +0800)]
wpa2 enterprise: add example for wpa2 enterprise

7 years agombedtls: give SHA test slightly more time to run
Ivan Grokhotkov [Wed, 11 Jan 2017 13:30:23 +0000 (21:30 +0800)]
mbedtls: give SHA test slightly more time to run

7 years agoMerge branch 'feature/config_wifi_bt' into 'master'
Ivan Grokhotkov [Wed, 11 Jan 2017 10:38:30 +0000 (18:38 +0800)]
Merge branch 'feature/config_wifi_bt' into 'master'

Clean up WiFi & Bluetooth config options

* Splits "WiFi" configuration out from ESP32 configuration submenu to its own menu.
* Renames "BT" to "Bluetooth", enabling Bluetooth is now in this option not the ESP32 submenu.

* Also disables compiling/linking of BT stack if Bluetooth is disabled, saves some build time.

See merge request !397

7 years agoMerge branch 'feature/toolchain_update' into 'master'
Ivan Grokhotkov [Wed, 11 Jan 2017 10:37:45 +0000 (18:37 +0800)]
Merge branch 'feature/toolchain_update' into 'master'

update toolchain version, rebuild newlib

- This MR updates the toolchain version used in the ESP-IDF
- Compiler version check and warning is added to project.mk
- Newlib is rebuilt to include wcsftime function
- libstdc++ build uses correct newlib headers (so we won't get undefined reference to `__impure_ptr` anymore)

See merge request !387

7 years agoMerge branch 'bugfix/fix_remove_wifi_auto_reconnect' into 'master'
Wu Jian Gang [Wed, 11 Jan 2017 10:10:44 +0000 (18:10 +0800)]
Merge branch 'bugfix/fix_remove_wifi_auto_reconnect' into 'master'

esp32: fixs about auto-reconnect and ap ssid configuration

1. Remove auto-reconnect
2. Use strnlen instead strlen to calculate ssid len in wifi lib

See merge request !407

7 years agoesp32: fixs about auto-reconnect and ap ssid configuration
XiaXiaotian [Wed, 11 Jan 2017 09:21:10 +0000 (17:21 +0800)]
esp32: fixs about auto-reconnect and ap ssid configuration

1. Remove auto-reconnect
2. Use strnlen instead strlen to calculate ssid len in wifi lib

7 years agocomponent/bt : modify bluedroid task to core0
Tian Hao [Wed, 11 Jan 2017 09:19:25 +0000 (17:19 +0800)]
component/bt : modify bluedroid task to core0

7 years agoMerge branch 'bugfix/spi_inconsistencies' into 'master'
Jeroen Domburg [Wed, 11 Jan 2017 09:11:45 +0000 (17:11 +0800)]
Merge branch 'bugfix/spi_inconsistencies' into 'master'

SPI: Some fixes to docs and flag naming

Kolban noticed the flags for a transaction are not named like the documentation states. The flags as mentioned in the docs are more consistent, so this MR renames them to that. Also some additions to the docs wrt the SPI signals

Ref http://www.esp32.com/viewtopic.php?f=13&t=919&p=3976#p3976 and http://www.esp32.com/viewtopic.php?f=13&t=921&p=3975#p3975

See merge request !398

7 years agocomponent bt:Added the create attribute table method to the new API
Yulong [Fri, 23 Dec 2016 16:28:47 +0000 (11:28 -0500)]
component bt:Added the create attribute table method to the new API

7 years agoAdd test for spi clock, fix corner cases)
Jeroen Domburg [Wed, 11 Jan 2017 08:13:33 +0000 (16:13 +0800)]
Add test for spi clock, fix corner cases)

7 years agoMerge branch 'bugfix/id9562_unregistered_callback' into 'master'
Jiang Jiang Jian [Wed, 11 Jan 2017 07:57:03 +0000 (15:57 +0800)]
Merge branch 'bugfix/id9562_unregistered_callback' into 'master'

component/bt: check for registration status of callback function before using it

Add checking of NULL function pointers when calling bluetooth callbacks, especially before the callback functions are registered

See merge request !406

7 years agoMerge branch 'feature/add_wpa2_set_id_api' into 'master'
Jiang Jiang Jian [Wed, 11 Jan 2017 07:13:47 +0000 (15:13 +0800)]
Merge branch 'feature/add_wpa2_set_id_api' into 'master'

add wpa2 set id api and modify null data tx description

1. wpa2: add wpa2 set id api

2. low rate: modify null data tx description

See merge request !402

7 years agodocs: update toolchain version
Ivan Grokhotkov [Sun, 4 Dec 2016 07:02:02 +0000 (23:02 -0800)]
docs: update toolchain version

7 years agocxx: add iostreams test
Ivan Grokhotkov [Tue, 10 Jan 2017 15:45:44 +0000 (23:45 +0800)]
cxx: add iostreams test

Checks that libstdc++ can use newlib IO functions

7 years agonewlib: build with wcsftime function
Ivan Grokhotkov [Tue, 10 Jan 2017 15:43:18 +0000 (23:43 +0800)]
newlib: build with wcsftime function

7 years agoMerge branch 'feature/ethernet_support_flow_control' into 'master'
Jiang Jiang Jian [Wed, 11 Jan 2017 06:51:43 +0000 (14:51 +0800)]
Merge branch 'feature/ethernet_support_flow_control' into 'master'

ethernet: support flow control

(1) Only fullduplex mode support flow ctrl .

(2) Fix reboot exception which caused by not-reset EMAC hardware (such as DMA) when reset CPU.

See merge request !392

7 years agoMerge branch 'bugfix/id9561_bt_status_check' into 'master'
Jiang Jiang Jian [Wed, 11 Jan 2017 06:38:43 +0000 (14:38 +0800)]
Merge branch 'bugfix/id9561_bt_status_check' into 'master'

component/bt: bug fix of lack of checking bluetooth stack status inside API functions

Add an API function for checking bluetooth stack status: whether it is uninitialized, initialized or enabled.
The function is intended to be used by users to check the bluetooth stack status, also, it is used inside bluetooth API functions to ensure the stack is in valid state.

See merge request !405

7 years agon, h and l actually are 6-bit; they go from 1 to 64.
Jeroen Domburg [Wed, 11 Jan 2017 06:13:37 +0000 (14:13 +0800)]
n, h and l actually are 6-bit; they go from 1 to 64.

7 years agocomponent/bt: change MACRO to inline function when invoking callbacks
wangmengyang [Wed, 11 Jan 2017 06:08:16 +0000 (14:08 +0800)]
component/bt: change MACRO to inline function when invoking callbacks

7 years agocomponent/bt: fix typos in "if" condition espressions
wangmengyang [Wed, 11 Jan 2017 05:36:48 +0000 (13:36 +0800)]
component/bt: fix typos in "if" condition espressions

7 years agoFix clock divider calculation
Jeroen Domburg [Wed, 11 Jan 2017 05:01:48 +0000 (13:01 +0800)]
Fix clock divider calculation

7 years agoadd wpa2 set id api and modify null data tx description
XiaXiaotian [Tue, 10 Jan 2017 09:50:32 +0000 (17:50 +0800)]
add wpa2 set id api and modify null data tx description

1. wpa2: add wpa2 set id api

2. low rate: modify null data tx description

7 years agoMerge branch 'bugfix/crosscore_int_iram' into 'master'
Ivan Grokhotkov [Wed, 11 Jan 2017 04:07:43 +0000 (12:07 +0800)]
Merge branch 'bugfix/crosscore_int_iram' into 'master'

Place cross-core interrupt into IRAM, sanity check handler address passed into esp_intr_alloc

Cross-core interrupt handler was not marked with IRAM_ATTR.

The reason why this caused an exception is probably due to some tasks running at highest priority (these are not blocked by spi_flash_disable_caches_interrupts_and_other_cpu mechanism).

This change puts the interrupt handler into IRAM and adds a sanity check into `esp_intr_alloc`.

Reported on Github: https://github.com/espressif/esp-idf/issues/211

See merge request !404

7 years agoAlso update documentation to new conventions
Jeroen Domburg [Wed, 11 Jan 2017 03:55:23 +0000 (11:55 +0800)]
Also update documentation to new conventions

7 years agoesp32: sanity check ISR handler address passed into esp_intr_alloc
Ivan Grokhotkov [Tue, 10 Jan 2017 17:14:18 +0000 (01:14 +0800)]
esp32: sanity check ISR handler address passed into esp_intr_alloc

Return ESP_ERR_INVALID_ARG if the handler is not in IRAM (or RTC fast memory)

7 years agoMerge branch 'feature/idf_version' into 'master'
Ivan Grokhotkov [Wed, 11 Jan 2017 03:34:28 +0000 (11:34 +0800)]
Merge branch 'feature/idf_version' into 'master'

build system: add IDF_VER environment variable and preprocessor define

This adds an `IDF_VER` preprocessor define which is obtained from `git describe`.

Looks like `v1.0-275-g0efaa4f` for non-release version or `v2.0` for a tagged (release) version.

See merge request !403

7 years agocomponent/bt: check for registration status of callback function before using it
wangmengyang [Wed, 11 Jan 2017 03:31:35 +0000 (11:31 +0800)]
component/bt: check for registration status of callback function before using it

7 years agoRename SPI Master IO pins to more common terminology, add better explanation to queue...
Jeroen Domburg [Wed, 11 Jan 2017 03:25:56 +0000 (11:25 +0800)]
Rename SPI Master IO pins to more common terminology, add better explanation to queue_length initialization value

7 years agoMerge branch 'feature/ping_function' into 'master'
Wu Jian Gang [Wed, 11 Jan 2017 03:25:32 +0000 (11:25 +0800)]
Merge branch 'feature/ping_function' into 'master'

Add ping function

Add ping function, It's need enable LWIP_RAW.

See merge request !285

7 years agocomponent/bt: bug fix of lack of checking bluetooth stack status inside API functions
wangmengyang [Wed, 11 Jan 2017 03:04:41 +0000 (11:04 +0800)]
component/bt: bug fix of lack of checking bluetooth stack status inside API functions

7 years agocomponents/lwip: Set the ping target info
Liu Han [Wed, 7 Dec 2016 09:34:26 +0000 (17:34 +0800)]
components/lwip: Set the ping target info

Add API for set the ping target info and get the ping result

7 years agoesp32: place cross-core interrupt handler into IRAM
Ivan Grokhotkov [Tue, 10 Jan 2017 16:52:45 +0000 (00:52 +0800)]
esp32: place cross-core interrupt handler into IRAM

esp_intr_alloc is called with ESP_INTR_FLAG_IRAM, so the ISR should be in IRAM.

7 years agobuild system: add IDF_VER environment variable and preprocessor define
Ivan Grokhotkov [Tue, 10 Jan 2017 16:24:50 +0000 (00:24 +0800)]
build system: add IDF_VER environment variable and preprocessor define

7 years agodhcp: fix dhcp err when wifi and ethernet coexist
shangke [Tue, 10 Jan 2017 13:54:53 +0000 (21:54 +0800)]
dhcp: fix dhcp err when wifi and ethernet coexist

7 years agoethernet: support flow control
shangke [Fri, 6 Jan 2017 05:49:42 +0000 (13:49 +0800)]
ethernet: support flow control

7 years agoSPI master: rename transaction flags from SPI_* to SPI_TRANS_*, like the documentatio...
Jeroen Domburg [Tue, 10 Jan 2017 06:41:12 +0000 (14:41 +0800)]
SPI master: rename transaction flags from SPI_* to SPI_TRANS_*, like the documentation says. Also add some explanation about the SPI signals in the documentation

7 years agoMerge branch 'feature/watchpoint_on_stack_canary' into 'master'
Jeroen Domburg [Tue, 10 Jan 2017 06:01:07 +0000 (14:01 +0800)]
Merge branch 'feature/watchpoint_on_stack_canary' into 'master'

Add option to automatically set a watchpoint at the end of the swapped-in task

This should make stack overflows easier to debug because it triggers a debug exception as soon as the stack is overwritten, not later when a context switch happens. Marked as a FreeRTOS debug feature because it doesn't give a nice error message and uses up a watchpoint.

See merge request !389

7 years agoMerge branch 'bugfix/tcpip_adapter_set_hostname' into 'master'
Wu Jian Gang [Tue, 10 Jan 2017 05:59:22 +0000 (13:59 +0800)]
Merge branch 'bugfix/tcpip_adapter_set_hostname' into 'master'

Fix tcpip_adapter_set_hostname issue

\bThe default hostname for each interface is "espressif", users can call this API to change each interface's hostname.

See merge request !284

7 years agoconfig: Move WiFi & BT toggles to Components menu, same as Ethernet
Angus Gratton [Tue, 10 Jan 2017 05:39:43 +0000 (16:39 +1100)]
config: Move WiFi & BT toggles to Components menu, same as Ethernet

7 years agoAdd documentation to panic handler functions, move watchpoint stuff from tasks.c...
Jeroen Domburg [Tue, 10 Jan 2017 05:05:19 +0000 (13:05 +0800)]
Add documentation to panic handler functions, move watchpoint stuff from tasks.c to port.c, account for non-32-bytes-aligned stacks when setting watchpoint, add debug reason explanation to panic handler

7 years agoconfig: Simplify WiFi & Bluetooth config options
Angus Gratton [Tue, 10 Jan 2017 05:04:04 +0000 (16:04 +1100)]
config: Simplify WiFi & Bluetooth config options

Removes redundant menu options, splits WiFi configuration out from
generic ESP32 configuration.

7 years agoMerge branch 'feature/JSON_Float' into 'master'
Ivan Grokhotkov [Tue, 10 Jan 2017 05:01:43 +0000 (13:01 +0800)]
Merge branch 'feature/JSON_Float' into 'master'

Add float format process

Add float format process

See merge request !390

7 years agocomponents/tcpip_adapter: Allow to set different hostname for each interface
Liu Han [Wed, 7 Dec 2016 07:37:59 +0000 (15:37 +0800)]
components/tcpip_adapter: Allow to set different hostname for each interface

7 years agoMerge branch 'feature/openssl' into 'master'
Wu Jian Gang [Tue, 10 Jan 2017 04:01:40 +0000 (12:01 +0800)]
Merge branch 'feature/openssl' into 'master'

examples/10_openssl_server: fixup SSL server with method of specific version

1. add method of any version supporting at OpenSSL and add API in header file
2. change OpenSSL server context method to be method of any version

Fixes http://esp32.com/viewtopic.php?f=14&t=696.

See merge request !369

7 years agocoap: Initialise/update the libcoap submodule
Angus Gratton [Tue, 10 Jan 2017 00:12:02 +0000 (11:12 +1100)]
coap: Initialise/update the libcoap submodule

7 years agostdatomic.h: Include stdint.h, required for some limit types
Angus Gratton [Thu, 5 Jan 2017 23:14:32 +0000 (10:14 +1100)]
stdatomic.h: Include stdint.h, required for some limit types

7 years agoWiFi software coexistence: Clarify KConfig description
Angus Gratton [Tue, 3 Jan 2017 00:34:23 +0000 (11:34 +1100)]
WiFi software coexistence: Clarify KConfig description

Ref http://esp32.com/viewtopic.php?f=13&t=844&p=3576

7 years agoMerge branch 'feature/low_rate_change_ie' into 'master'
Jiang Jiang Jian [Mon, 9 Jan 2017 13:14:40 +0000 (21:14 +0800)]
Merge branch 'feature/low_rate_change_ie' into 'master'

esp32:update wifi libs

1. low_rate: change low rate ie
2. modem sleep

See merge request !391

7 years agoMerge branch 'bugfix/autoip_enable_issue' into 'master'
Wu Jian Gang [Mon, 9 Jan 2017 10:57:03 +0000 (18:57 +0800)]
Merge branch 'bugfix/autoip_enable_issue' into 'master'

lwip: fix compile issue when autoip option enabled

See merge request !383

7 years agoupdate wifi libs
qiyueixa [Mon, 9 Jan 2017 10:44:27 +0000 (18:44 +0800)]
update wifi libs

7 years agocJSON:Add float format process
Liu Han [Mon, 9 Jan 2017 09:51:48 +0000 (17:51 +0800)]
cJSON:Add float format process

7 years agoAdd option to automatically set a watchpoint at the end of the swapped-in task
Jeroen Domburg [Mon, 9 Jan 2017 08:42:45 +0000 (16:42 +0800)]
Add option to automatically set a watchpoint at the end of the swapped-in task

7 years agoMerge branch 'bugfix/detect_ocd_when_panic' into 'master'
Jiang Jiang Jian [Mon, 9 Jan 2017 05:25:45 +0000 (13:25 +0800)]
Merge branch 'bugfix/detect_ocd_when_panic' into 'master'

Fix OpenOCD detection code

In the current master, detection of an attached OCD is broken. This fixes it.

I also snuck in two unrelated checks in intr_alloc which return from a function that is asserted earlier in the code. This makes the code behave better when they are called erroneously in a production build.

See merge request !377

7 years agoMerge branch 'bugfix/sdkconfig_defaults' into 'master'
Angus Gratton [Mon, 9 Jan 2017 04:51:20 +0000 (12:51 +0800)]
Merge branch 'bugfix/sdkconfig_defaults' into 'master'

build system: Fix sdkconfig.defaults file preventing menuconfig changes

'make defconfig' now behaves similarly whether sdkconfig.defaults
is present or not, and 'make menuconfig' doesn't trigger a defconfig.

See merge request !385

7 years agobuild system: Fix sdkconfig.defaults file preventing menuconfig changes
Angus Gratton [Sun, 8 Jan 2017 23:09:05 +0000 (10:09 +1100)]
build system: Fix sdkconfig.defaults file preventing menuconfig changes

'make defconfig' now behaves similarly whether sdkconfig.defaults
is present or not, and 'make menuconfig' doesn't trigger a defconfig.

7 years agoCalling esp_intr_noniram_[en|dis]able twice is an error, so abort instead of doing...
Jeroen Domburg [Mon, 9 Jan 2017 04:04:21 +0000 (12:04 +0800)]
Calling esp_intr_noniram_[en|dis]able twice is an error, so abort instead of doing an assert which disappears in non-debug mode

7 years agoMerge branch 'feature/btdm_common_api' into 'master'
Jiang Jiang Jian [Mon, 9 Jan 2017 03:33:57 +0000 (11:33 +0800)]
Merge branch 'feature/btdm_common_api' into 'master'

component/bt : add bt device api

1. add get bd_addr function

later, will add other functions reference with bluetooth device.

See merge request !380

7 years agoMerge branch 'bugfix/tw9515_fix_wifi_timer_thread_safe_issue' into 'master'
Wu Jian Gang [Mon, 9 Jan 2017 02:54:00 +0000 (10:54 +0800)]
Merge branch 'bugfix/tw9515_fix_wifi_timer_thread_safe_issue' into 'master'

esp32: fix wifi timer thread-safe issue

Update wifi lib to fix a wifi timer thread-safe issue

See merge request !388

7 years agolwip: fix compile issue when autoip option enabled
Wu Jian Gang [Sat, 7 Jan 2017 13:20:39 +0000 (21:20 +0800)]
lwip: fix compile issue when autoip option enabled

7 years agoesp32: fix wifi timer thread-safe issue
Liu Zhi Fu [Mon, 9 Jan 2017 02:09:10 +0000 (10:09 +0800)]
esp32: fix wifi timer thread-safe issue

Update wifi lib to fix a wifi timer thread-safe issue

7 years agoMerge branch 'bugfix/bootloader_ets_cpu_update_freq' into 'master'
Ivan Grokhotkov [Mon, 9 Jan 2017 02:14:00 +0000 (10:14 +0800)]
Merge branch 'bugfix/bootloader_ets_cpu_update_freq' into 'master'

bootloader: export ets_update_cpu_frequency

MR !363 added linking librtc into bootloader. At the same time, MR !373 removed ets_update_cpu_frequency from ROM exports ld script, and replaced it with a dual CPU aware version. Combining these two MRs caused linker error in bootloader due to the unresolved `ets_update_cpu_frequency`.

One option to fix this is to move the definition of ets_update_cpu_frequency into bootloader_support component. This does however look a bit odd because this function is not something that is specifically needed for bootloader support.

Another option is to export the ROM version of ets_update_cpu_frequency for the bootloader only. This means that when bootloader changes CPU frequency, it only updates the tick period variable for PRO CPU. This isn't an issue though, because app startup code still calls the dual CPU aware version of ets_update_cpu_frequency early on, before any non-trivial code can run on the APP cpu.

This MR uses the second approach. Looking forward, we may move this definition of ets_update_cpu_frequency into the rtc_clk component, which will be used both by the bootloader and the app, and placing ets_update_cpu_frequency there would be logical.

See merge request !384

7 years agoMerge branch 'feature/sd_driver_new' into 'master'
Ivan Grokhotkov [Sun, 8 Jan 2017 22:48:25 +0000 (06:48 +0800)]
Merge branch 'feature/sd_driver_new' into 'master'

SDMMC peripheral driver, SD protocol driver, FATFS library, VFS integration

This MR contains:
- SDMMC host peripheral driver
- SD protocol driver in sdmmc component (can be extended to support MMC/eMMC and SPI based hosts)
- ChaN's FATFS library v0.12b
- VFS integration
- FAT access via VFS is thread-safe (unless same file is read/written/unlinked/renamed from different tasks)
- Support for POSIX directory-related functions in VFS (and in vfs_fatfs.c)
- unit test for the above
- Example
- API documentation

Will be done in other MRs:
- Support for spi_flash IO driver for FatFs
- SPI host driver and support for SPI mode commands in sdmmc component
- MMC/eMMC support in sdmmc component
- Support for slightly higher 53/26.6MHz clocks (currently I'm using 20MHz for DS and 40MHz for HS, instead of 25MHz/50MHz per standard), and arbitrary low clocks (e.g. 4MHz).

See merge request !353

7 years agodocs: add sdmmc and fatfs docs
Ivan Grokhotkov [Sun, 8 Jan 2017 20:09:09 +0000 (04:09 +0800)]
docs: add sdmmc and fatfs docs

7 years agofatfs: add vfs support
Ivan Grokhotkov [Sun, 8 Jan 2017 21:54:04 +0000 (05:54 +0800)]
fatfs: add vfs support

7 years agofatfs: rename DIR to FF_DIR to avoid conflict with dirent.h
Ivan Grokhotkov [Mon, 2 Jan 2017 19:45:11 +0000 (03:45 +0800)]
fatfs: rename DIR to FF_DIR to avoid conflict with dirent.h

7 years agofatfs: add pluggable diskio layer, sdmmc implementation
Ivan Grokhotkov [Thu, 29 Dec 2016 09:33:38 +0000 (17:33 +0800)]
fatfs: add pluggable diskio layer, sdmmc implementation

7 years agofatfs: import version 0.12b
Ivan Grokhotkov [Thu, 29 Dec 2016 09:28:39 +0000 (17:28 +0800)]
fatfs: import version 0.12b

7 years agovfs: add directory APIs
Ivan Grokhotkov [Mon, 2 Jan 2017 19:26:25 +0000 (03:26 +0800)]
vfs: add directory APIs

7 years agovfs: implement vfs_unregister
Ivan Grokhotkov [Thu, 29 Dec 2016 14:21:29 +0000 (22:21 +0800)]
vfs: implement vfs_unregister

7 years agosdmmc: add peripheral driver and protocol layer
Ivan Grokhotkov [Mon, 19 Dec 2016 14:19:47 +0000 (22:19 +0800)]
sdmmc: add peripheral driver and protocol layer

7 years agobootloader: export ets_update_cpu_frequency
Ivan Grokhotkov [Sun, 8 Jan 2017 19:08:24 +0000 (03:08 +0800)]
bootloader: export ets_update_cpu_frequency

7 years agoMerge branch 'bugfix/fix_wifi_auth_fail_issue' into 'master'
Wu Jian Gang [Sat, 7 Jan 2017 13:12:45 +0000 (21:12 +0800)]
Merge branch 'bugfix/fix_wifi_auth_fail_issue' into 'master'

esp32: fix wifi auth issue

Fix wifi auth failed issue by default phy mode to 11N

See merge request !382

7 years agoMerge branch 'feature/cplusplus' into 'master'
Ivan Grokhotkov [Sat, 7 Jan 2017 10:50:12 +0000 (18:50 +0800)]
Merge branch 'feature/cplusplus' into 'master'

C++ support

This change adds necessary support for compiling C++ programs:
- linking against libstdc++
- implementation of static initialization guards using FreeRTOS primitives: since we don't have condition variables at our disposal, and we don't want to allocate a synchronization primitive for every guard variable generated by the compiler, we imitate condition variables using a combination of a mutex, counting semaphore, and a counter (based on [Microsoft Research paper](https://www.microsoft.com/en-us/research/wp-content/uploads/2004/12/ImplementingCVs.pdf), albeit because we don't need *arbitrary* code to use these CVs, implementation gets simpler).

Note that libstdc++ also contains an implementation of `__cxa_guard_{acquire,release,abort}` functions. These implementations come from an `#ifndef GXX_THREADS` branch, i.e. are not aware of multthreading. There are three ways of replacing these libstdc++ functions with our implementation:

1. Move our code into gcc. Pros: cleanest solution. Cons: Such changes are unlikely to be merged by any upstream, so we end up maintaining our own forks of {gcc,crosstool-ng}.
2. Use library as it is built by crosstool, use `ar` to delete one object file (`guards.o`), add this library to ESP-IDF. Pros: easy to implement. Cons: libstdc++ is a 15MB binary :hushed:
3. Keep using libstdc++ from crosstool, force our implementation to be linked using a `-u` linker flag. Pros: no impact on repo size, easy to implement. Cons: somewhat less clean than 1 (and about as hacky as 2).

For the reasons mentioned, option (3) looks like the best tradeoff.

Ref. TW6702

See merge request !364

7 years agoMerge branch 'test/update_known_issues' into 'master'
Ivan Grokhotkov [Sat, 7 Jan 2017 10:47:17 +0000 (18:47 +0800)]
Merge branch 'test/update_known_issues' into 'master'

CI: update know issue list for idf

See merge request !360

7 years agoMerge branch 'feature/bootloader_rng' into 'master'
Ivan Grokhotkov [Sat, 7 Jan 2017 10:46:10 +0000 (18:46 +0800)]
Merge branch 'feature/bootloader_rng' into 'master'

Enable bootloader entropy source for RNG

Enables an entropy source when bootloader starts up, which both seeds the RNG for use before WiFi/BT stack is enabled and provides an adequate RNG for secure boot & flash encryption key generation.

A prerequisite was enabling 80MHz operation, so the CPU is now set to 80MHz as soon as second stage bootloader starts running.

See merge request !363

7 years agoMerge branch 'feature/lwip-rcvbuf-option' into 'master'
Ivan Grokhotkov [Sat, 7 Jan 2017 10:45:37 +0000 (18:45 +0800)]
Merge branch 'feature/lwip-rcvbuf-option' into 'master'

add menuconfig option to enable SO_RCVBUF

This option is required by Arduino and enables netconn connection to be queried for amount of data available in the rx buffer.

See merge request !372

7 years agoMerge branch 'bugfix/ets_delay_on_app_cpu' into 'master'
Ivan Grokhotkov [Sat, 7 Jan 2017 10:45:14 +0000 (18:45 +0800)]
Merge branch 'bugfix/ets_delay_on_app_cpu' into 'master'

esp32: ets_update_cpu_frequency should set tick scale for both CPUs

ets_update_cpu_frequency ROM function updates g_ticks_per_us, which is has two copies, one for each CPU.
The APP CPU copy of g_ticks_per_us never got updated, resulting in shorter delays produced by ets_delay_us on the APP CPU.

This MR replaces ROM ets_update_cpu_frequency with a copy in IRAM which updates scaling factors on both of the CPUs.

So now we get expected delays (in microseconds):
```
ets_delay_us core=0 expected=50000 actual=50014
ets_delay_us core=1 expected=50000 actual=50015
vTaskDelay core=0 expected=50000 actual=49428
vTaskDelay core=1 expected=50000 actual=50000
```

Reported on the forum: http://esp32.com/viewtopic.php?f=2&t=713#p3722

See merge request !373