summaryrefslogtreecommitdiff
path: root/src/soc/qualcomm/sc7180/include
diff options
context:
space:
mode:
authorVinod Polimera <vpolimer@codeaurora.org>2021-03-16 18:37:40 +0530
committerJulius Werner <jwerner@chromium.org>2021-08-03 21:22:26 +0000
commite8cd480046b2f8660c52d5503d5cc0cd4a5cd002 (patch)
treea736c1e6fe9c69b11a90c2be2fc53c737e82c05d /src/soc/qualcomm/sc7180/include
parent8ca68cf2ae8d172c237cf05d37f2b5c5a2775f9f (diff)
sc7180: Add display support for mipi panels
- configure TROGDOR_HAS_MIPI_PANEL to "n" by default, it can be updated for mipi panels. - add simple rm69299 panel as an example to append new mipi panels. - use existing edid struct to update mipi panel parameters. - add dsi command tx interface for mipi panel on commands. Change-Id: Id698265a4e2399ad1c26e026e9a5f8ecd305467f Signed-off-by: Vinod Polimera <vpolimer@codeaurora.org> Signed-off-by: Julius Werner <jwerner@chromium.org> Reviewed-on: https://review.coreboot.org/c/coreboot/+/52662 Reviewed-by: Shelley Chen <shchen@google.com> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Diffstat (limited to 'src/soc/qualcomm/sc7180/include')
-rw-r--r--src/soc/qualcomm/sc7180/include/soc/display/mipi_dsi.h11
-rw-r--r--src/soc/qualcomm/sc7180/include/soc/display/panel.h17
2 files changed, 26 insertions, 2 deletions
diff --git a/src/soc/qualcomm/sc7180/include/soc/display/mipi_dsi.h b/src/soc/qualcomm/sc7180/include/soc/display/mipi_dsi.h
index 47fd3084c6..3b3dc513ab 100644
--- a/src/soc/qualcomm/sc7180/include/soc/display/mipi_dsi.h
+++ b/src/soc/qualcomm/sc7180/include/soc/display/mipi_dsi.h
@@ -3,6 +3,7 @@
#ifndef _SOC_DISPLAY_MIPI_DSI_H_
#define _SOC_DISPLAY_MIPI_DSI_H_
+#include <soc/display/panel.h>
/**********************************************************
DSI register configuration options
**********************************************************/
@@ -14,6 +15,12 @@
#define DSI_VIDEO_DST_FORMAT_RGB666_LOOSE 2
#define DSI_VIDEO_DST_FORMAT_RGB888 3
+struct mipi_dsi_cmd {
+ char payload[4];
+ uint32_t size;
+ int delay_us;
+};
+
enum {
DSI_VIDEO_MODE,
DSI_CMD_MODE,
@@ -21,7 +28,7 @@ enum {
enum cb_err mdss_dsi_config(struct edid *edid, uint32_t num_of_lanes, uint32_t bpp);
void mdss_dsi_clock_config(void);
-void mdss_dsi_video_mode_config(struct edid *edid,
- uint32_t bpp);
+void mdss_dsi_video_mode_config(struct edid *edid, uint32_t bpp);
+int mdss_dsi_panel_initialize(const struct panel_data *pinfo);
#endif
diff --git a/src/soc/qualcomm/sc7180/include/soc/display/panel.h b/src/soc/qualcomm/sc7180/include/soc/display/panel.h
new file mode 100644
index 0000000000..04a7a6ab06
--- /dev/null
+++ b/src/soc/qualcomm/sc7180/include/soc/display/panel.h
@@ -0,0 +1,17 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+
+#ifndef _PANEL_H_
+#define _PANEL_H_
+
+#include <types.h>
+
+struct panel_data {
+ uint8_t lanes;
+ struct mipi_dsi_cmd *init_cmd;
+ uint32_t init_cmd_count;
+};
+
+void panel_power_on(void);
+const struct panel_data *get_panel_config(struct edid *edid);
+
+#endif /*_PANEL_H_ */