Wykres commitów

72 Commity (742f99f7d063b401cee637c2ccfe90b52d70fb56)

Autor SHA1 Wiadomość Data
baohongde d1db2df316 components/bt: High level interrupt in bluetooth
components/os: Move ETS_T1_WDT_INUM, ETS_CACHEERR_INUM and ETS_DPORT_INUM to l5 interrupt

components/os: high level interrupt(5)

components/os: hli_api: meta queue: fix out of bounds access, check for overflow

components/os: hli: don't spill registers, instead save them to a separate region

Level 4 interrupt has a chance of preempting a window overflow or underflow exception.
Therefore it is not possible to use standard context save functions,
as the SP on entry to Level 4 interrupt may be invalid (e.g. in WindowUnderflow4).

Instead, mask window overflows and save the entire general purpose register file,
plus some of the special registers.
Then clear WindowStart, allowing the C handler to execute without spilling the old windows.
On exit from the interrupt handler, do everything in reverse.

components/bt: using high level interrupt in lc

components/os: Add DRAM_ATTR to avoid feature `Allow .bss segment placed in external memory`

components/bt: optimize code structure

components/os: Modify the BT assert process to adapt to coredump and HLI

components/os: Disable exception mode after saving special registers

To store some registers first, avoid stuck due to live lock after disabling exception mode

components/os: using dport instead of AHB in BT to fix live lock

components/bt: Fix hli queue send error

components/bt: Fix CI fail

# Conflicts:
#	components/bt/CMakeLists.txt
#	components/bt/component.mk
#	components/bt/controller/bt.c
#	components/bt/controller/lib
#	components/esp_common/src/int_wdt.c
#	components/esp_system/port/soc/esp32/dport_panic_highint_hdl.S
#	components/soc/esp32/include/soc/soc.h
2021-09-09 11:29:06 +08:00
liqigan 1c15c9207c 1. transparent HID device
2. add esp API for HID
3. add PM config for HID
4. add HID device demo

Closes https://github.com/espressif/esp-idf/issues/5311
Closes https://github.com/espressif/esp-idf/issues/5635
Merges https://github.com/espressif/esp-idf/pull/3425
2021-09-07 16:59:30 +08:00
Jiang Jiang Jian 59b49d2783 Merge branch 'feature/add-nimble-host-to-blufi' into 'master'
Add support of NimBLE host to Blufi

See merge request espressif/esp-idf!13734
2021-06-29 12:54:01 +00:00
“sonalipatil” 5175672050 Add support of NimBLE host to Blufi
Merges https://github.com/espressif/esp-idf/pull/6904
2021-06-28 19:53:33 +05:30
Marius Vikhammer ee2f8b1a62 build system: always build with -fno-jump-tables & -fno-tree-switch-conversion
Jump tables placed in flash would cause issue with code that needed to be ran from IRAM.

These optimizations are now always disabled.
2021-06-24 14:54:10 +08:00
Shu Chen 6061a547e5 esp_phy: decouple esp_phy component from esp_wifi and bt
* add esp-phy-lib submodule
* move libphy.a and phy_init.c from esp_wifi to esp_phy
* move librtc.a from esp_wifi to esp_phy
* move libbtbb.a from bt to esp_phy
* corresponding updates to build system
2021-06-03 16:17:31 +08:00
wangmengyang d703424ef7 component/bt: add another bt-lib submodule and refactor the directories 2021-04-22 07:41:46 +08:00
Angus Gratton d6f4d99d93 core system: Fix warnings in compilation when assertions are disabled
Adds a CI config for hello world that sets this, to catch future regressions
2021-03-03 10:26:57 +11:00
Jiang Jiang Jian f5e7504000 Merge branch 'nimble/update_nimble-1.3.0-idf' into 'master'
NimBLE: Update NimBLE to latest 1.3.0 release

See merge request espressif/esp-idf!9917
2021-01-18 20:29:10 +08:00
Prasad Alatkar 8224aa69a2 NimBLE: Update NimBLE to latest 1.3.0 release 2021-01-15 16:57:29 +00:00
zwj 7c1c669799 component/bt: add BLE v5.0 feature for bluedroid host 2021-01-15 17:55:12 +08:00
Bao Hong De 64d30fa6c4 Add API to config QoS 2021-01-05 10:32:47 +08:00
lly a6ebe48e6e ble_mesh: stack: Add a btc file for ble coex functions
Previously if starting/stopping BLE advertising when BLE Mesh
is enabled, the corresponding events will be notified through
the callback registered by esp_ble_mesh_register_prov_callback().

With this commit, the func esp_ble_mesh_register_ble_callback()
needs to be invoked for resgitering the callback used for BLE
coexistence related functionalities (i.e. ADV/SCAN).
2020-12-21 09:08:25 +00:00
lly 1bb3f693d5 ble_mesh: stack: Move ble scan funcitons to a single file 2020-12-21 09:08:25 +00:00
Island 4f082154e0 Merge branch 'feat/ble_mesh_multiple_nvs_namespace' into 'master'
ble_mesh: stack: Provisioner supports multiple nvs namespaces

Closes BLEMESH-260

See merge request espressif/esp-idf!11355
2020-12-07 14:43:04 +08:00
lly a90e3cdf95 ble_mesh: stack: Provisioner supports multiple nvs namespaces
Now Provisioner can use different NVS namespaces to store
different instances of mesh information, for example, for
different user accounts.
2020-12-04 20:31:25 +08:00
Sachin Parekh be5563207d esp32: Provision to redirect .bss to external ram through linker fragments
Include external ram section in the linker template to process it
through linker script generation mechanism. This enables redirection of .bss section to external memory using linker fragments

libnet80211, libpp, libbt, liblwip: Redirect .bss through fragments
2020-12-04 06:32:38 +00:00
Angus Gratton e82eac4354 cmake: Apply cmakelint fixes 2020-11-11 07:36:35 +00:00
lly 0b57cdf85b ble_mesh: stack: Move device property to model common part 2020-10-12 00:39:58 +00:00
Renz Bagaporo 6462f9bfe1 esp32, esp32s2: create esp_pm component 2020-09-25 05:24:10 +00:00
lly 64e76ee019 ble_mesh: stack: Move fast prov functions to a single file 2020-07-01 13:26:06 +00:00
lly 763f3ace61 ble_mesh: Remove the previously added redundant aes files 2020-06-23 06:19:08 +00:00
lly d08425fdd1 ble_mesh: Update CMake and make files for tinycrypt 2020-06-23 06:19:08 +00:00
lly 9aae4d3ba3 ble_mesh: Local model (un)subscribes group address 2020-05-29 09:40:19 +00:00
Darian Leung 11d96b39d0 esp_ipc: Move to new component
This commit moves esp_ipc into a separate component.
2020-05-18 16:51:45 +08:00
lly 52a30c8f4a ble_mesh: Split mesh os related into a separate file 2020-05-11 02:29:18 +00:00
lly 01a8a6c150 ble_mesh: Split mesh mutex into a separate file 2020-05-11 02:29:18 +00:00
lly c493be489f ble_mesh: Rename mesh_kernel.* to mesh_timer.* 2020-05-11 02:29:18 +00:00
Hristo Gochkov 25281ef4de Add HID Support to IDF
- Adds HID Host support in Buedroid
- Adds BLE HID Host and Device support
- Adds some general HID utilities and definitions to help integrate with other stacks and native USB
2020-04-29 17:24:01 +08:00
lly a919e20c1a ble_mesh: Support BLE advertising simultaneously 2020-04-02 01:03:25 +00:00
Prasad Alatkar 48bd2d74b4 NimBLE: Add Host based privacy (RPA) feature support
- This feature removes dependency on controller to use privacy (RPA)
2020-03-06 11:02:18 +08:00
lly 7cd08b5824 ble_mesh: Miscellaneous modifications
1. Add an API to set Provisioner static oob value
2. Add an API to deinit BLE Mesh stack
3. Add an API to set Provisioner unicast address
4. Add an API to provision devices with fixed address
5. Add an API to store node composition data
6. Add an API to get node with device uuid
7. Add an API to get node with unicast address
8. Add an API to delete node with device uuid
9. Add an API to delete node with unicast address
10. Add an API for Provisioner to update local AppKey
11. Add an API for Provisioner to update local NetKey
12. Support Provisioner persistent functionality
13. Fix Provisioner entering IV Update procedure
14. Fix an issue which may cause client failing to send msg
15. Use bt_mesh.flags to indicate device role
16. Remove several useless macros
17. Callback RSSI of received mesh provisioning packets
18. Modify the Provisioner disable function
19. Change some log level from debug to info
20. Add parameters to Provisioner bind AppKey completion event
21. Fix node ignoring relay messages issue
22. Support using a specific partition for BLE Mesh
23. Fix compile warning when proxy related macros are disabled
24. Clean up BLE Mesh stack included header files
25. NULL can be input if client message needs no parameters
26. Fix compile warning when BT log is disabled
27. Initilize BLE Mesh stack local variables
28. Support using PSRAM for BLE Mesh mutex, queue and task
29. Add a menuconfig option to enable using memory from PSRAM
30. Clean up sdkconfig.defaults of BLE Mesh examples
2020-02-26 17:37:44 +08:00
Konstantin Kondrashov 739eb05bb9 esp32: add implementation of esp_timer based on TG0 LAC timer
Closes: IDF-979
2020-02-06 14:00:18 +08:00
Hrishikesh Dhayagude 91c8f324a9 NimBLE: Use dynamic buffers instead of static memory.
The NimBLE host buffers that consume a significant amount of memory are
now allocated dynamically.
The advantage is that, the memory can be reclaimed in cases where BLE
is turned off and not required for the current boot cycle
2020-01-23 00:55:51 +08:00
Ivan Grokhotkov 9a2af7ae33 global: remove gcc 5.2 support 2019-11-20 11:17:27 +01:00
lly 2bba9d7700 ble_mesh: miscellaneous modifications
1. Clean up client_common.c
2. Clean up esp_ble_mesh directory
3. Update Kconfig.in
4. Format esp_ble_mesh files
2019-11-08 11:10:52 +08:00
lly f906b7caf3 ble_mesh: add Generic/Sensor/Time and Scenes/Lighting Server models 2019-11-08 11:10:52 +08:00
lly 287f80ec01 ble_mesh: add proxy client functionality 2019-11-08 11:10:52 +08:00
Prasad Alatkar c5339779a7 NimBLE: Update NimBLE submodule to latest `nimble-1.2.0-idf` release 2019-10-29 12:52:05 +08:00
Jiang Jiang Jian f974811150 Merge branch 'feature/hf_ag' into 'master'
Feature: BT/HFP AG.

Closes BT-346 and BT-428

See merge request espressif/esp-idf!6306
2019-10-25 10:57:43 +08:00
Hrishikesh Dhayagude f58d7d14c7 components/bt: Add support of NimBLE host in ESP BLE Mesh 2019-10-21 20:18:21 +08:00
weitianhua 26b69f1363 New Clean Commit for AG.
Only Support single AG control block.
2019-10-14 07:54:09 +00:00
Prasad Alatkar fe08f435dc NimBLE: Add optional mbedTLS support to NimBLE
- Additional menuconfig option to select either mbedTLS or Tinycrypt from NimBLE.
- Addition of `CMAC` and `ECP_RESTARTABLE` to mbedTLS menuconfig option and
  `esp_config.h`.
- Changes NimBLE `component.mk` and `CMakeLists.txt` to support mbedTLS option.
- Minor changes to `app_mesh.c` application.
2019-09-30 14:15:43 +08:00
lly 5f6259a625 ble_mesh: reorganize ble mesh model files 2019-09-09 17:15:16 +08:00
Hrishikesh Dhayagude 21165edf41 Bluetooth component refactoring 2019-06-30 16:39:00 +08:00
Renz Christian Bagaporo 31ec634730 bt: fix build issue
Source files and include directories were appended to variables
used by the previous component registration command.
2019-06-25 16:53:37 +08:00
Angus Gratton 9a412d3a08 Merge branch 'feature/use_new_component_registration_apis' into 'master'
Use new component registration API

See merge request idf/esp-idf!4898
2019-06-25 10:24:11 +08:00
Island fc3253163e component/ble_mesh: ESP BLE Mesh release
1. BLE Mesh Core

* Provisioning: Node Role
    * Advertising and GATT bearer
    * Authentication OOB

* Provisioning: Provisioner Role
    * Advertising and GATT bearer
    * Authentication OOB

* Networking
    * Relay
    * Segmentation and Reassembly
    * Key Refresh
    * IV Update

* Proxy Support

* Multiple Client Models Run Simultaneously
    * Support multiple client models send packets to different nodes simultaneously
    * No blocking between client model and server

* NVS Storage
    * Store Provisioning Data of BLE Mesh Nodes in Flash

2. BLE Mesh Applications

* BLE Mesh Node & Provisioner
    * Node Example
    * Provisioner Example
    * Node + Generic OnOff Client Example

* Fast Provisioning
    * Vendor Fast Prov Server Model
    * Vendor Fast Prov Client Model
    * Examples

* Wi-Fi & BLE Mesh Coexistence
    * Example

* BLE Mesh Console Commands
    * Example

3. BLE Mesh Models

* Foundation Models
    * Configuration Server Model
    * Configuration Client Model
    * Health Server Model
    * Health Client Model

* Generic Client Models
    * Generic OnOff Client
    * Generic Level Client
    * Generic Location Client
    * Generic Default Transition Timer Client
    * Generic Power OnOff Client
    * Generic Power Level Client
    * Generic Battery Client
    * Generic Property Client

* Generic Server Models
    * Generic OnOff Server (Example)

* Lighting Client Models
    * Light Lightness Client
    * Light CTL Client
    * Light HSL Client
    * Light xyL Client
    * Light LC Client

* Sensor Client Model
    * Sensor Client

* Time and Scenes Client Models
    * Time Client
    * Scene Client
    * Scheduler Client
2019-06-24 11:31:24 +08:00
Renz Christian Bagaporo 9eccd7c082 components: use new component registration api 2019-06-21 19:53:29 +08:00
baohongde faf23df19a component/bt : modify OSI thread of bluedroid
abstract of OSI thread to make bluedroid more compatible with different OS.
2019-06-19 21:20:04 +08:00