#ifndef MTK_ADSP_IPC_H
#define MTK_ADSP_IPC_H
#include <linux/device.h>
#include <linux/types.h>
#include <linux/mailbox_controller.h>
#include <linux/mailbox_client.h>
#define MTK_ADSP_IPC_REQ …
#define MTK_ADSP_IPC_RSP …
#define MTK_ADSP_IPC_OP_REQ …
#define MTK_ADSP_IPC_OP_RSP …
enum { … };
struct mtk_adsp_ipc;
struct mtk_adsp_ipc_ops { … };
struct mtk_adsp_chan { … };
struct mtk_adsp_ipc { … };
static inline void mtk_adsp_ipc_set_data(struct mtk_adsp_ipc *ipc, void *data)
{ … }
static inline void *mtk_adsp_ipc_get_data(struct mtk_adsp_ipc *ipc)
{ … }
int mtk_adsp_ipc_send(struct mtk_adsp_ipc *ipc, unsigned int idx, uint32_t op);
#endif