xref: /rockchip-linux_mpp/osal/inc/mpp_platform.h (revision 437bfbeb9567cca9cd9080e3f6954aa9d6a94f18)
1 /* SPDX-License-Identifier: Apache-2.0 OR MIT */
2 /*
3  * Copyright (c) 2015 Rockchip Electronics Co., Ltd.
4  */
5 
6 #ifndef __MPP_PLATFORM__
7 #define __MPP_PLATFORM__
8 
9 #include "rk_type.h"
10 #include "mpp_soc.h"
11 
12 /*
13  * Platform flag detection is for rockchip hardware platform detection
14  */
15 typedef enum MppIoctlVersion_e {
16     IOCTL_VCODEC_SERVICE,
17     IOCTL_MPP_SERVICE_V1,
18     IOCTL_VERSION_BUTT,
19 } MppIoctlVersion;
20 
21 typedef enum MppKernelVersion_e {
22     KERNEL_UNKNOWN,
23     KERNEL_3_10,
24     KERNEL_4_4,
25     KERNEL_4_19,
26     KERNEL_5_10,
27     KERNEL_6_1,
28     KERNEL_VERSION_BUTT,
29 } MppKernelVersion;
30 
31 #ifdef __cplusplus
32 extern "C" {
33 #endif
34 
35 MppIoctlVersion mpp_get_ioctl_version(void);
36 MppKernelVersion mpp_get_kernel_version(void);
37 rk_u32 mpp_get_2d_hw_flag(void);
38 rk_u32 mpp_get_client_hw_id(RK_S32 client_type);
39 rk_u32 mpp_get_vcodec_type(void);
40 
41 #ifdef __cplusplus
42 }
43 #endif
44 
45 #endif /*__MPP_PLATFORM__*/
46