Commit Graph

6636 Commits

Author SHA1 Message Date
Tian Hao
1c6b0bf925 component/esp32 : fix coexist lc protect cause memory corrupted
The bug will cause memory corrupted (the largest range is from 0x3ffc0000 ~ 0x3ffc8000),
some strange error will happen, like IllegalInstruction, LoadProhibited and .etc.
2019-02-15 16:13:30 +08:00
Jiang Jiang Jian
ef2bf23862 Merge branch 'bugfix/fix_some_wifi_bugs_0131_v3.1' into 'release/v3.1'
esp32: fix some wifi bugs  (backport v3.1)

See merge request idf/esp-idf!4219
2019-02-15 12:15:04 +08:00
Angus Gratton
cf5dbadf4f Merge branch 'bugfix/backtrace_from_interrupts_backport_v3.1' into 'release/v3.1'
Make backtrace work across interrupts (backport v3.1)

See merge request idf/esp-idf!4182
2019-02-13 16:53:39 +08:00
Angus Gratton
72c88db3a8 Merge branch 'fix/nvs_host_test' into 'release/v3.1'
Fix/nvs host test

See merge request idf/esp-idf!4223
2019-02-04 14:28:26 +08:00
Jiang Jiang Jian
cfe10825cf Merge branch 'bugfix/btdm_fix_write_char_crash_after_disconnection_v3.1' into 'release/v3.1'
Component/bt: fix write char crash after disconnection (backport v3.1)

See merge request idf/esp-idf!4211
2019-02-01 21:29:15 +08:00
Liu Zhi Fu
be115ec3ab esp32: fix some WiFi bugs
Fix following WiFi bugs:
1. Fix a crash bug which is caused by WiFi static TX buffer alloc/free.
2. Fix the bug that iphone fails to connect to ESP32 AP by enabling AP BAR receiving.
3. Fix the bug that ESP32 station fails to connect some APs, such as Xiaomi hotspot etc,
   after reset.
2019-01-31 21:42:49 +08:00
Shivani Tipnis
dbfe5b5886 Fix/Nvs host test extra argument passed
(cherry picked from commit 7b2cae15ba37420700d19fad55062dadc32241e5)
2019-01-31 18:47:07 +05:30
zhiweijian
e94b130ede Component/bt: fix write char crash after disconnection 2019-01-31 12:22:10 +00:00
He Yin Ling
5412ccbcb1 Merge branch 'feature/add_ipv6_related_change_v3.1' into 'release/v3.1'
modify test case to support ipv6 (backport v3.1)

See merge request idf/esp-idf!4073
2019-01-31 14:31:26 +08:00
Jiang Jiang Jian
fa9e6713ae Merge branch 'bugfix/tw28445_wps_thread_safe_v3.1' into 'release/v3.1'
esp32: fix WPS thread-safe (backport v3.1)

See merge request idf/esp-idf!4196
2019-01-31 10:44:07 +08:00
Darian Leung
2ccfa6bd44 freertos: Make backtrace work across interrupts (backport v3.1)
This commit adds the ability for backtracing to trace from the itnerrupt to the
task stack, and across nested interrupts. Test cases have also been added.

See merge request !4084
Note: "Test backtrace from abort" reset reason modified by removing abort as a reason.
2019-01-30 22:13:28 +08:00
Liu Zhi Fu
188f86e946 esp32: fix WPS thread-safe
Fix WPS thread-safe bug
2019-01-30 13:48:15 +08:00
Jiang Jiang Jian
6220de03da Merge branch 'bugfix/coex_update_phy_to_fix_interrupt_wdt_v3.1' into 'release/v3.1'
esp32: update libphy.a to fix interrupt watchdog when WiFi and BT run at the same time and both enable modem sleep (backport v3.1)

See merge request idf/esp-idf!4193
2019-01-30 12:02:12 +08:00
David Cermak
31716a4960 mdns: fixed crash on free undefined ptr after skipped strdup
Shortcircuit evaluation may cause skip of _mdns_strdup_check of any further question field, which after clear_rx_packet freed undefined memory.
Fixes https://ezredmine.espressif.cn:8765/issues/28465
2019-01-29 19:27:46 +01:00
XiaXiaotian
10cac76d79 esp32: update libphy.a to fix interrupt watchdog when WiFi and BT run at
the same time and both enable modem sleep
2019-01-29 11:10:05 +08:00
huchaoru
778566042b modify test case to support ipv6 2019-01-26 13:07:06 +00:00
Jiang Jiang Jian
0e2eccfad0 Merge branch 'bugfix/btdm_fix_crash_adv_scan_coex_v3.1' into 'release/v3.1'
fix crash when adv and scan coex and optimize duplicate scan

See merge request idf/esp-idf!4147
2019-01-25 12:04:55 +08:00
Jiang Jiang Jian
b26ded717f Merge branch 'bugfix/ble_active_scan_not_wait_scan_rsp_v3.1' into 'release/v3.1'
component/bt: add a option to make report adv data and scan response individually (backport v3.1)

See merge request idf/esp-idf!4132
2019-01-25 11:53:27 +08:00
Tian Hao
85825377c8 component/bt: add a option to make report adv data and scan response individually
Originally, when doing BLE active scan, Bluedroid will not report adv to
application layer until receive scan response. This option is used to
disable the behavior. When enable this option, Bluedroid will report
adv data or scan response to application layer immediately.
2019-01-24 18:45:57 +08:00
zhiweijian
10419b48bf fix crash when adv and scan coex and optimize duplicate scan 2019-01-24 17:29:44 +08:00
Angus Gratton
fa8c79e0fe Merge branch 'bugfix/i2c_master_clear_bus_v3.1' into 'release/v3.1'
i2c/fix i2c_master_clear_bus (backport v3.1)

See merge request idf/esp-idf!4128
2019-01-24 14:53:00 +08:00
Angus Gratton
38edc33bb8 Merge branch 'bugfix/idfpy_monitor_msys_v3.1' into 'release/v3.1'
tools: fix idf.py monitor for MSYS (backport v3.1)

See merge request idf/esp-idf!3897
2019-01-24 14:50:47 +08:00
Jiang Jiang Jian
c6750d271e Merge branch 'bugfix/bootloader_map_size_v3.1' into 'release/v3.1'
bootloader: fix incorrect mapping size (backport v3.1)

See merge request idf/esp-idf!4139
2019-01-24 14:09:58 +08:00
Jiang Jiang Jian
63a9054e5b Merge branch 'bugfix/sha_ownership_v3.1' into 'release/v3.1'
hwcrypto sha: Allow SHA contexts to be shared between tasks (backport v3.1)

See merge request idf/esp-idf!4144
2019-01-24 14:08:35 +08:00
Jiang Jiang Jian
9699ec9277 Merge branch 'bugfix/rom_export_functions_v3.1' into 'release/v3.1'
esp32, bootloader: fix issues related to linking order (backport v3.1)

See merge request idf/esp-idf!4135
2019-01-23 21:58:58 +08:00
Jiang Jiang Jian
15ac1d40fa Merge branch 'bugfix/vfs_unregister_nested_v3.1' into 'release/v3.1'
vfs: fix unregister removing top level VFS instead of nested (backport v3.1)

See merge request idf/esp-idf!4136
2019-01-23 21:54:04 +08:00
Jiang Jiang Jian
8f4ec72a0f Merge branch 'bugfix/init_memctl_v3.1' into 'release/v3.1'
bootloader, esp32: add workaround for Tensilica erratum 572 (backport v3.1)

See merge request idf/esp-idf!4133
2019-01-23 21:44:11 +08:00
Angus Gratton
02668b62e8 hwcrypto sha: Use spinlocks instead of semaphores for small state changes
Significant performance improvement and smaller RAM footprint.
2019-01-23 18:18:38 +08:00
Angus Gratton
36b65c8498 hwcrypto sha: Allow SHA contexts to be shared between tasks
Previously, hardware SHA engine "locks" were mutex semaphores. This meant that the task which
started a particular SHA session (in hardware) needed to finalise that session, or an invalid
FreeRTOS state was created.

Replace with binary semaphore which can be shared between tasks.

Includes a unit test, but unit test doesn't crash even without this fix
(some other unknown condition is required).
2019-01-23 18:18:38 +08:00
Angus Gratton
91bc4ebb6c Update esptool.py to v2.6 2019-01-23 17:06:11 +08:00
Ivan Grokhotkov
205c484c49 bootloader: account for load address when mapping cache pages
Bootloader used to calculate the number of cache pages assuming that
load address was aligned, while in reality load address for DROM and
IROM was offset by 0x20 bytes from the start of 64kB page. This
caused the bootloader to map one less page if the size of the image
was 0x4..0x1c less than a multiple of 64kB.

Reported in https://esp32.com/viewtopic.php?f=13&t=6952.
2019-01-23 17:06:11 +08:00
Ivan Grokhotkov
60f4ccf303 bootloader: fix IROM and DROM swapped in log messages 2019-01-23 17:05:37 +08:00
Ivan Grokhotkov
1d0df04579 vfs: fix unregister removing top level VFS instead of nested
Credits @neoniousTR.

Fixes https://github.com/espressif/esp-idf/pull/2770
2019-01-23 16:28:09 +08:00
Ivan Grokhotkov
50d4ffd22e esp32: remove ROM functions redefined in IDF from LD script
In some cases, linker could choose to use ROM functions instead of the
ones defined in IDF.
For functions used in ROM stub table, this would lead to infinite
recursion when the corresponding function was called from ROM.
For crypto functions, some of these were modified in IDF, and
incompatible with ROM counterparts.
2019-01-23 16:26:14 +08:00
Ivan Grokhotkov
9845219a5f bootloader_support: exclude bootloader_init.c when building app
Depending on link order of libraries, bootloader implementation of
__assert_func could be linked instead of the one provided by newlib.
2019-01-23 16:26:14 +08:00
Ivan Grokhotkov
b4939b1121 bootloader, esp32: add workaround for Tensilica erratum 572
If zero-overhead loop buffer is enabled, under certain rare conditions
when executing a zero-overhead loop, the CPU may attempt to execute an invalid instruction. Work around by disabling the buffer.
2019-01-23 16:23:08 +08:00
Jiang Jiang Jian
8c1d9e70b5 Merge branch 'bugfix/wifi_fix_invalid_csi_data_index_v3.1' into 'release/v3.1'
esp32: fix invalid channel state information(CSI) data index (backport v3.1)

See merge request idf/esp-idf!4130
2019-01-23 16:08:02 +08:00
XiaXiaotian
e444a31e79 esp32: fix invalid channel state information(CSI) data index
Due to a hardware limitation in ESP32, the first four bytes of some
    CSI data is invalid, not the last four bytes.

    Correct a mistake of CSI sub-carrier index in documentation.
2019-01-22 20:43:36 +08:00
Wangjialin
c3bd2a7539 bugfix(i2c): reduce speed of I2C master bus reset routine and release SDA
closes https://github.com/espressif/esp-idf/issues/2494
closes https://github.com/espressif/esp-idf/pull/2493
closes https://github.com/espressif/esp-idf/pull/2496

1. Change bus reset to handle interrupted READ sequences.
2. Slow down I2C to 100khz during reset
3. If a SLAVE device was in a read operation when the bus was interrupted, the SLAVE device is controlling SDA.The only bit during the 9 clock cycles of a byte READ the MASTER(ESP32) is guaranteed control over, is during the ACK bit period.
If the SLAVE is sending a stream of ZERO bytes, it will only release SDA during the ACK bit period. The master(ESP32) cannot generate a STOP unless SDA is HIGH. So, this reset code synchronizes the bit stream with, Either, the ACK bit, Or a 1 bit.
2019-01-22 13:48:37 +08:00
chuck todd
3a9c713748 1. Slow down I2C to 100khz During Reset
I am stealing this delay coding from @jeremyherbert #2493 pr.

2. Change Bus Reset to handle interrupted READ sequences.

The current code does not handle interrupted READ cycles.

 If a SLAVE device was in a read operation when the bus was interrupted, the SLAVE device is controlling SDA.

The only bit during the 9 clock cycles of a byte READ the MASTER(ESP32) is guaranteed control over, is during the ACK bit period.

If the SLAVE is sending a stream of ZERO bytes, it will only release SDA during the ACK bit period. The master(ESP32) cannot generate a STOP unless SDA is HIGH.

So, this reset code synchronizes the bit stream with, Either, the ACK bit, Or a 1 bit.

3. fix typo

correct `sda_id` to `sda_io` in `i2c_master_clear_bus()` @ryan-ma found it.  This typo was generated when I manually edited this patch on GitHub, I should have done a Copy/Paste operation!
2019-01-22 13:48:23 +08:00
jeremy
6a63d0eeaf reduce speed of i2c master bus reset routine and release sda 2019-01-22 13:48:07 +08:00
Jiang Jiang Jian
570e32915a Merge branch 'bugfix/phy_rtc_cache_disabled_v3.1' into 'release/v3.1'
Fix PHY/RTC functions called in ISR, but stored in flash

See merge request idf/esp-idf!4113
2019-01-18 10:54:11 +08:00
Tian Hao
8ad6ba2436 Fix some bugs in phy
1. fix bug PHY/RTC functions called in ISR (update phy to v4007)
2. add UnitTest to test it
3. fix task watchdog bug when wifi change channel
4. disable/enable agc to mac deinit/init
5. add UnitTest Job
2019-01-16 22:23:04 +08:00
Jiang Jiang Jian
7fe18ef334 Merge branch 'bugfix/wifi_fix_incorrect_tx_complete_state_v3.1' into 'release/v3.1'
esp32: fix the incorrect tx complete state issue (backport v3.1)

See merge request idf/esp-idf!4106
2019-01-12 19:57:40 +08:00
jack
126ade78d4 esp32: fix the incorrect tx complete state issue 2019-01-12 15:38:30 +08:00
Jiang Jiang Jian
608986cd4f Merge branch 'bugfix/fix_ba_hardware_index_deleting_issue_v3.1' into 'release/v3.1'
esp32: fix wrongly deleting hardware BA index bug (backport v3.1)

See merge request idf/esp-idf!4103
2019-01-12 13:56:40 +08:00
Liu Zhi Fu
fe05db83f1 esp32: fix wrongly deleting hardware BA index bug
Fix the bug that hardware BA index will be wrongly removed in
WiFi mode WIFI_MODE_APSTA.
2019-01-11 16:48:58 +08:00
Ivan Grokhotkov
d1936acf43 Merge branch 'bugfix/idf_monitor_without_toolchain_v3.1' into 'release/v3.1'
tools: Print useful error message from idf_monitor when toolchain isn't available (backport v3.1)

See merge request idf/esp-idf!3948
2019-01-11 15:43:18 +08:00
Ivan Grokhotkov
7ce22b11bf Merge branch 'bugfix/mdns_udp_send_protected_backport3.1' into 'release/v3.1'
mdns networking udp send protected (Backport 3.1)

See merge request idf/esp-idf!4021
2019-01-11 15:36:57 +08:00
Ivan Grokhotkov
b917fbe914 Merge branch 'bugfix/mdns_query_failed_after_init_v3.1' into 'release/v3.1'
Fixed: mdns query failed after init (Backport v3.1)

See merge request idf/esp-idf!3730
2019-01-11 11:26:28 +08:00