Commit Graph

16297 Commits

Author SHA1 Message Date
wangmengyang
ee480b7776 Refactor Bluetooth init/deinit mechanism
free osi_funcs struct memory duiring failure of controller_init when necessary

components/bt: use s_lp_stat.phy_enabled to control the on/off of phy module

clean up style for controller_disable

clean up some empty functions and unnecessary comments

Added async wakeup src "BTDM_ASYNC_WAKEUP_SRC_TMR"

remove use of assert in controller_init, set error code upon some exceptions

move stop esp_timer early to phase0, add state variable wakeup_timer_started
2021-01-28 19:27:17 +08:00
wangmengyang
06ea8a3028 remove use of macro "CONFIG_SPIRAM_USE_MALLOC" 2021-01-28 19:25:03 +08:00
wangmengyang
086b36d737 Refactor Bluetooth sleep mechanism
Refactor bluetooth hardware PowerUp/PowerDown functions

component/bt: fix use of a deprecated MACRO "CONFIG_ESP32_WIFI_SW_COEXIST_ENABLE"

component/bt: fix sleep wakeup in controller disable procedure

remove use of s_pm_lock_sem

1. Modified the waking up approach from async to sync: post a message to controller task upon vhci downstream packets or controller disable, and in response, controller task goes through the wake-up procedure
2. Added Controller status check for the esp_vhci APIs
3. Adjust the procedure during controller_init, check the validity of arguments first

Some minor modifications for bluetooth sleep control and configuration

1. use variable flag s_btdm_allow_light_sleep to control the use of s_light_sleep_pm_lock
2. use variable btdm_lpclk_sel to choose bluetooth sleep clock, support only for external 32kHz crystal temporarily

component/bt: improve async_wakeup function

1. check power state first and then decide if wakeup needs to be performed
2. change the meaning of the return value, if wakeup request is posted to controller task, then return true, otherwise return false

put sleep control logics in controller init/deinit/enable/disable together

Use s_lp_cntl struct: replace bool-typed variable sleep_backup_en with s_lp_cntl.mac_bb_pd

Use s_lp_cntl struct: replace bool-typed variable s_btdm_allow_light_sleep with s_lp_cntl.no_light_sleep

Use s_lp_cntl struct: replace global variable btdm_lpclk_sel with s_lp_cntl.lpclk_sel

create semaphore s_wakeup_req_sem only when low power mode is required

Use s_lp_cntl struct: use s_lp_cntl.wakeup_timer_required to control the wakeup timer

use s_lp_stat to replace original state variable sleep_backup_done and s_pm_lock_acquired

one minor change for mac_bb_pd settings init: return error status if memeory allocation failed
2021-01-28 19:23:09 +08:00
wangmengyang
9742aa6f05 component/bt: handle sleep wakeup event in the context of controller task instead of timer task 2021-01-28 16:04:21 +08:00
Angus Gratton
ae165c9b52 Merge branch 'bugfix/esp32s2_rom_address_range' into 'master'
soc: Fix SOC_IROM_MASK_HIGH address

Closes IDF-2672

See merge request espressif/esp-idf!12126
2021-01-28 13:49:27 +08:00
Michael (XIAO Xufeng)
78114e4edf Merge branch 'feature/freemodbus_slave_add_multi_area_descriptors' into 'master'
freemodbus: add support for list of area descriptors for each register area

Closes IDFGH-3911

See merge request espressif/esp-idf!11134
2021-01-28 12:29:38 +08:00
Alex Lisitsyn
96b77a28b1 freemodbus: add support for list of area descriptors for each register area
add multi register area descriptors into concrete port (initial)
add create/destroy of area descriptors into concrete port
add  the list of descriptors in common slave interface structure and init/destroy in concrete slave port
move r/w callback functions into common slave
final update of common slave interface wrappers add override API option in concrete port
update slave examples to check new  feature
2021-01-28 12:29:32 +08:00
David Čermák
445b1a6717 Merge branch 'bugfix/deprecate_esp_eth_receive' into 'master'
esp_eth: deprecate esp_eth_receive

Closes IDF-1065 and IDFGH-4657

See merge request espressif/esp-idf!12176
2021-01-28 02:14:42 +08:00
Michael (XIAO Xufeng)
9ff04b2e79 Merge branch 'feature/musical_buzzer' into 'master'
RMT example: musical buzzer

See merge request espressif/esp-idf!10346
2021-01-28 01:04:24 +08:00
Michael (XIAO Xufeng)
673937087e Merge branch 'feature/usb_host_hal' into 'master'
Add USB Host HAL

Closes IDF-2633

See merge request espressif/esp-idf!11784
2021-01-28 00:58:11 +08:00
Jiang Jiang Jian
20b20eef72 Merge branch 'feature/ftm_support' into 'master'
Add FTM support for ESP32-S2 & ESP32-C3

Closes IDFGH-3034 and WIFI-3293

See merge request espressif/esp-idf!10441
2021-01-28 00:28:10 +08:00
suda-morris
0208810eca esp_eth: fix typo in lan8720 driver
Closes https://github.com/espressif/esp-idf/issues/6469
2021-01-27 23:48:10 +08:00
morris
c010f24d8b esp_eth: deprecate esp_eth_receive
Ethernet driver is interrupt driven only, don't support polling mode.
So deprecate esp_eth_receive API.
2021-01-27 23:48:01 +08:00
Nachiket Kukade
8de3b31d2d FTM support for ESP32-C3 and connectionless mode
1. Support for FTM to work without any connection
1. Support for ESP32-C3 chip
3. Fix error case handling if FTM fails
4. Fix asynchronization, re-transmission related issues
2021-01-27 20:49:07 +05:30
Jiang Jiang Jian
24f0bbded9 Merge branch 'bugfix/esp32s3beta2_ble_coexist_status_set' into 'master'
bugfix/esp32s3beta2_ble_coexist_status_set

See merge request espressif/esp-idf!12137
2021-01-27 21:37:51 +08:00
Jiang Jiang Jian
67f78569a2 Merge branch 'component_bt/update_bt_demo_and_api_comment' into 'master'
component_bt/doc&demo: update bt demo and api comment

See merge request espressif/esp-idf!10461
2021-01-27 21:25:11 +08:00
Ivan Grokhotkov
f64bb01695 Merge branch 'feature/esp32c3_memprot_master' into 'master'
ESP32C3 memory protection

See merge request espressif/esp-idf!11979
2021-01-27 19:33:23 +08:00
Martin Vychodil
69096ddce5 Security: ESP32C3 memory protection feature (IRAM0/DRAM0)
Software support for PMS module.
Allows controlled memory access to IRAM (R/W/X) and DRAM0 (R/W)
On/locked by default, configurable in Kconfig (esp_system)

Closes https://jira.espressif.com:8443/browse/IDF-2092
2021-01-27 08:44:03 +01:00
Jiang Jiang Jian
d097988608 Merge branch 'bugfix/keep_esp_rtc_time_correct' into 'master'
newlib: Keep esp rtc time correct

See merge request espressif/esp-idf!11932
2021-01-27 15:22:43 +08:00
Angus Gratton
cc934ea0a1 Merge branch 'feature/esp32c3_tls' into 'master'
freertos: add thread local storage support in RISC-V port

Closes IDF-2125

See merge request espressif/esp-idf!12064
2021-01-27 15:19:06 +08:00
Angus Gratton
526f9507de Merge branch 'bugfix/linux_host_build_clang' into 'master'
build system: don't add GCC-specific options when building with clang

See merge request espressif/esp-idf!12066
2021-01-27 15:17:19 +08:00
Michael (XIAO Xufeng)
baedf7c9bb Merge branch 'bugfix/potential_cocurrency_issue_in_gdma' into 'master'
gdma: fix potential cocurrency issue

Closes IDF-2646

See merge request espressif/esp-idf!12001
2021-01-27 15:07:35 +08:00
Angus Gratton
8d60683b08 Merge branch 'bugfix/fix_context_switch_ra' into 'master'
freerots: fix rtos_int_exit writing outside ISR stack

See merge request espressif/esp-idf!12161
2021-01-27 15:05:10 +08:00
wangmengyang
51be1af028 add coexist hook functions and fix bugs for coexistence 2021-01-27 06:37:04 +00:00
weitianhua
c347b0a937 Update bt_discovery demo and README
1. Use bt_app_gap_init function
2. Add Security Simple Pair doc
3. Update README

Update SPP demo

1. Add input module for bt_spp_initiator demo to show the security simple pair features
2. Update README of bt_spp_acceptor and bt_spp_initiator demo.

Format comment in esp_a2dp_api.h

Format comment in esp_avrc_api.h

Format comment in esp_spp_api.h

Fix bt_discovery build err

Update HFP API guide error

Remove BTA_AV_DEBUG

Remove Trailing Whitespace & End of Files
2021-01-27 14:17:12 +08:00
Nachiket Kukade
a71976ab54 wifi/ftm: Stability fixes, raw FTM data in event
Update wifi lib with below additions -
1. Add FTM frame formation, IEEE definitions, event and IOCTL.
2. Implementation of FTM bursts, Measurements and RTT calculations
3. Fix Watchdog timeout, crashes with better cleanup of timers
4. Included FTM Report raw data in FTM event

Closes https://github.com/espressif/esp-idf/issues/5059
2021-01-27 11:16:35 +05:30
Nachiket Kukade
acb1143409 Add support for FTM operation
Add FTM support for below configuration -
1. Station(connected) as Initiator with AP as responder
2. SoftAP as responder with the connected Station
Added Station example with runtime FTM configurations.
2021-01-27 10:57:41 +05:30
Angus Gratton
f7a8593a3b Merge branch 'style/python_isort_double_quote_fixer' into 'master'
style: format python files with isort and double-quote-string-fixer

See merge request espressif/esp-idf!12149
2021-01-27 12:25:39 +08:00
Michael (XIAO Xufeng)
da4b4fc565 Merge branch 'bugfix/mcpwm_can_set_two_falut_signal' into 'master'
mcpwm: fix second fault line broken issue

Closes IDFGH-4194

See merge request espressif/esp-idf!12119
2021-01-27 11:36:30 +08:00
Michael (XIAO Xufeng)
1d52a0a459 Merge branch 'bugfix/enable_init_priority_test_c3' into 'master'
cxx: re-enable cxx init_priority unit test for C3

Closes IDF-2206

See merge request espressif/esp-idf!11972
2021-01-27 11:24:03 +08:00
Krzysztof Budzynski
1faff89ff6 Merge branch 'feature/update_jtag_translation' into 'master'
doc: update JTAG translation

Closes IDF-2069

See merge request espressif/esp-idf!12107
2021-01-27 10:37:10 +08:00
Angus Gratton
21f5bcd46f Merge branch 'bugfix/ulp_wakeup_trigger' into 'master'
ulp: specify ulp-risc-v as done signal source

Closes IDFGH-4210

See merge request espressif/esp-idf!11970
2021-01-27 07:59:51 +08:00
David Čermák
8a1adf200e Merge branch 'bugfix/ping_zero_interval_cause_to_assert_reset' into 'master'
lw-ip: Fixed ping assert reset when ping interval is 0

See merge request espressif/esp-idf!12072
2021-01-26 23:27:31 +08:00
Marius Vikhammer
4374966d4e freerots: fix rtos_int_exit writing outside ISR stack
rtos_int_exit would store RA at an offset of 4 byte from the SP,
where the offset should be 0.

This caused rtos_int_exit to overwrite variables in bss.
2021-01-26 11:18:39 +00:00
Chen Wu
8207f6ac32 lwip: Fixed ping assert reset when ping interval is 0 2021-01-26 10:48:56 +00:00
Krzysztof Budzynski
9a5bd86d54 Merge branch 'docs/update_docs_based_on_the_second_batch_of_customer_feedbacks' into 'master'
docs: update documents based on doc-855, doc-885, doc-889, doc-897

See merge request espressif/esp-idf!12124
2021-01-26 16:21:26 +08:00
Krzysztof Budzynski
5ca85248e3 Merge branch 'docs/update_docs_based_on_several_customer_feedbacks' into 'master'
docs: update documents based on doc-881, doc-856, doc-902, and doc-943

See merge request espressif/esp-idf!12118
2021-01-26 16:18:13 +08:00
Krzysztof Budzynski
6df0b98b8e Merge branch 'doc/api-guides-add-hypertargets' into 'master'
Add hypertargets to all TRM references

Closes DOC-713

See merge request espressif/esp-idf!11952
2021-01-26 16:15:29 +08:00
Krzysztof Budzynski
c9a4604fe2 Merge branch 'feature/update_esp32c3_rmt_doc' into 'master'
Update RMT/Sigma-Delta doc for ESP32-C3

Closes IDF-2341 and IDF-2345

See merge request espressif/esp-idf!12091
2021-01-26 14:29:33 +08:00
kirill.chalov
f634c59289 Add hypertargets to all TRM references 2021-01-26 05:51:52 +00:00
Michael (XIAO Xufeng)
d741b08fe7 Merge branch 'feature/esp32c3_deep_sleep_rtcfastmem' into 'master'
esp32c3: Finish deep sleep support

Closes IDF-2560

See merge request espressif/esp-idf!12031
2021-01-26 12:53:34 +08:00
Michael (XIAO Xufeng)
c99e891201 Merge branch 'feature/sync_adc_changes_from_c3_to_master_last' into 'master'
adc: sync adc changes from c3 to master (last time)

Closes IDF-2694

See merge request espressif/esp-idf!12134
2021-01-26 12:52:20 +08:00
Wang Fang
4c31cf9804 docs: Update FreeRTOS version, add tips to set up instructions for Windows 2021-01-26 03:46:25 +00:00
Jiang Jiang Jian
6938f7b30f Merge branch 'add_dhcp_option_61' into 'master'
lw-ip: add dhcp option 61

Closes WIFI-1290

See merge request espressif/esp-idf!6507
2021-01-26 11:36:05 +08:00
Fu Hanxi
0146f258d7 style: format python files with isort and double-quote-string-fixer 2021-01-26 10:49:01 +08:00
Angus Gratton
241af87c58 examples console: Fix parts of the code related to deep sleep on ESP32-C3
Example not yet working on ESP32-C3, crashes in _findenv_r
2021-01-25 17:20:04 +00:00
Angus Gratton
b432fc8853 esp_system: Enable deep sleep reset reason test for ESP32-C3 2021-01-25 17:20:04 +00:00
Angus Gratton
d3ffaf4684 esp_system: Add soc_caps guards in esp_sleep.h 2021-01-25 17:20:04 +00:00
Angus Gratton
4026e7b250 esp_system esp32c3: Fix uart flush on entering deep sleep 2021-01-25 17:20:04 +00:00
Angus Gratton
1cfd65f8c4 examples: Update deep sleep example for ESP32-C3 2021-01-25 17:20:04 +00:00