Commit graph

1427 commits

Author SHA1 Message Date
maojianxin 857bdf65e5 Fix external start fail 2019-04-26 07:07:53 +00:00
Jiang Jiang Jian 774a3c1446 Merge branch 'bugfix/wifi_spike_power_v3.1' into 'release/v3.1'
esp32: fix the issue that the spike transmit power of WiFi is higher than configured when WiFi and Bluetooth coexist (backport v3.1)

See merge request idf/esp-idf!4614
2019-04-25 16:24:07 +08:00
Angus Gratton 072d5233ca Merge branch 'bugfix/remove_second_sha_enable_v3.1' into 'release/v3.1'
esp32/sha: Remove second enabling in esp_sha_lock_engine_common (backport v3.1)

See merge request idf/esp-idf!4781
2019-04-23 07:37:39 +08:00
XiaXiaotian 5abf384c96 esp32: fix the issue that the spike transmit power of WiFi is higher
than configured when WiFi and Bluetooth coexist
2019-04-19 14:32:50 +08:00
liu zhifu c2986c0a1f esp32: fix a bug caused by signal test code
Fix a WiFi bug caused by signal test code.
2019-04-17 17:58:27 +08:00
Konstantin Kondrashov bfc3931d3f esp32/sha: Remove second enabling in esp_sha_lock_engine_common 2019-04-15 21:26:43 +08:00
liu zhifu ff94a5202c esp32: add support for WiFi signal test
Add support for WiFi signal test
2019-04-12 15:42:07 +08:00
liu zhifu e1ff84516f esp32: increase block scan timeout value
Increase WiFi block scan internal timeout value.
2019-04-09 09:31:18 +08:00
XiaXiaotian 73298a6c3d esp32: fix the bug that no TBTT will be generated anymore after
receiving wrong beacon when WiFi and BT coexist.
2019-04-08 11:46:08 +08:00
Jiang Jiang Jian b10767a122 Merge branch 'bugfix/coex_bt_disconn_v3.1' into 'release/v3.1'
components/coex: Fix BT disconnecting due to too many reset BB

See merge request idf/esp-idf!4681
2019-04-08 10:39:26 +08:00
Angus Gratton 9f2ed0f58d Merge branch 'bugfix/heap_int_oflow_checks_v3.1' into 'release/v3.1'
Backport heap int overflow checks to v3.1

See merge request idf/esp-idf!4582
2019-04-05 09:30:50 +08:00
baohongde 8fe62b75ca components/coex: Fix BT disconnecting due to too many reset BB
Update coex version to 1.1.6
2019-04-03 20:53:22 +08:00
zhangyanjiao 83bf77e2f4 wifi: increase the block scan time because of changing channel will take at 30ms when BT/WiFi coexist 2019-04-01 10:53:12 +08:00
chenyudong 8b6b623b64 mesh: decoupling
Remove dependencies which cause mesh code to be linked even if mesh is not used.
2019-03-22 17:36:18 +08:00
Angus Gratton 439bdc0b77 heap: Add integer overflow checks 2019-03-21 12:30:10 +11:00
Angus Gratton 8599f73019 esp32 psram: Provide library name for ROM libc objects linked as PSRAM workarounds
Fixes bug reported on forums where any source file ending in *lock.c or *creat.c
was being linked to IRAM.

https://esp32.com/viewtopic.php?f=13&t=8909&p=37362#p37362
2019-03-18 23:17:48 +00:00
Jiang Jiang Jian cea8c51527 Merge branch 'bugfix/cmake_psram_fix_flag_v3.1' into 'release/v3.1'
cmake: Fix psram workaround compiler flag application (backport v3.1)

See merge request idf/esp-idf!4365
2019-03-15 10:57:49 +08:00
zwj 9f3bde6096 component/bt: add vendor hci cmd 2019-03-12 14:54:53 +08:00
Angus Gratton e4d61154f2 cmake: Fix psram workaround compiler flag application
Previously, this compiler flag was not being applied
regardless of CONFIG_SPIRAM_CACHE_WORKAROUND setting.

Explanation: add_compile_options() only applies to
source files added after the function is run, or in
subdirectories added after the function is run. In
this case, no new source files were being added after
this function was run.
2019-03-11 16:02:36 +11:00
Ivan Grokhotkov 8fffb9d172 esp32: disable stack protector for startup code (CMake)
Files where stack protector is initialized should not be compiled with
stack protector enabled. This was done for Make but missing for CMake.

Fixes https://github.com/espressif/esp-idf/issues/2990.
2019-03-05 07:11:57 +00:00
Jiang Jiang Jian 62444346c1 Merge branch 'bugfix/fix_some_wifi_bugs_0301_v3.1' into 'release/v3.1'
esp32: fix some WiFi bugs (backport v3.1)

See merge request idf/esp-idf!4401
2019-03-05 10:33:24 +08:00
Jiang Jiang Jian 7e5ac34be7 Merge branch 'bugfix/wifi_modify_wifi_kconfig_v3.1' into 'release/v3.1'
esp32: modify WiFi Kconfig in order to achieve better compatility and performance (bakcport v3.1)

See merge request idf/esp-idf!4385
2019-03-01 18:46:36 +08:00
Liu Zhi Fu 863da69c5b esp32: fix some WiFi bugs
Fix following WiFi bugs:
1. Fix the bug that STA incorrectly deletes BA when receiving DelBA request
2. Add out of memory check
3. Fix the bug that STA incorrectly receives packets when scanning in connected status
2019-03-01 12:50:39 +08:00
Ivan Grokhotkov 70a9e72e06 esp_timer: fix occasional failures in "monotonic values" test
1. ref_clock used in unit tests occasionally produces time off by ~100
microseconds shortly after being started. Add a delay to let
ref_clock stabilise, until the cause is found.

2. Reduce roundoff error accumulation which would occasionally cause
the test to fail, by choosing an overflow value which can be divided
by APB frequency.

3. Move time sampling part of the test into an IRAM function to
reduce variations due to cache behavior.

4. Remove calculation of "standard deviation" in the test, as what was
calculated was not actually standard deviation, and it did not add any
useful information.
2019-02-28 21:58:03 +08:00
Ivan Grokhotkov 9cfd94a9d6 esp_timer: improve unit test robustness
1. call esp_timer_get_time and ref_clock_get in the same order on
   start and in the loop

2. disable interrupts when calculating delta between ref_clock
   and esp_timer

3. ensure both functions are in cache before calculating the delta
2019-02-28 21:58:03 +08:00
zhangyanjiao fb15403515 wifi changes:
1. make menuconfig can set the WiFi mgmt short buffer num
2. fix several scan bugs
2019-02-28 15:40:56 +08:00
XiaXiaotian 8a20519222 esp32: modify WiFi Kconfig in order to achieve better compatility
and performance
2019-02-28 10:06:06 +08:00
Liu Zhi Fu a019517d07 esp32: make WiFi IRAM optimization configurable
With this feature, the WiFi IRAM optimization can be disabled/enabled via menuconfig.
2019-02-26 19:26:02 +08:00
Jiang Jiang Jian 298aafd112 Merge branch 'bugfix/coex_lc_protect_v3.1' into 'release/v3.1'
component/esp32 : fix coexist lc protect cause memory corrupted

See merge request idf/esp-idf!4266
2019-02-20 02:11:29 +08:00
baohongde 3e06ad6af9 components/bt: Fix crash when inquiry stop (backport 3.1) 2019-02-15 17:53:55 +08:00
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
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
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
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
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
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
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 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
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
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
jack 126ade78d4 esp32: fix the incorrect tx complete state issue 2019-01-12 15:38:30 +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
XiaXiaotian 92a27d642b esp32: do defragmentation only for data and management frame
Check frame type before defragmentation. Only data and management frame can do
    defragmentation.
2019-01-10 14:07:11 +08:00
Jiang Jiang Jian 9bc10d9eda Merge branch 'bugfix/coex_unforce_wifi_if_no_data_buffered_in_beacon_v3.1' into 'release/v3.1'
esp32: unforce wifi if receiving beacon with no data buffered in dream (backport v3.1)

See merge request idf/esp-idf!4035
2019-01-09 17:06:11 +08:00
Jiang Jiang Jian 505663cd6b Merge branch 'feature/illegal_instruction_panic_info_v3.1' into 'release/v3.1'
panic: dump some instruction memory on IllegalInstruction exception (backport v3.1)

See merge request idf/esp-idf!3959
2019-01-09 13:55:48 +08:00