diff options
Diffstat (limited to 'drivers/staging/media/sunxi/cedar/ve/cedar_ve.h')
-rw-r--r-- | drivers/staging/media/sunxi/cedar/ve/cedar_ve.h | 85 |
1 files changed, 85 insertions, 0 deletions
diff --git a/drivers/staging/media/sunxi/cedar/ve/cedar_ve.h b/drivers/staging/media/sunxi/cedar/ve/cedar_ve.h new file mode 100644 index 000000000000..4c69c3b53ad7 --- /dev/null +++ b/drivers/staging/media/sunxi/cedar/ve/cedar_ve.h @@ -0,0 +1,85 @@ +/* + * Filename: cedarv_ve.h + * Version: 0.01alpha + * Description: Video engine driver API, Don't modify it in user space. + * License: GPLv2 + * + * Author : xyliu <xyliu@allwinnertech.com> + * Date : 2016/04/13 + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + */ +/* Notice: It's video engine driver API, Don't modify it in user space. */ +#ifndef _CEDAR_VE_H_ +#define _CEDAR_VE_H_ + +enum IOCTL_CMD +{ + IOCTL_UNKOWN = 0x100, + IOCTL_GET_ENV_INFO, + IOCTL_WAIT_VE_DE, + IOCTL_WAIT_VE_EN, + IOCTL_RESET_VE, + IOCTL_ENABLE_VE, + IOCTL_DISABLE_VE, + IOCTL_SET_VE_FREQ, + + IOCTL_CONFIG_AVS2 = 0x200, + IOCTL_GETVALUE_AVS2, + IOCTL_PAUSE_AVS2, + IOCTL_START_AVS2, + IOCTL_RESET_AVS2, + IOCTL_ADJUST_AVS2, + IOCTL_ENGINE_REQ, + IOCTL_ENGINE_REL, + IOCTL_ENGINE_CHECK_DELAY, + IOCTL_GET_IC_VER, + IOCTL_ADJUST_AVS2_ABS, + IOCTL_FLUSH_CACHE, + IOCTL_SET_REFCOUNT, + IOCTL_FLUSH_CACHE_ALL, + IOCTL_TEST_VERSION, + + IOCTL_GET_LOCK = 0x310, + IOCTL_RELEASE_LOCK, + + IOCTL_SET_VOL = 0x400, + + IOCTL_WAIT_JPEG_DEC = 0x500, + /*for get the ve ref_count for ipc to delete the semphore*/ + IOCTL_GET_REFCOUNT, + + /*for iommu*/ + IOCTL_GET_IOMMU_ADDR, + IOCTL_FREE_IOMMU_ADDR, + + /*for debug*/ + IOCTL_SET_PROC_INFO, + IOCTL_STOP_PROC_INFO, + IOCTL_COPY_PROC_INFO, + + IOCTL_SET_DRAM_HIGH_CHANNAL = 0x600, +}; + +#define VE_LOCK_VDEC 0x01 +#define VE_LOCK_VENC 0x02 +#define VE_LOCK_JDEC 0x04 +#define VE_LOCK_00_REG 0x08 +#define VE_LOCK_04_REG 0x10 +#define VE_LOCK_ERR 0x80 + +struct cedarv_env_infomation +{ + unsigned int phymem_start; + int phymem_total_size; + unsigned long address_macc; +}; + +#endif |