xref: /OK3568_Linux_fs/kernel/drivers/gpu/drm/rockchip/ebc-dev/ebc_panel.h (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1 // SPDX-License-Identifier: GPL-2.0
2 /*
3  * Copyright (c) 2020 Rockchip Electronics Co. Ltd.
4  *
5  * Author: Zorro Liu <zorro.liu@rock-chips.com>
6  */
7 
8 #ifndef _EBC_PANEL_H_
9 #define _EBC_PANEL_H_
10 
11 #include <linux/dma-mapping.h>
12 
13 #define DIRECT_FB_NUM	2
14 
15 struct panel_buffer {
16 	void *virt_addr;
17 	unsigned long phy_addr;
18 	size_t size;
19 };
20 
21 struct ebc_panel {
22 	struct device *dev;
23 	struct ebc_tcon *tcon;
24 	struct ebc_pmic *pmic;
25 	struct panel_buffer fb[DIRECT_FB_NUM]; //for direct mode, one pixel 2bit
26 	int current_buffer;
27 
28 	u32 width;
29 	u32 height;
30 	u32 vir_width;
31 	u32 vir_height;
32 	u32 width_mm;
33 	u32 height_mm;
34 	u32 direct_mode;
35 	u32 sdck;
36 	u32 lsl;
37 	u32 lbl;
38 	u32 ldl;
39 	u32 lel;
40 	u32 gdck_sta;
41 	u32 lgonl;
42 	u32 fsl;
43 	u32 fbl;
44 	u32 fdl;
45 	u32 fel;
46 	u32 panel_16bit;
47 	u32 panel_color;
48 	u32 mirror;
49 };
50 #endif
51