From 199e1ae9bf245c6878c19bfb4c3e1c19e4d0903a Mon Sep 17 00:00:00 2001 From: YuhengLi Date: Thu, 20 Nov 2025 15:26:02 +0800 Subject: [PATCH] zblue: hfp: implement bt_sal_hfp_hf_send_battery_level API bug: v/78000 Signed-off-by: YuhengLi --- service/stacks/zephyr/sal_hfp_hf_interface.c | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/service/stacks/zephyr/sal_hfp_hf_interface.c b/service/stacks/zephyr/sal_hfp_hf_interface.c index 3df776ae..17a00c3f 100644 --- a/service/stacks/zephyr/sal_hfp_hf_interface.c +++ b/service/stacks/zephyr/sal_hfp_hf_interface.c @@ -1132,7 +1132,21 @@ bt_status_t bt_sal_hfp_hf_stop_voice_recognition(bt_address_t* addr) bt_status_t bt_sal_hfp_hf_send_battery_level(bt_address_t* addr, uint8_t value) { - return BT_STATUS_UNSUPPORTED; + bt_hfp_hf_connection_t* sal_conn = find_connection_by_addr(addr); + if (!sal_conn) { + BT_LOGE("%s, Failed to find connection", __func__); + return BT_STATUS_PARM_INVALID; + } + + uint8_t level = (value > 100) ? 100 : value; + + int ret = Z_API(bt_hfp_hf_battery)(sal_conn->hf, level); + if (ret == -ENOTSUP) { + return BT_STATUS_UNSUPPORTED; + } + + SAL_CHECK_RET(ret, 0); + return BT_STATUS_SUCCESS; } bt_status_t bt_sal_hfp_hf_send_at_cmd(bt_address_t* addr, const char* cmd, uint16_t len)