• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Allwinner SoCs display driver.
3  *
4  * Copyright (C) 2016 Allwinner.
5  *
6  * This file is licensed under the terms of the GNU General Public
7  * License version 2.  This program is licensed "as is" without any
8  * warranty of any kind, whether express or implied.
9  */
10 #ifndef _SUNXI_DSI_H_
11 #define _SUNXI_DSI_H_
12 #include "de/include.h"
13 #include "de_dsi.h"
14 
15 struct sunxi_dsi {
16 	u32 id;
17 
18 	/*Just for abnormal dsi use*/
19 	u32 tcon_mode;
20 	u32 slave_tcon_num;
21 	u32 port_num;
22 };
23 
24 s32 sunxi_dsi_mode_switch(struct sunxi_dsi *dsi, u32 cmd_en, u32 lp_en);
25 s32 sunxi_dsi_clk_enable(struct sunxi_dsi *dsi);
26 s32 sunxi_dsi_clk_disable(struct sunxi_dsi *dsi);
27 
28 s32 sunxi_dsi_dcs_write_0para(struct sunxi_dsi *dsi, u8 command);
29 s32 sunxi_dsi_dcs_write_1para(struct sunxi_dsi *dsi, u8 command, u8 para1);
30 s32 sunxi_dsi_dcs_write_2para(struct sunxi_dsi *dsi, u8 command, u8 para1,
31 			u8 para2);
32 s32 sunxi_dsi_dcs_write_3para(struct sunxi_dsi *dsi, u8 command, u8 para1,
33 			u8 para2, u8 para3);
34 s32 sunxi_dsi_dcs_write_4para(struct sunxi_dsi *dsi, u8 command, u8 para1,
35 			u8 para2, u8 para3, u8 para4);
36 s32 sunxi_dsi_dcs_write_5para(struct sunxi_dsi *dsi, u8 command, u8 para1,
37 			u8 para2, u8 para3, u8 para4, u8 para5);
38 s32 sunxi_dsi_dcs_write_6para(struct sunxi_dsi *dsi, u8 command, u8 para1,
39 			u8 para2, u8 para3, u8 para4, u8 para5, u8 para6);
40 
41 s32 sunxi_dsi_gen_wr(struct sunxi_dsi *dsi, u8 command, u8 *para, u32 para_num);
42 s32 sunxi_dsi_gen_short_read(u32 id, u8 *para_p, u8 para_num, u8 *result);
43 s32 sunxi_dsi_dcs_read(u32 id, u8 cmd, u8 *result, u32 *num_p);
44 s32 sunxi_set_max_ret_size(u32 id, u32 size);
45 s32 sunxi_dsi_turn_on_peripheral_command(struct sunxi_dsi *dsi);
46 #endif
47