xref: /rockchip-linux_mpp/kmpp/base/inc/kmpp_packet.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_PACKET_H__
7*437bfbebSnyanmisaka #define __KMPP_PACKET_H__
8*437bfbebSnyanmisaka 
9*437bfbebSnyanmisaka #include "rk_type.h"
10*437bfbebSnyanmisaka 
11*437bfbebSnyanmisaka #define KMPP_PACKET_ENTRY_TABLE(prefix, ENTRY, STRCT, EHOOK, SHOOK, ALIAS) \
12*437bfbebSnyanmisaka     ENTRY(prefix, s32, rk_s32,      size,           FLAG_NONE, size) \
13*437bfbebSnyanmisaka     ENTRY(prefix, s32, rk_s32,      length,         FLAG_NONE, length) \
14*437bfbebSnyanmisaka     ENTRY(prefix, s64, rk_s64,      pts,            FLAG_NONE, pts) \
15*437bfbebSnyanmisaka     ENTRY(prefix, s64, rk_s64,      dts,            FLAG_NONE, dts) \
16*437bfbebSnyanmisaka     ENTRY(prefix, u32, rk_u32,      status,         FLAG_NONE, status) \
17*437bfbebSnyanmisaka     ENTRY(prefix, u32, rk_u32,      temporal_id,    FLAG_NONE, temporal_id) \
18*437bfbebSnyanmisaka     STRCT(prefix, shm, KmppShmPtr,  data,           FLAG_NONE, data) \
19*437bfbebSnyanmisaka     STRCT(prefix, shm, KmppShmPtr,  buffer,         FLAG_NONE, buffer) \
20*437bfbebSnyanmisaka     STRCT(prefix, shm, KmppShmPtr,  pos,            FLAG_NONE, pos) \
21*437bfbebSnyanmisaka     ENTRY(prefix, u32, rk_u32,      flag,           FLAG_NONE, flag)
22*437bfbebSnyanmisaka 
23*437bfbebSnyanmisaka #ifdef __cplusplus
24*437bfbebSnyanmisaka extern "C" {
25*437bfbebSnyanmisaka #endif
26*437bfbebSnyanmisaka 
27*437bfbebSnyanmisaka #define KMPP_OBJ_NAME           kmpp_packet
28*437bfbebSnyanmisaka #define KMPP_OBJ_INTF_TYPE      KmppPacket
29*437bfbebSnyanmisaka #define KMPP_OBJ_ENTRY_TABLE    KMPP_PACKET_ENTRY_TABLE
30*437bfbebSnyanmisaka #include "kmpp_obj_func.h"
31*437bfbebSnyanmisaka 
32*437bfbebSnyanmisaka rk_s32 kmpp_packet_get_meta(KmppPacket packet, KmppMeta *meta);
33*437bfbebSnyanmisaka 
34*437bfbebSnyanmisaka #ifdef __cplusplus
35*437bfbebSnyanmisaka }
36*437bfbebSnyanmisaka #endif
37*437bfbebSnyanmisaka 
38*437bfbebSnyanmisaka #endif /*__KMPP_PACKET_H__*/