1 /* SPDX-License-Identifier: GPL-2.0-only */ 2 /* 3 * Copyright (c) 2023 MediaTek Inc. 4 * Author: Ping-Hsun Wu <ping-hsun.wu@mediatek.com> 5 */ 6 7 #ifndef __MTK_MDP3_TYPE_H__ 8 #define __MTK_MDP3_TYPE_H__ 9 10 #include <linux/types.h> 11 12 #define IMG_MAX_HW_INPUTS 3 13 #define IMG_MAX_HW_OUTPUTS 4 14 #define IMG_MAX_PLANES 3 15 #define IMG_MAX_COMPONENTS 20 16 17 struct img_crop { 18 s32 left; 19 s32 top; 20 u32 width; 21 u32 height; 22 u32 left_subpix; 23 u32 top_subpix; 24 u32 width_subpix; 25 u32 height_subpix; 26 } __packed; 27 28 struct img_region { 29 s32 left; 30 s32 right; 31 s32 top; 32 s32 bottom; 33 } __packed; 34 35 struct img_offset { 36 s32 left; 37 s32 top; 38 u32 left_subpix; 39 u32 top_subpix; 40 } __packed; 41 42 struct img_mux { 43 u32 reg; 44 u32 value; 45 u32 subsys_id; 46 } __packed; 47 48 struct img_mmsys_ctrl { 49 struct img_mux sets[IMG_MAX_COMPONENTS * 2]; 50 u32 num_sets; 51 } __packed; 52 53 #endif /* __MTK_MDP3_TYPE_H__ */ 54