Commit graph

1814 commits

Author SHA1 Message Date
Renz Christian Bagaporo 477fa49fc0 examples: update idf_as_lib example to use new api 2019-05-14 18:01:14 +08:00
Renz Christian Bagaporo ffec9d4947 components: update with build system changes 2019-05-13 19:59:17 +08:00
Sachin Parekh a190b527ac power_management: port*_CRITICAL vanilla FreeRTOS compliance
Signed-off-by: Sachin Parekh <sachin.parekh@espressif.com>
2019-05-13 16:39:19 +05:30
Sachin Parekh db8041a67f intr_alloc: port*_CRITICAL vanilla FreeRTOS compliance
Signed-off-by: Sachin Parekh <sachin.parekh@espressif.com>
2019-05-13 16:39:19 +05:30
Sachin Parekh f3db0b5a4a crosscore_init: port*_CRITICAL vanilla FreeRTOS compliance
Signed-off-by: Sachin Parekh <sachin.parekh@espressif.com>
2019-05-13 16:39:19 +05:30
Ivan Grokhotkov 912c8e31fc Merge branch 'bugfix/pm_isr_exit_lock' into 'master'
pm: prevent interrupt nesting during esp_pm_impl_isr_hook

See merge request idf/esp-idf!4775
2019-04-18 11:16:26 +08:00
Ivan Grokhotkov d31ee806be pm: prevent interrupt nesting during esp_pm_impl_isr_hook
Follows the approach proposed in https://github.com/espressif/esp-idf/pull/3110,
but masks the interrupts during the entire ISR hook, not only during
leave_idle. Interrupt nesting during update_ccompare may also cause
issues.

Closes https://github.com/espressif/esp-idf/issues/3057
2019-04-17 07:13:52 +00:00
Michael (XIAO Xufeng) 562af8f65e global: move the soc component out of the common list
This MR removes the common dependency from every IDF components to the SOC component.

Currently, in the ``idf_functions.cmake`` script, we include the header path of SOC component by default for all components.
But for better code organization (or maybe also benifits to the compiling speed), we may remove the dependency to SOC components for most components except the driver and kernel related components.

In CMAKE, we have two kinds of header visibilities (set by include path visibility):

(Assume component A --(depends on)--> B, B is the current component)

1. public (``COMPONENT_ADD_INCLUDEDIRS``): means this path is visible to other depending components (A) (visible to A and B)
2. private (``COMPONENT_PRIV_INCLUDEDIRS``): means this path is only visible to source files inside the component (visible to B only)

and we have two kinds of depending ways:

(Assume component A --(depends on)--> B --(depends on)--> C, B is the current component)

1. public (```COMPONENT_REQUIRES```): means B can access to public include path of C. All other components rely on you (A) will also be available for the public headers. (visible to A, B)
2. private (``COMPONENT_PRIV_REQUIRES``): means B can access to public include path of C, but don't propagate this relation to other components (A). (visible to B)

1. remove the common requirement in ``idf_functions.cmake``, this makes the SOC components invisible to all other components by default.
2. if a component (for example, DRIVER) really needs the dependency to SOC, add a private dependency to SOC for it.
3. some other components that don't really depends on the SOC may still meet some errors saying "can't find header soc/...", this is because it's depended component (DRIVER) incorrectly include the header of SOC in its public headers. Moving all this kind of #include into source files, or private headers
4. Fix the include requirements for some file which miss sufficient #include directives. (Previously they include some headers by the long long long header include link)

This is a breaking change. Previous code may depends on the long include chain.
You may need to include the following headers for some files after this commit:

- soc/soc.h
- soc/soc_memory_layout.h
- driver/gpio.h
- esp_sleep.h

The major broken include chain includes:

1. esp_system.h no longer includes esp_sleep.h. The latter includes driver/gpio.h and driver/touch_pad.h.
2. ets_sys.h no longer includes soc/soc.h
3. freertos/portmacro.h no longer includes soc/soc_memory_layout.h

some peripheral headers no longer includes their hw related headers, e.g. rom/gpio.h no longer includes soc/gpio_pins.h and soc/gpio_reg.h

BREAKING CHANGE
2019-04-16 13:21:15 +08:00
Ivan Grokhotkov d359d4c77c Merge branch 'bugfix/fix_deprecated_warning_with_dfs_init_auto_config' into 'master'
cpu_start: fix warnings with CONFIG_PM_DFS_INIT_AUTO option

See merge request idf/esp-idf!4761
2019-04-15 15:57:49 +08:00
Ivan Grokhotkov f935294c48 Merge branch 'doc/move_WiFi_Kconfig' into 'master'
move WiFi-specific Kconfig to esp-wifi component

See merge request idf/esp-idf!4736
2019-04-15 12:00:59 +08:00
Mahavir Jain f4328e5346 cpu_start: fix warnings with CONFIG_PM_DFS_INIT_AUTO option
Closes https://github.com/espressif/esp-idf/issues/3297
2019-04-15 03:08:26 +00:00
Jiang Jiang Jian 91eb59f543 Merge branch 'bugfix/improve_spi_timing_for_psram_and_flash' into 'master'
bugfix(psram): improve spi cs timing settings for psram

See merge request idf/esp-idf!4641
2019-04-12 22:57:04 +08:00
suda-morris 958c2792e3 move WiFi-specific Kconfig to esp-wifi component
1. separate Kconfig from esp32 component
2. modify component.mk for esp_wifi a little bit to make it depend on IDF_TARGET
2019-04-11 12:33:15 +08:00
Ivan Grokhotkov b1a722b2ca system_api: return error on repeated registration of shutdown handler 2019-04-11 12:04:58 +08:00
Ivan Grokhotkov bd309a133f system_api: add esp_unregister_shutdown_handler 2019-04-11 12:04:58 +08:00
Ivan Grokhotkov a2d59525e5 mdns: use esp_event library to handle events 2019-04-11 12:04:58 +08:00
Ivan Grokhotkov b1d1e37f87 event loop: re-implement based on esp_event library
Includes ds2ds unit test fix, iperf example test fix
2019-04-11 12:04:58 +08:00
Wangjialin 448d32bc53 bugfix(psram): improve spi cs timing settings for psram
1. remove redundant SPI clock settings, use rom functions to set clock.
2. remove redundant SPI cs setup and hold settings.
3. for old 32Mbit psram, cs hold time must only be 0.5T due to the special driving mode.(cs_setup = 0; cs_hold = 0)
4. for new 64Mbit psram, cs hold time is recommended to be 2.5T. (cs_setup = 1, cs_setup_time = 0;cs_hold = 1, cs_hold_time = 1)
2019-04-09 11:24:10 +08:00
Renz Christian Bagaporo 90ee405afd ldgen: update component linker fragment files 2019-04-04 15:57:34 +08:00
morris f5b03c9ea3 misc adjustment of esp32 component 2019-04-03 19:57:46 +08:00
Ivan Grokhotkov 43d3e75125 Merge branch 'feature/derive_esp_wifi_from_esp32' into 'master'
derive esp_wifi from esp32 component

See merge request idf/esp-idf!4602
2019-04-02 10:13:15 +08:00
Angus Gratton ae585b6615 Merge branch 'bugfix/external_rtc_start_fail' into 'master'
Bugfix/external rtc start fail

See merge request idf/esp-idf!4374
2019-04-02 09:42:27 +08:00
morris 79bb5de426 derive esp_wifi from esp32 component 2019-04-01 20:04:52 +08:00
zhangyanjiao b13ceaf468 wifi: increase the block scan time because of changing channel will take at 30nm when BT/WiFi coexist 2019-04-01 03:12:20 +00:00
morris dbdb299bb1 create xtensa component
1. move xtensa specific files out of esp32 component
2. merge xtensa-debug-module component into xtensa
2019-03-27 20:24:28 +08:00
Ivan Grokhotkov 18946a5421 Merge branch 'feature/common_parts_into_esp_common' into 'master'
move common include files from esp32 into esp_common

See merge request idf/esp-idf!4515
2019-03-27 17:00:58 +08:00
Jiang Jiang Jian 21f6b4d6c3 Merge branch 'bugfix/modify_wifi_reason_code' into 'master'
wifi: modify wifi reason code

Closes WIFI-268 and WIFI-388

See merge request idf/esp-idf!4604
2019-03-27 16:50:35 +08:00
morris 709a320f33 move hwcrypto from esp32 to mbedtls 2019-03-26 16:24:22 +08:00
morris a2f07b0806 move common include files from esp32 into esp_common 2019-03-26 11:57:03 +08:00
zhangyanjiao ebe7190f01 wifi: modify wifi reason code 2019-03-26 11:16:47 +08:00
Jiang Jiang Jian c2d1f83bce Merge branch 'mesh/decouple_addition' into 'master'
wifi: decouple mesh functions from net80211

See merge request idf/esp-idf!4393
2019-03-22 12:57:03 +08:00
Angus Gratton 1be147c457 Merge branch 'feature/allow_components_to_declare_images_to_flash' into 'master'
Allow components to present their own images to flash

See merge request idf/esp-idf!4148
2019-03-22 11:14:37 +08:00
morris fcedf442ce move common source files from esp32 to esp_common 2019-03-22 10:35:03 +08:00
morris c159984264 separate rom from esp32 component to esp_rom
1. separate rom include files and linkscript to esp_rom
2. modefiy "include rom/xxx.h" to "include esp32/rom/xxx.h"
3. Forward compatible
4. update mqtt
2019-03-21 18:51:45 +08:00
Ivan Grokhotkov 106dc05903 Merge branch 'feature/specify_includes_belonging_esp32' into 'master'
move esp32 chip specific includes to esp32/xxx.h

See merge request idf/esp-idf!4534
2019-03-21 18:34:08 +08:00
Ivan Grokhotkov ce07a1057c Merge branch 'feature/make-debug-verbose-usable' into 'master'
logs: Make verbose and debug logging cleaner

Closes IDFGH-782

See merge request idf/esp-idf!4578
2019-03-21 18:29:50 +08:00
Hanh Tran e5e41e0a5e Fix comment typos in WiFi types header
Merges https://github.com/espressif/esp-idf/pull/3145
2019-03-21 15:06:24 +08:00
Anuj Deshpande 13cf867023 logs: Make verbose and debug logging cleaner
* Closes #3193
* Closes IDFGH-782

The logs that are deleted in this commit make debug and verbose mode
unusable.
2019-03-21 11:54:04 +05:30
Angus Gratton 25043c4d56 Merge branch 'feature/merge_flash_data_type-flash_partitions' into 'master'
merge esp_flash_data_types into esp_flash_partitions

See merge request idf/esp-idf!4504
2019-03-21 13:40:40 +08:00
maojianxin 95301c16bd Fix external start fail 2019-03-20 18:34:01 +08:00
chenyudong b2b0f75fbb Decouple Wifi and ESP-Mesh to reduce bin size
Do not link mesh code when mesh is not used
2019-03-20 15:17:03 +08:00
Jiang Jiang Jian d31a137f9c Merge branch 'bugfix/mesh_memory_leak' into 'master'
mesh: fix memory leak and group send

See merge request idf/esp-idf!4438
2019-03-20 14:57:05 +08:00
Anton Maklakov 886d8a6f28 Merge branch 'bugfix/newlib_misc_cleanups' into 'master'
newlib: minor cleanup

See merge request idf/esp-idf!4550
2019-03-20 11:08:20 +08:00
Ivan Grokhotkov 068b700786 newlib: remove usage of pre-ANSI defines 2019-03-19 22:15:26 +08:00
morris fd9bc30aca separate legacy esp_event from esp32 component to esp_event 2019-03-18 19:58:04 +08:00
morris 956c25dedd move esp32 chip specific includes to esp32/xxx.h 2019-03-18 17:14:05 +08:00
morris fae39dc326 merge esp_flash_data_types into esp_flash_partitions 2019-03-18 08:51:55 +00:00
chenyudong 7d96b3442a mesh: fix memory leak and group send
fix a bug in group send
fix esp_mesh_set_router when router_t not initialized
fix mesh memory leak with invalid option
2019-03-18 14:43:21 +08:00
Renz Christian Bagaporo 234de8de55 cmake: Allow components to present their own images to flash 2019-03-18 03:45:22 +08:00
zhangyanjiao 6408ef9e7c wifi: fix the bug that when call set_config before connecting to an encrypted AP, PMK will be recalculated
Closes https://github.com/espressif/esp-idf/issues/2880
2019-03-15 16:28:58 +08:00
Jiang Jiang Jian b1a81e8167 Merge branch 'bugfix/bb_watchdog_reset' into 'master'
esp32: add WiFi baseband watchdog reset

See merge request idf/esp-idf!4409
2019-03-15 16:12:30 +08:00
Angus Gratton cc9b06d4da Merge branch 'bugfix/esp_sha_signing_sha256' into 'master'
secure boot: Fix esp_sha INT WDT, switch to using mbedTLS API

Closes IDFGH-681

See merge request idf/esp-idf!4440
2019-03-15 14:35:38 +08:00
Ivan Grokhotkov 416b756ea4 Merge branch 'bugfix/name_conflict_esp32_project_ld' into 'master'
esp32: Rename esp32.common.ld to esp32.project.ld to avoid build errors when downgrading

See merge request idf/esp-idf!4484
2019-03-15 11:42:20 +08:00
Angus Gratton 12bdf8e45b esp32: Chunk input blocks for esp_sha() function performance, add perf test 2019-03-14 05:56:06 +00:00
Angus Gratton 6a6fbde83d esp32 hwcrypto: Prevent esp_sha() from disabling interrupts for extended period
* Closes https://github.com/espressif/esp-idf/issues/3127
* Closes IDFGH-681

Also reported at https://esp32.com/viewtopic.php?f=13&t=9506
2019-03-14 05:56:06 +00:00
Angus Gratton a79c5b8271 esp32: Rename esp32.common.ld to esp32.project.ld to avoid build errors when downgrading
Linker script generator produces build/esp32/esp32.common.ld from
components/esp32/ld/esp32.common.ld.in

This works fine until IDF is downgraded to V3.1 which uses components/esp32/ld/esp32.common.ld and
doesn't track build/esp32/esp32.common.ld at all.

At this point, the linker runs in the build/esp32 directory and "-T esp32.common.ld" picks up the
linker script generated .ld file, which causes mis-builds.

As reported on forums: https://esp32.com/viewtopic.php?f=13&t=9684&p=40105
2019-03-14 09:59:31 +11:00
Angus Gratton fa5bc5d58b Merge branch 'bugfix/ssid_passwords_null_terminated' into 'master'
wifi: Specify that SSID & Password fields should be NULL terminated strings

See merge request idf/esp-idf!4468
2019-03-13 13:29:09 +08:00
Angus Gratton 710bcbd447 Merge branch 'feature/freertos_check_mutex_owner' into 'master'
freertos: check that mutex is released by owner task

See merge request idf/esp-idf!4012
2019-03-13 13:15:34 +08:00
Angus Gratton f44dcf4878 Merge branch 'bugfix/macros_trailing_semicolon' into 'master'
Remove trialing semicolon from function-like macros

See merge request idf/esp-idf!4397
2019-03-13 13:15:12 +08:00
Angus Gratton 8120efc6ed Merge branch 'bugfix/modify_dhcpserver_and_tcpip_adapter' into 'master'
modify the behavior for dhcpserver and tcpip_adapter

Closes IDFGH-557 and IDFGH-563

See merge request idf/esp-idf!4453
2019-03-13 12:54:55 +08:00
Liu Zhi Fu 674d234283 esp32: add WiFi baseband watchdog reset
When WiFi enter into a special status (11b weak mode), then reset
Wifi baseband to recover to normal mode.
2019-03-13 11:09:30 +08:00
Angus Gratton 79d37b75f3 wifi: Specify that SSID & Password fields should be NULL terminated strings
Closes https://github.com/espressif/esp-idf/issues/1176
2019-03-13 11:44:41 +11:00
Ivan Grokhotkov d539183b40 esp32: use binary semaphore instead of mutex in dport tests 2019-03-11 14:40:54 +00:00
zhangyanjiao 27cc0d1f91 modify the behavior for dhcpserver and tcpip_adapter:
1. dhcp_server: suppress send_offer debug output
2. tcpip_adapter: zero-initialize system_event_t structures
3. tcpip_adapter: pass client IP address along with SYSTEM_EVENT_AP_STAIPASSIGNED

Closes https://github.com/espressif/esp-idf/issues/2924
Closes https://github.com/espressif/esp-idf/issues/2949
2019-03-11 12:11:05 +08:00
aleks 13e1c0b32f esp32: coredump header (fix linker.lf)
remove duplicated include from components/esp32/incliude/esp_core_dump.h
espcoredump/incliude/esp_core_dump.h:
fix signature of the functions esp_core_dump_to_uart() and esp_core_dump_to_uart();
add espcoredump into COMPONENT_PRIV_REQUIRES list
fix linker.lf file
2019-03-08 09:49:37 +00:00
Ivan Grokhotkov 42c906140e Merge branch 'bugfix/level5_intr_alloc' into 'master'
esp32: esp_intr_alloc: Fixed issue with level 5 not being called

Closes IDFGH-616

See merge request idf/esp-idf!4405
2019-03-06 11:18:36 +08:00
Ivan Grokhotkov d474018725 Merge branch 'feature/gdbstub_task_list' into 'master'
Add support for listing tasks to gdb in gdbstub

Closes IDFGH-498

See merge request idf/esp-idf!4357
2019-03-06 11:12:46 +08:00
Ivan Grokhotkov c22e572ad0 gdbstub: minor cleanup
1. Add Kconfig options to control task listing support.
2. Convert magic values (-1, -2) to named constants.
3. Convert spaces to tabs to match the rest of the file.
4. Rename getAllTasksHandle to getTaskInfo to reflect its purpose.
5. Add some curly braces for single line statements.
2019-03-05 12:11:45 +08:00
X-Ryl669 b797f05558 Add support for listing tasks to gdb in gdbstub
…and changing the active task and fetching each task's stack

Merges https://github.com/espressif/esp-idf/pull/2828
2019-03-05 12:00:22 +08:00
XiaXiaotian b9b401ee39 Decouple WiFi and BT with coexist to reduce bin size
1. Do not link WiFi code when only BT or BLE is used and WiFi is not
used.

2. Do not link coexist code when CONFIG_SW_COEXIST_ENABLE is disabled.
2019-03-05 10:38:14 +08:00
Christian Hoene 025deab4d2 esp32: esp_intr_alloc: Fixed issue with level 5 not being called
Closes https://github.com/espressif/esp-idf/issues/3039
Merges https://github.com/espressif/esp-idf/issues/3040
2019-03-01 17:11:51 +11:00
Liu Zhi Fu 2f547ca7c8 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 11:25:36 +08:00
Jiang Jiang Jian ebdcbe8c60 Merge branch 'doc/crc_apis_usage' into 'master'
Add CRC APIs usage

See merge request idf/esp-idf!4351
2019-03-01 10:03:03 +08:00
Darian Leung 59d1ecc78b esp32: Remove trialing semicolon from function-like macros
This commit removes trailing semicolons following a while(0) from
function-like macros in IDF. This will force those macros to be called
with a semicolon when called.
2019-02-28 21:58:47 +08:00
Jiang Jiang Jian d82c80a07b Merge branch 'bugfix/wifi_modify_wifi_kconfig' into 'master'
esp32: modify WiFi Kconfig in order to achieve better compatility and performance

See merge request idf/esp-idf!4164
2019-02-28 18:21:16 +08:00
XiaXiaotian ae69a8adc0 esp32: modify WiFi Kconfig in order to achieve better compatility
and performance
2019-02-28 16:57:56 +08:00
Konstantin Kondrashov 509e1264b9 efuse: Fix to pass CI tests 2019-02-28 07:31:29 +00:00
Konstantin Kondrashov ed179ade8d esp32: Add using efuse component 2019-02-28 07:31:29 +00:00
zhangyanjiao 4ea4d4744c wifi:
1. make menuconfig can set the WiFi mgmt short buffer num
2. fix several scan bugs
2019-02-27 18:31:32 +08:00
Angus Gratton 42f64e9a93 Merge branch 'bugfix/tw28146_make_wifi_iram_optimization_configurable' into 'master'
esp32: make WiFi IRAM optimization configurable

See merge request idf/esp-idf!4037
2019-02-27 16:33:05 +08:00
Ivan Grokhotkov 37b55a5eb5 esp32: print ELF file SHA256 in panic handler 2019-02-27 13:30:25 +08:00
Ivan Grokhotkov ea52a19c00 build system: include SHA256 hash of ELF file into app_desc structure 2019-02-27 13:30:25 +08:00
Angus Gratton fab11e1cec Merge branch 'bugfix/cmake_psram_fix_flag' into 'master'
cmake: Fix psram workaround compiler flag application

See merge request idf/esp-idf!4335
2019-02-27 13:20:21 +08:00
Liu Zhi Fu 711173b3d6 esp32: make WiFi IRAM optimization configurable
With this feature, the WiFi IRAM optimization can be disabled/enabled via menuconfig.
2019-02-26 19:55:57 +08:00
jack 299e4ca716 Add CRC APIs usage 2019-02-26 18:12:14 +08:00
Angus Gratton da390618c2 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-02-26 04:07:51 +00:00
Ivan Grokhotkov d3724dc35d 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-26 02:01:29 +00:00
Ivan Grokhotkov 4ae2c4c282 Merge branch 'feature/coredump_improvements_refactoring' into 'master'
coredump: improvements, refactoring (separate FLASH and UART functionality)

See merge request idf/esp-idf!4207
2019-02-21 11:04:19 +08:00
Angus Gratton 40a55823a9 Merge branch 'feature/anti_rollback_efuse' into 'master'
Support anti-rollback

See merge request idf/esp-idf!3682
2019-02-20 16:11:00 +08:00
Angus Gratton 91f97d121f Merge branch 'revert-23a03cf6' into 'master'
Revert "Merge branch 'bugfix/external_rtc_start_fail' into 'master'"

See merge request idf/esp-idf!4292
2019-02-20 15:09:35 +08:00
Jiang Jiang Jian c960bcb5e6 Merge branch 'bugfix/coex_lc_protect' into 'master'
component/esp32 : fix coexist lc protect cause memory corrupted

See merge request idf/esp-idf!4265
2019-02-20 02:11:37 +08:00
Tian Hao 64b7b0f94c Reduce part of IRAM consumption in wifi libnet80211.a
It might be a little effect of WIFI max TX throughput if the limitation is cache hit rate
2019-02-19 15:43:56 +08:00
Angus Gratton 5b182eefc1 Merge branch 'bugfix/spiram_linker_wildcards' into 'master'
newlib: Provide library name for ROM libc object files linked as PSRAM workarounds

See merge request idf/esp-idf!4152
2019-02-19 13:28:10 +08:00
Ivan Grokhotkov dc133f9fc4 Revert "Merge branch 'bugfix/external_rtc_start_fail' into 'master'"
This reverts merge request !2441
2019-02-19 12:39:47 +08:00
Tian Hao 2cf4c02be9 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-19 03:28:47 +00:00
Angus Gratton 6538acc94f Merge branch 'bugfix/wdt_compability_app_with_old_bootloader' into 'master'
esp32: Fix wdt settings in esp_restart_noos

See merge request idf/esp-idf!4098
2019-02-19 10:42:33 +08:00
Jiang Jiang Jian 2ce401c664 Merge branch 'bugfix/btdm_crash_when_inquiry_cancel' into 'master'
Bugfix/btdm crash when inquiry cancel

See merge request idf/esp-idf!4142
2019-02-16 16:27:49 +08:00
Jiang Jiang Jian 2c7f603a83 Merge branch 'bugfix/fix_some_wifi_bugs_0131' into 'master'
esp32: fix some wifi bugs

See merge request idf/esp-idf!4216
2019-02-15 12:14:41 +08:00
Konstantin Kondrashov e916cf52a3 bootloader: Add support of anti-rollback
Added:
* set a secure version in app/bootloader.
* description anti-rollback to ota part
* emulate the secure_version write and read operations
* efuse_em partition.
* a description about a rollback for native_ota_example.

Closes: TW26335
2019-02-14 18:51:43 +08:00
maojianxin 0676941332 soc/rtc: fix RTC_TOUCH_TRIG_EN or RTC_ULP_TRIG_EN should keep RTC_PERIPH power on 2019-02-13 10:30:37 +08:00
aleks 10fe158f67 coredump: improvements refactoring
Move existing core dump files into espcoredump component folder
Add KConfig, linker.lf, make and CMakeList.txt for new component
Existing functionality separated into core_dump_common, core_dump_flash, core_dump_uart
Update test_core_dump.c and make files to link it as unit test
Update according to review:
Move target and RTOS related functionality into separated file (core_dump_port.c).
2019-02-12 10:22:33 +00:00
Roland Dobai 80cb4a1a18 tools: Don't use backslashes in Kconfigs and ignore long lines to avoid errors
Closes https://github.com/espressif/esp-idf/issues/3012
2019-02-01 11:33:41 +01:00
Liu Zhi Fu de79835251 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-02-01 11:51:05 +08:00
qiyuexia 02d3170cce mesh: modify to malloc routing table 2019-01-31 17:46:11 +08:00
baohongde 27235e023f components/bt: Fix crash when inquiry stop 2019-01-31 11:47:41 +08:00
Jiang Jiang Jian a0416e9351 Merge branch 'bugfix/tw28445_wps_thread_safe' into 'master'
Bugfix/tw28445 wps thread safe

See merge request idf/esp-idf!4175
2019-01-30 17:50:25 +08:00
Ivan Grokhotkov 024c568c73 Merge branch 'bugfix/cmake_stack_protector' into 'master'
esp32: disable stack protector for startup code (CMake)

See merge request idf/esp-idf!4198
2019-01-30 16:28:40 +08:00
Roland Dobai 37126d3451 Correct Kconfigs according to the coding style 2019-01-29 13:37:01 +01:00
Ivan Grokhotkov 70b14bf615 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-01-29 17:41:00 +08:00
Liu Zhi Fu fd57c4ee67 esp32: fix WPS thread-safe
Fix WPS thread-safe bug
2019-01-29 17:30:21 +08:00
XiaXiaotian a2cec1f636 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 10:55:45 +08:00
Ivan Grokhotkov 44b97b7fe7 Merge branch 'bugfix/backtrace_from_interrupts' into 'master'
Make backtrace work across interrupts

See merge request idf/esp-idf!4084
2019-01-28 16:40:12 +08:00
Darian Leung 96af064209 freertos: Make backtrace work across interrupts
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.
2019-01-28 14:34:26 +08:00
Jiang Jiang Jian 9896f45c79 Merge branch 'mesh/bugfix_0124' into 'master'
mesh: udpate libs

See merge request idf/esp-idf!4155
2019-01-28 14:06:00 +08:00
qiyueixa 8c675a52a7 mesh: udpate libs
1. during parent selection, when scanning a MAP without ext-assoc IE, it will be handled as it has the same router BSSID as itself.
2. for MAP, when its client leaves, always post SYSTEM_EVENT_AP_STADISCONNECTED to mesh layer regardless of whether the client has passed the encrypted authentication or not.
2019-01-24 15:15:09 +08:00
Ivan Grokhotkov 2eabed161a Merge branch 'feature/merge_multiple_github_prs' into 'master'
Multiple Github PRs

See merge request idf/esp-idf!4146
2019-01-24 15:14:47 +08:00
Jiang Jiang Jian 2dadc7d549 Merge branch 'bugfix/sha_ownership' into 'master'
hwcrypto sha: Allow SHA contexts to be shared between tasks

See merge request idf/esp-idf!4010
2019-01-24 14:07:23 +08:00
Angus Gratton 7f307423c1 newlib: Provide library name for ROM libc object files linked as PSRAM workarounds
Works around 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

Also moves all related functionality to newlib component.
2019-01-24 11:30:05 +08:00
Michael Reutman 02da4154a1 Add static qualifier to s_light_sleep_wakeup variable to prevent it from being global.
Closes https://github.com/espressif/esp-idf/pull/2793
2019-01-23 16:47:23 +05:30
Angus Gratton f141b29328 hwcrypto sha: Use spinlocks instead of semaphores for small state changes
Significant performance improvement and smaller RAM footprint.
2019-01-23 04:59:44 +00:00
Angus Gratton f3277cf2dc 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 04:59:44 +00:00
XiaXiaotian f3b72ef6aa 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:11:05 +08:00
Tian Hao 423fbf0006 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. disable/enable agc to mac deinit/init
2019-01-16 22:41:17 +08:00
Jiang Jiang Jian 83447cae90 Merge branch 'mesh/cs_root_conflict' into 'master'
detect and fix root conflicts when router BSSID is not set

See merge request idf/esp-idf!3869
2019-01-16 21:16:56 +08:00
Wang Jia Lin a62cbfec9a Merge branch 'bugfix/fix_psram_eid' into 'master'
bugfix(psram): fix psram size acquisition method, support esp32-pico chips

See merge request idf/esp-idf!3750
2019-01-15 17:44:51 +08:00
qiyuexia a05fdd9c10 mesh: update libs
1. detect and fix root conflicts when router BSSID is not set.
2. when root can not connect to the router due to NO_MORE_STAS(reason code:5), root will stop re-connection and perform MESH_NWK_LOOK_FOR_NETWORK.
3. wifi: fix the disconnection caused by receiving a deauth frame from non-parent node during scanning.
4. fix routing table redundant issue.
5. modify the max routes limitation from 300 to 1000.
6. wifi: fix ap does not deauth sta which has not completed the 4-way handshake.
2019-01-15 14:26:05 +08:00
Liu Zhi Fu 4b234b0805 esp32: fix the incorrect tx complete state issue 2019-01-12 09:39:59 +08:00
Liu Zhi Fu 85f018edbc 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:31:01 +08:00
Konstantin Kondrashov 82c5e648ad esp32: Fix wdt settings in esp_restart_noos
Fixed compatibility the new apps with the old bootloaders.

Closes: https://github.com/espressif/esp-idf/issues/2927
2019-01-10 20:22:26 +08:00
He Yin Ling 7c59207351 test: add test to check wifi conneciton between sta and softap 2019-01-10 09:51:17 +00:00
Jiang Jiang Jian 097597b978 Merge branch 'bugfix/wifi_defragmentation_only_for_data_frame' into 'master'
esp32: do defragmentation only for data and management frame

See merge request idf/esp-idf!4072
2019-01-09 15:54:05 +08:00
chenjianqiang bd8733f74f feature(psram): add psram support for esp32-pico chip
1. esp32-pico use standard spi driver to access psram
2. for esp32-pico, flash and psram share the clock
3. for esp32-pico, psram cs io can be overwrite via menuconfig
2019-01-09 10:49:07 +08:00
Ivan Grokhotkov 456efd3d57 Merge branch 'bugfix/timer_delete_dispatch_race' into 'master'
esp_timer: fix race between deleting the timer and executing the callback

See merge request idf/esp-idf!3992
2019-01-08 14:06:46 +08:00
XiaXiaotian 1a492f0715 esp32: do defragmentation only for data and management frame
Check frame type before defragmentation. Only data and management frame can do
    defragmentation.
2019-01-07 20:38:16 +08:00
zhangyanjiao 2d5e9d765f wifi: fix the bug that STA can scan the channel out of the country regdomain range 2019-01-03 17:55:06 +08:00
Ivan Grokhotkov 227f8daef3 esp_timer: do not allow deleting timers while callbacks are dispatched
timer_process_alarm function of esp_timer holds a spinlock for the
entire duration of its operation, except for the time when timer
callback function is called. It is possible that when
timer_process_alarm releases the spinlock, a higher priority task may
run and delete the timer. Then the execution will return to
timer_process_alarm, and this will either cause a crash, or undesired
execution of callback after the timer has been stopped or deleted.

To solve this problem, add a mutex which will prevent deletion of timers
while callbacks are being dispatched.
2019-01-03 07:14:53 +00:00
Angus Gratton 4a42827c4a esp32: esp_attr.h should include sdkconfig.h
Reported on forum https://esp32.com/viewtopic.php?f=13&t=8669#p36395
2019-01-02 17:04:53 +11:00
XiaXiaotian 36c956070b esp32: unforce wifi if receiving beacon with no data buffered in dream
state and reduce force receiving broadcast data time

    1. If receiving beacon which indicates that there is no data buffered,
    do not force to receive WiFi data.
    2. If receiving beacon which indicates that there is broadcast data
    buffered, reduce the time to force receiving broadcast data.
2018-12-28 17:09:45 +08:00
qiyueixa e3833999ea mesh: update libs
1. when no parent is found, send probe request via broadcast.
2. fix memory leak caused by the remove announcement being sent is not released when esp_mesh_stop() is called.
3. fix modify IE encrypt after mesh is started.
4. ignore esp_mesh_connect() if mesh automatic reconnection is enabled.
5. fix reason is cleared before vote is done.
2018-12-26 16:10:55 +08:00
Jiang Jiang Jian 1f794cfff1 Merge branch 'mesh/bugfix_v3.3' into 'master'
wifi: fix STAs can not detect disconnection from AP when encrypt transmission is used

See merge request idf/esp-idf!3907
2018-12-21 17:27:11 +08:00
Ivan Grokhotkov 75ef4b2242 Merge branch 'bugfix/ext_ram_bss_align' into 'master'
Fix crash if ext_ram_bss is unaligned length

See merge request idf/esp-idf!4000
2018-12-21 12:06:58 +08:00
Angus Gratton 78487123bf Merge branch 'feature/cut_len_for_header_struct' into 'master'
build: Add trimming PROJECT_VER and PROJECT_NAME vars

See merge request idf/esp-idf!3927
2018-12-21 07:45:22 +08:00
qiyueixa ed8c5a18cb mesh: update libs
1. fix STAs can not detect disconnection from AP when encrypt transmission is used.
2. fix can not find hidden APs.
3. for root, modify the active scan time to 120ms.
4. remove all rc when clear parent Wi-Fi configuration.
5. fix error in checking Wi-Fi commit ID.
2018-12-20 12:11:30 +08:00
Angus Gratton e1a1c7f17c psram: Use 8-bit type for _ext_ram_bss_start/_ext_ram_bss_end
Fixes pointer arithmetic when printing size of remaining heap
2018-12-20 01:40:05 +00:00
Angus Gratton db243d092c linker external bss: Align end of ext bss to word boundary
TW27954
2018-12-20 01:40:05 +00:00
Jiang Jiang Jian 14d7a63459 Merge branch 'bugfix/wifi_rx_fail' into 'master'
wifi: fix wifi rx fails

See merge request idf/esp-idf!3976
2018-12-19 19:12:36 +08:00
Angus Gratton d453cce1b3 Merge branch 'bugfix/individual_custom_sections' into 'master'
linker: When using section type attributes, create unique sections

See merge request idf/esp-idf!3920
2018-12-19 15:18:26 +08:00
Angus Gratton ad200227d2 Merge branch 'feature/add_rollback_flags' into 'master'
bootloader/app_update: Add a support of an app rollback.

See merge request idf/esp-idf!3547
2018-12-19 14:28:11 +08:00
Angus Gratton 769bd4a4af linker: When using section type attributes, create unique sections
* Prevents section type conflict errors if (say) const & non-const data
  is put into the same section (ie with DRAM_ATTR)

* Allows linker --gc-sections to remove unused custom sections
2018-12-19 04:42:04 +00:00
qiyueixa 2b83460814 wifi: fix wifi rx fails
1. add MAC reset.
2. update libphy.a from 4000 to 4006.
2018-12-18 23:39:54 +08:00