xref: /rockchip-linux_mpp/inc/rk_mpp_cfg.h (revision 437bfbeb9567cca9cd9080e3f6954aa9d6a94f18)
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 __RK_MPP_CFG_H__
7*437bfbebSnyanmisaka #define __RK_MPP_CFG_H__
8*437bfbebSnyanmisaka 
9*437bfbebSnyanmisaka #include "rk_type.h"
10*437bfbebSnyanmisaka #include "mpp_err.h"
11*437bfbebSnyanmisaka 
12*437bfbebSnyanmisaka typedef enum MppCfgStrFmt_e {
13*437bfbebSnyanmisaka     MPP_CFG_STR_FMT_LOG,
14*437bfbebSnyanmisaka     MPP_CFG_STR_FMT_JSON,
15*437bfbebSnyanmisaka     MPP_CFG_STR_FMT_TOML,
16*437bfbebSnyanmisaka     MPP_CFG_STR_FMT_BUTT,
17*437bfbebSnyanmisaka } MppCfgStrFmt;
18*437bfbebSnyanmisaka 
19*437bfbebSnyanmisaka typedef void* MppSysCfg;
20*437bfbebSnyanmisaka 
21*437bfbebSnyanmisaka #ifdef __cplusplus
22*437bfbebSnyanmisaka extern "C" {
23*437bfbebSnyanmisaka #endif
24*437bfbebSnyanmisaka 
25*437bfbebSnyanmisaka MPP_RET mpp_sys_cfg_get(MppSysCfg *cfg);
26*437bfbebSnyanmisaka MPP_RET mpp_sys_cfg_put(MppSysCfg cfg);
27*437bfbebSnyanmisaka MPP_RET mpp_sys_cfg_ioctl(MppSysCfg cfg);
28*437bfbebSnyanmisaka 
29*437bfbebSnyanmisaka MPP_RET mpp_sys_cfg_set_s32(MppSysCfg cfg, const char *name, RK_S32 val);
30*437bfbebSnyanmisaka MPP_RET mpp_sys_cfg_set_u32(MppSysCfg cfg, const char *name, RK_U32 val);
31*437bfbebSnyanmisaka MPP_RET mpp_sys_cfg_set_s64(MppSysCfg cfg, const char *name, RK_S64 val);
32*437bfbebSnyanmisaka MPP_RET mpp_sys_cfg_set_u64(MppSysCfg cfg, const char *name, RK_U64 val);
33*437bfbebSnyanmisaka MPP_RET mpp_sys_cfg_set_ptr(MppSysCfg cfg, const char *name, void *val);
34*437bfbebSnyanmisaka 
35*437bfbebSnyanmisaka MPP_RET mpp_sys_cfg_get_s32(MppSysCfg cfg, const char *name, RK_S32 *val);
36*437bfbebSnyanmisaka MPP_RET mpp_sys_cfg_get_u32(MppSysCfg cfg, const char *name, RK_U32 *val);
37*437bfbebSnyanmisaka MPP_RET mpp_sys_cfg_get_s64(MppSysCfg cfg, const char *name, RK_S64 *val);
38*437bfbebSnyanmisaka MPP_RET mpp_sys_cfg_get_u64(MppSysCfg cfg, const char *name, RK_U64 *val);
39*437bfbebSnyanmisaka MPP_RET mpp_sys_cfg_get_ptr(MppSysCfg cfg, const char *name, void **val);
40*437bfbebSnyanmisaka 
41*437bfbebSnyanmisaka void mpp_sys_cfg_show(void);
42*437bfbebSnyanmisaka 
43*437bfbebSnyanmisaka #ifdef __cplusplus
44*437bfbebSnyanmisaka }
45*437bfbebSnyanmisaka #endif
46*437bfbebSnyanmisaka 
47*437bfbebSnyanmisaka #endif /*__RK_MPP_CFG_H__*/
48