Commit Graph

109 Commits

Author SHA1 Message Date
Shen Weilong
ea06b047c2 feat(bt): Frees BLE memory when no longer in use
It will free libble.a & libbt all txt, data and bss segment memory.
          This memory is combined into one large memory and put into the heap
          pool.
2023-10-19 14:52:29 +08:00
isha.pardikar@espressif.com
db5b50af2c NimBLE: Added support of encrypted advertising data 2023-08-23 18:18:23 +05:30
isha.pardikar@espressif.com
3b8853b3c0 NimBLE: Added health thermometer profile 2023-07-21 05:36:32 +00:00
isha.pardikar@espressif.com
893967f596 feat (NimBLE): Add proximity sensor as a service 2023-07-07 14:59:22 +05:30
laokaiyao
954a6a2cff esp32h4: removed esp32h4 related codes 2023-04-26 18:53:12 +08:00
isha.pardikar@espressif.com
fc0aa4d083 NimBLE : Added heart rate measurement as a service 2023-03-23 11:04:00 +05:30
Jiang Jiang Jian
fe979e6513 Merge branch 'feature/merge_c3_s3_bt_files_to_one' into 'master'
Merge ESP32C3 and ESP32S3 BLE bt.c, esp_bt.h and kconfig files to one

Closes BT-3209

See merge request espressif/esp-idf!22453
2023-03-08 10:53:01 +08:00
zwj
a5e43a7d43 Merge ESP32C3 and ESP32S3 BLE bt.c files to one 2023-03-06 14:53:03 +08:00
Shen Weilong
f39648040e BLE: Add ble support for esp32h2 2023-03-06 10:43:17 +08:00
wangmengyang
2c4fc5d9ea bt: add coexistence internal API declarations and clean up some unused coexistence hooks 2023-02-26 06:58:18 +00:00
liuning
38316b38b5 esp_wifi: move coex part from esp_wifi to esp_coex 2023-02-26 06:58:18 +00:00
Roshan Bangar
ba1119a725 Nimble: Migrate to nimble 1.5 2023-02-15 04:55:26 +00:00
shenweilong
93fc1bd05f support ble on esp32c6 2023-01-04 11:10:10 +08:00
chenjianhua
f4cd0b687d bluedroid: support GATT services database hash calculate 2022-12-09 13:28:31 +08:00
Alexey Gerenkov
47c2c13de5 build: Adds support for universal Clang toolchain 2022-11-23 13:25:16 +03:00
laokaiyao
8677216576 esp32h2: renaming esp32h2 to esp32h4 2022-11-08 17:05:33 +08:00
Ivan Grokhotkov
237b2ce40c
cmake: use target_link_options and _directories supported since 3.13
Now that the supported CMake version is >=3.16, this code can be
simplified.

The code to deduplicate the directories can be removed since this is
handled by target_link_directories.
2022-09-20 11:08:02 +02:00
Ivan Grokhotkov
401c10ecfb build system: re-add -Wno-format as private flag for some components 2022-08-03 16:42:47 +04:00
wangmengyang
c0b86fefc6 component/bt: add new OSI utility "fixed_pkt_queue", which has same functionality with "fixed_queue" 2022-08-02 14:14:07 +08:00
Karl Wang
eea8a285e3 component/bt: add new OSI utility "pkt_queue" which acts as a mutex-protected linked list, to be used as data queue between tasks 2022-08-02 14:14:07 +08:00
David Čermák
36f49f361c Merge branch 'bugfix/esp_netif_clean_deps_lwip' into 'master'
esp-netif/lw-ip: Make dependencies one-directional

Closes IDF-4459, IDF-4460, IDF-1099, and IDFGH-6287

See merge request espressif/esp-idf!18084
2022-07-21 20:18:05 +08:00
Jiang Jiang Jian
92b4e134bb Merge branch 'bugfix/remove_inappropriate_bluetooth_init_api' into 'master'
Remove unused bluetooth init api

See merge request espressif/esp-idf!18923
2022-07-21 14:53:44 +08:00
David Cermak
5c383d7b73 esp_netif/lwip: Fix deps cycles to "lwip -> esp_netif -> phy-drivers"
Fix dependency tree so that lwip doesn't depend on any specific network
interface component.
Network interface drivers shall depend on esp_netif.
esp_netif shall depend on lwip (but not on any specific interface
driver) -- it optionally depends on vfs and esp_eth (need ethernet
header for L2/bridge mode)
2022-07-20 14:59:07 +02:00
GengYuchao
964304b751 Change the selection based on target to function selection 2022-07-20 13:06:56 +08:00
GengYuchao
5430ad0519 Remove esp_nimble_hci_and_controller_init function 2022-07-20 11:44:00 +08:00
Mahavir Jain
a94c74c26b
mbedtls: remove dependency on driver component
- keep `esp_pm` dependency conditional in mbedtls
- refactor `bt` cmakelist to keep dependencies as private

Related: IDF-1265
2022-07-18 21:10:51 +05:30
GengYuchao
b474c83840 Add support for esp32h2 beta2 2022-06-30 17:02:00 +08:00
GengYuchao
1dabebf771 Fix Kconfig format issue and add option 2022-06-20 17:00:12 +08:00
GengYuchao
633e9282b7 Update the CMake compilation architecture and update the controller configuration options 2022-06-20 17:00:12 +08:00
Geng Yuchao
a692abd423 Optimize the Cmake file structure, support esp32c2.
Follow Kconfig to update the nimble config macro name.
2022-06-03 22:41:33 +08:00
satish.solanke
3a42007680 Bluedroid porting changes for esp32h2
created common Kconfig for common flag of nimbble and Bluedroid

fix compile error

created common cfg file for controller

fix the compilation error on tip of master

added common controller flags and fixed compilation error

sdkconfig rename for target specific
2022-05-30 08:42:45 +00:00
xiongweichao
1d9fd4707a add sdp api 2022-05-28 23:34:21 +00:00
xiongweichao
4719db7047 add l2cap api 2022-05-28 23:34:21 +00:00
Anton Maklakov
bcfec4ad74 bluedroid: suppress some -Waddress-of-packed-member warnings 2022-05-13 06:55:22 +00:00
Rahul Tank
f376bb5d05 Add support in Nimble for ESP32H2 2022-03-14 11:57:53 +05:30
Jakob Hasse
1d4061d3f2 refactor (nvs_flash)!: removed mbedtls as default dependency
mbedtls is only required in NVS if NVS encryption is enabled.
Hence the mbedtls dependency is now only added if encryption
is enabled, otherwise it is not added.

BREAKING CHANGE: Removed mbedtls as default dependency
2022-01-26 17:32:23 +08:00
Omar Chebib
9d5923a13e IPC: Move ipc sources to esp_system
IPC shall be put back into esp_system as it is an 'OS additions'.
2021-11-11 10:30:01 +08:00
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