diff --git a/src/audio/component.c b/src/audio/component.c index 66fbed1535b3..e2d32367f322 100644 --- a/src/audio/component.c +++ b/src/audio/component.c @@ -41,6 +41,7 @@ static APP_SYSUSER_BSS SHARED_DATA struct comp_driver_list cd; #ifdef CONFIG_SOF_USERSPACE_LL struct comp_driver_list *comp_drivers_get(void) { + assert(!ll_sch_is_current()); return &cd; } #endif diff --git a/src/schedule/zephyr_ll.c b/src/schedule/zephyr_ll.c index cf5ae0229d27..bf4a0e98d804 100644 --- a/src/schedule/zephyr_ll.c +++ b/src/schedule/zephyr_ll.c @@ -758,7 +758,7 @@ void scheduler_get_task_info_ll(struct scheduler_props *scheduler_props, uint32_t flags; scheduler_props->processing_domain = COMP_PROCESSING_DOMAIN_LL; - struct zephyr_ll *ll_sch = (struct zephyr_ll *)scheduler_get_data(SOF_SCHEDULE_LL_TIMER); + struct zephyr_ll *ll_sch = scheduler_get_data(SOF_SCHEDULE_LL_TIMER); zephyr_ll_lock(ll_sch, &flags); scheduler_get_task_info(scheduler_props, data_off_size, &ll_sch->tasks); diff --git a/zephyr/schedule.c b/zephyr/schedule.c index afc53995610f..3874b28ff1f6 100644 --- a/zephyr/schedule.c +++ b/zephyr/schedule.c @@ -33,8 +33,7 @@ static APP_SYSUSER_BSS struct schedulers *_u_schedulers[CONFIG_CORE_COUNT]; */ struct schedulers **arch_schedulers_get(void) { -#if CONFIG_SOF_USERSPACE_LL - /* user-space callers must use arch_user_schedulers_get() */ +#ifdef __ZEPHYR__ assert(!k_is_user_context()); #endif return _k_schedulers + cpu_get_id(); @@ -53,6 +52,7 @@ EXPORT_SYMBOL(arch_schedulers_get); struct schedulers **arch_user_schedulers_get(void) { #ifdef CONFIG_SOF_USERSPACE_LL + assert(!k_is_user_context()); return _u_schedulers + cpu_get_id(); #else return NULL;