Bluetooth component refactoring

pull/3717/head
Hrishikesh Dhayagude 2019-06-30 16:39:00 +08:00 zatwierdzone przez Jiang Jiang Jian
rodzic 66e333e352
commit 21165edf41
587 zmienionych plików z 2756 dodań i 2700 usunięć

8
.gitmodules vendored
Wyświetl plik

@ -6,8 +6,8 @@
path = components/esptool_py/esptool
url = ../esptool.git
[submodule "components/bt/lib"]
path = components/bt/lib
[submodule "components/bt/controller/lib"]
path = components/bt/controller/lib
url = ../esp32-bt-lib.git
[submodule "components/bootloader/subproject/components/micro-ecc/micro-ecc"]
@ -70,6 +70,6 @@
path = components/esp_wifi/lib_esp32
url = ../esp32-wifi-lib.git
[submodule "components/nimble/nimble"]
path = components/nimble/nimble
[submodule "components/bt/host/nimble/nimble"]
path = components/bt/host/nimble/nimble
url = ../esp-nimble.git

Wyświetl plik

@ -1,359 +1,497 @@
if(CONFIG_BT_ENABLED)
set(srcs "bt.c")
set(include_dirs include)
set(srcs "controller/bt.c")
set(include_dirs include
common/osi/include)
list(APPEND priv_include_dirs
common/btc/include
common/include)
list(APPEND srcs "common/btc/core/btc_alarm.c"
"common/btc/core/btc_manage.c"
"common/btc/core/btc_task.c"
"common/osi/alarm.c"
"common/osi/allocator.c"
"common/osi/buffer.c"
"common/osi/config.c"
"common/osi/fixed_queue.c"
"common/osi/future.c"
"common/osi/hash_functions.c"
"common/osi/hash_map.c"
"common/osi/list.c"
"common/osi/mutex.c"
"common/osi/thread.c"
"common/osi/osi.c"
"common/osi/semaphore.c")
if(CONFIG_BT_BLUEDROID_ENABLED)
list(APPEND priv_include_dirs
bluedroid/bta/include
bluedroid/bta/ar/include
bluedroid/bta/av/include
bluedroid/bta/dm/include
bluedroid/bta/gatt/include
bluedroid/bta/hf_client/include
bluedroid/bta/hh/include
bluedroid/bta/jv/include
bluedroid/bta/sdp/include
bluedroid/bta/sys/include
bluedroid/device/include
bluedroid/hci/include
bluedroid/osi/include
bluedroid/external/sbc/decoder/include
bluedroid/external/sbc/encoder/include
bluedroid/external/sbc/plc/include
bluedroid/btc/profile/esp/blufi/include
bluedroid/btc/profile/esp/include
bluedroid/btc/profile/std/a2dp/include
bluedroid/btc/profile/std/include
bluedroid/btc/include
bluedroid/stack/btm/include
bluedroid/stack/gap/include
bluedroid/stack/gatt/include
bluedroid/stack/l2cap/include
bluedroid/stack/sdp/include
bluedroid/stack/smp/include
bluedroid/stack/avct/include
bluedroid/stack/avrc/include
bluedroid/stack/avdt/include
bluedroid/stack/a2dp/include
bluedroid/stack/rfcomm/include
bluedroid/stack/include
bluedroid/common/include)
host/bluedroid/bta/include
host/bluedroid/bta/ar/include
host/bluedroid/bta/av/include
host/bluedroid/bta/dm/include
host/bluedroid/bta/gatt/include
host/bluedroid/bta/hf_client/include
host/bluedroid/bta/hh/include
host/bluedroid/bta/jv/include
host/bluedroid/bta/sdp/include
host/bluedroid/bta/sys/include
host/bluedroid/device/include
host/bluedroid/hci/include
host/bluedroid/external/sbc/decoder/include
host/bluedroid/external/sbc/encoder/include
host/bluedroid/external/sbc/plc/include
host/bluedroid/btc/profile/esp/blufi/include
host/bluedroid/btc/profile/esp/include
host/bluedroid/btc/profile/std/a2dp/include
host/bluedroid/btc/profile/std/include
host/bluedroid/btc/include
host/bluedroid/stack/btm/include
host/bluedroid/stack/gap/include
host/bluedroid/stack/gatt/include
host/bluedroid/stack/l2cap/include
host/bluedroid/stack/sdp/include
host/bluedroid/stack/smp/include
host/bluedroid/stack/avct/include
host/bluedroid/stack/avrc/include
host/bluedroid/stack/avdt/include
host/bluedroid/stack/a2dp/include
host/bluedroid/stack/rfcomm/include
host/bluedroid/stack/include
host/bluedroid/common/include)
list(APPEND include_dirs bluedroid/api/include/api)
list(APPEND include_dirs host/bluedroid/api/include/api)
list(APPEND srcs "bluedroid/api/esp_a2dp_api.c"
"bluedroid/api/esp_avrc_api.c"
"bluedroid/api/esp_blufi_api.c"
"bluedroid/api/esp_bt_device.c"
"bluedroid/api/esp_bt_main.c"
"bluedroid/api/esp_gap_ble_api.c"
"bluedroid/api/esp_gap_bt_api.c"
"bluedroid/api/esp_gatt_common_api.c"
"bluedroid/api/esp_gattc_api.c"
"bluedroid/api/esp_gatts_api.c"
"bluedroid/api/esp_hf_client_api.c"
"bluedroid/api/esp_spp_api.c"
"bluedroid/bta/ar/bta_ar.c"
"bluedroid/bta/av/bta_av_aact.c"
"bluedroid/bta/av/bta_av_act.c"
"bluedroid/bta/av/bta_av_api.c"
"bluedroid/bta/av/bta_av_cfg.c"
"bluedroid/bta/av/bta_av_ci.c"
"bluedroid/bta/av/bta_av_main.c"
"bluedroid/bta/av/bta_av_sbc.c"
"bluedroid/bta/av/bta_av_ssm.c"
"bluedroid/bta/dm/bta_dm_act.c"
"bluedroid/bta/dm/bta_dm_api.c"
"bluedroid/bta/dm/bta_dm_cfg.c"
"bluedroid/bta/dm/bta_dm_ci.c"
"bluedroid/bta/dm/bta_dm_co.c"
"bluedroid/bta/dm/bta_dm_main.c"
"bluedroid/bta/dm/bta_dm_pm.c"
"bluedroid/bta/dm/bta_dm_sco.c"
"bluedroid/bta/gatt/bta_gatt_common.c"
"bluedroid/bta/gatt/bta_gattc_act.c"
"bluedroid/bta/gatt/bta_gattc_api.c"
"bluedroid/bta/gatt/bta_gattc_cache.c"
"bluedroid/bta/gatt/bta_gattc_ci.c"
"bluedroid/bta/gatt/bta_gattc_co.c"
"bluedroid/bta/gatt/bta_gattc_main.c"
"bluedroid/bta/gatt/bta_gattc_utils.c"
"bluedroid/bta/gatt/bta_gatts_act.c"
"bluedroid/bta/gatt/bta_gatts_api.c"
"bluedroid/bta/gatt/bta_gatts_co.c"
"bluedroid/bta/gatt/bta_gatts_main.c"
"bluedroid/bta/gatt/bta_gatts_utils.c"
"bluedroid/bta/hh/bta_hh_act.c"
"bluedroid/bta/hh/bta_hh_api.c"
"bluedroid/bta/hh/bta_hh_cfg.c"
"bluedroid/bta/hh/bta_hh_le.c"
"bluedroid/bta/hh/bta_hh_main.c"
"bluedroid/bta/hh/bta_hh_utils.c"
"bluedroid/bta/jv/bta_jv_act.c"
"bluedroid/bta/jv/bta_jv_api.c"
"bluedroid/bta/jv/bta_jv_cfg.c"
"bluedroid/bta/jv/bta_jv_main.c"
"bluedroid/bta/hf_client/bta_hf_client_act.c"
"bluedroid/bta/hf_client/bta_hf_client_api.c"
"bluedroid/bta/hf_client/bta_hf_client_at.c"
"bluedroid/bta/hf_client/bta_hf_client_cmd.c"
"bluedroid/bta/hf_client/bta_hf_client_main.c"
"bluedroid/bta/hf_client/bta_hf_client_rfc.c"
"bluedroid/bta/hf_client/bta_hf_client_sco.c"
"bluedroid/bta/hf_client/bta_hf_client_sdp.c"
"bluedroid/bta/sdp/bta_sdp.c"
"bluedroid/bta/sdp/bta_sdp_act.c"
"bluedroid/bta/sdp/bta_sdp_api.c"
"bluedroid/bta/sdp/bta_sdp_cfg.c"
"bluedroid/bta/sys/bta_sys_conn.c"
"bluedroid/bta/sys/bta_sys_main.c"
"bluedroid/bta/sys/utl.c"
"bluedroid/btc/core/btc_alarm.c"
"bluedroid/btc/core/btc_ble_storage.c"
"bluedroid/btc/core/btc_config.c"
"bluedroid/btc/core/btc_dev.c"
"bluedroid/btc/core/btc_dm.c"
"bluedroid/btc/core/btc_main.c"
"bluedroid/btc/core/btc_manage.c"
"bluedroid/btc/core/btc_profile_queue.c"
"bluedroid/btc/core/btc_sec.c"
"bluedroid/btc/core/btc_sm.c"
"bluedroid/btc/core/btc_storage.c"
"bluedroid/btc/core/btc_task.c"
"bluedroid/btc/core/btc_util.c"
"bluedroid/btc/profile/esp/blufi/blufi_prf.c"
"bluedroid/btc/profile/esp/blufi/blufi_protocol.c"
"bluedroid/btc/profile/std/a2dp/bta_av_co.c"
"bluedroid/btc/profile/std/a2dp/btc_a2dp.c"
"bluedroid/btc/profile/std/a2dp/btc_a2dp_control.c"
"bluedroid/btc/profile/std/a2dp/btc_a2dp_sink.c"
"bluedroid/btc/profile/std/a2dp/btc_a2dp_source.c"
"bluedroid/btc/profile/std/a2dp/btc_av.c"
"bluedroid/btc/profile/std/avrc/btc_avrc.c"
"bluedroid/btc/profile/std/avrc/bta_avrc_co.c"
"bluedroid/btc/profile/std/hf_client/btc_hf_client.c"
"bluedroid/btc/profile/std/hf_client/bta_hf_client_co.c"
"bluedroid/btc/profile/std/gap/btc_gap_ble.c"
"bluedroid/btc/profile/std/gap/btc_gap_bt.c"
"bluedroid/btc/profile/std/gap/bta_gap_bt_co.c"
"bluedroid/btc/profile/std/gatt/btc_gatt_common.c"
"bluedroid/btc/profile/std/gatt/btc_gatt_util.c"
"bluedroid/btc/profile/std/gatt/btc_gattc.c"
"bluedroid/btc/profile/std/gatt/btc_gatts.c"
"bluedroid/btc/profile/std/spp/btc_spp.c"
"bluedroid/device/bdaddr.c"
"bluedroid/device/controller.c"
"bluedroid/device/interop.c"
"bluedroid/external/sbc/decoder/srce/alloc.c"
"bluedroid/external/sbc/decoder/srce/bitalloc-sbc.c"
"bluedroid/external/sbc/decoder/srce/bitalloc.c"
"bluedroid/external/sbc/decoder/srce/bitstream-decode.c"
"bluedroid/external/sbc/decoder/srce/decoder-oina.c"
"bluedroid/external/sbc/decoder/srce/decoder-private.c"
"bluedroid/external/sbc/decoder/srce/decoder-sbc.c"
"bluedroid/external/sbc/decoder/srce/dequant.c"
"bluedroid/external/sbc/decoder/srce/framing-sbc.c"
"bluedroid/external/sbc/decoder/srce/framing.c"
"bluedroid/external/sbc/decoder/srce/oi_codec_version.c"
"bluedroid/external/sbc/decoder/srce/synthesis-8-generated.c"
"bluedroid/external/sbc/decoder/srce/synthesis-dct8.c"
"bluedroid/external/sbc/decoder/srce/synthesis-sbc.c"
"bluedroid/external/sbc/encoder/srce/sbc_analysis.c"
"bluedroid/external/sbc/encoder/srce/sbc_dct.c"
"bluedroid/external/sbc/encoder/srce/sbc_dct_coeffs.c"
"bluedroid/external/sbc/encoder/srce/sbc_enc_bit_alloc_mono.c"
"bluedroid/external/sbc/encoder/srce/sbc_enc_bit_alloc_ste.c"
"bluedroid/external/sbc/encoder/srce/sbc_enc_coeffs.c"
"bluedroid/external/sbc/encoder/srce/sbc_encoder.c"
"bluedroid/external/sbc/encoder/srce/sbc_packing.c"
"bluedroid/external/sbc/plc/sbc_plc.c"
"bluedroid/hci/hci_audio.c"
"bluedroid/hci/hci_hal_h4.c"
"bluedroid/hci/hci_layer.c"
"bluedroid/hci/hci_packet_factory.c"
"bluedroid/hci/hci_packet_parser.c"
"bluedroid/hci/packet_fragmenter.c"
"bluedroid/main/bte_init.c"
"bluedroid/main/bte_main.c"
"bluedroid/osi/alarm.c"
"bluedroid/osi/allocator.c"
"bluedroid/osi/buffer.c"
"bluedroid/osi/config.c"
"bluedroid/osi/fixed_queue.c"
"bluedroid/osi/future.c"
"bluedroid/osi/hash_functions.c"
"bluedroid/osi/hash_map.c"
"bluedroid/osi/list.c"
"bluedroid/osi/mutex.c"
"bluedroid/osi/osi.c"
"bluedroid/osi/semaphore.c"
"bluedroid/osi/thread.c"
"bluedroid/stack/a2dp/a2d_api.c"
"bluedroid/stack/a2dp/a2d_sbc.c"
"bluedroid/stack/avct/avct_api.c"
"bluedroid/stack/avct/avct_ccb.c"
"bluedroid/stack/avct/avct_l2c.c"
"bluedroid/stack/avct/avct_lcb.c"
"bluedroid/stack/avct/avct_lcb_act.c"
"bluedroid/stack/avdt/avdt_ad.c"
"bluedroid/stack/avdt/avdt_api.c"
"bluedroid/stack/avdt/avdt_ccb.c"
"bluedroid/stack/avdt/avdt_ccb_act.c"
"bluedroid/stack/avdt/avdt_l2c.c"
"bluedroid/stack/avdt/avdt_msg.c"
"bluedroid/stack/avdt/avdt_scb.c"
"bluedroid/stack/avdt/avdt_scb_act.c"
"bluedroid/stack/avrc/avrc_api.c"
"bluedroid/stack/avrc/avrc_bld_ct.c"
"bluedroid/stack/avrc/avrc_bld_tg.c"
"bluedroid/stack/avrc/avrc_opt.c"
"bluedroid/stack/avrc/avrc_pars_ct.c"
"bluedroid/stack/avrc/avrc_pars_tg.c"
"bluedroid/stack/avrc/avrc_sdp.c"
"bluedroid/stack/avrc/avrc_utils.c"
"bluedroid/stack/btm/btm_acl.c"
"bluedroid/stack/btm/btm_ble.c"
"bluedroid/stack/btm/btm_ble_addr.c"
"bluedroid/stack/btm/btm_ble_adv_filter.c"
"bluedroid/stack/btm/btm_ble_batchscan.c"
"bluedroid/stack/btm/btm_ble_bgconn.c"
"bluedroid/stack/btm/btm_ble_cont_energy.c"
"bluedroid/stack/btm/btm_ble_gap.c"
"bluedroid/stack/btm/btm_ble_multi_adv.c"
"bluedroid/stack/btm/btm_ble_privacy.c"
"bluedroid/stack/btm/btm_dev.c"
"bluedroid/stack/btm/btm_devctl.c"
"bluedroid/stack/btm/btm_inq.c"
"bluedroid/stack/btm/btm_main.c"
"bluedroid/stack/btm/btm_pm.c"
"bluedroid/stack/btm/btm_sco.c"
"bluedroid/stack/btm/btm_sec.c"
"bluedroid/stack/btu/btu_hcif.c"
"bluedroid/stack/btu/btu_init.c"
"bluedroid/stack/btu/btu_task.c"
"bluedroid/stack/gap/gap_api.c"
"bluedroid/stack/gap/gap_ble.c"
"bluedroid/stack/gap/gap_conn.c"
"bluedroid/stack/gap/gap_utils.c"
"bluedroid/stack/gatt/att_protocol.c"
"bluedroid/stack/gatt/gatt_api.c"
"bluedroid/stack/gatt/gatt_attr.c"
"bluedroid/stack/gatt/gatt_auth.c"
"bluedroid/stack/gatt/gatt_cl.c"
"bluedroid/stack/gatt/gatt_db.c"
"bluedroid/stack/gatt/gatt_main.c"
"bluedroid/stack/gatt/gatt_sr.c"
"bluedroid/stack/gatt/gatt_utils.c"
"bluedroid/stack/hcic/hciblecmds.c"
"bluedroid/stack/hcic/hcicmds.c"
"bluedroid/stack/l2cap/l2c_api.c"
"bluedroid/stack/l2cap/l2c_ble.c"
"bluedroid/stack/l2cap/l2c_csm.c"
"bluedroid/stack/l2cap/l2c_fcr.c"
"bluedroid/stack/l2cap/l2c_link.c"
"bluedroid/stack/l2cap/l2c_main.c"
"bluedroid/stack/l2cap/l2c_ucd.c"
"bluedroid/stack/l2cap/l2c_utils.c"
"bluedroid/stack/l2cap/l2cap_client.c"
"bluedroid/stack/rfcomm/port_api.c"
"bluedroid/stack/rfcomm/port_rfc.c"
"bluedroid/stack/rfcomm/port_utils.c"
"bluedroid/stack/rfcomm/rfc_l2cap_if.c"
"bluedroid/stack/rfcomm/rfc_mx_fsm.c"
"bluedroid/stack/rfcomm/rfc_port_fsm.c"
"bluedroid/stack/rfcomm/rfc_port_if.c"
"bluedroid/stack/rfcomm/rfc_ts_frames.c"
"bluedroid/stack/rfcomm/rfc_utils.c"
"bluedroid/stack/sdp/sdp_api.c"
"bluedroid/stack/sdp/sdp_db.c"
"bluedroid/stack/sdp/sdp_discovery.c"
"bluedroid/stack/sdp/sdp_main.c"
"bluedroid/stack/sdp/sdp_server.c"
"bluedroid/stack/sdp/sdp_utils.c"
"bluedroid/stack/smp/aes.c"
"bluedroid/stack/smp/p_256_curvepara.c"
"bluedroid/stack/smp/p_256_ecc_pp.c"
"bluedroid/stack/smp/p_256_multprecision.c"
"bluedroid/stack/smp/smp_act.c"
"bluedroid/stack/smp/smp_api.c"
"bluedroid/stack/smp/smp_br_main.c"
"bluedroid/stack/smp/smp_cmac.c"
"bluedroid/stack/smp/smp_keys.c"
"bluedroid/stack/smp/smp_l2c.c"
"bluedroid/stack/smp/smp_main.c"
"bluedroid/stack/smp/smp_utils.c")
list(APPEND srcs "host/bluedroid/api/esp_a2dp_api.c"
"host/bluedroid/api/esp_avrc_api.c"
"host/bluedroid/api/esp_blufi_api.c"
"host/bluedroid/api/esp_bt_device.c"
"host/bluedroid/api/esp_bt_main.c"
"host/bluedroid/api/esp_gap_ble_api.c"
"host/bluedroid/api/esp_gap_bt_api.c"
"host/bluedroid/api/esp_gatt_common_api.c"
"host/bluedroid/api/esp_gattc_api.c"
"host/bluedroid/api/esp_gatts_api.c"
"host/bluedroid/api/esp_hf_client_api.c"
"host/bluedroid/api/esp_spp_api.c"
"host/bluedroid/bta/ar/bta_ar.c"
"host/bluedroid/bta/av/bta_av_aact.c"
"host/bluedroid/bta/av/bta_av_act.c"
"host/bluedroid/bta/av/bta_av_api.c"
"host/bluedroid/bta/av/bta_av_cfg.c"
"host/bluedroid/bta/av/bta_av_ci.c"
"host/bluedroid/bta/av/bta_av_main.c"
"host/bluedroid/bta/av/bta_av_sbc.c"
"host/bluedroid/bta/av/bta_av_ssm.c"
"host/bluedroid/bta/dm/bta_dm_act.c"
"host/bluedroid/bta/dm/bta_dm_api.c"
"host/bluedroid/bta/dm/bta_dm_cfg.c"
"host/bluedroid/bta/dm/bta_dm_ci.c"
"host/bluedroid/bta/dm/bta_dm_co.c"
"host/bluedroid/bta/dm/bta_dm_main.c"
"host/bluedroid/bta/dm/bta_dm_pm.c"
"host/bluedroid/bta/dm/bta_dm_sco.c"
"host/bluedroid/bta/gatt/bta_gatt_common.c"
"host/bluedroid/bta/gatt/bta_gattc_act.c"
"host/bluedroid/bta/gatt/bta_gattc_api.c"
"host/bluedroid/bta/gatt/bta_gattc_cache.c"
"host/bluedroid/bta/gatt/bta_gattc_ci.c"
"host/bluedroid/bta/gatt/bta_gattc_co.c"
"host/bluedroid/bta/gatt/bta_gattc_main.c"
"host/bluedroid/bta/gatt/bta_gattc_utils.c"
"host/bluedroid/bta/gatt/bta_gatts_act.c"
"host/bluedroid/bta/gatt/bta_gatts_api.c"
"host/bluedroid/bta/gatt/bta_gatts_co.c"
"host/bluedroid/bta/gatt/bta_gatts_main.c"
"host/bluedroid/bta/gatt/bta_gatts_utils.c"
"host/bluedroid/bta/hh/bta_hh_act.c"
"host/bluedroid/bta/hh/bta_hh_api.c"
"host/bluedroid/bta/hh/bta_hh_cfg.c"
"host/bluedroid/bta/hh/bta_hh_le.c"
"host/bluedroid/bta/hh/bta_hh_main.c"
"host/bluedroid/bta/hh/bta_hh_utils.c"
"host/bluedroid/bta/jv/bta_jv_act.c"
"host/bluedroid/bta/jv/bta_jv_api.c"
"host/bluedroid/bta/jv/bta_jv_cfg.c"
"host/bluedroid/bta/jv/bta_jv_main.c"
"host/bluedroid/bta/hf_client/bta_hf_client_act.c"
"host/bluedroid/bta/hf_client/bta_hf_client_api.c"
"host/bluedroid/bta/hf_client/bta_hf_client_at.c"
"host/bluedroid/bta/hf_client/bta_hf_client_cmd.c"
"host/bluedroid/bta/hf_client/bta_hf_client_main.c"
"host/bluedroid/bta/hf_client/bta_hf_client_rfc.c"
"host/bluedroid/bta/hf_client/bta_hf_client_sco.c"
"host/bluedroid/bta/hf_client/bta_hf_client_sdp.c"
"host/bluedroid/bta/sdp/bta_sdp.c"
"host/bluedroid/bta/sdp/bta_sdp_act.c"
"host/bluedroid/bta/sdp/bta_sdp_api.c"
"host/bluedroid/bta/sdp/bta_sdp_cfg.c"
"host/bluedroid/bta/sys/bta_sys_conn.c"
"host/bluedroid/bta/sys/bta_sys_main.c"
"host/bluedroid/bta/sys/utl.c"
"host/bluedroid/btc/core/btc_ble_storage.c"
"host/bluedroid/btc/core/btc_config.c"
"host/bluedroid/btc/core/btc_dev.c"
"host/bluedroid/btc/core/btc_dm.c"
"host/bluedroid/btc/core/btc_main.c"
"host/bluedroid/btc/core/btc_profile_queue.c"
"host/bluedroid/btc/core/btc_sec.c"
"host/bluedroid/btc/core/btc_sm.c"
"host/bluedroid/btc/core/btc_storage.c"
"host/bluedroid/btc/core/btc_util.c"
"host/bluedroid/btc/profile/esp/blufi/blufi_prf.c"
"host/bluedroid/btc/profile/esp/blufi/blufi_protocol.c"
"host/bluedroid/btc/profile/std/a2dp/bta_av_co.c"
"host/bluedroid/btc/profile/std/a2dp/btc_a2dp.c"
"host/bluedroid/btc/profile/std/a2dp/btc_a2dp_control.c"
"host/bluedroid/btc/profile/std/a2dp/btc_a2dp_sink.c"
"host/bluedroid/btc/profile/std/a2dp/btc_a2dp_source.c"
"host/bluedroid/btc/profile/std/a2dp/btc_av.c"
"host/bluedroid/btc/profile/std/avrc/btc_avrc.c"
"host/bluedroid/btc/profile/std/avrc/bta_avrc_co.c"
"host/bluedroid/btc/profile/std/hf_client/btc_hf_client.c"
"host/bluedroid/btc/profile/std/hf_client/bta_hf_client_co.c"
"host/bluedroid/btc/profile/std/gap/btc_gap_ble.c"
"host/bluedroid/btc/profile/std/gap/btc_gap_bt.c"
"host/bluedroid/btc/profile/std/gap/bta_gap_bt_co.c"
"host/bluedroid/btc/profile/std/gatt/btc_gatt_common.c"
"host/bluedroid/btc/profile/std/gatt/btc_gatt_util.c"
"host/bluedroid/btc/profile/std/gatt/btc_gattc.c"
"host/bluedroid/btc/profile/std/gatt/btc_gatts.c"
"host/bluedroid/btc/profile/std/spp/btc_spp.c"
"host/bluedroid/device/bdaddr.c"
"host/bluedroid/device/controller.c"
"host/bluedroid/device/interop.c"
"host/bluedroid/external/sbc/decoder/srce/alloc.c"
"host/bluedroid/external/sbc/decoder/srce/bitalloc-sbc.c"
"host/bluedroid/external/sbc/decoder/srce/bitalloc.c"
"host/bluedroid/external/sbc/decoder/srce/bitstream-decode.c"
"host/bluedroid/external/sbc/decoder/srce/decoder-oina.c"
"host/bluedroid/external/sbc/decoder/srce/decoder-private.c"
"host/bluedroid/external/sbc/decoder/srce/decoder-sbc.c"
"host/bluedroid/external/sbc/decoder/srce/dequant.c"
"host/bluedroid/external/sbc/decoder/srce/framing-sbc.c"
"host/bluedroid/external/sbc/decoder/srce/framing.c"
"host/bluedroid/external/sbc/decoder/srce/oi_codec_version.c"
"host/bluedroid/external/sbc/decoder/srce/synthesis-8-generated.c"
"host/bluedroid/external/sbc/decoder/srce/synthesis-dct8.c"
"host/bluedroid/external/sbc/decoder/srce/synthesis-sbc.c"
"host/bluedroid/external/sbc/encoder/srce/sbc_analysis.c"
"host/bluedroid/external/sbc/encoder/srce/sbc_dct.c"
"host/bluedroid/external/sbc/encoder/srce/sbc_dct_coeffs.c"
"host/bluedroid/external/sbc/encoder/srce/sbc_enc_bit_alloc_mono.c"
"host/bluedroid/external/sbc/encoder/srce/sbc_enc_bit_alloc_ste.c"
"host/bluedroid/external/sbc/encoder/srce/sbc_enc_coeffs.c"
"host/bluedroid/external/sbc/encoder/srce/sbc_encoder.c"
"host/bluedroid/external/sbc/encoder/srce/sbc_packing.c"
"host/bluedroid/external/sbc/plc/sbc_plc.c"
"host/bluedroid/hci/hci_audio.c"
"host/bluedroid/hci/hci_hal_h4.c"
"host/bluedroid/hci/hci_layer.c"
"host/bluedroid/hci/hci_packet_factory.c"
"host/bluedroid/hci/hci_packet_parser.c"
"host/bluedroid/hci/packet_fragmenter.c"
"host/bluedroid/main/bte_init.c"
"host/bluedroid/main/bte_main.c"
"host/bluedroid/stack/a2dp/a2d_api.c"
"host/bluedroid/stack/a2dp/a2d_sbc.c"
"host/bluedroid/stack/avct/avct_api.c"
"host/bluedroid/stack/avct/avct_ccb.c"
"host/bluedroid/stack/avct/avct_l2c.c"
"host/bluedroid/stack/avct/avct_lcb.c"
"host/bluedroid/stack/avct/avct_lcb_act.c"
"host/bluedroid/stack/avdt/avdt_ad.c"
"host/bluedroid/stack/avdt/avdt_api.c"
"host/bluedroid/stack/avdt/avdt_ccb.c"
"host/bluedroid/stack/avdt/avdt_ccb_act.c"
"host/bluedroid/stack/avdt/avdt_l2c.c"
"host/bluedroid/stack/avdt/avdt_msg.c"
"host/bluedroid/stack/avdt/avdt_scb.c"
"host/bluedroid/stack/avdt/avdt_scb_act.c"
"host/bluedroid/stack/avrc/avrc_api.c"
"host/bluedroid/stack/avrc/avrc_bld_ct.c"
"host/bluedroid/stack/avrc/avrc_bld_tg.c"
"host/bluedroid/stack/avrc/avrc_opt.c"
"host/bluedroid/stack/avrc/avrc_pars_ct.c"
"host/bluedroid/stack/avrc/avrc_pars_tg.c"
"host/bluedroid/stack/avrc/avrc_sdp.c"
"host/bluedroid/stack/avrc/avrc_utils.c"
"host/bluedroid/stack/btm/btm_acl.c"
"host/bluedroid/stack/btm/btm_ble.c"
"host/bluedroid/stack/btm/btm_ble_addr.c"
"host/bluedroid/stack/btm/btm_ble_adv_filter.c"
"host/bluedroid/stack/btm/btm_ble_batchscan.c"
"host/bluedroid/stack/btm/btm_ble_bgconn.c"
"host/bluedroid/stack/btm/btm_ble_cont_energy.c"
"host/bluedroid/stack/btm/btm_ble_gap.c"
"host/bluedroid/stack/btm/btm_ble_multi_adv.c"
"host/bluedroid/stack/btm/btm_ble_privacy.c"
"host/bluedroid/stack/btm/btm_dev.c"
"host/bluedroid/stack/btm/btm_devctl.c"
"host/bluedroid/stack/btm/btm_inq.c"
"host/bluedroid/stack/btm/btm_main.c"
"host/bluedroid/stack/btm/btm_pm.c"
"host/bluedroid/stack/btm/btm_sco.c"
"host/bluedroid/stack/btm/btm_sec.c"
"host/bluedroid/stack/btu/btu_hcif.c"
"host/bluedroid/stack/btu/btu_init.c"
"host/bluedroid/stack/btu/btu_task.c"
"host/bluedroid/stack/gap/gap_api.c"
"host/bluedroid/stack/gap/gap_ble.c"
"host/bluedroid/stack/gap/gap_conn.c"
"host/bluedroid/stack/gap/gap_utils.c"
"host/bluedroid/stack/gatt/att_protocol.c"
"host/bluedroid/stack/gatt/gatt_api.c"
"host/bluedroid/stack/gatt/gatt_attr.c"
"host/bluedroid/stack/gatt/gatt_auth.c"
"host/bluedroid/stack/gatt/gatt_cl.c"
"host/bluedroid/stack/gatt/gatt_db.c"
"host/bluedroid/stack/gatt/gatt_main.c"
"host/bluedroid/stack/gatt/gatt_sr.c"
"host/bluedroid/stack/gatt/gatt_utils.c"
"host/bluedroid/stack/hcic/hciblecmds.c"
"host/bluedroid/stack/hcic/hcicmds.c"
"host/bluedroid/stack/l2cap/l2c_api.c"
"host/bluedroid/stack/l2cap/l2c_ble.c"
"host/bluedroid/stack/l2cap/l2c_csm.c"
"host/bluedroid/stack/l2cap/l2c_fcr.c"
"host/bluedroid/stack/l2cap/l2c_link.c"
"host/bluedroid/stack/l2cap/l2c_main.c"
"host/bluedroid/stack/l2cap/l2c_ucd.c"
"host/bluedroid/stack/l2cap/l2c_utils.c"
"host/bluedroid/stack/l2cap/l2cap_client.c"
"host/bluedroid/stack/rfcomm/port_api.c"
"host/bluedroid/stack/rfcomm/port_rfc.c"
"host/bluedroid/stack/rfcomm/port_utils.c"
"host/bluedroid/stack/rfcomm/rfc_l2cap_if.c"
"host/bluedroid/stack/rfcomm/rfc_mx_fsm.c"
"host/bluedroid/stack/rfcomm/rfc_port_fsm.c"
"host/bluedroid/stack/rfcomm/rfc_port_if.c"
"host/bluedroid/stack/rfcomm/rfc_ts_frames.c"
"host/bluedroid/stack/rfcomm/rfc_utils.c"
"host/bluedroid/stack/sdp/sdp_api.c"
"host/bluedroid/stack/sdp/sdp_db.c"
"host/bluedroid/stack/sdp/sdp_discovery.c"
"host/bluedroid/stack/sdp/sdp_main.c"
"host/bluedroid/stack/sdp/sdp_server.c"
"host/bluedroid/stack/sdp/sdp_utils.c"
"host/bluedroid/stack/smp/aes.c"
"host/bluedroid/stack/smp/p_256_curvepara.c"
"host/bluedroid/stack/smp/p_256_ecc_pp.c"
"host/bluedroid/stack/smp/p_256_multprecision.c"
"host/bluedroid/stack/smp/smp_act.c"
"host/bluedroid/stack/smp/smp_api.c"
"host/bluedroid/stack/smp/smp_br_main.c"
"host/bluedroid/stack/smp/smp_cmac.c"
"host/bluedroid/stack/smp/smp_keys.c"
"host/bluedroid/stack/smp/smp_l2c.c"
"host/bluedroid/stack/smp/smp_main.c"
"host/bluedroid/stack/smp/smp_utils.c")
endif()
endif()
if (CONFIG_BLE_MESH)
list(APPEND include_dirs
"bluedroid/osi/include"
"ble_mesh/mesh_core"
"ble_mesh/mesh_core/include"
"ble_mesh/mesh_core/settings"
"ble_mesh/btc/include"
"ble_mesh/mesh_models/include"
"ble_mesh/api/core/include"
"ble_mesh/api/models/include"
"ble_mesh/api")
if(CONFIG_BLE_MESH)
list(APPEND include_dirs
"esp_ble_mesh/mesh_core"
"esp_ble_mesh/mesh_core/include"
"esp_ble_mesh/mesh_core/settings"
"esp_ble_mesh/btc/include"
"esp_ble_mesh/mesh_models/include"
"esp_ble_mesh/api/core/include"
"esp_ble_mesh/api/models/include"
"esp_ble_mesh/api")
list(APPEND srcs
"ble_mesh/api/core/esp_ble_mesh_common_api.c"
"ble_mesh/api/core/esp_ble_mesh_local_data_operation_api.c"
"ble_mesh/api/core/esp_ble_mesh_low_power_api.c"
"ble_mesh/api/core/esp_ble_mesh_networking_api.c"
"ble_mesh/api/core/esp_ble_mesh_provisioning_api.c"
"ble_mesh/api/core/esp_ble_mesh_proxy_api.c"
"ble_mesh/api/models/esp_ble_mesh_config_model_api.c"
"ble_mesh/api/models/esp_ble_mesh_generic_model_api.c"
"ble_mesh/api/models/esp_ble_mesh_health_model_api.c"
"ble_mesh/api/models/esp_ble_mesh_lighting_model_api.c"
"ble_mesh/api/models/esp_ble_mesh_sensor_model_api.c"
"ble_mesh/api/models/esp_ble_mesh_time_scene_model_api.c"
"ble_mesh/btc/btc_ble_mesh_config_model.c"
"ble_mesh/btc/btc_ble_mesh_generic_model.c"
"ble_mesh/btc/btc_ble_mesh_health_model.c"
"ble_mesh/btc/btc_ble_mesh_lighting_model.c"
"ble_mesh/btc/btc_ble_mesh_prov.c"
"ble_mesh/btc/btc_ble_mesh_sensor_model.c"
"ble_mesh/btc/btc_ble_mesh_time_scene_model.c"
"ble_mesh/mesh_core/settings/settings_nvs.c"
"ble_mesh/mesh_core/access.c"
"ble_mesh/mesh_core/adv.c"
"ble_mesh/mesh_core/beacon.c"
"ble_mesh/mesh_core/cfg_cli.c"
"ble_mesh/mesh_core/cfg_srv.c"
"ble_mesh/mesh_core/crypto.c"
"ble_mesh/mesh_core/friend.c"
"ble_mesh/mesh_core/health_cli.c"
"ble_mesh/mesh_core/health_srv.c"
"ble_mesh/mesh_core/lpn.c"
"ble_mesh/mesh_core/mesh_aes_encrypt.c"
"ble_mesh/mesh_core/mesh_atomic.c"
"ble_mesh/mesh_core/mesh_bearer_adapt.c"
"ble_mesh/mesh_core/mesh_buf.c"
"ble_mesh/mesh_core/mesh_hci.c"
"ble_mesh/mesh_core/mesh_kernel.c"
"ble_mesh/mesh_core/mesh_main.c"
"ble_mesh/mesh_core/mesh_util.c"
"ble_mesh/mesh_core/net.c"
"ble_mesh/mesh_core/prov.c"
"ble_mesh/mesh_core/provisioner_beacon.c"
"ble_mesh/mesh_core/provisioner_main.c"
"ble_mesh/mesh_core/provisioner_prov.c"
"ble_mesh/mesh_core/provisioner_proxy.c"
"ble_mesh/mesh_core/proxy.c"
"ble_mesh/mesh_core/settings.c"
"ble_mesh/mesh_core/test.c"
"ble_mesh/mesh_core/transport.c"
"ble_mesh/mesh_models/generic_client.c"
"ble_mesh/mesh_models/lighting_client.c"
"ble_mesh/mesh_models/mesh_common.c"
"ble_mesh/mesh_models/model_common.c"
"ble_mesh/mesh_models/sensor_client.c"
"ble_mesh/mesh_models/time_scene_client.c")
list(APPEND srcs "esp_ble_mesh/api/core/esp_ble_mesh_common_api.c"
"esp_ble_mesh/api/core/esp_ble_mesh_local_data_operation_api.c"
"esp_ble_mesh/api/core/esp_ble_mesh_low_power_api.c"
"esp_ble_mesh/api/core/esp_ble_mesh_networking_api.c"
"esp_ble_mesh/api/core/esp_ble_mesh_provisioning_api.c"
"esp_ble_mesh/api/core/esp_ble_mesh_proxy_api.c"
"esp_ble_mesh/api/models/esp_ble_mesh_config_model_api.c"
"esp_ble_mesh/api/models/esp_ble_mesh_generic_model_api.c"
"esp_ble_mesh/api/models/esp_ble_mesh_health_model_api.c"
"esp_ble_mesh/api/models/esp_ble_mesh_lighting_model_api.c"
"esp_ble_mesh/api/models/esp_ble_mesh_sensor_model_api.c"
"esp_ble_mesh/api/models/esp_ble_mesh_time_scene_model_api.c"
"esp_ble_mesh/btc/btc_ble_mesh_config_model.c"
"esp_ble_mesh/btc/btc_ble_mesh_generic_model.c"
"esp_ble_mesh/btc/btc_ble_mesh_health_model.c"
"esp_ble_mesh/btc/btc_ble_mesh_lighting_model.c"
"esp_ble_mesh/btc/btc_ble_mesh_prov.c"
"esp_ble_mesh/btc/btc_ble_mesh_sensor_model.c"
"esp_ble_mesh/btc/btc_ble_mesh_time_scene_model.c"
"esp_ble_mesh/mesh_core/settings/settings_nvs.c"
"esp_ble_mesh/mesh_core/access.c"
"esp_ble_mesh/mesh_core/adv.c"
"esp_ble_mesh/mesh_core/beacon.c"
"esp_ble_mesh/mesh_core/cfg_cli.c"
"esp_ble_mesh/mesh_core/cfg_srv.c"
"esp_ble_mesh/mesh_core/crypto.c"
"esp_ble_mesh/mesh_core/friend.c"
"esp_ble_mesh/mesh_core/health_cli.c"
"esp_ble_mesh/mesh_core/health_srv.c"
"esp_ble_mesh/mesh_core/lpn.c"
"esp_ble_mesh/mesh_core/mesh_aes_encrypt.c"
"esp_ble_mesh/mesh_core/mesh_atomic.c"
"esp_ble_mesh/mesh_core/mesh_bearer_adapt.c"
"esp_ble_mesh/mesh_core/mesh_buf.c"
"esp_ble_mesh/mesh_core/mesh_hci.c"
"esp_ble_mesh/mesh_core/mesh_kernel.c"
"esp_ble_mesh/mesh_core/mesh_main.c"
"esp_ble_mesh/mesh_core/mesh_util.c"
"esp_ble_mesh/mesh_core/net.c"
"esp_ble_mesh/mesh_core/prov.c"
"esp_ble_mesh/mesh_core/provisioner_beacon.c"
"esp_ble_mesh/mesh_core/provisioner_main.c"
"esp_ble_mesh/mesh_core/provisioner_prov.c"
"esp_ble_mesh/mesh_core/provisioner_proxy.c"
"esp_ble_mesh/mesh_core/proxy.c"
"esp_ble_mesh/mesh_core/settings.c"
"esp_ble_mesh/mesh_core/test.c"
"esp_ble_mesh/mesh_core/transport.c"
"esp_ble_mesh/mesh_models/generic_client.c"
"esp_ble_mesh/mesh_models/lighting_client.c"
"esp_ble_mesh/mesh_models/mesh_common.c"
"esp_ble_mesh/mesh_models/model_common.c"
"esp_ble_mesh/mesh_models/sensor_client.c"
"esp_ble_mesh/mesh_models/time_scene_client.c")
endif()
if(CONFIG_BT_NIMBLE_ENABLED)
list(APPEND include_dirs
host/nimble/nimble/porting/nimble/include
host/nimble/port/include
host/nimble/nimble/nimble/include
host/nimble/nimble/nimble/host/include
host/nimble/nimble/nimble/host/services/ans/include
host/nimble/nimble/nimble/host/services/bas/include
host/nimble/nimble/nimble/host/services/gap/include
host/nimble/nimble/nimble/host/services/gatt/include
host/nimble/nimble/nimble/host/services/ias/include
host/nimble/nimble/nimble/host/services/lls/include
host/nimble/nimble/nimble/host/services/tps/include
host/nimble/nimble/nimble/host/util/include
host/nimble/nimble/nimble/host/store/ram/include
host/nimble/nimble/nimble/host/store/config/include
host/nimble/nimble/porting/npl/freertos/include
host/nimble/nimble/ext/tinycrypt/include
host/nimble/esp-hci/include)
list(APPEND srcs "host/nimble/nimble/ext/tinycrypt/src/utils.c"
"host/nimble/nimble/ext/tinycrypt/src/sha256.c"
"host/nimble/nimble/ext/tinycrypt/src/ecc.c"
"host/nimble/nimble/ext/tinycrypt/src/ctr_prng.c"
"host/nimble/nimble/ext/tinycrypt/src/ctr_mode.c"
"host/nimble/nimble/ext/tinycrypt/src/aes_decrypt.c"
"host/nimble/nimble/ext/tinycrypt/src/aes_encrypt.c"
"host/nimble/nimble/ext/tinycrypt/src/ccm_mode.c"
"host/nimble/nimble/ext/tinycrypt/src/ecc_dsa.c"
"host/nimble/nimble/ext/tinycrypt/src/cmac_mode.c"
"host/nimble/nimble/ext/tinycrypt/src/ecc_dh.c"
"host/nimble/nimble/ext/tinycrypt/src/hmac_prng.c"
"host/nimble/nimble/ext/tinycrypt/src/ecc_platform_specific.c"
"host/nimble/nimble/ext/tinycrypt/src/hmac.c"
"host/nimble/nimble/ext/tinycrypt/src/cbc_mode.c"
"host/nimble/nimble/nimble/host/util/src/addr.c"
"host/nimble/nimble/nimble/host/services/gatt/src/ble_svc_gatt.c"
"host/nimble/nimble/nimble/host/services/tps/src/ble_svc_tps.c"
"host/nimble/nimble/nimble/host/services/ias/src/ble_svc_ias.c"
"host/nimble/nimble/nimble/host/services/ans/src/ble_svc_ans.c"
"host/nimble/nimble/nimble/host/services/gap/src/ble_svc_gap.c"
"host/nimble/nimble/nimble/host/services/bas/src/ble_svc_bas.c"
"host/nimble/nimble/nimble/host/services/lls/src/ble_svc_lls.c"
"host/nimble/nimble/nimble/host/src/ble_hs_conn.c"
"host/nimble/nimble/nimble/host/src/ble_store_util.c"
"host/nimble/nimble/nimble/host/src/ble_sm.c"
"host/nimble/nimble/nimble/host/src/ble_hs_shutdown.c"
"host/nimble/nimble/nimble/host/src/ble_l2cap_sig_cmd.c"
"host/nimble/nimble/nimble/host/src/ble_hs_hci_cmd.c"
"host/nimble/nimble/nimble/host/src/ble_hs_id.c"
"host/nimble/nimble/nimble/host/src/ble_att_svr.c"
"host/nimble/nimble/nimble/host/src/ble_gatts_lcl.c"
"host/nimble/nimble/nimble/host/src/ble_ibeacon.c"
"host/nimble/nimble/nimble/host/src/ble_hs_atomic.c"
"host/nimble/nimble/nimble/host/src/ble_sm_alg.c"
"host/nimble/nimble/nimble/host/src/ble_hs_stop.c"
"host/nimble/nimble/nimble/host/src/ble_hs.c"
"host/nimble/nimble/nimble/host/src/ble_hs_hci_evt.c"
"host/nimble/nimble/nimble/host/src/ble_hs_dbg.c"
"host/nimble/nimble/nimble/host/src/ble_hs_mqueue.c"
"host/nimble/nimble/nimble/host/src/ble_att.c"
"host/nimble/nimble/nimble/host/src/ble_gattc.c"
"host/nimble/nimble/nimble/host/src/ble_store.c"
"host/nimble/nimble/nimble/host/src/ble_sm_lgcy.c"
"host/nimble/nimble/nimble/host/src/ble_hs_cfg.c"
"host/nimble/nimble/nimble/host/src/ble_monitor.c"
"host/nimble/nimble/nimble/host/src/ble_att_clt.c"
"host/nimble/nimble/nimble/host/src/ble_l2cap_coc.c"
"host/nimble/nimble/nimble/host/src/ble_hs_mbuf.c"
"host/nimble/nimble/nimble/host/src/ble_att_cmd.c"
"host/nimble/nimble/nimble/host/src/ble_hs_log.c"
"host/nimble/nimble/nimble/host/src/ble_eddystone.c"
"host/nimble/nimble/nimble/host/src/ble_hs_startup.c"
"host/nimble/nimble/nimble/host/src/ble_l2cap_sig.c"
"host/nimble/nimble/nimble/host/src/ble_gap.c"
"host/nimble/nimble/nimble/host/src/ble_sm_cmd.c"
"host/nimble/nimble/nimble/host/src/ble_uuid.c"
"host/nimble/nimble/nimble/host/src/ble_hs_pvcy.c"
"host/nimble/nimble/nimble/host/src/ble_hs_flow.c"
"host/nimble/nimble/nimble/host/src/ble_l2cap.c"
"host/nimble/nimble/nimble/host/src/ble_sm_sc.c"
"host/nimble/nimble/nimble/host/src/ble_hs_misc.c"
"host/nimble/nimble/nimble/host/src/ble_gatts.c"
"host/nimble/nimble/nimble/host/src/ble_hs_adv.c"
"host/nimble/nimble/nimble/host/src/ble_hs_hci.c"
"host/nimble/nimble/nimble/host/src/ble_hs_hci_util.c"
"host/nimble/nimble/nimble/host/store/ram/src/ble_store_ram.c"
"host/nimble/nimble/nimble/host/store/config/src/ble_store_config.c"
"host/nimble/nimble/nimble/host/store/config/src/ble_store_nvs.c"
"host/nimble/nimble/nimble/src/ble_util.c"
"host/nimble/nimble/porting/npl/freertos/src/nimble_port_freertos.c"
"host/nimble/nimble/porting/npl/freertos/src/npl_os_freertos.c"
"host/nimble/nimble/porting/nimble/src/endian.c"
"host/nimble/nimble/porting/nimble/src/os_cputime_pwr2.c"
"host/nimble/nimble/porting/nimble/src/hal_timer.c"
"host/nimble/nimble/porting/nimble/src/os_mempool.c"
"host/nimble/nimble/porting/nimble/src/os_msys_init.c"
"host/nimble/nimble/porting/nimble/src/nimble_port.c"
"host/nimble/nimble/porting/nimble/src/mem.c"
"host/nimble/nimble/porting/nimble/src/os_mbuf.c"
"host/nimble/nimble/porting/nimble/src/os_cputime.c"
"host/nimble/esp-hci/src/esp_nimble_hci.c")
if(CONFIG_BT_NIMBLE_MESH)
list(APPEND include_dirs
host/nimble/nimble/nimble/host/mesh/include)
list(APPEND srcs "host/nimble/nimble/nimble/host/mesh/src/shell.c"
"host/nimble/nimble/nimble/host/mesh/src/friend.c"
"host/nimble/nimble/nimble/host/mesh/src/crypto.c"
"host/nimble/nimble/nimble/host/mesh/src/settings.c"
"host/nimble/nimble/nimble/host/mesh/src/adv.c"
"host/nimble/nimble/nimble/host/mesh/src/model_srv.c"
"host/nimble/nimble/nimble/host/mesh/src/beacon.c"
"host/nimble/nimble/nimble/host/mesh/src/glue.c"
"host/nimble/nimble/nimble/host/mesh/src/model_cli.c"
"host/nimble/nimble/nimble/host/mesh/src/transport.c"
"host/nimble/nimble/nimble/host/mesh/src/prov.c"
"host/nimble/nimble/nimble/host/mesh/src/mesh.c"
"host/nimble/nimble/nimble/host/mesh/src/access.c"
"host/nimble/nimble/nimble/host/mesh/src/cfg_srv.c"
"host/nimble/nimble/nimble/host/mesh/src/cfg_cli.c"
"host/nimble/nimble/nimble/host/mesh/src/light_model.c"
"host/nimble/nimble/nimble/host/mesh/src/health_cli.c"
"host/nimble/nimble/nimble/host/mesh/src/lpn.c"
"host/nimble/nimble/nimble/host/mesh/src/proxy.c"
"host/nimble/nimble/nimble/host/mesh/src/health_srv.c"
"host/nimble/nimble/nimble/host/mesh/src/testing.c"
"host/nimble/nimble/nimble/host/mesh/src/net.c")
endif()
endif()
endif()
# requirements can't depend on config
@ -367,6 +505,6 @@ if(CONFIG_BT_ENABLED)
target_compile_options(${COMPONENT_LIB} PRIVATE -Wno-implicit-fallthrough -Wno-unused-const-variable)
endif()
target_link_libraries(${COMPONENT_LIB} INTERFACE "-L${CMAKE_CURRENT_LIST_DIR}/lib")
target_link_libraries(${COMPONENT_LIB} INTERFACE "-L${CMAKE_CURRENT_LIST_DIR}/controller/lib")
target_link_libraries(${COMPONENT_LIB} PUBLIC btdm_app)
endif()

Plik diff jest za duży Load Diff

Wyświetl plik

@ -14,6 +14,7 @@
#include "btc/btc_task.h"
#include "btc/btc_alarm.h"
#include "esp_log.h"
void btc_alarm_handler(btc_msg_t *msg)
{

Wyświetl plik

@ -14,10 +14,7 @@
#include "btc/btc_task.h"
#include "common/bt_trace.h"
#include "osi/thread.h"
#include "esp_bt_defs.h"
#include "esp_gatt_defs.h"
#if BTC_DYNAMIC_MEMORY == FALSE
void *btc_profile_cb_tab[BTC_PID_NUM] = {};

Wyświetl plik

@ -14,12 +14,14 @@
#include <stdlib.h>
#include <string.h>
#include "common/bt_target.h"
#include "btc/btc_task.h"
#include "common/bt_trace.h"
#include "osi/thread.h"
#include "common/bt_defs.h"
#include "esp_log.h"
#include "bt_common.h"
#include "osi/allocator.h"
#ifdef CONFIG_BT_BLUEDROID_ENABLED
#include "common/bt_target.h"
#include "btc/btc_main.h"
#include "btc/btc_manage.h"
#include "btc/btc_dev.h"
@ -49,6 +51,8 @@
#include "btc_hf_client.h"
#endif /* #if BTC_HF_CLIENT_INCLUDED */
#endif /* #if CLASSIC_BT_INCLUDED */
#endif
#if CONFIG_BLE_MESH
#include "btc_ble_mesh_prov.h"
#include "btc_ble_mesh_health_model.h"
@ -67,6 +71,7 @@
osi_thread_t *btc_thread;
static const btc_func_t profile_tab[BTC_PID_NUM] = {
#ifdef CONFIG_BT_BLUEDROID_ENABLED
[BTC_PID_MAIN_INIT] = {btc_main_call_handler, NULL },
[BTC_PID_DEV] = {btc_dev_call_handler, NULL },
#if (GATTS_INCLUDED == TRUE)
@ -107,6 +112,7 @@ static const btc_func_t profile_tab[BTC_PID_NUM] = {
[BTC_PID_HF_CLIENT] = {btc_hf_client_call_handler, btc_hf_client_cb_handler},
#endif /* #if BTC_HF_CLIENT_INCLUDED */
#endif /* #if CLASSIC_BT_INCLUDED */
#endif
#if CONFIG_BLE_MESH
[BTC_PID_PROV] = {btc_mesh_prov_call_handler, btc_mesh_prov_cb_handler},
[BTC_PID_MODEL] = {btc_mesh_model_call_handler, btc_mesh_model_cb_handler},
@ -353,9 +359,10 @@ void btc_deinit(void)
bool btc_check_queue_is_congest(void)
{
if (osi_thread_queue_wait_size(btc_thread, 2) >= QUEUE_CONGEST_SIZE) {
if (osi_thread_queue_wait_size(btc_thread, 2) >= BT_QUEUE_CONGEST_SIZE) {
return true;
}
return false;
}

Wyświetl plik

@ -16,10 +16,13 @@
#define __BTC_TASK_H__
#include <stdint.h>
#include "common/bt_target.h"
#include "common/bt_defs.h"
#include "bt_common.h"
#include "osi/thread.h"
#if CONFIG_BT_BLUEDROID_ENABLED
#include "common/bt_target.h"
#endif
typedef struct btc_msg {
uint8_t sig; //event signal
uint8_t aid; //application id

Wyświetl plik

@ -0,0 +1,158 @@
// Copyright 2019 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
#ifndef _BT_COMMON_H_
#define _BT_COMMON_H_
#include "bt_user_config.h"
#include "esp_log.h"
#ifndef FALSE
#define FALSE false
#endif
#ifndef TRUE
#define TRUE true
#endif
#ifndef BT_QUEUE_CONGEST_SIZE
#define BT_QUEUE_CONGEST_SIZE 40
#endif
#define BTC_INITIAL_TRACE_LEVEL UC_BT_LOG_BTC_TRACE_LEVEL
#define OSI_INITIAL_TRACE_LEVEL UC_BT_LOG_OSI_TRACE_LEVEL
#if UC_BT_BLE_DYNAMIC_ENV_MEMORY
#define BT_BLE_DYNAMIC_ENV_MEMORY TRUE
#define BTC_DYNAMIC_MEMORY TRUE
#else
#define BT_BLE_DYNAMIC_ENV_MEMORY FALSE
#define BTC_DYNAMIC_MEMORY FALSE
#endif
#ifndef BT_BLE_DYNAMIC_ENV_MEMORY
#define BT_BLE_DYNAMIC_ENV_MEMORY FALSE
#endif
/* OS Configuration from User config (eg: sdkconfig) */
#define TASK_PINNED_TO_CORE UC_TASK_PINNED_TO_CORE
#define BT_TASK_MAX_PRIORITIES configMAX_PRIORITIES
#define BT_BTC_TASK_STACK_SIZE UC_BTC_TASK_STACK_SIZE
/* Define trace levels */
#define BT_TRACE_LEVEL_NONE UC_TRACE_LEVEL_NONE /* No trace messages to be generated */
#define BT_TRACE_LEVEL_ERROR UC_TRACE_LEVEL_ERROR /* Error condition trace messages */
#define BT_TRACE_LEVEL_WARNING UC_TRACE_LEVEL_WARNING /* Warning condition trace messages */
#define BT_TRACE_LEVEL_API UC_TRACE_LEVEL_API /* API traces */
#define BT_TRACE_LEVEL_EVENT UC_TRACE_LEVEL_EVENT /* Debug messages for events */
#define BT_TRACE_LEVEL_DEBUG UC_TRACE_LEVEL_DEBUG /* Full debug messages */
#define BT_TRACE_LEVEL_VERBOSE UC_TRACE_LEVEL_VERBOSE /* Verbose debug messages */
#define MAX_TRACE_LEVEL UC_TRACE_LEVEL_VERBOSE
#ifndef LOG_LOCAL_LEVEL
#ifndef BOOTLOADER_BUILD
#define LOG_LOCAL_LEVEL UC_LOG_DEFAULT_LEVEL
#else
#define LOG_LOCAL_LEVEL UC_BOOTLOADER_LOG_LEVEL
#endif
#endif
// Mapping between ESP_LOG_LEVEL and BT_TRACE_LEVEL
#if (LOG_LOCAL_LEVEL >= 4)
#define LOG_LOCAL_LEVEL_MAPPING (LOG_LOCAL_LEVEL+1)
#else
#define LOG_LOCAL_LEVEL_MAPPING LOG_LOCAL_LEVEL
#endif
#define MAX(a, b) ((a) > (b) ? (a) : (b))
#define BT_LOG_LEVEL_CHECK(LAYER, LEVEL) (MAX(LAYER##_INITIAL_TRACE_LEVEL, LOG_LOCAL_LEVEL_MAPPING) >= BT_TRACE_LEVEL_##LEVEL)
#define BT_PRINT_E(tag, format, ...) {esp_log_write(ESP_LOG_ERROR, tag, LOG_FORMAT(E, format), esp_log_timestamp(), tag, ##__VA_ARGS__); }
#define BT_PRINT_W(tag, format, ...) {esp_log_write(ESP_LOG_WARN, tag, LOG_FORMAT(W, format), esp_log_timestamp(), tag, ##__VA_ARGS__); }
#define BT_PRINT_I(tag, format, ...) {esp_log_write(ESP_LOG_INFO, tag, LOG_FORMAT(I, format), esp_log_timestamp(), tag, ##__VA_ARGS__); }
#define BT_PRINT_D(tag, format, ...) {esp_log_write(ESP_LOG_DEBUG, tag, LOG_FORMAT(D, format), esp_log_timestamp(), tag, ##__VA_ARGS__); }
#define BT_PRINT_V(tag, format, ...) {esp_log_write(ESP_LOG_VERBOSE, tag, LOG_FORMAT(V, format), esp_log_timestamp(), tag, ##__VA_ARGS__); }
#ifndef assert
#define assert(x) do { if (!(x)) BT_PRINT_E("BT", "bt host error %s %u\n", __FILE__, __LINE__); } while (0)
#endif
#if !UC_BT_STACK_NO_LOG
/* define traces for BTC */
#define BTC_TRACE_ERROR(fmt, args...) {if (BTC_INITIAL_TRACE_LEVEL >= BT_TRACE_LEVEL_ERROR && BT_LOG_LEVEL_CHECK(BTC, ERROR)) BT_PRINT_E("BT_BTC", fmt, ## args);}
#define BTC_TRACE_WARNING(fmt, args...) {if (BTC_INITIAL_TRACE_LEVEL >= BT_TRACE_LEVEL_WARNING && BT_LOG_LEVEL_CHECK(BTC, WARNING)) BT_PRINT_W("BT_BTC", fmt, ## args);}
#define BTC_TRACE_API(fmt, args...) {if (BTC_INITIAL_TRACE_LEVEL >= BT_TRACE_LEVEL_API && BT_LOG_LEVEL_CHECK(BTC,API)) BT_PRINT_I("BT_BTC", fmt, ## args);}
#define BTC_TRACE_EVENT(fmt, args...) {if (BTC_INITIAL_TRACE_LEVEL >= BT_TRACE_LEVEL_EVENT && BT_LOG_LEVEL_CHECK(BTC,EVENT)) BT_PRINT_D("BT_BTC", fmt, ## args);}
#define BTC_TRACE_DEBUG(fmt, args...) {if (BTC_INITIAL_TRACE_LEVEL >= BT_TRACE_LEVEL_DEBUG && BT_LOG_LEVEL_CHECK(BTC,DEBUG)) BT_PRINT_D("BT_BTC", fmt, ## args);}
#define BTC_TRACE_VERBOSE(fmt, args...) {if (BTC_INITIAL_TRACE_LEVEL >= BT_TRACE_LEVEL_VERBOSE && BT_LOG_LEVEL_CHECK(BTC,VERBOSE)) BT_PRINT_V("BT_BTC", fmt, ## args);}
/* define traces for OSI */
#define OSI_TRACE_ERROR(fmt, args...) {if (OSI_INITIAL_TRACE_LEVEL >= BT_TRACE_LEVEL_ERROR && BT_LOG_LEVEL_CHECK(OSI, ERROR)) BT_PRINT_E("BT_OSI", fmt, ## args);}
#define OSI_TRACE_WARNING(fmt, args...) {if (OSI_INITIAL_TRACE_LEVEL >= BT_TRACE_LEVEL_WARNING && BT_LOG_LEVEL_CHECK(OSI, WARNING)) BT_PRINT_W("BT_OSI", fmt, ## args);}
#define OSI_TRACE_API(fmt, args...) {if (OSI_INITIAL_TRACE_LEVEL >= BT_TRACE_LEVEL_API && BT_LOG_LEVEL_CHECK(OSI,API)) BT_PRINT_I("BT_OSI", fmt, ## args);}
#define OSI_TRACE_EVENT(fmt, args...) {if (OSI_INITIAL_TRACE_LEVEL >= BT_TRACE_LEVEL_EVENT && BT_LOG_LEVEL_CHECK(OSI,EVENT)) BT_PRINT_D("BT_OSI", fmt, ## args);}
#define OSI_TRACE_DEBUG(fmt, args...) {if (OSI_INITIAL_TRACE_LEVEL >= BT_TRACE_LEVEL_DEBUG && BT_LOG_LEVEL_CHECK(OSI,DEBUG)) BT_PRINT_D("BT_OSI", fmt, ## args);}
#define OSI_TRACE_VERBOSE(fmt, args...) {if (OSI_INITIAL_TRACE_LEVEL >= BT_TRACE_LEVEL_VERBOSE && BT_LOG_LEVEL_CHECK(OSI,VERBOSE)) BT_PRINT_V("BT_OSI", fmt, ## args);}
#else
/* define traces for BTC */
#define BTC_TRACE_ERROR(fmt, args...)
#define BTC_TRACE_WARNING(fmt, args...)
#define BTC_TRACE_API(fmt, args...)
#define BTC_TRACE_EVENT(fmt, args...)
#define BTC_TRACE_DEBUG(fmt, args...)
#define BTC_TRACE_VERBOSE(fmt, args...)
/* define traces for OSI */
#define OSI_TRACE_ERROR(fmt, args...)
#define OSI_TRACE_WARNING(fmt, args...)
#define OSI_TRACE_API(fmt, args...)
#define OSI_TRACE_EVENT(fmt, args...)
#define OSI_TRACE_DEBUG(fmt, args...)
#define OSI_TRACE_VERBOSE(fmt, args...)
#endif
/** Bluetooth Error Status */
/** We need to build on this */
/* relate to ESP_BT_STATUS_xxx in esp_bt_defs.h */
typedef enum {
BT_STATUS_SUCCESS = 0,
BT_STATUS_FAIL,
BT_STATUS_NOT_READY,
BT_STATUS_NOMEM,
BT_STATUS_BUSY,
BT_STATUS_DONE, /* request already completed */
BT_STATUS_UNSUPPORTED,
BT_STATUS_PARM_INVALID,
BT_STATUS_UNHANDLED,
BT_STATUS_AUTH_FAILURE,
BT_STATUS_RMT_DEV_DOWN,
BT_STATUS_AUTH_REJECTED,
BT_STATUS_INVALID_STATIC_RAND_ADDR,
BT_STATUS_PENDING,
BT_STATUS_UNACCEPT_CONN_INTERVAL,
BT_STATUS_PARAM_OUT_OF_RANGE,
BT_STATUS_TIMEOUT,
BT_STATUS_MEMORY_FULL,
BT_STATUS_EIR_TOO_LARGE,
} bt_status_t;
#endif /* _BT_COMMON_H_ */

Wyświetl plik

@ -0,0 +1,83 @@
// Copyright 2019 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
#ifndef __BT_USER_CONFIG_H__
#define __BT_USER_CONFIG_H__
#include "sdkconfig.h"
#define UC_TRACE_LEVEL_NONE 0 /* No trace messages to be generated */
#define UC_TRACE_LEVEL_ERROR 1 /* Error condition trace messages */
#define UC_TRACE_LEVEL_WARNING 2 /* Warning condition trace messages */
#define UC_TRACE_LEVEL_API 3 /* API traces */
#define UC_TRACE_LEVEL_EVENT 4 /* Debug messages for events */
#define UC_TRACE_LEVEL_DEBUG 5 /* Full debug messages */
#define UC_TRACE_LEVEL_VERBOSE 6 /* Verbose debug messages */
//DYNAMIC ENV ALLOCATOR
#ifdef CONFIG_BT_BLE_DYNAMIC_ENV_MEMORY
#define UC_BT_BLE_DYNAMIC_ENV_MEMORY CONFIG_BT_BLE_DYNAMIC_ENV_MEMORY
#else
#define UC_BT_BLE_DYNAMIC_ENV_MEMORY FALSE
#endif
#ifdef CONFIG_BT_STACK_NO_LOG
#define UC_BT_STACK_NO_LOG CONFIG_BT_STACK_NO_LOG
#else
#define UC_BT_STACK_NO_LOG FALSE
#endif
/**********************************************************
* Thread/Task reference
**********************************************************/
#ifdef CONFIG_BLUEDROID_PINNED_TO_CORE
#define UC_TASK_PINNED_TO_CORE (CONFIG_BLUEDROID_PINNED_TO_CORE < portNUM_PROCESSORS ? CONFIG_BLUEDROID_PINNED_TO_CORE : tskNO_AFFINITY)
#else
#define UC_TASK_PINNED_TO_CORE (0)
#endif
#ifdef CONFIG_BTC_TASK_STACK_SIZE
#define UC_BTC_TASK_STACK_SIZE CONFIG_BTC_TASK_STACK_SIZE
#else
#define UC_BTC_TASK_STACK_SIZE 3072
#endif
/**********************************************************
* Trace reference
**********************************************************/
#ifdef CONFIG_LOG_DEFAULT_LEVEL
#define UC_LOG_DEFAULT_LEVEL CONFIG_LOG_DEFAULT_LEVEL
#else
#define UC_LOG_DEFAULT_LEVEL 3
#endif
#ifdef CONFIG_BOOTLOADER_LOG_LEVEL
#define UC_BOOTLOADER_LOG_LEVEL CONFIG_BOOTLOADER_LOG_LEVEL
#else
#define UC_BOOTLOADER_LOG_LEVEL 3
#endif
#ifdef CONFIG_BT_LOG_BTC_TRACE_LEVEL
#define UC_BT_LOG_BTC_TRACE_LEVEL CONFIG_BT_LOG_BTC_TRACE_LEVEL
#else
#define UC_BT_LOG_BTC_TRACE_LEVEL UC_TRACE_LEVEL_WARNING
#endif
#ifdef CONFIG_BT_LOG_OSI_TRACE_LEVEL
#define UC_BT_LOG_OSI_TRACE_LEVEL CONFIG_BT_LOG_OSI_TRACE_LEVEL
#else
#define UC_BT_LOG_OSI_TRACE_LEVEL UC_TRACE_LEVEL_WARNING
#endif
#endif /* __BT_USER_CONFIG_H__ */

Wyświetl plik

@ -18,8 +18,6 @@
#include <stdlib.h>
#include <string.h>
#include <stdbool.h>
#include "common/bt_defs.h"
#include "common/bt_trace.h"
#include "osi/alarm.h"
#include "osi/allocator.h"
#include "osi/list.h"
@ -27,6 +25,7 @@
#include "btc/btc_task.h"
#include "btc/btc_alarm.h"
#include "osi/mutex.h"
#include "bt_common.h"
typedef struct alarm_t {
/* timer id point to here */
@ -44,7 +43,7 @@ enum {
static osi_mutex_t alarm_mutex;
static int alarm_state;
#if BT_BLE_DYNAMIC_ENV_MEMORY == FALSE
#if (BT_BLE_DYNAMIC_ENV_MEMORY == FALSE)
static struct alarm_t alarm_cbs[ALARM_CBS_NUM];
#else
static struct alarm_t *alarm_cbs;
@ -82,7 +81,8 @@ void osi_alarm_init(void)
OSI_TRACE_WARNING("%s, invalid state %d\n", __func__, alarm_state);
goto end;
}
#if BT_BLE_DYNAMIC_ENV_MEMORY == TRUE
#if (BT_BLE_DYNAMIC_ENV_MEMORY == TRUE)
xyz
if ((alarm_cbs = (osi_alarm_t *)osi_malloc(sizeof(osi_alarm_t) * ALARM_CBS_NUM)) == NULL) {
OSI_TRACE_ERROR("%s, malloc failed\n", __func__);
goto end;
@ -112,7 +112,7 @@ void osi_alarm_deinit(void)
}
}
#if BT_BLE_DYNAMIC_ENV_MEMORY == TRUE
#if (BT_BLE_DYNAMIC_ENV_MEMORY == TRUE)
osi_free(alarm_cbs);
alarm_cbs = NULL;
#endif
@ -268,12 +268,12 @@ end:
osi_alarm_err_t osi_alarm_set(osi_alarm_t *alarm, period_ms_t timeout)
{
return alarm_set(alarm, timeout, false);
return alarm_set(alarm, timeout, FALSE);
}
osi_alarm_err_t osi_alarm_set_periodic(osi_alarm_t *alarm, period_ms_t period)
{
return alarm_set(alarm, period, true);
return alarm_set(alarm, period, TRUE);
}
osi_alarm_err_t osi_alarm_cancel(osi_alarm_t *alarm)

Wyświetl plik

@ -18,7 +18,7 @@
#include <stdlib.h>
#include <string.h>
#include "common/bt_defs.h"
#include "bt_common.h"
#include "osi/allocator.h"
extern void *pvPortZalloc(size_t size);

Wyświetl plik

@ -16,11 +16,9 @@
*
******************************************************************************/
#include <stdint.h>
#include "common/bt_trace.h"
#include "bt_common.h"
#include "osi/allocator.h"
#include "osi/buffer.h"
#include "common/bt_defs.h"
#include "common/bt_trace.h"
struct buffer_t {
buffer_t *root;

Wyświetl plik

@ -23,10 +23,10 @@
#include <stdlib.h>
#include <string.h>
#include "bt_common.h"
#include "osi/allocator.h"
#include "osi/config.h"
#include "osi/list.h"
#include "common/bt_trace.h"
#define CONFIG_FILE_MAX_SIZE (1536)//1.5k
#define CONFIG_FILE_DEFAULE_LENGTH (2048)

Wyświetl plik

@ -16,12 +16,10 @@
*
******************************************************************************/
#include "common/bt_defs.h"
#include "osi/allocator.h"
#include "osi/fixed_queue.h"
#include "osi/list.h"
#include "osi/osi.h"
#include "common/bt_trace.h"
#include "osi/mutex.h"
#include "osi/semaphore.h"

Wyświetl plik

@ -16,8 +16,7 @@
*
******************************************************************************/
#include "common/bt_trace.h"
#include "bt_common.h"
#include "osi/allocator.h"
#include "osi/future.h"
#include "osi/osi.h"

Wyświetl plik

@ -16,8 +16,7 @@
*
******************************************************************************/
#include "common/bt_defs.h"
#include "common/bt_trace.h"
#include "bt_common.h"
#include "osi/list.h"
#include "osi/hash_map.h"
#include "osi/allocator.h"

Wyświetl plik

@ -20,9 +20,9 @@
#include "freertos/FreeRTOS.h"
#include "freertos/queue.h"
#include "freertos/task.h"
#include "esp_task.h"
#include "common/bt_defs.h"
#include "osi/semaphore.h"
#include "esp_task.h"
#include "bt_common.h"
#define portBASE_TYPE int

Wyświetl plik

@ -1,6 +1,5 @@
#include "common/bt_defs.h"
#include "bt_common.h"
#include "osi/allocator.h"
#include "osi/list.h"
#include "osi/osi.h"

Wyświetl plik

@ -3,151 +3,196 @@
#
ifdef CONFIG_BT_ENABLED
COMPONENT_SRCDIRS := .
COMPONENT_SRCDIRS := controller
COMPONENT_ADD_INCLUDEDIRS := include
LIBS := btdm_app
COMPONENT_ADD_LDFLAGS := -lbt -L $(COMPONENT_PATH)/lib \
COMPONENT_ADD_LDFLAGS := -lbt -L $(COMPONENT_PATH)/controller/lib \
$(addprefix -l,$(LIBS))
# re-link program if BT binary libs change
COMPONENT_ADD_LINKER_DEPS := $(patsubst %,$(COMPONENT_PATH)/lib/lib%.a,$(LIBS))
COMPONENT_ADD_LINKER_DEPS := $(patsubst %,$(COMPONENT_PATH)/controller/lib/lib%.a,$(LIBS))
COMPONENT_SUBMODULES += lib
COMPONENT_SUBMODULES += controller/lib
ifeq ($(GCC_NOT_5_2_0), 1)
# TODO: annotate fallthroughs in Bluedroid code with comments
CFLAGS += -Wno-implicit-fallthrough
endif
endif
ifdef CONFIG_BT_BLUEDROID_ENABLED
COMPONENT_PRIV_INCLUDEDIRS += bluedroid/bta/include \
bluedroid/bta/ar/include \
bluedroid/bta/av/include \
bluedroid/bta/hf_client/include \
bluedroid/bta/dm/include \
bluedroid/bta/gatt/include \
bluedroid/bta/hh/include \
bluedroid/bta/jv/include \
bluedroid/bta/sdp/include \
bluedroid/bta/sys/include \
bluedroid/btcore/include \
bluedroid/device/include \
bluedroid/gki/include \
bluedroid/hci/include \
bluedroid/osi/include \
bluedroid/utils/include \
bluedroid/external/sbc/decoder/include \
bluedroid/external/sbc/encoder/include \
bluedroid/external/sbc/plc/include \
bluedroid/btc/core/include \
bluedroid/btc/profile/esp/blufi/include \
bluedroid/btc/profile/esp/include \
bluedroid/btc/profile/std/gatt/include \
bluedroid/btc/profile/std/gap/include \
bluedroid/btc/profile/std/a2dp/include \
bluedroid/btc/profile/std/include \
bluedroid/btc/include \
bluedroid/btif/include \
bluedroid/stack/btm/include \
bluedroid/stack/btu/include \
bluedroid/stack/gap/include \
bluedroid/stack/gatt/include \
bluedroid/stack/hcic/include \
bluedroid/stack/l2cap/include \
bluedroid/stack/sdp/include \
bluedroid/stack/smp/include \
bluedroid/stack/avct/include \
bluedroid/stack/avrc/include \
bluedroid/stack/avdt/include \
bluedroid/stack/a2dp/include \
bluedroid/stack/rfcomm/include \
bluedroid/stack/include \
bluedroid/utils/include \
bluedroid/common/include
COMPONENT_PRIV_INCLUDEDIRS += host/bluedroid/bta/include \
host/bluedroid/bta/ar/include \
host/bluedroid/bta/av/include \
host/bluedroid/bta/hf_client/include \
host/bluedroid/bta/dm/include \
host/bluedroid/bta/gatt/include \
host/bluedroid/bta/hh/include \
host/bluedroid/bta/jv/include \
host/bluedroid/bta/sdp/include \
host/bluedroid/bta/sys/include \
host/bluedroid/device/include \
host/bluedroid/gki/include \
host/bluedroid/hci/include \
host/bluedroid/utils/include \
host/bluedroid/external/sbc/decoder/include \
host/bluedroid/external/sbc/encoder/include \
host/bluedroid/external/sbc/plc/include \
host/bluedroid/btc/profile/esp/blufi/include \
host/bluedroid/btc/profile/esp/include \
host/bluedroid/btc/profile/std/gatt/include \
host/bluedroid/btc/profile/std/gap/include \
host/bluedroid/btc/profile/std/a2dp/include \
host/bluedroid/btc/profile/std/include \
host/bluedroid/btc/include \
host/bluedroid/btif/include \
host/bluedroid/stack/btm/include \
host/bluedroid/stack/btu/include \
host/bluedroid/stack/gap/include \
host/bluedroid/stack/gatt/include \
host/bluedroid/stack/hcic/include \
host/bluedroid/stack/l2cap/include \
host/bluedroid/stack/sdp/include \
host/bluedroid/stack/smp/include \
host/bluedroid/stack/avct/include \
host/bluedroid/stack/avrc/include \
host/bluedroid/stack/avdt/include \
host/bluedroid/stack/a2dp/include \
host/bluedroid/stack/rfcomm/include \
host/bluedroid/stack/include \
host/bluedroid/utils/include \
host/bluedroid/common/include
COMPONENT_ADD_INCLUDEDIRS += bluedroid/api/include/api \
bluedroid/osi/include \
COMPONENT_ADD_INCLUDEDIRS += host/bluedroid/api/include/api \
common/osi/include
ifdef CONFIG_BLE_MESH
COMPONENT_ADD_INCLUDEDIRS += ble_mesh/mesh_core \
ble_mesh/mesh_core/include \
ble_mesh/mesh_core/settings \
ble_mesh/btc/include \
ble_mesh/mesh_models/include \
ble_mesh/api/core/include \
ble_mesh/api/models/include \
ble_mesh/api
endif
COMPONENT_SRCDIRS += host/bluedroid/bta/dm \
host/bluedroid/bta/gatt \
host/bluedroid/bta/hh \
host/bluedroid/bta/sdp \
host/bluedroid/bta/av \
host/bluedroid/bta/ar \
host/bluedroid/bta/sys \
host/bluedroid/bta/jv \
host/bluedroid/bta/hf_client \
host/bluedroid/bta \
host/bluedroid/btif \
host/bluedroid/device \
host/bluedroid/gki \
host/bluedroid/hci \
host/bluedroid/main \
host/bluedroid/external/sbc/decoder/srce \
host/bluedroid/external/sbc/encoder/srce \
host/bluedroid/external/sbc/plc \
host/bluedroid/btc/core \
host/bluedroid/btc/profile/esp/blufi \
host/bluedroid/btc/profile/std/gap \
host/bluedroid/btc/profile/std/gatt \
host/bluedroid/btc/profile/std/a2dp \
host/bluedroid/btc/profile/std/avrc \
host/bluedroid/btc/profile/std/spp \
host/bluedroid/btc/profile/std/hf_client \
host/bluedroid/btc/profile \
host/bluedroid/stack/btm \
host/bluedroid/stack/btu \
host/bluedroid/stack/gap \
host/bluedroid/stack/gatt \
host/bluedroid/stack/hcic \
host/bluedroid/stack/include \
host/bluedroid/stack/l2cap \
host/bluedroid/stack/sdp \
host/bluedroid/stack/smp \
host/bluedroid/stack/avct \
host/bluedroid/stack/avrc \
host/bluedroid/stack/avdt \
host/bluedroid/stack/a2dp \
host/bluedroid/stack/rfcomm \
host/bluedroid/stack \
host/bluedroid/utils \
host/bluedroid/api \
host/bluedroid
COMPONENT_SRCDIRS += bluedroid/bta/dm \
bluedroid/bta/gatt \
bluedroid/bta/hh \
bluedroid/bta/sdp \
bluedroid/bta/av \
bluedroid/bta/ar \
bluedroid/bta/sys \
bluedroid/bta/jv \
bluedroid/bta/hf_client \
bluedroid/bta \
bluedroid/btcore \
bluedroid/btif \
bluedroid/device \
bluedroid/gki \
bluedroid/hci \
bluedroid/main \
bluedroid/osi \
bluedroid/external/sbc/decoder/srce \
bluedroid/external/sbc/encoder/srce \
bluedroid/external/sbc/plc \
bluedroid/btc/core \
bluedroid/btc/profile/esp/blufi \
bluedroid/btc/profile/std/gap \
bluedroid/btc/profile/std/gatt \
bluedroid/btc/profile/std/a2dp \
bluedroid/btc/profile/std/avrc \
bluedroid/btc/profile/std/spp \
bluedroid/btc/profile/std/hf_client \
bluedroid/btc/profile \
bluedroid/stack/btm \
bluedroid/stack/btu \
bluedroid/stack/gap \
bluedroid/stack/gatt \
bluedroid/stack/hcic \
bluedroid/stack/include \
bluedroid/stack/l2cap \
bluedroid/stack/sdp \
bluedroid/stack/smp \
bluedroid/stack/avct \
bluedroid/stack/avrc \
bluedroid/stack/avdt \
bluedroid/stack/a2dp \
bluedroid/stack/rfcomm \
bluedroid/stack \
bluedroid/utils \
bluedroid/api \
bluedroid
ifdef CONFIG_BLE_MESH
COMPONENT_SRCDIRS += ble_mesh/mesh_core \
ble_mesh/mesh_core/settings \
ble_mesh/btc \
ble_mesh/mesh_models \
ble_mesh/api/core \
ble_mesh/api/models
endif
ifeq ($(GCC_NOT_5_2_0), 1)
bluedroid/bta/sdp/bta_sdp_act.o: CFLAGS += -Wno-unused-const-variable
bluedroid/btc/core/btc_config.o: CFLAGS += -Wno-unused-const-variable
bluedroid/stack/btm/btm_sec.o: CFLAGS += -Wno-unused-const-variable
bluedroid/stack/smp/smp_keys.o: CFLAGS += -Wno-unused-const-variable
host/bluedroid/bta/sdp/bta_sdp_act.o: CFLAGS += -Wno-unused-const-variable
host/bluedroid/btc/core/btc_config.o: CFLAGS += -Wno-unused-const-variable
host/bluedroid/stack/btm/btm_sec.o: CFLAGS += -Wno-unused-const-variable
host/bluedroid/stack/smp/smp_keys.o: CFLAGS += -Wno-unused-const-variable
endif
COMPONENT_PRIV_INCLUDEDIRS += common/btc/include \
common/include
COMPONENT_SRCDIRS += common/osi \
common/btc/core
endif
ifdef CONFIG_BLE_MESH
COMPONENT_ADD_INCLUDEDIRS += esp_ble_mesh/mesh_core \
esp_ble_mesh/mesh_core/include \
esp_ble_mesh/mesh_core/settings \
esp_ble_mesh/btc/include \
esp_ble_mesh/mesh_models/include \
esp_ble_mesh/api/core/include \
esp_ble_mesh/api/models/include \
esp_ble_mesh/api
COMPONENT_SRCDIRS += esp_ble_mesh/mesh_core \
esp_ble_mesh/mesh_core/settings \
esp_ble_mesh/btc \
esp_ble_mesh/mesh_models \
esp_ble_mesh/api/core \
esp_ble_mesh/api/models
endif
ifdef CONFIG_BT_NIMBLE_ENABLED
COMPONENT_ADD_INCLUDEDIRS += host/nimble/nimble/nimble/include \
host/nimble/nimble/nimble/host/include \
host/nimble/nimble/porting/nimble/include \
host/nimble/nimble/porting/npl/freertos/include \
host/nimble/nimble/nimble/host/services/ans/include \
host/nimble/nimble/nimble/host/services/bas/include \
host/nimble/nimble/nimble/host/services/gap/include \
host/nimble/nimble/nimble/host/services/gatt/include \
host/nimble/nimble/nimble/host/services/ias/include \
host/nimble/nimble/nimble/host/services/lls/include \
host/nimble/nimble/nimble/host/services/tps/include \
host/nimble/nimble/nimble/host/util/include \
host/nimble/nimble/nimble/host/store/ram/include \
host/nimble/nimble/nimble/host/store/config/include \
host/nimble/nimble/ext/tinycrypt/include \
host/nimble/esp-hci/include \
host/nimble/port/include
COMPONENT_SRCDIRS += host/nimble/nimble/nimble/host/src \
host/nimble/nimble/porting/nimble/src \
host/nimble/nimble/porting/npl/freertos/src \
host/nimble/nimble/ext/tinycrypt/src \
host/nimble/nimble/nimble/host/services/ans/src \
host/nimble/nimble/nimble/host/services/bas/src \
host/nimble/nimble/nimble/host/services/gap/src \
host/nimble/nimble/nimble/host/services/gatt/src \
host/nimble/nimble/nimble/host/services/ias/src \
host/nimble/nimble/nimble/host/services/lls/src \
host/nimble/nimble/nimble/host/services/tps/src \
host/nimble/nimble/nimble/host/util/src \
host/nimble/nimble/nimble/host/store/ram/src \
host/nimble/nimble/nimble/host/store/config/src \
host/nimble/esp-hci/src
COMPONENT_OBJEXCLUDE += host/nimble/nimble/nimble/host/store/config/src/ble_store_config_conf.o
ifdef CONFIG_BT_NIMBLE_MESH
COMPONENT_ADD_INCLUDEDIRS += host/nimble/nimble/nimble/host/mesh/include
COMPONENT_SRCDIRS += host/nimble/nimble/nimble/host/mesh/src
endif
endif
endif

@ -0,0 +1 @@
Subproject commit 45df297ff295c106171d8c3621216e9f48f7d8b4

Wyświetl plik

@ -0,0 +1,803 @@
if BLE_MESH
config BLE_MESH_HCI_5_0
bool "Support sending 20ms non-connectable adv packets"
default y
help
It is a temporary solution and needs further modifications.
config BLE_MESH_USE_DUPLICATE_SCAN
bool "Support Duplicate Scan in BLE Mesh"
select BLE_SCAN_DUPLICATE
select BLE_MESH_SCAN_DUPLICATE_EN
default y
help
Enable this option to allow using specific duplicate scan filter
in BLE Mesh, and Scan Duplicate Type must be set to 0x02.
config BLE_MESH_FAST_PROV
bool "Enable BLE Mesh Fast Provisioning"
select BLE_MESH_NODE
select BLE_MESH_PROVISIONER
select BLE_MESH_PB_ADV
default n
help
Enable this option to allow BLE Mesh fast provisioning solution to be used.
config BLE_MESH_NODE
bool "Support for BLE Mesh Node"
help
Enable the device to be provisioned into a node.
config BLE_MESH_PROVISIONER
bool "Support for BLE Mesh Provisioner"
help
Enable the device to be a provisioner.
if BLE_MESH_PROVISIONER
config BLE_MESH_WAIT_FOR_PROV_MAX_DEV_NUM
int "Maximum number of unprovisioned devices that can be added to device queue"
default 20
range 1 100
help
This option specifies how may unprovisioned devices can be added to device
queue for provisioning.
config BLE_MESH_MAX_STORED_NODES
int "Maximum number of nodes whose information can be stored"
default 20
range 1 1000
help
This option specifies the maximum number of nodes whose information can be
stored by a provisioner in its upper layer.
config BLE_MESH_MAX_PROV_NODES
int "Maximum number of devices that can be provisioned by provisioner"
default 20
range 1 100
help
This option specifies how many devices can be provisioned by provisioner.
if BLE_MESH_PB_ADV
config BLE_MESH_PBA_SAME_TIME
int "Maximum number of PB-ADV running at the same time by provisioner"
default 2
range 1 10
help
This option specifies how many devices can be provisioned at the same
time using PB-ADV.
endif # BLE_MESH_PB_ADV
if BLE_MESH_PB_GATT
config BLE_MESH_PBG_SAME_TIME
int "Maximum number of PB-GATT running at the same time by provisioner"
default 1
range 1 5
help
This option specifies how many devices can be provisioned at the same
time using PB-GATT.
endif # BLE_MESH_PB_GATT
config BLE_MESH_PROVISIONER_SUBNET_COUNT
int "Maximum number of mesh subnets that can be created by provisioner"
default 3
range 1 4096
help
This option specifies how many subnets per network a provisioner can create.
config BLE_MESH_PROVISIONER_APP_KEY_COUNT
int "Maximum number of application keys that can be owned by provisioner"
default 9
range 1 4096
help
This option specifies how many application keys the provisioner can have.
endif # BLE_MESH_PROVISIONER
# Virtual option enabled whenever Generic Provisioning layer is needed
config BLE_MESH_PROV
bool "BLE Mesh Provisioning support"
default y
help
Enable this option to support BLE Mesh Provisioning functionality. For
BLE Mesh, this option should be always enabled.
config BLE_MESH_PB_ADV
bool "Provisioning support using the advertising bearer (PB-ADV)"
select BLE_MESH_PROV
default y
help
Enable this option to allow the device to be provisioned over the
advertising bearer.
config BLE_MESH_PB_GATT
bool "Provisioning support using GATT (PB-GATT)"
select BLE_MESH_PROXY
select BLE_MESH_PROV
help
Enable this option to allow the device to be provisioned over GATT.
# Virtual option enabled whenever any Proxy protocol is needed
config BLE_MESH_PROXY
bool "BLE Mesh Proxy protocol support"
default y
help
Enable this option to support BLE Mesh Proxy protocol used by PB-GATT
and other proxy pdu transmission.
config BLE_MESH_GATT_PROXY
bool "BLE Mesh GATT Proxy Service"
select BLE_MESH_PROXY
help
This option enables support for Mesh GATT Proxy Service, i.e. the
ability to act as a proxy between a Mesh GATT Client and a Mesh network.
config BLE_MESH_NODE_ID_TIMEOUT
int "Node Identity advertising timeout"
depends on BLE_MESH_GATT_PROXY
range 1 60
default 60
help
This option determines for how long the local node advertises using
Node Identity. The given value is in seconds. The specification limits
this to 60 seconds and lists it as the recommended value as well.
So leaving the default value is the safest option.
if BLE_MESH_PROXY
config BLE_MESH_PROXY_FILTER_SIZE
int "Maximum number of filter entries per Proxy Client"
default 1
default 3 if BLE_MESH_GATT_PROXY
range 1 32767
help
This option specifies how many Proxy Filter entries the local node supports.
endif # BLE_MESH_PROXY
config BLE_MESH_NET_BUF_POOL_USAGE
bool "BLE Mesh net buffer pool usage tracking"
default y
help
Enable BLE Mesh net buffer pool tracking.
config BLE_MESH_SETTINGS
bool "Store BLE Mesh Node configuration persistently"
default n
help
When selected, the BLE Mesh stack will take care of storing/restoring the
BLE Mesh configuration persistently in flash. Currently this only supports
storing BLE Mesh node configuration.
if BLE_MESH_SETTINGS
config BLE_MESH_STORE_TIMEOUT
int "Delay (in seconds) before storing anything persistently"
range 0 1000000
default 0
help
This value defines in seconds how soon any pending changes are actually
written into persistent storage (flash) after a change occurs.
config BLE_MESH_SEQ_STORE_RATE
int "How often the sequence number gets updated in storage"
range 0 1000000
default 128
help
This value defines how often the local sequence number gets updated in
persistent storage (i.e. flash). e.g. a value of 100 means that the
sequence number will be stored to flash on every 100th increment.
If the node sends messages very frequently a higher value makes more
sense, whereas if the node sends infrequently a value as low as 0
(update storage for every increment) can make sense. When the stack
gets initialized it will add sequence number to the last stored one,
so that it starts off with a value that's guaranteed to be larger than
the last one used before power off.
config BLE_MESH_RPL_STORE_TIMEOUT
int "Minimum frequency that the RPL gets updated in storage"
range 0 1000000
default 5
help
This value defines in seconds how soon the RPL(Replay Protection List)
gets written to persistent storage after a change occurs. If the node
receives messages frequently, then a large value is recommended. If the
node receives messages rarely, then the value can be as low as 0 (which
means the PRL is written into the storage immediately).
Note that if the node operates in a security-sensitive case, and there is
a risk of sudden power-off, then a value of 0 is strongly recommended.
Otherwise, a power loss before RPL being written into the storage may
introduce message replay attacks and system security will be in a
vulnerable state.
endif # if BLE_MESH_SETTINGS
config BLE_MESH_SUBNET_COUNT
int "Maximum number of mesh subnets per network"
default 3
range 1 4096
help
This option specifies how many subnets a Mesh network can have at the same time.
config BLE_MESH_APP_KEY_COUNT
int "Maximum number of application keys per network"
default 3
range 1 4096
help
This option specifies how many application keys the device can store per network.
config BLE_MESH_MODEL_KEY_COUNT
int "Maximum number of application keys per model"
default 3
range 1 4096
help
This option specifies the maximum number of application keys to which each model
can be bound.
config BLE_MESH_MODEL_GROUP_COUNT
int "Maximum number of group address subscriptions per model"
default 3
range 1 4096
help
This option specifies the maximum number of addresses to which each model can
be subscribed.
config BLE_MESH_LABEL_COUNT
int "Maximum number of Label UUIDs used for Virtual Addresses"
default 3
range 0 4096
help
This option specifies how many Label UUIDs can be stored.
config BLE_MESH_CRPL
int "Maximum capacity of the replay protection list"
default 10
range 2 65535
help
This option specifies the maximum capacity of the replay protection list.
It is similar to Network message cache size, but has a different purpose.
config BLE_MESH_MSG_CACHE_SIZE
int "Network message cache size"
default 10
range 2 65535
help
Number of messages that are cached for the network. This helps prevent
unnecessary decryption operations and unnecessary relays. This option
is similar to Replay protection list, but has a different purpose.
config BLE_MESH_ADV_BUF_COUNT
int "Number of advertising buffers"
default 60
range 6 256
help
Number of advertising buffers available. The transport layer reserves
ADV_BUF_COUNT - 3 buffers for outgoing segments. The maximum outgoing
SDU size is 12 times this value (out of which 4 or 8 bytes are used
for the Transport Layer MIC). For example, 5 segments means the maximum
SDU size is 60 bytes, which leaves 56 bytes for application layer data
using a 4-byte MIC, or 52 bytes using an 8-byte MIC.
config BLE_MESH_IVU_DIVIDER
int "Divider for IV Update state refresh timer"
default 4
range 2 96
help
When the IV Update state enters Normal operation or IV Update
in Progress, we need to keep track of how many hours has passed
in the state, since the specification requires us to remain in
the state at least for 96 hours (Update in Progress has an
additional upper limit of 144 hours).
In order to fulfill the above requirement, even if the node might
be powered off once in a while, we need to store persistently
how many hours the node has been in the state. This doesn't
necessarily need to happen every hour (thanks to the flexible
duration range). The exact cadence will depend a lot on the
ways that the node will be used and what kind of power source it
has.
Since there is no single optimal answer, this configuration
option allows specifying a divider, i.e. how many intervals
the 96 hour minimum gets split into. After each interval the
duration that the node has been in the current state gets
stored to flash. E.g. the default value of 4 means that the
state is saved every 24 hours (96 / 4).
config BLE_MESH_TX_SEG_MSG_COUNT
int "Maximum number of simultaneous outgoing segmented messages"
default 1
range 1 BLE_MESH_ADV_BUF_COUNT
help
Maximum number of simultaneous outgoing multi-segment and/or reliable messages.
config BLE_MESH_RX_SEG_MSG_COUNT
int "Maximum number of simultaneous incoming segmented messages"
default 1
range 1 255
help
Maximum number of simultaneous incoming multi-segment and/or reliable messages.
config BLE_MESH_RX_SDU_MAX
int "Maximum incoming Upper Transport Access PDU length"
default 384
range 36 384
help
Maximum incoming Upper Transport Access PDU length. Leave this to the default
value, unless you really need to optimize memory usage.
config BLE_MESH_TX_SEG_MAX
int "Maximum number of segments in outgoing messages"
default 20
range 2 32
help
Maximum number of segments supported for outgoing messages.
This value should typically be fine-tuned based on what
models the local node supports, i.e. what's the largest
message payload that the node needs to be able to send.
This value affects memory and call stack consumption, which
is why the default is lower than the maximum that the
specification would allow (32 segments).
The maximum outgoing SDU size is 12 times this number (out of
which 4 or 8 bytes is used for the Transport Layer MIC). For
example, 5 segments means the maximum SDU size is 60 bytes,
which leaves 56 bytes for application layer data using a
4-byte MIC and 52 bytes using an 8-byte MIC.
Be sure to specify a sufficient number of advertising buffers
when setting this option to a higher value. There must be at
least three more advertising buffers (BLE_MESH_ADV_BUF_COUNT)
as there are outgoing segments.
config BLE_MESH_RELAY
bool "Relay support"
help
Support for acting as a Mesh Relay Node.
config BLE_MESH_LOW_POWER
bool "Support for Low Power features"
help
Enable this option to operate as a Low Power Node.
if BLE_MESH_LOW_POWER
config BLE_MESH_LPN_ESTABLISHMENT
bool "Perform Friendship establishment using low power"
default y
help
Perform the Friendship establishment using low power with the help of a
reduced scan duty cycle. The downside of this is that the node may miss
out on messages intended for it until it has successfully set up Friendship
with a Friend node.
config BLE_MESH_LPN_AUTO
bool "Automatically start looking for Friend nodes once provisioned"
default y
help
Once provisioned, automatically enable LPN functionality and start looking
for Friend nodes. If this option is disabled LPN mode needs to be manually
enabled by calling bt_mesh_lpn_set(true).
config BLE_MESH_LPN_AUTO_TIMEOUT
int "Time from last received message before going to LPN mode"
default 15
range 0 3600
depends on BLE_MESH_LPN_AUTO
help
Time in seconds from the last received message, that the node waits out
before starting to look for Friend nodes.
config BLE_MESH_LPN_RETRY_TIMEOUT
int "Retry timeout for Friend requests"
default 8
range 1 3600
help
Time in seconds between Friend Requests, if a previous Friend Request did
not yield any acceptable Friend Offers.
config BLE_MESH_LPN_RSSI_FACTOR
int "RSSIFactor, used in Friend Offer Delay calculation"
range 0 3
default 0
help
The contribution of the RSSI, measured by the Friend node, used in Friend
Offer Delay calculations. 0 = 1, 1 = 1.5, 2 = 2, 3 = 2.5.
config BLE_MESH_LPN_RECV_WIN_FACTOR
int "ReceiveWindowFactor, used in Friend Offer Delay calculation"
range 0 3
default 0
help
The contribution of the supported Receive Window used in Friend Offer
Delay calculations. 0 = 1, 1 = 1.5, 2 = 2, 3 = 2.5.
config BLE_MESH_LPN_MIN_QUEUE_SIZE
int "Minimum size of the acceptable friend queue (MinQueueSizeLog)"
range 1 7
default 1
help
The MinQueueSizeLog field is defined as log_2(N), where N is the minimum
number of maximum size Lower Transport PDUs that the Friend node can store
in its Friend Queue. As an example, MinQueueSizeLog value 1 gives N = 2,
and value 7 gives N = 128.
config BLE_MESH_LPN_RECV_DELAY
int "Receive delay requested by the local node"
range 10 255
default 100
help
The ReceiveDelay is the time between the Low Power node sending a
request and listening for a response. This delay allows the Friend
node time to prepare the response. The value is in units of milliseconds.
config BLE_MESH_LPN_POLL_TIMEOUT
int "The value of the PollTimeout timer"
range 10 244735
default 300
help
PollTimeout timer is used to measure time between two consecutive
requests sent by a Low Power node. If no requests are received
the Friend node before the PollTimeout timer expires, then the
friendship is considered terminated. The value is in units of 100
milliseconds, so e.g. a value of 300 means 30 seconds.
config BLE_MESH_LPN_INIT_POLL_TIMEOUT
int "The starting value of the PollTimeout timer"
range 10 BLE_MESH_LPN_POLL_TIMEOUT
default BLE_MESH_LPN_POLL_TIMEOUT
help
The initial value of the PollTimeout timer when Friendship is to be
established for the first time. After this, the timeout gradually
grows toward the actual PollTimeout, doubling in value for each iteration.
The value is in units of 100 milliseconds, so e.g. a value of 300 means
30 seconds.
config BLE_MESH_LPN_SCAN_LATENCY
int "Latency for enabling scanning"
range 0 50
default 10
help
Latency (in milliseconds) is the time it takes to enable scanning. In
practice, it means how much time in advance of the Receive Window, the
request to enable scanning is made.
config BLE_MESH_LPN_GROUPS
int "Number of groups the LPN can subscribe to"
range 0 16384
default 8
help
Maximum number of groups to which the LPN can subscribe.
endif # BLE_MESH_LOW_POWER
config BLE_MESH_FRIEND
bool "Support for acting as a Friend Node"
help
Enable this option to be able to act as a Friend Node.
if BLE_MESH_FRIEND
config BLE_MESH_FRIEND_RECV_WIN
int "Friend Receive Window"
range 1 255
default 255
help
Receive Window in milliseconds supported by the Friend node.
config BLE_MESH_FRIEND_QUEUE_SIZE
int "Minimum number of buffers supported per Friend Queue"
range 2 65536
default 16
help
Minimum number of buffers available to be stored for each local Friend Queue.
config BLE_MESH_FRIEND_SUB_LIST_SIZE
int "Friend Subscription List Size"
range 0 1023
default 3
help
Size of the Subscription List that can be supported by a Friend node for a
Low Power node.
config BLE_MESH_FRIEND_LPN_COUNT
int "Number of supported LPN nodes"
range 1 1000
default 2
help
Number of Low Power Nodes with which a Friend can have Friendship simultaneously.
config BLE_MESH_FRIEND_SEG_RX
int "Number of incomplete segment lists per LPN"
range 1 1000
default 1
help
Number of incomplete segment lists tracked for each Friends' LPN.
In other words, this determines from how many elements can segmented
messages destined for the Friend queue be received simultaneously.
endif # BLE_MESH_FRIEND
config BLE_MESH_NO_LOG
bool "Disable BLE Mesh debug logs (minimize bin size)"
depends on BLE_MESH
default n
help
Select this to save the BLE Mesh related rodata code size.
menu "BLE Mesh STACK DEBUG LOG LEVEL"
depends on BLE_MESH && !BLE_MESH_NO_LOG
choice BLE_MESH_STACK_TRACE_LEVEL
prompt "BLE_MESH_STACK"
default BLE_MESH_TRACE_LEVEL_WARNING
depends on BLE_MESH && !BLE_MESH_NO_LOG
help
Define BLE Mesh trace level for BLE Mesh stack.
config BLE_MESH_TRACE_LEVEL_NONE
bool "NONE"
config BLE_MESH_TRACE_LEVEL_ERROR
bool "ERROR"
config BLE_MESH_TRACE_LEVEL_WARNING
bool "WARNING"
config BLE_MESH_TRACE_LEVEL_INFO
bool "INFO"
config BLE_MESH_TRACE_LEVEL_DEBUG
bool "DEBUG"
config BLE_MESH_TRACE_LEVEL_VERBOSE
bool "VERBOSE"
endchoice
config BLE_MESH_STACK_TRACE_LEVEL
int
depends on BLE_MESH
default 0 if BLE_MESH_TRACE_LEVEL_NONE
default 1 if BLE_MESH_TRACE_LEVEL_ERROR
default 2 if BLE_MESH_TRACE_LEVEL_WARNING
default 3 if BLE_MESH_TRACE_LEVEL_INFO
default 4 if BLE_MESH_TRACE_LEVEL_DEBUG
default 5 if BLE_MESH_TRACE_LEVEL_VERBOSE
default 2
endmenu #BLE Mesh DEBUG LOG LEVEL
menu "BLE Mesh NET BUF DEBUG LOG LEVEL"
depends on BLE_MESH && !BLE_MESH_NO_LOG
choice BLE_MESH_NET_BUF_TRACE_LEVEL
prompt "BLE_MESH_NET_BUF"
default BLE_MESH_NET_BUF_TRACE_LEVEL_WARNING
depends on BLE_MESH && !BLE_MESH_NO_LOG
help
Define BLE Mesh trace level for BLE Mesh net buffer.
config BLE_MESH_NET_BUF_TRACE_LEVEL_NONE
bool "NONE"
config BLE_MESH_NET_BUF_TRACE_LEVEL_ERROR
bool "ERROR"
config BLE_MESH_NET_BUF_TRACE_LEVEL_WARNING
bool "WARNING"
config BLE_MESH_NET_BUF_TRACE_LEVEL_INFO
bool "INFO"
config BLE_MESH_NET_BUF_TRACE_LEVEL_DEBUG
bool "DEBUG"
config BLE_MESH_NET_BUF_TRACE_LEVEL_VERBOSE
bool "VERBOSE"
endchoice
config BLE_MESH_NET_BUF_TRACE_LEVEL
int
depends on BLE_MESH
default 0 if BLE_MESH_NET_BUF_TRACE_LEVEL_NONE
default 1 if BLE_MESH_NET_BUF_TRACE_LEVEL_ERROR
default 2 if BLE_MESH_NET_BUF_TRACE_LEVEL_WARNING
default 3 if BLE_MESH_NET_BUF_TRACE_LEVEL_INFO
default 4 if BLE_MESH_NET_BUF_TRACE_LEVEL_DEBUG
default 5 if BLE_MESH_NET_BUF_TRACE_LEVEL_VERBOSE
default 2
endmenu #BLE Mesh NET BUF DEBUG LOG LEVEL
config BLE_MESH_IRQ_LOCK
bool "Used the IRQ lock instead of task lock"
help
To improve the real-time requirements of bt controller in BLE Mesh,
task lock is used to replace IRQ lock.
config BLE_MESH_CLIENT_MSG_TIMEOUT
int "Timeout(ms) for client message response"
range 100 1200000
default 4000
help
Timeout value used by the node to get response of the acknowledged
message which is sent by the client model.
menu "Support for BLE Mesh Client Models"
config BLE_MESH_CFG_CLI
bool "Configuration Client Model"
help
Enable support for Configuration client model.
config BLE_MESH_HEALTH_CLI
bool "Health Client Model"
help
Enable support for Health client model.
config BLE_MESH_GENERIC_ONOFF_CLI
bool "Generic OnOff Client Model"
help
Enable support for Generic OnOff client model.
config BLE_MESH_GENERIC_LEVEL_CLI
bool "Generic Level Client Model"
help
Enable support for Generic Level client model.
config BLE_MESH_GENERIC_DEF_TRANS_TIME_CLI
bool "Generic Default Transition Time Client Model"
help
Enable support for Generic Default Transition Time client model.
config BLE_MESH_GENERIC_POWER_ONOFF_CLI
bool "Generic Power Onoff Client Model"
help
Enable support for Generic Power Onoff client model.
config BLE_MESH_GENERIC_POWER_LEVEL_CLI
bool "Generic Power Level Client Model"
help
Enable support for Generic Power Level client model.
config BLE_MESH_GENERIC_BATTERY_CLI
bool "Generic Battery Client Model"
help
Enable support for Generic Battery client model.
config BLE_MESH_GENERIC_LOCATION_CLI
bool "Generic Location Client Model"
help
Enable support for Generic Location client model.
config BLE_MESH_GENERIC_PROPERTY_CLI
bool "Generic Property Client Model"
help
Enable support for Generic Property client model.
config BLE_MESH_SENSOR_CLI
bool "Sensor Client Model"
help
Enable support for Sensor client model.
config BLE_MESH_TIME_CLI
bool "Time Client Model"
help
Enable support for Time client model.
config BLE_MESH_SCENE_CLI
bool "Scene Client Model"
help
Enable support for Scene client model.
config BLE_MESH_SCHEDULER_CLI
bool "Scheduler Client Model"
help
Enable support for Scheduler client model.
config BLE_MESH_LIGHT_LIGHTNESS_CLI
bool "Light Lightness Client Model"
help
Enable support for Light Lightness client model.
config BLE_MESH_LIGHT_CTL_CLI
bool "Light CTL Client Model"
help
Enable support for Light CTL client model.
config BLE_MESH_LIGHT_HSL_CLI
bool "Light HSL Client Model"
help
Enable support for Light HSL client model.
config BLE_MESH_LIGHT_XYL_CLI
bool "Light XYL Client Model"
help
Enable support for Light XYL client model.
config BLE_MESH_LIGHT_LC_CLI
bool "Light LC Client Model"
help
Enable support for Light LC client model.
endmenu
config BLE_MESH_IV_UPDATE_TEST
bool "Test the IV Update Procedure"
default n
help
This option removes the 96 hour limit of the IV Update Procedure and
lets the state to be changed at any time.
menu "BLE Mesh specific test option"
config BLE_MESH_SELF_TEST
bool "Perform BLE Mesh self-tests"
default n
help
This option adds extra self-tests which are run every time BLE Mesh
networking is initialized.
config BLE_MESH_SHELL
bool "Enable BLE Mesh shell"
default n
help
Activate shell module that provides BLE Mesh commands to the console.
config BLE_MESH_DEBUG
bool "Enable BLE Mesh debug logs"
default n
help
Enable debug logs for the BLE Mesh functionality.
if BLE_MESH_DEBUG
config BLE_MESH_DEBUG_NET
bool "Network layer debug"
help
Enable Network layer debug logs for the BLE Mesh functionality.
config BLE_MESH_DEBUG_TRANS
bool "Transport layer debug"
help
Enable Transport layer debug logs for the BLE Mesh functionality.
config BLE_MESH_DEBUG_BEACON
bool "Beacon debug"
help
Enable Beacon-related debug logs for the BLE Mesh functionality.
config BLE_MESH_DEBUG_CRYPTO
bool "Crypto debug"
help
Enable cryptographic debug logs for the BLE Mesh functionality.
config BLE_MESH_DEBUG_PROV
bool "Provisioning debug"
help
Enable Provisioning debug logs for the BLE Mesh functionality.
config BLE_MESH_DEBUG_ACCESS
bool "Access layer debug"
help
Enable Access layer debug logs for the BLE Mesh functionality.
config BLE_MESH_DEBUG_MODEL
bool "Foundation model debug"
help
Enable Foundation Models debug logs for the BLE Mesh functionality.
config BLE_MESH_DEBUG_ADV
bool "Advertising debug"
help
Enable advertising debug logs for the BLE Mesh functionality.
config BLE_MESH_DEBUG_LOW_POWER
bool "Low Power debug"
help
Enable Low Power debug logs for the BLE Mesh functionality.
config BLE_MESH_DEBUG_FRIEND
bool "Friend debug"
help
Enable Friend debug logs for the BLE Mesh functionality.
config BLE_MESH_DEBUG_PROXY
bool "Proxy debug"
depends on BLE_MESH_PROXY
help
Enable Proxy protocol debug logs for the BLE Mesh functionality.
endif # BLE_MESH_DEBUG
endmenu
endif # BLE_MESH

Some files were not shown because too many files have changed in this diff Show More