Sound Open Firmware
Loading...
Searching...
No Matches
schedule.h
Go to the documentation of this file.
1/* SPDX-License-Identifier: BSD-3-Clause
2 *
3 * Copyright(c) 2016 Intel Corporation. All rights reserved.
4 *
5 * Author: Liam Girdwood <liam.r.girdwood@linux.intel.com>
6 * Keyon Jie <yang.jie@linux.intel.com>
7 */
8
15#ifndef __SOF_IPC_SCHEDULE_H__
16#define __SOF_IPC_SCHEDULE_H__
17
18#include <rtos/task.h>
19#include <rtos/sof.h>
20#include <stdbool.h>
21#include <stdint.h>
22
28#define IPC_PERIOD_USEC 100
29
30struct ipc;
31
37static inline uint64_t ipc_task_deadline(void *data)
38{
39 /* TODO: Currently it's a workaround to execute IPC tasks ASAP.
40 * In the future IPCs should have a cycle budget and deadline
41 * should be calculated based on that value. This means every
42 * IPC should have its own maximum number of cycles that is required
43 * to finish processing. This will allow us to calculate task deadline.
44 */
46}
47
53
56#endif
void ipc_schedule_process(struct ipc *ipc)
Schedule processing of the next pending IPC command received from host.
#define SOF_TASK_DEADLINE_NOW
Immediate deadline; run as soon as possible.
Definition task.h:40
static uint64_t ipc_task_deadline(void *data)
Retrieve IPC command processing deadline.
Definition schedule.h:37
uint8_t data[0]
Binary byte payload for raw controls.
Definition header.h:5
Sound Open Firmware global runtime context.
Definition common.h:97
Core task descriptor, task operations, and task execution state machine.