xref: /rockchip-linux_mpp/kmpp/base/inc/kmpp_meta_impl.h (revision 437bfbeb9567cca9cd9080e3f6954aa9d6a94f18)
1 /* SPDX-License-Identifier: Apache-2.0 OR MIT */
2 /*
3  * Copyright (c) 2024 Rockchip Electronics Co., Ltd.
4  */
5 
6 #ifndef __KMPP_META_IMPL_H__
7 #define __KMPP_META_IMPL_H__
8 
9 #include "mpp_list.h"
10 #include "kmpp_meta.h"
11 
12 #define MPP_TAG_SIZE            32
13 
14 typedef struct __attribute__((packed)) KmppMetaVal_t {
15     rk_u32              state;
16     union {
17         rk_s32          val_s32;
18         rk_s64          val_s64;
19         void            *val_ptr;
20     };
21 } KmppMetaVal;
22 
23 typedef struct __attribute__((packed)) KmppMetaShmVal_t {
24     rk_u32              state;
25     KmppShmPtr          val_shm;
26 } KmppMetaObj;
27 
28 #ifdef __cplusplus
29 extern "C" {
30 #endif
31 
32 #ifdef __cplusplus
33 }
34 #endif
35 
36 #endif /*__KMPP_META_IMPL_H__*/
37