#include <linux/init.h>
#include <linux/interconnect.h>
#include <linux/ioctl.h>
#include <linux/list.h>
#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/platform_device.h>
#include <linux/firmware/imx/ipc.h>
#include <linux/firmware/imx/svc/misc.h>
#include "vpu.h"
#include "vpu_rpc.h"
#include "vpu_imx8q.h"
#include "vpu_windsor.h"
#include "vpu_malone.h"
int vpu_iface_check_memory_region(struct vpu_core *core, dma_addr_t addr, u32 size)
{ … }
static u32 vpu_rpc_check_buffer_space(struct vpu_rpc_buffer_desc *desc, bool write)
{ … }
static int vpu_rpc_send_cmd_buf(struct vpu_shared_addr *shared, struct vpu_rpc_event *cmd)
{ … }
static bool vpu_rpc_check_msg(struct vpu_shared_addr *shared)
{ … }
static int vpu_rpc_receive_msg_buf(struct vpu_shared_addr *shared, struct vpu_rpc_event *msg)
{ … }
static struct vpu_iface_ops imx8q_rpc_ops[] = …;
static struct vpu_iface_ops *vpu_get_iface(struct vpu_dev *vpu, enum vpu_core_type type)
{ … }
struct vpu_iface_ops *vpu_core_get_iface(struct vpu_core *core)
{ … }
struct vpu_iface_ops *vpu_inst_get_iface(struct vpu_inst *inst)
{ … }