From 953692616a5d7f7c01b31329d4d7c74e5cbe25a1 Mon Sep 17 00:00:00 2001 From: Jin Chen Date: Fri, 20 Mar 2026 17:07:38 +0800 Subject: [PATCH] feat(ble): make env init function cuttable on ESP32-C2 (cherry picked from commit 5ec82368ba0787b18b09cc4082799045022bd210) Co-authored-by: cjin --- components/bt/CMakeLists.txt | 6 +- components/bt/controller/esp32c2/ble.c | 2 + components/bt/controller/esp32c2/bt.c | 3 - components/bt/controller/esp32c2/dummy.c | 310 +++++++++++++++++- .../esp32c2/ld/esp32c2.rom.ble-eco4.ld | 10 +- .../esp_rom/esp32c2/ld/esp32c2.rom.ble.ld | 6 +- 6 files changed, 321 insertions(+), 16 deletions(-) diff --git a/components/bt/CMakeLists.txt b/components/bt/CMakeLists.txt index fcf531f1a4..833021e1fb 100644 --- a/components/bt/CMakeLists.txt +++ b/components/bt/CMakeLists.txt @@ -104,10 +104,8 @@ if(CONFIG_BT_ENABLED) elseif(CONFIG_IDF_TARGET_ESP32C2) list(APPEND srcs "controller/esp32c2/bt.c" - "controller/esp32c2/ble.c") - if(CONFIG_BT_CTRL_RUN_IN_FLASH_ONLY) - list(APPEND srcs "controller/esp32c2/dummy.c") - endif() + "controller/esp32c2/ble.c" + "controller/esp32c2/dummy.c") set(ldscripts "linker_esp32c2.lf") elseif(CONFIG_IDF_TARGET_ESP32C6) diff --git a/components/bt/controller/esp32c2/ble.c b/components/bt/controller/esp32c2/ble.c index 136279e2ef..f32183a970 100644 --- a/components/bt/controller/esp32c2/ble.c +++ b/components/bt/controller/esp32c2/ble.c @@ -47,7 +47,9 @@ void ble_stack_enableVsEvents(bool en) #if DEFAULT_BT_LE_ROLE_BROADCASTER adv_stack_enableScanReqRxdVsEvent(en); #endif // DEFAULT_BT_LE_ROLE_BROADCASTER +#if DEFAULT_BT_LE_ROLE_CENTROL || DEFAULT_BT_LE_ROLE_PERIPHERAL conn_stack_enableChanMapUpdCompVsEvent(en); +#endif // DEFAULT_BT_LE_ROLE_CENTROL || DEFAULT_BT_LE_ROLE_PERIPHERAL #if CONFIG_BT_LE_SLEEP_ENABLE sleep_stack_enableWakeupVsEvent(en); #endif // CONFIG_BT_LE_SLEEP_ENABLE diff --git a/components/bt/controller/esp32c2/bt.c b/components/bt/controller/esp32c2/bt.c index ca63500173..0aa02d5174 100644 --- a/components/bt/controller/esp32c2/bt.c +++ b/components/bt/controller/esp32c2/bt.c @@ -72,9 +72,6 @@ #endif // CONFIG_BT_BLE_LOG_SPI_OUT_ENABLED #endif /* CONFIG_BT_LE_CONTROLLER_LOG_MODE_BLE_LOG_V2 */ -#if !CONFIG_BT_CTRL_RUN_IN_FLASH_ONLY -#include "ble_dummy.h" -#endif // !CONFIG_BT_CTRL_RUN_IN_FLASH_ONLY /* Macro definition ************************************************************************ */ diff --git a/components/bt/controller/esp32c2/dummy.c b/components/bt/controller/esp32c2/dummy.c index b6ece60ac9..507872f9b7 100644 --- a/components/bt/controller/esp32c2/dummy.c +++ b/components/bt/controller/esp32c2/dummy.c @@ -1,5 +1,5 @@ /* - * SPDX-FileCopyrightText: 2024 Espressif Systems (Shanghai) CO LTD + * SPDX-FileCopyrightText: 2024-2026 Espressif Systems (Shanghai) CO LTD * * SPDX-License-Identifier: Apache-2.0 */ @@ -318,3 +318,311 @@ int r_ble_lll_dtm_end_test(void) { return BLE_ERR_UNKNOWN_HCI_CMD; } int r_ble_lll_hci_dtm_rx_test_v2(void) { return BLE_ERR_UNKNOWN_HCI_CMD; } int r_ble_lll_hci_dtm_tx_test_v2(void) { return BLE_ERR_UNKNOWN_HCI_CMD; } #endif //!CONFIG_BT_LE_DTM_ENABLED + +/* The following function is trimmed with module */ +/* BLE LL ADV */ +#if !DEFAULT_BT_LE_ROLE_BROADCASTER +int r_ble_ll_adv_env_init_eco4(void){return 0;} +void r_ble_ll_adv_scan_req_rxd(void){} +void r_ble_ll_adv_scan_req_rxd_eco4(void){} +void r_ble_ll_adv_status_check(void){} +void r_ble_ll_adv_status_check_eco4(void){} +int r_ble_ll_adv_set_adv_params_eco4(void){return BLE_ERR_UNKNOWN_HCI_CMD;} +void r_ble_ll_adv_set_enable(void){} +void r_ble_ll_adv_set_enable_eco4(void){} +void r_ble_ll_adv_sm_init(void){} +void r_ble_ll_adv_sm_init_eco4(void){} +int r_ble_ll_hci_set_adv_data_eco4(void){return BLE_ERR_UNKNOWN_HCI_CMD;} +int r_ble_ll_hci_set_scan_rsp_data_eco4(void){return BLE_ERR_UNKNOWN_HCI_CMD;} +void r_ble_ll_adv_scan_rsp_length_chk(void){} +void r_ble_ll_adv_scan_rsp_length_chk_eco4(void){} +void r_ble_ll_adv_data_length_chk(void){} +void r_ble_ll_adv_data_length_chk_eco4(void){} + +/* Cut */ +int r_ble_ll_adv_init_eco4(void){return 0;} +void r_ble_ll_adv_deinit_eco4(void){} +void r_ble_ll_adv_reset_eco4(void){} +bool r_ble_ll_adv_enabled_eco4(void){return 0;} +int r_ble_ll_adv_set_random_addr_eco4(void){return BLE_ERR_UNKNOWN_HCI_CMD;} +void r_ble_ll_adv_rpa_timeout_eco4(void){} +int r_ble_ll_adv_can_chg_whitelist_eco4(void){return 1;} +void r_ble_ll_adv_delay_get(void){} +void r_ble_ll_adv_delay_get_eco4(void){} +void r_ble_lll_adv_update_rsp_offset_eco4(void){} +void r_ble_ll_adv_sm_find_configured(void){} +void r_ble_ll_adv_sm_find_configured_eco4(void){} +int r_ble_ll_adv_hci_set_random_addr_eco4(void){return BLE_ERR_UNKNOWN_HCI_CMD;} +#endif // !DEFAULT_BT_LE_ROLE_BROADCASTER + +#if !DEFAULT_BT_LE_ROLE_BROADCASTER || !DEFAULT_BT_LE_EXT_ADV +int r_ble_ll_adv_ext_set_param_eco4(void){return BLE_ERR_UNKNOWN_HCI_CMD;} +int r_ble_ll_adv_ext_set_adv_data_eco4(void){return BLE_ERR_UNKNOWN_HCI_CMD;} +int r_ble_ll_adv_ext_set_scan_rsp_eco4(void){return BLE_ERR_UNKNOWN_HCI_CMD;} +void r_ble_ll_adv_ext_estimate_data_itvl(void){} +void r_ble_ll_adv_ext_estimate_data_itvl_eco4(void){} +bool r_ble_ll_adv_ext_check_data_itvl_eco4(void){return true;} +void r_ble_ll_adv_aux_calculate_payload(void){} +void r_ble_ll_adv_aux_calculate_payload_eco4(void){} +int r_ble_lll_adv_periodic_start_eco4(void){return 0;}; +void r_ble_ll_adv_aux_calculate(void){}; +void r_ble_ll_adv_aux_calculate_eco4(void){}; +#endif //!DEFAULT_BT_LE_ROLE_BROADCASTER || !DEFAULT_BT_LE_EXT_ADV + +#if !DEFAULT_BT_LE_ROLE_OBSERVER +int r_ble_ll_scan_env_init_eco4(void){return 0;} +void r_ble_ll_scan_dup_update_legacy(void){} +void r_ble_ll_scan_dup_update_legacy_eco4(void){} +void r_ble_ll_scan_get_next_adv_prim_chan(void){} +void r_ble_ll_scan_get_next_adv_prim_chan_eco4(void){} +void r_ble_ll_scan_move_window_to(void){} +void r_ble_ll_scan_move_window_to_eco4(void){} +void r_ble_ll_scan_send_adv_report(void){} +void r_ble_ll_scan_send_adv_report_eco4(void){} +void r_ble_ll_scan_send_adv_lost_report(void){} +void r_ble_ll_scan_send_adv_lost_report_eco4(void){} +void r_ble_ll_scan_common_init(void){} +void r_ble_ll_scan_common_init_eco4(void){} +void r_ble_ll_scan_pre_process(void){} +void r_ble_ll_scan_pre_process_eco4(void){} +void r_ble_ll_scan_env_deinit_eco4(void){} +void r_ble_ll_check_scan_params(void){} +void r_ble_ll_check_scan_params_eco4(void){} +void r_ble_ll_scan_hci_specify_scan_chan(void){} +void r_ble_ll_scan_hci_specify_scan_chan_eco4(void){} +void r_ble_lll_scan_coex_event_cb(void){} +void r_ble_lll_scan_coex_event_cb_eco4(void){} +void r_ble_lll_scan_req_backoff(void){} +void r_ble_lll_scan_req_backoff_eco4(void){} +void r_ble_lll_scan_common_init(void){} +void r_ble_lll_scan_common_init_eco4(void){} +void r_ble_lll_scan_restart(void){} +void r_ble_lll_scan_restart_eco4(void){} +int r_ble_lll_scan_rx_pkt_isr_eco4(void){return -1;} +void r_ble_lll_scan_start(void){} +void r_ble_lll_scan_start_eco4(void){} +void r_ble_lll_scan_start_rx(void){} +void r_ble_lll_scan_start_rx_eco4(void){} +void r_ble_lll_scan_stop(void){} +void r_ble_lll_scan_stop_eco4(void){} +void r_ble_lll_scan_event_proc(void){} +void r_ble_lll_scan_event_proc_eco4(void){} +void r_ble_ll_get_chan_to_scan(void){} +void r_ble_ll_get_chan_to_scan_eco4(void){} +void r_ble_phy_set_scan_mode(void){} +void r_ble_phy_set_scan_mode_eco4(void){} + +void r_ble_ll_scan_init_eco4(void){} +void r_ble_ll_scan_deinit_eco4(void){} +void r_ble_ll_scan_reset_eco4(void){} +int r_ble_ll_scan_can_chg_whitelist_eco4(void){return 1;} +bool r_ble_ll_scan_enabled_eco4(void){return 0;} +void r_ble_ll_scan_continue_status_get_eco4(void){} +void r_ble_ll_scan_continue_status_get_eco4_eco4(void){} +void r_ble_ll_scan_rxed(void){} +void r_ble_ll_scan_rxed_eco4(void){} +void r_ble_ll_scan_set_perfer_addr(void){} +void r_ble_ll_scan_set_perfer_addr_eco4(void){} +int r_ble_lll_scan_chk_resume_eco4(void){return -1;} +int r_ble_ll_scan_status_check(void){return 0;} +int r_ble_ll_scan_status_check_eco4(void){return 0;} +#endif // !DEFAULT_BT_LE_ROLE_OBSERVER + +#if !DEFAULT_BT_LE_ROLE_OBSERVER || !DEFAULT_BT_LE_EXT_SCAN +void r_ble_ll_scan_rx_pkt_in_on_aux_eco4(void){} +void r_ble_lll_aux_scan_cb(void){} +void r_ble_lll_aux_scan_cb_eco4(void){} +void r_ble_ll_hci_send_ext_adv_report(void){} +void r_ble_ll_hci_send_ext_adv_report_eco4(void){} +int r_ble_ll_hci_send_legacy_ext_adv_report_eco4(void){return -1;} +#endif //!DEFAULT_BT_LE_ROLE_OBSERVER || !DEFAULT_BT_LE_EXT_SCAN + +#if !DEFAULT_BT_LE_ROLE_CENTROL +void r_ble_ll_conn_ext_master_init(void){} +void r_ble_ll_conn_ext_master_init_eco4(void){} +void r_ble_ll_conn_master_init(void){} +void r_ble_ll_conn_master_init_eco4(void){} +int r_ble_lll_init_rx_pkt_isr_eco4(void){return -1;} +void r_ble_ll_ctrl_rx_conn_param_rsp(void){} +void r_ble_ll_ctrl_rx_conn_param_rsp_eco4(void){} +#endif // !DEFAULT_BT_LE_ROLE_CENTROL + +#if !DEFAULT_BT_LE_ROLE_PERIPHERAL +int r_ble_ll_conn_slave_start_eco4(void){return 0;} +void r_ble_ll_ctrl_rx_conn_update(void){} +void r_ble_ll_ctrl_rx_conn_update_eco4(void){} +void r_ble_lll_conn_event_delete_and_reschedule(void){} +void r_ble_lll_conn_event_delete_and_reschedule_eco4(void){} +void r_ble_ll_utils_verify_aa(void){} +void r_ble_ll_utils_verify_aa_eco4(void){} +#endif // !DEFAULT_BT_LE_ROLE_PERIPHERAL + +#if !DEFAULT_BT_LE_ROLE_CENTROL && !DEFAULT_BT_LE_ROLE_PERIPHERAL +void r_ble_ll_conn_rx_data_pdu_eco4(void){} +int r_ble_ll_conn_callout_env_init(void){return 0;} +int r_ble_ll_conn_callout_env_init_eco4(void){return 0;} +void r_ble_ll_conn_callout_env_deinit(void){} +void r_ble_ll_conn_callout_env_deinit_eco4(void){} +void r_ble_ll_conn_hci_set_data_len(void){} +void r_ble_ll_conn_hci_set_data_len_eco4(void){} +void r_ble_ll_conn_module_deinit(void){} +void r_ble_ll_conn_module_deinit_eco4(void){} +void r_ble_ll_conn_module_init(void){} +void r_ble_ll_conn_module_init_eco4(void){} +void r_ble_ll_conn_next_event(void){} +void r_ble_ll_conn_next_event_eco4(void){} +void r_ble_ll_conn_set_txpwr_by_handle(void){} +void r_ble_ll_conn_set_txpwr_by_handle_eco4(void){} +void r_ble_ll_conn_sm_new(void){} +void r_ble_ll_conn_sm_new_eco4(void){} +void r_ble_ll_ctrl_rx_chanmap_req(void){} +void r_ble_ll_ctrl_rx_chanmap_req_eco4(void){} +void r_ble_ll_ctrl_conn_param_pdu_make(void){} +void r_ble_ll_ctrl_conn_param_pdu_make_eco4(void){} +void r_ble_ll_ctrl_rx_pdu(void){} +void r_ble_ll_ctrl_rx_pdu_eco4(void){} +void r_ble_ll_ctrl_stop_rsp_timer(void){} +void r_ble_ll_ctrl_stop_rsp_timer_eco4(void){} +void r_ble_ll_conn_update_new_conn_param(void){} +void r_ble_ll_conn_update_new_conn_param_eco4(void){} +void r_ble_ll_conn_update_new_phy(void){} +void r_ble_ll_conn_update_new_phy_eco4(void){} +void r_ble_ll_conn_update_new_chan_map(void){} +void r_ble_ll_conn_update_new_chan_map_eco4(void){} +void r_ble_lll_conn_module_init(void){} +void r_ble_lll_conn_module_init_eco4(void){} +void r_ble_lll_conn_pre_process(void){} +void r_ble_lll_conn_pre_process_eco4(void){} +void r_ble_lll_conn_create_scheduled(void){} +void r_ble_lll_conn_create_scheduled_eco4(void){} +void r_ble_phy_set_conn_mode(void){} +void r_ble_phy_set_conn_mode_eco4(void){} +void r_ble_phy_sequence_update_conn_ind_params(void){} +void r_ble_phy_sequence_update_conn_ind_params_eco4(void){} +void r_ble_phy_update_conn_sequence(void){} +void r_ble_phy_update_conn_sequence_eco4(void){} +void r_ble_lll_conn_event_end_timer_cb(void){} +void r_ble_lll_conn_event_end_timer_cb_eco4(void){} +int r_ble_lll_conn_rx_pkt_isr_eco4(void){return -1;} +/* Can't cut */ +int r_ble_ll_conn_min_mem_env_init(void); +void r_ble_ll_conn_min_mem_env_deinit(void); +void r_ble_ll_conn_module_min_mem_reset(void); +int r_ble_ll_conn_env_init(void){return 0;} +int r_ble_ll_conn_env_init_eco4(void){return r_ble_ll_conn_min_mem_env_init();} +void r_ble_ll_conn_env_deinit(void){} +void r_ble_ll_conn_env_deinit_eco4(void){r_ble_ll_conn_min_mem_env_deinit();} +void r_ble_ll_conn_module_reset(void){}; +void r_ble_ll_conn_module_reset_eco4(void){r_ble_ll_conn_module_min_mem_reset();}; +int r_ble_ll_conn_status_check(void){return 0;} +int r_ble_ll_conn_status_check_eco4(void){return 0;} +void r_ble_ll_set_random_addr(void){}; +void r_ble_ll_set_random_addr_eco4(void){}; +void r_ble_lll_conn_env_deinit(void){}; +void r_ble_lll_conn_env_deinit_eco4(void){}; +void r_ble_ll_conn_init_ref(void){}; +void r_ble_ll_conn_init_ref_eco4(void){}; +#endif // !DEFAULT_BT_LE_ROLE_CENTROL && !DEFAULT_BT_LE_ROLE_PERIPHERAL + +#if !DEFAULT_BT_LE_ROLE_PERIPHERAL || !DEFAULT_BT_LE_2M_PHY && !DEFAULT_BT_LE_CODED_PHY +uint8_t r_ble_ll_ctrl_rx_phy_update_ind_eco4(void){return 0x07;} +#endif // !DEFAULT_BT_LE_2M_PHY && !DEFAULT_BT_LE_CODED_PHY + +#if !DEFAULT_BT_LE_50_FEATURE_SUPPORT || !DEFAULT_BT_LE_PERIODIC_SYNC +int r_ble_ll_sync_env_init_eco4(void){return 0;} +void r_ble_ll_sync_reset_eco4(void){} +void r_ble_ll_sync_parse_ext_hdr(void){} +void r_ble_ll_sync_parse_ext_hdr_eco4(void){} + +void r_ble_ll_sync_info_event(void){} +void r_ble_ll_sync_info_event_eco4(void){} +bool r_ble_ll_sync_filter_enabled(void){return 0;} +bool r_ble_ll_sync_filter_enabled_eco4(void){return 0;} +void r_ble_ll_sync_periodic_ind(void){} +void r_ble_ll_sync_periodic_ind_eco4(void){} +void r_ble_ll_sync_init_eco4(void){} +void r_ble_ll_sync_deinit_eco4(void){} +bool r_ble_ll_sync_enabled_eco4(void){return false;} +int r_ble_ll_sync_status_check(void){return 0;} +int r_ble_ll_sync_status_check_eco4(void){return 0;} +#endif // !DEFAULT_BT_LE_PERIODIC_ADV + +#if !CONFIG_BT_LE_SLEEP_ENABLE +void r_ble_lll_rfmgmt_controller_sleep_en(void){}; +void r_ble_lll_rfmgmt_controller_sleep_en_eco4(void){}; +void r_ble_lll_rfmgmt_set_sleep_cb(void *s_cb, void *w_cb, void *s_arg, void *w_arg, uint32_t us_to_enabled){} +void r_ble_lll_rfmgmt_set_sleep_cb_eco4(void *s_cb, void *w_cb, void *s_arg, void *w_arg, uint32_t us_to_enabled){} +void r_ble_lll_rfmgmt_disable(void){} +void r_ble_lll_rfmgmt_disable_eco4(void){} +void r_ble_lll_rfmgmt_timer_exp(void){} +void r_ble_lll_rfmgmt_timer_exp_eco4(void){} +void r_ble_lll_rfmgmt_timer_reschedule(void){} +void r_ble_lll_rfmgmt_timer_reschedule_eco4(void){} +void r_ble_lll_rfmgmt_enable(void){} +void r_ble_lll_rfmgmt_enable_eco4(void){} +void r_ble_lll_rfmgmt_enable_now(void){} +void r_ble_lll_rfmgmt_enable_now_eco4(void){} +bool r_ble_lll_rfmgmt_is_enabled(void){return 0;} +bool r_ble_lll_rfmgmt_is_enabled_eco4(void){return 0;} +void r_ble_lll_rfmgmt_reset(void){} +void r_ble_lll_rfmgmt_reset_eco4(void){} +int r_ble_lll_rfmgmt_env_init(void){return 0;} +int r_ble_lll_rfmgmt_env_init_eco4(void){return 0;} +void r_ble_lll_rfmgmt_should_skip_light_sleep_check(void){} +void r_ble_lll_rfmgmt_should_skip_light_sleep_check_eco4(void){} +void r_ble_lll_rfmgmt_wake_up_overhead_set(void){} +void r_ble_lll_rfmgmt_wake_up_overhead_set_eco4(void){} +void r_ble_lll_rfmgmt_get_wakeup_delta(void){} +void r_ble_lll_rfmgmt_get_wakeup_delta_eco4(void){} +#endif // CONFIG_BT_LE_SLEEP_ENABLE + +#if !CONFIG_BT_LE_DTM_ENABLED +int r_ble_lll_dtm_env_init_eco4(void){return 0;} +void r_ble_lll_dtm_reset_eco4(void){}; +void r_ble_lll_dtm_rx_create_ctx(void){} +void r_ble_lll_dtm_rx_create_ctx_eco4(void){} +void r_ble_lll_dtm_rx_pkt_in_eco4(void){} +void r_ble_lll_dtm_tx_create_ctx(void){} +void r_ble_lll_dtm_tx_create_ctx_eco4(void){} +void r_ble_lll_dtm_rx_resi_get(void){} +void r_ble_lll_dtm_rx_resi_get_eco4(void){} +void r_ble_lll_dtm_rx_rssi_get(void){} +void r_ble_lll_dtm_rx_rssi_get_eco4(void){} + +int r_ble_lll_dtm_status_check(void){return 0;} +int r_ble_lll_dtm_status_check_eco4(void){return 0;} +#endif // !CONFIG_BT_LE_DTM_ENABLED + +#if !DEFAULT_BT_LE_TX_CCA_ENABLED +void r_ble_lll_sched_offset_update(void){} +void r_ble_lll_sched_offset_update_eco4(void){} +#endif // !DEFAULT_BT_LE_TX_CCA_ENABLED + +#if !DEFAULT_BT_LE_ROLE_OBSERVER && !DEFAULT_BT_LE_ROLE_CENTROL && !DEFAULT_BT_LE_ROLE_PERIPHERAL +void r_ble_phy_set_rxwin1(void){} +void r_ble_phy_set_rxwin1_eco4(void){} +#endif // !DEFAULT_BT_LE_ROLE_CENTROL && !DEFAULT_BT_LE_ROLE_PERIPHERAL + +#if !DEFAULT_BT_LE_PERIODIC_SYNC && !DEFAULT_BT_LE_ROLE_PERIPHERAL +void r_ble_ll_customize_peer_sca_set(void){} +void r_ble_ll_customize_peer_sca_set_eco4(void){} +int r_ble_ll_customize_peer_sca_get(void){return 0;} +int r_ble_ll_customize_peer_sca_get_eco4(void){return 0;} +int r_ble_ll_utils_calc_window_widening(void){return 0;} +int r_ble_ll_utils_calc_window_widening_eco4(void){return 0;} +#endif // !DEFAULT_BT_LE_PERIODIC_SYNC && !DEFAULT_BT_LE_ROLE_PERIPHERAL + +#if !(CONFIG_BT_NIMBLE_ENABLED || CONFIG_BT_BLUEDROID_ENABLED) +void r_ble_vendor_hci_register(void){} +void r_ble_vendor_hci_register_eco4(void){} +void r_ble_vendor_hci_unregister(void){} +void r_ble_vendor_hci_unregister_eco4(void){} +bool r_ble_ll_hci_vendor_event_is_enabled(void){return 0;} +bool r_ble_ll_hci_vendor_event_is_enabled_eco4(void){return 0;} +void r_ble_ll_hci_vs_cmd_proc(void){} +void r_ble_ll_hci_vs_cmd_proc_eco4(void){} +void r_ble_ll_hci_vs_csa_set(void){} +void r_ble_ll_hci_vs_csa_set_eco4(void){} +void r_ble_ll_reset_config_params(void){} +void r_ble_ll_reset_config_params_eco4(void){} +#endif // !(CONFIG_BT_NIMBLE_ENABLED || CONFIG_BT_BLUEDROID_ENABLED) diff --git a/components/esp_rom/esp32c2/ld/esp32c2.rom.ble-eco4.ld b/components/esp_rom/esp32c2/ld/esp32c2.rom.ble-eco4.ld index bf4efb71fd..6f41a006bc 100644 --- a/components/esp_rom/esp32c2/ld/esp32c2.rom.ble-eco4.ld +++ b/components/esp_rom/esp32c2/ld/esp32c2.rom.ble-eco4.ld @@ -35,8 +35,8 @@ r_ble_controller_get_rom_compile_version = 0x40000ac4; //r_ble_hci_ram_reset = 0x40000ad8; //r_ble_hci_ram_set_acl_free_cb = 0x40000adc; //r_ble_hci_trans_acl_buf_alloc = 0x40000ae0; -r_ble_hci_trans_buf_alloc = 0x40000ae4; -r_ble_hci_trans_buf_free = 0x40000ae8; +//r_ble_hci_trans_buf_alloc = 0x40000ae4; +//r_ble_hci_trans_buf_free = 0x40000ae8; r_ble_hci_trans_cfg_hs = 0x40000aec; r_ble_hci_trans_cfg_ll = 0x40000af0; r_ble_hci_trans_deinit = 0x40000af4; @@ -409,7 +409,7 @@ r_ble_ll_init_alloc_conn_comp_ev = 0x400010ac; r_ble_ll_init_get_conn_comp_ev = 0x400010b0; r_ble_ll_init_rx_pkt_in = 0x400010b4; r_ble_ll_is_addr_empty = 0x400010b8; -r_ble_ll_is_controller_busy = 0x400010bc; +//r_ble_ll_is_controller_busy = 0x400010bc; r_ble_ll_is_on_resolv_list = 0x400010c0; r_ble_ll_is_our_devaddr = 0x400010c4; r_ble_ll_is_rpa = 0x400010c8; @@ -477,7 +477,7 @@ r_ble_ll_scan_add_scan_rsp_adv = 0x400011bc; r_ble_ll_scan_adv_decode_addr = 0x400011c0; r_ble_ll_scan_aux_data_ref = 0x400011c4; r_ble_ll_scan_aux_data_unref = 0x400011c8; -//r_ble_ll_scan_can_chg_whitelist = 0x400011cc; +r_ble_ll_scan_can_chg_whitelist = 0x400011cc; r_ble_ll_scan_check_periodic_sync = 0x400011d0; r_ble_ll_scan_classify_filter_aux_init = 0x400011d4; r_ble_ll_scan_classify_filter_init = 0x400011d8; @@ -793,7 +793,7 @@ r_ble_lll_scan_deinit = 0x400016ac; r_ble_lll_scan_duration_period_timers_restart = 0x400016b0; r_ble_lll_scan_duration_period_timers_stop = 0x400016b4; r_ble_lll_scan_duration_timer_cb = 0x400016b8; -//r_ble_lll_scan_event_proc = 0x400016bc; +r_ble_lll_scan_event_proc = 0x400016bc; r_ble_lll_scan_ext_adv_init = 0x400016c0; r_ble_lll_scan_halt = 0x400016c4; r_ble_lll_scan_has_sent_scan_req = 0x400016c8; diff --git a/components/esp_rom/esp32c2/ld/esp32c2.rom.ble.ld b/components/esp_rom/esp32c2/ld/esp32c2.rom.ble.ld index 576b3e3b8d..83356ce1d2 100644 --- a/components/esp_rom/esp32c2/ld/esp32c2.rom.ble.ld +++ b/components/esp_rom/esp32c2/ld/esp32c2.rom.ble.ld @@ -30,8 +30,8 @@ r_ble_controller_get_rom_compile_version = 0x40000ac4; //r_ble_hci_ram_reset = 0x40000ad8; //r_ble_hci_ram_set_acl_free_cb = 0x40000adc; //r_ble_hci_trans_acl_buf_alloc = 0x40000ae0; -r_ble_hci_trans_buf_alloc = 0x40000ae4; -r_ble_hci_trans_buf_free = 0x40000ae8; +//r_ble_hci_trans_buf_alloc = 0x40000ae4; +//r_ble_hci_trans_buf_free = 0x40000ae8; r_ble_hci_trans_cfg_hs = 0x40000aec; r_ble_hci_trans_cfg_ll = 0x40000af0; //r_ble_hci_trans_init = 0x40000afc; @@ -327,7 +327,7 @@ r_ble_ll_hw_error = 0x400010a4; r_ble_ll_init_alloc_conn_comp_ev = 0x400010ac; r_ble_ll_init_get_conn_comp_ev = 0x400010b0; r_ble_ll_is_addr_empty = 0x400010b8; -r_ble_ll_is_controller_busy = 0x400010bc; +//r_ble_ll_is_controller_busy = 0x400010bc; r_ble_ll_is_on_resolv_list = 0x400010c0; r_ble_ll_is_our_devaddr = 0x400010c4; r_ble_ll_is_rpa = 0x400010c8;