summaryrefslogtreecommitdiff
path: root/include/lcd.h
diff options
context:
space:
mode:
authorRobby Cai <R63905@freescale.com>2013-11-18 18:05:22 +0800
committerRobby Cai <R63905@freescale.com>2013-11-21 20:02:46 +0800
commitb934091a04e11e96281b10cf63830851fd096fdd (patch)
treec3d54192916a24bbc427bd6ab71db6f5b2ad1c3d /include/lcd.h
parentfa9f30b03b65b253ba292020f3ebbe70220e3c29 (diff)
downloadu-boot-imx-b934091a04e11e96281b10cf63830851fd096fdd.zip
u-boot-imx-b934091a04e11e96281b10cf63830851fd096fdd.tar.gz
u-boot-imx-b934091a04e11e96281b10cf63830851fd096fdd.tar.bz2
ENGR00288418 Add EPDC splash screen for MX 6DL SabreSD and 6SL EVK
Add EPDC splash screen feature for MX6SL EVK, and MX6DL SABRESD board. - Currently, splash screen consists of a simple black border around a white screen. Done this way to save in memory footprint. - EPDC splash screen is disabled by default in the config file for MX6DL_SABRESD and MX6SL_EVK. If left enabled, the U-Boot image will not boot correctly (hang), since some additional content on the boot device (waveform file) is required for EPDC splash to work correctly. Please refer to Linux Reference Manual for how to flash WAVEFORM file. Signed-off-by: Robby Cai <R63905@freescale.com>
Diffstat (limited to 'include/lcd.h')
-rw-r--r--include/lcd.h53
1 files changed, 53 insertions, 0 deletions
diff --git a/include/lcd.h b/include/lcd.h
index c6e7fc5..5744b88 100644
--- a/include/lcd.h
+++ b/include/lcd.h
@@ -253,6 +253,59 @@ typedef struct vidinfo {
void init_panel_info(vidinfo_t *vid);
+#elif defined(CONFIG_MXC_EPDC)
+
+struct waveform_modes {
+ int mode_init;
+ int mode_du;
+ int mode_gc4;
+ int mode_gc8;
+ int mode_gc16;
+ int mode_gc32;
+};
+
+struct epdc_timing_params {
+ int vscan_holdoff;
+ int sdoed_width;
+ int sdoed_delay;
+ int sdoez_width;
+ int sdoez_delay;
+ int gdclk_hp_offs;
+ int gdsp_offs;
+ int gdoe_offs;
+ int gdclk_offs;
+ int num_ce;
+};
+
+struct epdc_data_struct {
+ /* EPDC buffer pointers */
+ u_long working_buf_addr;
+ u_long waveform_buf_addr;
+
+ /* Waveform mode definitions */
+ struct waveform_modes wv_modes;
+ struct epdc_timing_params epdc_timings;
+};
+
+typedef struct vidinfo {
+ u_long vl_refresh; /* Refresh Rate Hz */
+ u_long vl_row; /* resolution in x */
+ u_long vl_col; /* resolution in y */
+ u_long vl_pixclock; /* pixel clock in picoseconds */
+ u_long vl_left_margin; /* Horizontal back porch */
+ u_long vl_right_margin; /* Horizontal front porch */
+ u_long vl_upper_margin; /* Vertical back porch */
+ u_long vl_lower_margin; /* Vertical front porch */
+ u_long vl_hsync; /* Horizontal sync pulse length */
+ u_long vl_vsync; /* Vertical sync pulse length */
+ u_long vl_sync; /* Polarity on data enable */
+ u_long vl_mode; /* Video Mode */
+ u_long vl_flag;
+ u_char vl_bpix;
+ ushort *cmap;
+ struct epdc_data_struct epdc_data;
+} vidinfo_t;
+
#else
typedef struct vidinfo {