1 /* SPDX-License-Identifier: BSD-3-Clause
2  *
3  * Copyright(c) 2017 Intel Corporation. All rights reserved.
4  *
5  * Author: Liam Girdwood <liam.r.girdwood@linux.intel.com>
6  */
7 
8 #ifndef __SOF_SCHEDULE_EDF_SCHEDULE_H__
9 #define __SOF_SCHEDULE_EDF_SCHEDULE_H__
10 
11 #include <rtos/task.h>
12 #include <sof/trace/trace.h>
13 #include <user/trace.h>
14 #include <stdint.h>
15 
16 #define EDF_ZEPHYR_PRIORITY 1
17 
18 #define edf_sch_set_pdata(task, data) \
19 	(task->priv_data = data)
20 
21 #define edf_sch_get_pdata(task) task->priv_data
22 
23 struct edf_task_pdata {
24 	void *ctx;
25 };
26 
27 int scheduler_init_edf(void);
28 
29 int schedule_task_init_edf(struct task *task, const struct sof_uuid_entry *uid,
30 			   const struct task_ops *ops,
31 			   void *data, uint16_t core, uint32_t flags);
32 
33 #endif /* __SOF_SCHEDULE_EDF_SCHEDULE_H__ */
34