aboutsummaryrefslogtreecommitdiff
path: root/src/soc/rockchip/rk3399/include/soc/mipi.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/soc/rockchip/rk3399/include/soc/mipi.h')
-rw-r--r--src/soc/rockchip/rk3399/include/soc/mipi.h24
1 files changed, 21 insertions, 3 deletions
diff --git a/src/soc/rockchip/rk3399/include/soc/mipi.h b/src/soc/rockchip/rk3399/include/soc/mipi.h
index 09285cf51c..933ea89bd4 100644
--- a/src/soc/rockchip/rk3399/include/soc/mipi.h
+++ b/src/soc/rockchip/rk3399/include/soc/mipi.h
@@ -263,8 +263,9 @@ check_member(rk_mipi_regs, dsi_int_msk1, 0xc8);
#define GEN_PLD_R_FULL BIT(5)
#define GEN_RD_CMD_BUSY BIT(6)
-#define MIPI_DSI_DCS_SHORT_WRITE 0x05
-#define MIPI_DSI_DCS_LONG_WRITE 0x39
+#define MIPI_DSI_DCS_SHORT_WRITE 0x05
+#define MIPI_DSI_GENERIC_SHORT_WRITE_2_PARAM 0x23
+#define MIPI_DSI_DCS_LONG_WRITE 0x39
enum mipi_dsi_pixel_format {
MIPI_DSI_FMT_RGB888,
@@ -314,6 +315,7 @@ struct dphy_pll_parameter_map {
};
struct rk_mipi_dsi {
+ struct rk_mipi_regs *mipi_regs;
u64 lane_bps; /* per lane */
u32 lanes;
u32 format;
@@ -321,5 +323,21 @@ struct rk_mipi_dsi {
u16 feedback_div;
};
-void rk_mipi_prepare(const struct edid *edid, u32 display_on_mdelay, u32 video_mode_mdelay);
+struct panel_init_command {
+ u8 cmd;
+ u8 data;
+};
+
+struct mipi_panel_data {
+ u8 mipi_num;
+ enum mipi_dsi_pixel_format format;
+ u8 lanes;
+ u32 display_on_udelay;
+ u32 video_mode_udelay;
+ u32 num_init_commands;
+ struct panel_init_command *init_cmd;
+};
+
+void rk_mipi_prepare(const struct edid *edid,
+ const struct mipi_panel_data *panel_data);
#endif