xref: /rockchip-linux_mpp/kmpp/inc/kmpp_vdec.h (revision 437bfbeb9567cca9cd9080e3f6954aa9d6a94f18)
1*437bfbebSnyanmisaka /* SPDX-License-Identifier: Apache-2.0 OR MIT */
2*437bfbebSnyanmisaka /*
3*437bfbebSnyanmisaka  * Copyright (c) 2025 Rockchip Electronics Co., Ltd.
4*437bfbebSnyanmisaka  */
5*437bfbebSnyanmisaka 
6*437bfbebSnyanmisaka #ifndef __KMPP_VDEC_H__
7*437bfbebSnyanmisaka #define __KMPP_VDEC_H__
8*437bfbebSnyanmisaka 
9*437bfbebSnyanmisaka #include "rk_vdec_kcfg.h"
10*437bfbebSnyanmisaka 
11*437bfbebSnyanmisaka typedef void* KmppVdec;
12*437bfbebSnyanmisaka 
13*437bfbebSnyanmisaka #define KMPP_VDEC_IOCTL_TABLE(prefix, IOC_CTX, IOC_IN_, IOC_OUT, IOC_IO_) \
14*437bfbebSnyanmisaka     IOC_IN_(prefix, init,           MppVdecKcfg)                \
15*437bfbebSnyanmisaka     IOC_CTX(prefix, deinit)                                     \
16*437bfbebSnyanmisaka     IOC_CTX(prefix, reset)                                      \
17*437bfbebSnyanmisaka     IOC_CTX(prefix, start)                                      \
18*437bfbebSnyanmisaka     IOC_CTX(prefix, stop)                                       \
19*437bfbebSnyanmisaka     IOC_IN_(prefix, get_cfg,        MppVdecKcfg)                \
20*437bfbebSnyanmisaka     IOC_IN_(prefix, set_cfg,        MppVdecKcfg)                \
21*437bfbebSnyanmisaka     IOC_IN_(prefix, get_rt_cfg,     MppVdecKcfg)                \
22*437bfbebSnyanmisaka     IOC_IN_(prefix, set_rt_cfg,     MppVdecKcfg)                \
23*437bfbebSnyanmisaka     IOC_IO_(prefix, decode,         KmppPacket,     KmppFrame)  \
24*437bfbebSnyanmisaka     IOC_IN_(prefix, put_pkt,        KmppPacket)                 \
25*437bfbebSnyanmisaka     IOC_OUT(prefix, get_frm,        KmppFrame)                  \
26*437bfbebSnyanmisaka     IOC_IN_(prefix, put_frm,        KmppFrame)
27*437bfbebSnyanmisaka 
28*437bfbebSnyanmisaka #define KMPP_OBJ_NAME               kmpp_vdec
29*437bfbebSnyanmisaka #define KMPP_OBJ_INTF_TYPE          KmppVdec
30*437bfbebSnyanmisaka #define KMPP_OBJ_FUNC_IOCTL         KMPP_VDEC_IOCTL_TABLE
31*437bfbebSnyanmisaka #include "kmpp_obj_func.h"
32*437bfbebSnyanmisaka 
33*437bfbebSnyanmisaka #endif /*__KMPP_VDEC_H__*/
34