mirror of
https://github.com/espressif/esp-idf.git
synced 2026-10-01 18:50:34 +03:00
feat(ble_audio): Add specific libs for BLE Audio log compression
This commit is contained in:
@@ -34,18 +34,16 @@ static void iso_timer_cb(void *arg)
|
||||
|
||||
err = bt_le_iso_task_post(ISO_QUEUE_ITEM_TYPE_TIMER_EVENT, work, 0);
|
||||
if (err) {
|
||||
LOG_ERR("IsoTimerPostFail[%d]", err);
|
||||
LOG_ERR("TimerCbPostFail[%d]", err);
|
||||
}
|
||||
}
|
||||
|
||||
int k_work_submit(struct k_work *work)
|
||||
{
|
||||
LOG_DBG("WorkSubmit[%p]", work);
|
||||
|
||||
assert(work);
|
||||
|
||||
if (work->handler == NULL) {
|
||||
LOG_WRN("WorkHdlrNull");
|
||||
LOG_WRN("TimerSubmitHdlrNull");
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
@@ -67,62 +65,52 @@ bool k_work_is_pending(struct k_work *work)
|
||||
{
|
||||
bool is_pending;
|
||||
|
||||
LOG_DBG("WorkIsPending[%p]", work);
|
||||
|
||||
assert(work);
|
||||
|
||||
if (work->handler == NULL) {
|
||||
LOG_WRN("WorkHdlrNull");
|
||||
LOG_WRN("TimerIsPendingHdlrNull");
|
||||
return false;
|
||||
}
|
||||
|
||||
is_pending = (work->timer ? esp_timer_is_active(work->timer) : false);
|
||||
|
||||
LOG_DBG("%sPending", is_pending ? "Is" : "Not");
|
||||
LOG_DBG("TimerIsPendingRet[%s]", is_pending ? "Is" : "Not");
|
||||
|
||||
return is_pending;
|
||||
}
|
||||
|
||||
void k_work_init(struct k_work *work, k_work_handler_t handler)
|
||||
{
|
||||
LOG_DBG("WorkInit[%p]", work);
|
||||
|
||||
assert(work);
|
||||
|
||||
work->handler = handler;
|
||||
}
|
||||
|
||||
struct k_work_delayable *k_work_delayable_from_work(struct k_work *work)
|
||||
{
|
||||
LOG_DBG("DworkFromWork[%p]", work);
|
||||
|
||||
assert(work);
|
||||
|
||||
return (struct k_work_delayable *)work;
|
||||
}
|
||||
|
||||
void k_work_init_delayable(struct k_work_delayable *dwork,
|
||||
k_work_handler_t handler)
|
||||
{
|
||||
LOG_DBG("DworkInit[%p]", dwork);
|
||||
|
||||
assert(dwork);
|
||||
|
||||
const esp_timer_create_args_t timer_args = {
|
||||
.callback = &iso_timer_cb,
|
||||
.arg = &dwork->work,
|
||||
.name = "iso_timer",
|
||||
.name = "IsoTimer",
|
||||
};
|
||||
int err;
|
||||
|
||||
if (dwork->work.timer) {
|
||||
LOG_WRN("TimerCreated");
|
||||
LOG_WRN("TimerInitAlreadyCreated");
|
||||
return;
|
||||
}
|
||||
|
||||
err = esp_timer_create(&timer_args, (esp_timer_handle_t *)&dwork->work.timer);
|
||||
if (err) {
|
||||
LOG_ERR("CreateTimerFail[%d]", err);
|
||||
LOG_ERR("TimerInitCreateFail[%d]", err);
|
||||
/* Reset handler so the object remains in a clean uninitialized state */
|
||||
dwork->work.handler = NULL;
|
||||
return;
|
||||
@@ -135,18 +123,16 @@ void k_work_deinit_delayable(struct k_work_delayable *dwork)
|
||||
{
|
||||
int err;
|
||||
|
||||
LOG_DBG("DworkDeinit[%p]", dwork);
|
||||
|
||||
assert(dwork);
|
||||
|
||||
if (dwork->work.timer == NULL) {
|
||||
LOG_INF("TimerNotCreated");
|
||||
LOG_INF("TimerDeinitNotCreated");
|
||||
return;
|
||||
}
|
||||
|
||||
err = esp_timer_delete(dwork->work.timer);
|
||||
if (err) {
|
||||
LOG_ERR("DeleteTimerFail[%d]", err);
|
||||
LOG_ERR("TimerDeinitDelFail[%d]", err);
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -155,12 +141,10 @@ void k_work_deinit_delayable(struct k_work_delayable *dwork)
|
||||
|
||||
int k_work_cancel_delayable(struct k_work_delayable *dwork)
|
||||
{
|
||||
LOG_DBG("DworkCancel[%p]", dwork);
|
||||
|
||||
assert(dwork);
|
||||
|
||||
if (dwork->work.timer == NULL) {
|
||||
LOG_INF("TimerNotCreated");
|
||||
LOG_INF("TimerCancelNotCreated");
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
@@ -172,14 +156,12 @@ int k_work_cancel_delayable(struct k_work_delayable *dwork)
|
||||
bool k_work_cancel_delayable_sync(struct k_work_delayable *dwork,
|
||||
struct k_work_sync *sync)
|
||||
{
|
||||
LOG_DBG("DworkCancelSync[%p]", dwork);
|
||||
|
||||
assert(dwork);
|
||||
|
||||
ARG_UNUSED(sync);
|
||||
|
||||
if (dwork->work.timer == NULL) {
|
||||
LOG_INF("TimerNotCreated");
|
||||
LOG_INF("TimerCancelSyncNotCreated");
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -193,12 +175,10 @@ int k_work_schedule(struct k_work_delayable *dwork, k_timeout_t ms)
|
||||
{
|
||||
int err;
|
||||
|
||||
LOG_DBG("WorkSchedule[%p][%u]", dwork, ms);
|
||||
|
||||
assert(dwork);
|
||||
|
||||
if (dwork->work.timer == NULL) {
|
||||
LOG_WRN("TimerNotCreated");
|
||||
LOG_WRN("TimerSchNotCreated");
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
@@ -213,7 +193,7 @@ int k_work_schedule(struct k_work_delayable *dwork, k_timeout_t ms)
|
||||
|
||||
err = esp_timer_start_once(dwork->work.timer, ms * 1000);
|
||||
if (err) {
|
||||
LOG_ERR("StartTimerFail[%d]", err);
|
||||
LOG_ERR("TimerSchStartFail[%d]", err);
|
||||
return -EIO;
|
||||
}
|
||||
|
||||
@@ -224,12 +204,10 @@ int k_work_reschedule(struct k_work_delayable *dwork, k_timeout_t ms)
|
||||
{
|
||||
int err;
|
||||
|
||||
LOG_DBG("WorkReschedule[%p][%u]", dwork, ms);
|
||||
|
||||
assert(dwork);
|
||||
|
||||
if (dwork->work.timer == NULL) {
|
||||
LOG_WRN("TimerNotCreated");
|
||||
LOG_WRN("TimerReschNotCreated");
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
@@ -244,7 +222,7 @@ int k_work_reschedule(struct k_work_delayable *dwork, k_timeout_t ms)
|
||||
|
||||
err = esp_timer_start_once(dwork->work.timer, ms * 1000);
|
||||
if (err) {
|
||||
LOG_ERR("RestartTimerFail[%d]", err);
|
||||
LOG_ERR("TimerReschStartFail[%d]", err);
|
||||
return -EIO;
|
||||
}
|
||||
|
||||
@@ -255,13 +233,11 @@ int k_work_schedule_periodic_us(struct k_work_delayable *dwork, uint64_t period_
|
||||
{
|
||||
int err;
|
||||
|
||||
LOG_DBG("WorkSchedulePeriodicUs[%p][%llu]", dwork, (unsigned long long)period_us);
|
||||
|
||||
assert(dwork);
|
||||
assert(period_us > 0);
|
||||
|
||||
if (dwork->work.timer == NULL) {
|
||||
LOG_WRN("TimerNotCreated");
|
||||
LOG_WRN("TimerPeriodicNotCreated");
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
@@ -269,7 +245,7 @@ int k_work_schedule_periodic_us(struct k_work_delayable *dwork, uint64_t period_
|
||||
|
||||
err = esp_timer_start_periodic(dwork->work.timer, period_us);
|
||||
if (err) {
|
||||
LOG_ERR("StartPeriodicTimerFail[%d]", err);
|
||||
LOG_ERR("TimerPeriodicStartFail[%d]", err);
|
||||
return -EIO;
|
||||
}
|
||||
|
||||
@@ -289,17 +265,15 @@ k_timeout_t k_work_delayable_remaining_get(struct k_work_delayable *dwork)
|
||||
k_timeout_t timeout;
|
||||
int64_t delta_us;
|
||||
|
||||
LOG_DBG("DworkRemainingGet[%p]", dwork);
|
||||
|
||||
assert(dwork);
|
||||
|
||||
if (dwork->work.timer == NULL) {
|
||||
LOG_WRN("TimerNotCreated");
|
||||
LOG_WRN("TimerRemainingNotCreated");
|
||||
return 0;
|
||||
}
|
||||
|
||||
if (dwork->work.timeout_us == 0) {
|
||||
LOG_DBG("WorkTimeoutZero");
|
||||
LOG_DBG("TimerRemainingTimeoutZero");
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -307,7 +281,7 @@ k_timeout_t k_work_delayable_remaining_get(struct k_work_delayable *dwork)
|
||||
|
||||
timeout = (delta_us > 0 ? (k_timeout_t)(delta_us / 1000) : 0);
|
||||
|
||||
LOG_DBG("Timeout[%u]", timeout);
|
||||
LOG_DBG("TimerRemaining[%u]", timeout);
|
||||
|
||||
return timeout;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user