Commit graph

2285 commits

Author SHA1 Message Date
Angus Gratton
17747b3358 gpio driver: Clear GPIO matrix output config when setting pin as input
Otherwise, if a non-GPIO peripheral has been routed to this pin
(as an output), output driver can remain enabled.
2017-06-26 12:47:08 +10:00
Angus Gratton
c26baeb610 esptool: Update to v2.0.1
Fixes issue with GPIO 0 being enabled as an output on ESP32D2WD (or when setting SPI pins in efuse)
and not using Quad-I/O modes.

Ref: https://esp32.com/viewtopic.php?f=2&t=2205
2017-06-26 12:16:09 +10:00
Liu Zhi Fu
a7ef510551 esp32: update wifi lib to fix a sniffer issue
Fix sniffer only receives the first MDPU in AMPDU when the AMPDU is not for our station/soft-AP
2017-06-24 10:45:20 +08:00
Deomid Ryabkov
ee5eba793f Make relative paths match the default VFS, if provided
https://github.com/espressif/esp-idf/issues/158
2017-06-23 13:12:28 +01:00
Jack
ab9f63aba7 fix bug that uart register base address macro was wrong 2017-06-23 19:56:12 +08:00
wangmengyang
6da84eff76 component/bt: fix a bug for L2CAP state machine to access lcb after it is released 2017-06-23 17:26:43 +08:00
Ivan Grokhotkov
3bd3640d60 Merge branch 'bugfix/fatfs_unit_test_name' into 'master'
fatfs: fix duplicate unit test name

See merge request !911
2017-06-23 16:32:51 +08:00
He Yin Ling
7c6208c9e0 test: add UT case for dual dport and apb access 2017-06-23 16:15:57 +08:00
Jiang Jiang Jian
1480251aa7 Merge branch 'bugfix/spiflash_rom_symbols' into 'master'
spiflash rom: Add symbols accidentally removed in refactor

See merge request !804
2017-06-23 15:24:04 +08:00
Ivan Grokhotkov
24c4bc9cc4 fatfs: fix duplicate unit test name 2017-06-23 14:59:21 +08:00
Angus Gratton
0c301206cf lwip debug: fix typo 2017-06-23 16:28:38 +10:00
Angus Gratton
8f4fc209a1 lwip: Enable LWIP assertions unless they are disabled globally 2017-06-23 16:26:11 +10:00
Angus Gratton
1c6510ed96 lwip: Allow configuring/disabling some TCP options to save RAM
RAM savings are small, but may add up when running large numbers of sockets.
2017-06-23 16:26:11 +10:00
Angus Gratton
8aa09aea10 event handler: Add debug event handler for confirmed IPv6 LL address 2017-06-23 16:15:16 +10:00
Angus Gratton
1ea0ddb025 lwip: Expose broadcast/multicast ping enable options in menuconfig 2017-06-23 16:15:00 +10:00
Ivan Grokhotkov
85baf0afaa Merge branch 'buxfix/panic_handler_not_halting_cpu' into 'master'
Panic Handler not halting when running on both cores

See merge request !903
2017-06-23 11:34:03 +08:00
Ivan Grokhotkov
e918ee20da Merge branch 'bugfix/vfs_fixes' into 'master'
VFS fixes

See merge request !901
2017-06-23 11:33:27 +08:00
Ivan Grokhotkov
dc0632789f Merge branch 'bugfix/sdmmc_send_init_bits' into 'master'
sdmmc: send init sequence to card before MMC_GO_IDLE_STATE

See merge request !906
2017-06-23 11:31:29 +08:00
Jiang Jiang Jian
3dd2861e2a Merge branch 'bugfix/btdm_ble_update_conn_params_issues' into 'master'
component/bt: Modifed the update connection method to fixed the bug of connectio…

See merge request !889
2017-06-22 20:50:37 +08:00
Jiang Jiang Jian
df76a904b0 Merge branch 'bugfix/fix_ieee80211_output_assert_and_restore_task_priority_in_wifi_lib' into 'master'
Fix the bug that lora vendor size was not added to probe response.

See merge request !908
2017-06-22 16:38:48 +08:00
Yulong
d79aeab3aa component/bt: Added the error log to the l2cble_start_conn_update func. 2017-06-22 03:53:27 -04:00
XiaXiaotian
8411aa7362 Fix the bug that lora vendor size was not added to probe response.
Restore priority of tasks in wifi lib.
2017-06-22 15:06:58 +08:00
wangmengyang
55c0a4ea60 component/bt: bugfix for NULL pointer access when HCI CTLR to HOST flow control is in use 2017-06-22 14:59:51 +08:00
Ivan Grokhotkov
45037efc45 Merge branch 'bugfix/vfs_write_return_type' into 'master'
Change esp_vfs_t.write return value to ssize_t

See merge request !897
2017-06-22 11:48:34 +08:00
James Sarrett
b772024699 send bus initialization bits before MMC_GO_IDLE_STATE command to initialize card after poweron 2017-06-22 11:08:47 +08:00
Jiang Jiang Jian
157749c77b Merge branch 'bugfix/btdm_modify_some_log_info' into 'master'
component /bt: modify some log infor

See merge request !905
2017-06-22 11:03:01 +08:00
Darian Leung
21f02a6955 Bugfix - Panic Handler not halting when running on both cores
Bug occurs when core dump destination in menuconfig is set to flash. When
programme crashes, xt_unhandled_exception or panicHandler will both trigger
commonErrorHandler. commonErrorHandler calls esp_core_dump_to_flash which
will attempt to use DPORT functions and hang due to trying to a stall and already
stalled processor (already stalled in xt_unhandled_exception and panicHandler).
Program will eventually be rebooted when wdt expires.

Added esp_dport_access_int_deinit after calls to haltOtherCore() so that DPORT
functions don't try to halt and already halted cpu hence preventing hang.

Fixes TW#12944 https://github.com/espressif/esp-idf/issues/646
2017-06-21 16:58:48 +08:00
wangmengyang
bbf449dbde component/bt: bugfix for hci_le_rd_rmt_used_feats_cmd handler which does not check connection state 2017-06-21 15:52:32 +08:00
Yulong
328e93ddc4 component/bt: Change the l2cble_start_conn_update return value to BOOLEAN. 2017-06-21 02:39:36 -04:00
Ivan Grokhotkov
5b678eed0d vfs: add support for nested mount points
Fixes https://github.com/espressif/esp-idf/issues/135
2017-06-21 14:17:14 +08:00
Ivan Grokhotkov
4f71b4574a vfs: fix NULL pointer dereference in esp_vfs_unregister 2017-06-21 13:54:04 +08:00
zhiweijian
eec989f026 Component /bt: modify some log infor 2017-06-21 10:54:51 +08:00
Ivan Grokhotkov
2ccfe3da96 vfs: fix opendir of a filesystem root directory
Previously opendir("/data") would fail if filesystem with "data" prefix
was registered in VFS, while opendir("/data/") would succeed.
This change fixes handling for the former case and adds relevant tests.
2017-06-21 01:21:14 +08:00
Ivan Grokhotkov
7ed8c66547 Merge branch 'bugfix/uxTaskGetSystemState_github_#12142' into 'master'
Bugfix for uxTaskGetSystemState

See merge request !883
2017-06-20 17:27:08 +08:00
Ivan Grokhotkov
89d503edf0 Merge branch 'bugfix/doc_bugfixes' into 'master'
Corrected small issues in documentation, fixes #694 and merges #706

See merge request !894
2017-06-20 17:25:03 +08:00
krzychb
05f56d1d25 [TW#13322] Typo in documentation, fixes #694 2017-06-19 22:42:22 +02:00
Liu Zhi Fu
59479eb7dd esp32: update wifi lib to fix a wifi connect issue
Fix WiFi fails to connect TP842N bug
2017-06-19 21:23:24 +08:00
Yulong
01705166bc component/bt: Modifed the update connection method to fixed the bug of connection parameters not correct. 2017-06-19 03:22:25 -04:00
Angus Gratton
99962b7905 Merge branch 'feature/esptool_v20' into 'master'
esptool: Update to v2.0 final release

See merge request !862
2017-06-19 08:37:10 +08:00
Jiang Jiang Jian
c8201275f7 Merge branch 'bugfix/btdm_ble_client_muti_conn_issue' into 'master'
component/bt: change the MAX_L2CAP_CHANNELS macro from 2 to MAX_ACL_CONNECTIONS …

See merge request !882
2017-06-16 16:52:38 +08:00
Darian Leung
1c798b0eab BugFix: uxTaskGetSystemState test case update
Updated test case to include configASSERT cases (+1 squashed commits)

Squashed commits:

[871ec26f] Freertos:Bugfix uxTaskGetSystemState

Bug (github #12142) with uxTaskGetSystemState where
if called immediately after creating a bunch of tasks,
those tasks would be added twice into the TaskStatusArray.
Bug caused due to use old implementation using vTaskSuspendAll
which did not stop newly created task on other core from accessing the
read/waiting task lists whilst the list were being read by
uxTaskGetSystemState. Fixed bug by replacing vTaskSuspendAll
with taskENTER_CRITICAL and added test case for the bugfix
2017-06-16 16:00:54 +08:00
Yulong
0d318ea2da component/bt: change the MAX_L2CAP_CHANNELS macro from 2 to MAX_ACL_CONNECTIONS when in the BLE only mode. 2017-06-16 03:46:46 -04:00
Jiang Jiang Jian
a5c5748de2 Merge branch 'bugfix/pcnt_reset' into 'master'
pcnt: Fix pcnt_set_pin/pcnt_counter_clear reported on github

See merge request !872
2017-06-16 15:43:04 +08:00
Jiang Jiang Jian
07ccbb8dbc Merge branch 'bugfix/rtc_time_issues' into 'master'
Fixes for RTC time issues

See merge request !849
2017-06-16 15:29:56 +08:00
Jiang Jiang Jian
ff6c0a6cc8 Merge branch 'bugfix/spi_flash_large_writes' into 'master'
spi_flash: Fix large writes, unaligned writes, and writes from flash

See merge request !843
2017-06-16 15:04:01 +08:00
Jiang Jiang Jian
7c50916c53 Merge branch 'bugfix/phy_init_procedure' into 'master'
component/esp32 : fix phy init with NULL init_data

See merge request !879
2017-06-16 15:03:03 +08:00
Nilay
769944b067 PCNT: fix for pcnt_set_pin API, it can now use all pcnt channels 2017-06-16 11:18:00 +05:30
Nilay
f50b5481fa PCNT: Fixed pcnt_counter_clear, Pulse Count now able to resume after API call 2017-06-16 11:11:52 +05:30
Jiang Jiang Jian
e045253883 Merge branch 'bugfix/btdm_conn_enhanecd_issue' into 'master'
component/bt: added the temp enhanced to solve the conn_interval not collect issues.

See merge request !881
2017-06-16 13:18:41 +08:00
Tian Hao
bb4a87dbfe component/esp32 : fix phy init with NULL init_data
1. fix phy init with NULL init_data
2. do full calibration without CONFIG_ESP32_PHY_CALIBRATION_AND_DATA_STORAGE
3. fix libphy.a printf
2017-06-16 12:09:13 +08:00
Ivan Grokhotkov
8ccb2a4990 esp32: make time monotonic across resets
Small changes to clock calibration value will cause increasing errors
the longer the device runs. Consider the case of deep sleep, assuming
that RTC counter is used for timekeeping:
- before sleep:
   time_before = rtc_counter * calibration_val
- after sleep:
   time_after = (rtc_counter + sleep_count) * (calibration_val + epsilon)
where 'epsilon' is a small estimation error of 'calibration_val'.
The apparent sleep duration thus will be:
time_after - time_before = sleep_count * (calibration_val + epsilon)
                           + rtc_counter * epsilon

Second term on the right hand side is the error in time difference
estimation, it is proportional to the total system runtime (rtc_counter).

To avoid this issue, this change makes RTC_SLOW_CLK calibration value
persistent across restarts. This allows the calibration value update to
be preformed, while keeping time after update same as before the update.
2017-06-16 12:06:04 +08:00
Jiang Jiang Jian
9a6b1c3b11 Merge branch 'bugfix/always_disable_ints_in_critical_region' into 'master'
Always disable interrupts in a critical region

See merge request !821
2017-06-16 11:36:27 +08:00
Yulong
1739216787 component/bt: added the temp enhanced to solve the conn_interval not collect issues. 2017-06-15 10:15:49 -04:00
Jiang Jiang Jian
a64f5de091 Merge branch 'bugfix/sw_reset_fixes' into 'master'
Fixes for esp_restart

See merge request !865
2017-06-15 22:10:13 +08:00
Jiang Jiang Jian
1cae2da0a0 Merge branch 'bugfix/classicBT_SMP_dependence' into 'master'
component/bt: add constraint in Kconfig to enable SMP_ENABLE when using classic BT

See merge request !877
2017-06-15 21:28:36 +08:00
Jiang Jiang Jian
fe1f8a25b5 Merge branch 'bugfix/intrrupt_num_conflict' into 'master'
component/bt : fix interrupt number conflict

See merge request !878
2017-06-15 20:45:57 +08:00
wangmengyang
85e9a0fa17 component/bt: add constraint in Kconfig to enable SMP_ENABLE when using classic BT
1. For now, some security related functions used in classic Bluetooth are controlled by "SMP_ENABLE". This commit fixes the dependency.
2. The two options, "CLASSIC_BT_ENABLED" and "SMP_ENABLED" The two options will be decoupled in the future.
2017-06-15 20:06:49 +08:00
Jiang Jiang Jian
fd12a6c706 Merge branch 'bugfix/btdm_add_set_pkt_data_length_evt_cback' into 'master'
component / bt: add set pkt data length event callback

See merge request !869
2017-06-15 19:51:22 +08:00
Tian Hao
09f7cf45dd component/bt : fix interrupt number conflict
1. the typical problem is when push keyboard on serial tool, the bluetooth may stop.
2017-06-15 19:41:54 +08:00
Ivan Grokhotkov
ffdcbc5355 libsodium: don’t link tests when TEST_ALL=1 is used
Currently libsodium tests add about 800kB to the binary, which is too
much for a partition table constrained to 2MB. Disable libsodium tests
until we start building multiple unit test apps for different subsets.
2017-06-15 18:15:37 +08:00
Ivan Grokhotkov
8cb0d52c43 esp_system: remove link time dependency on WiFi stack
- esp_restart will not pull in WiFi stack (if it is not used otherwise)
- esp_restore is moved into a separate file to break link time
  dependency
2017-06-15 18:15:36 +08:00
Ivan Grokhotkov
6538ebe8ad cxx: don’t pull libstdc++ local support in unit tests 2017-06-15 18:15:36 +08:00
Ivan Grokhotkov
9353666cc1 esp32: reset APP CPU when doing esp_restart
This fixes a bug introduced by !848, where APP CPU would not be reset
during esp_restart, if esp_restart was called from a task running on APP
CPU, and wouldn’t be reset by PRO CPU on startup.
This change replaces stalling APP CPU with resetting it.

Also adds a non-automated esp_restart tests.
2017-06-15 18:15:35 +08:00
Ivan Grokhotkov
a72b1abc51 esp32: disable DPORT access protection when doing esp_restart
DPORT access protection can not work when the other CPU is stalled.
Writes to DPORT registers in esp_restart caused the program to hang due
to access protection, and the reset happened due to RTC_WDT, not SW_RST.
This change adds esp_dport_access_int_deinit function and calls it from
esp_restart once the other core is stalled.
2017-06-15 18:15:35 +08:00
Ivan Grokhotkov
75658ee29b bootloader: workaround for clock switching bug in ESP32 rev. 0
In ESP32 rev. 0, switching between 240MHz and 80MHz (even via an
intermediate frequency of 40MHz) may cause the chip to lock up.
The bootloader used to enable 80MHz CPU clock at startup, which could
cause lock up after software reset. With this change, if 240MHz CPU
clock is enabled in menuconfig, bootloader will also use 240MHz to avoid
lock-up.
2017-06-15 18:15:35 +08:00
zhiweijian
58b65291d9 component / bt: add set pkt data length event callback 2017-06-15 16:02:03 +08:00
Jiang Jiang Jian
491932b80c Merge branch 'bugfix/btdm_cherry_pick_hit_limit_github_#12259' into 'master'
component/bt: cherry-pick the btdm_hit_limit_github_#12259 branch to this branch.

See merge request !867
2017-06-15 15:14:10 +08:00
Jiang Jiang Jian
ac5040a7c2 Merge branch 'bugfix/btdm_ll_get_remote_feature' into 'master'
component/bt: Fix can't get remote's feature bug

See merge request !871
2017-06-15 15:10:52 +08:00
Yulong
83b7144207 component/bt: Added the lmp_verion default value to 4.0. 2017-06-15 02:13:31 -04:00
Jiang Jiang Jian
5f24dcdf4e Merge branch 'bugfix/btdm_blufi' into 'master'
component/bt : fix blufi second init fail bug

See merge request !866
2017-06-15 13:37:31 +08:00
Yulong
6ffa30a408 component/bt: Change the return position in the btc_gatts_inter_cb function. 2017-06-14 23:40:25 -04:00
Jiang Jiang Jian
113c21a481 Merge branch 'bugfix/fail_to_disconn_after_pair_#13172' into 'master'
component/bt: Added the judgment to check the address is public or not.

See merge request !868
2017-06-15 11:20:12 +08:00
Jiang Jiang Jian
2e33dace16 Merge branch 'bugfix/fix_wifi_assert_at_ieee80211_output_line_733' into 'master'
fix the bug that wifi assert at ieee80211_output.c line 733

See merge request !870
2017-06-15 11:06:04 +08:00
Tian Hao
7cf5eea36f component/bt : fix blufi second init fail bug 2017-06-15 11:05:21 +08:00
Jiang Jiang Jian
a18032fe80 Merge branch 'bugfix/btdm_gattc_refresh_cache_does_not_work_properly' into 'master'
component /bt: using esp_ble_gattc_cache_refresh() does not work when open event callback

See merge request !864
2017-06-15 11:02:35 +08:00
island
e2e5f4caae component/bt: Fix can't get remote's feature bug
- Slave send version_ind cause some Android 7.0 devices can't encrypt correctly
2017-06-14 21:56:59 +08:00
XiaXiaotian
435b907475 fix the bug that wifi assert at ieee80211_output.c line 733 2017-06-14 21:20:28 +08:00
Yulong
a03e5f95be component/bt: Added the judgment to check the address is public or not. 2017-06-14 09:01:29 -04:00
Yulong
00bcee2df2 component/bt: cherry-pick the btdm_hit_limit_github_#12259 branch to this branch. 2017-06-14 07:14:23 -04:00
Jiang Jiang Jian
aefde1517d Merge branch 'bugfix/i2c_delete_interrupt_race' into 'master'
i2c driver: When deleting, disable interrupts before freeing data structures

See merge request !836
2017-06-14 17:47:22 +08:00
zhiweijian
60d5b677e7 Component /bt: using esp_ble_gattc_cache_refresh() does not work when open event callback. 2017-06-14 16:45:17 +08:00
Jiang Jiang Jian
ae7269d39d Merge branch 'bugfix/btdm_smp_auth_complete_error' into 'master'
component/bt: Change the btc layer data copy method.

See merge request !844
2017-06-14 15:16:38 +08:00
Jiang Jiang Jian
6b3a559ee7 Merge branch 'bugfix/btdm_master_write_service_change_ccc' into 'master'
component/bt: Fix slave initiate service change ccc discovery procedure bug

See merge request !847
2017-06-14 15:12:45 +08:00
Angus Gratton
55bec0e82f Merge branch 'feature/libsodium' into 'master'
Add libsodium cryptography library component (v1.0.12)

See merge request !852
2017-06-14 14:58:16 +08:00
Jiang Jiang Jian
db87a640ea Merge branch 'feature/optimize_task_priority_in_wifi_lib' into 'master'
Optimize priorities of pp, pm, timer, wps and wpa2 tasks.

See merge request !861
2017-06-14 14:01:53 +08:00
Angus Gratton
211580bf4f Add libsodium v1.0.12
Run some unit test cases based (poorly) around sodium's test infrastructure.

Increase in unity test task stack is due to signature tests, load a lot of data onto the stack.
2017-06-14 15:51:08 +10:00
Angus Gratton
8e0ec6a9ab Merge branch 'bugfix/abort_in_interrupt_context' into 'master'
Panic handler backtrace fixes

See merge request !835
2017-06-14 13:45:36 +08:00
Angus Gratton
6068c1be9a esptool: Update to v2.0 final release
For IDF use, most changes are minor compared to 2.0-beta3.

One notable addition, esptool.py now prints chip model & silicon
revision when it connects.
2017-06-14 15:41:51 +10:00
island
c5debed621 component/bt: Fix bug while writing slave's service change characteristic
- Fix slave initiate service discovery procedure
- Fix master re-discovery every time connection established
- Optimize service discovery char ccc write procedure
- Optimize esp_log_buffer function
- Modify default supervision timeout from 20s to 2s
2017-06-14 13:12:38 +08:00
Jiang Jiang Jian
06fa08b022 Merge branch 'bugfix/btdm_config_bluedroid_mem_debug_github_#12631' into 'master'
component/bt: Change the osi_mem_dbg_init to the esp_bluedroid_init function.

See merge request !860
2017-06-14 11:18:34 +08:00
XiaXiaotian
28e84a5299 Optimize priorities of pp, pm, timer, wps and wpa2 tasks. 2017-06-14 11:06:57 +08:00
Jiang Jiang Jian
69e8085624 Merge branch 'bugfix/wps_receive_m2d_fail_process' into 'master'
ESP32: Add error wps fail reason

See merge request !855
2017-06-14 10:57:59 +08:00
Jiang Jiang Jian
243bc97119 Merge branch 'bugfix/btdm_task_post' into 'master'
component/bt : fix task post bug && fix controller init protection

See merge request !856
2017-06-14 10:52:56 +08:00
Yulong
3f997d3e8c component/bt: Added the unhandle log to the btc dm case. 2017-06-13 22:37:44 -04:00
Ivan Grokhotkov
0c83e46b08 Merge branch 'bugfix/nvs_max_value_size' into 'master'
nvs: check value size before writing, document limitations

See merge request !796
2017-06-14 09:15:59 +08:00
Ivan Grokhotkov
6e704fc421 Merge branch 'bugifx/cplusplus_guards' into 'master'
add C++ include guards to header files which are missing them

See merge request !799
2017-06-14 09:14:02 +08:00
Ivan Grokhotkov
71d7716a45 Merge branch 'bugfix/esp_event_send_init_check' into 'master'
esp_event_send: check if the event loop is initialized

See merge request !817
2017-06-14 09:11:50 +08:00
Angus Gratton
91593a5237 Merge branch 'bugfix/rmt_driver_interrupts' into 'master'
rmt driver: Fix some issues around interrupts

See merge request !837
2017-06-14 08:35:22 +08:00
Angus Gratton
8bf675786a Merge branch 'feature/freertos_get_priority' into 'master'
freertos: Mark uxTaskPriorityGet() as tested, add SMP task priority unit tests

See merge request !794
2017-06-14 08:31:00 +08:00
Angus Gratton
5d7bffea2b panic handler: Print backtraces with calling address not return address
This seems to clean up some of the more wrong addr2line output results (not
sure why, something to do with optimisations I think - perhaps the return
address may also be a jump target from some earlier line of the code.)
2017-06-14 10:30:04 +10:00