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