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__*/