/* SPDX-License-Identifier: (GPL-2.0 OR BSD-3-Clause) */ /* * Wave5 series multi-standard codec IP - low level access functions * * Copyright (C) 2021-2023 CHIPS&MEDIA INC */ #ifndef _VDI_H_ #define _VDI_H_ #include "wave5-vpuconfig.h" #include <linux/string.h> #include <linux/slab.h> #include <linux/device.h> /************************************************************************/ /* COMMON REGISTERS */ /************************************************************************/ #define VPU_PRODUCT_CODE_REGISTER 0x1044 /* system register write */ #define vpu_write_reg(VPU_INST, ADDR, DATA) wave5_vdi_write_register(VPU_INST, ADDR, DATA) /* system register read */ #define vpu_read_reg(CORE, ADDR) wave5_vdi_read_register(CORE, ADDR) struct vpu_buf { size_t size; dma_addr_t daddr; void *vaddr; }; int wave5_vdi_init(struct device *dev); int wave5_vdi_release(struct device *dev); //this function may be called only at system off. #endif //#ifndef _VDI_H_