OMAPDSS: Add some new fields to omap_video_timings
Some panel timing related fields are contained in omap_panel_config in the form of flags. The fields are: - Hsync logic level - Vsync logic level - Data driven on rising/falling edge of pixel clock - Output enable/Data enable logic level - HSYNC/VSYNC driven on rising/falling edge of pixel clock Out of these parameters, Hsync and Vsync logic levels are a part of the timings in the Xorg modeline configuration. So it makes sense to move the to omap_video_timings. The rest aren't a part of modeline, but it still makes sense to move these since they are related to panel timings. These fields stored in omap_panel_config in dssdev are configured for LCD panels, and the corresponding LCD managers in the DISPC_POL_FREQo registers. Add the above fields in omap_video_timings. Represent their state via new enums. Add these parameters to the omap_video_timings instances in the panel drivers. Keep the corresponding IVS, IHS, IPC, IEO, RF and ONOFF flags in omap_panel_config for now. The struct will be removed later. Signed-off-by: Archit Taneja <archit@ti.com>
This commit is contained in:
Родитель
a9105cb5c2
Коммит
a8d5e41cef
|
@ -487,6 +487,13 @@ static struct omap_video_timings acx_panel_timings = {
|
|||
.vfp = 3,
|
||||
.vsw = 3,
|
||||
.vbp = 4,
|
||||
|
||||
.vsync_level = OMAPDSS_SIG_ACTIVE_LOW,
|
||||
.hsync_level = OMAPDSS_SIG_ACTIVE_LOW,
|
||||
|
||||
.data_pclk_edge = OMAPDSS_DRIVE_SIG_RISING_EDGE,
|
||||
.de_level = OMAPDSS_SIG_ACTIVE_HIGH,
|
||||
.sync_pclk_edge = OMAPDSS_DRIVE_SIG_OPPOSITE_EDGES,
|
||||
};
|
||||
|
||||
static int acx_panel_probe(struct omap_dss_device *dssdev)
|
||||
|
|
|
@ -69,6 +69,12 @@ static struct panel_config generic_dpi_panels[] = {
|
|||
.vsw = 11,
|
||||
.vfp = 3,
|
||||
.vbp = 2,
|
||||
|
||||
.vsync_level = OMAPDSS_SIG_ACTIVE_LOW,
|
||||
.hsync_level = OMAPDSS_SIG_ACTIVE_LOW,
|
||||
.data_pclk_edge = OMAPDSS_DRIVE_SIG_RISING_EDGE,
|
||||
.de_level = OMAPDSS_SIG_ACTIVE_LOW,
|
||||
.sync_pclk_edge = OMAPDSS_DRIVE_SIG_OPPOSITE_EDGES,
|
||||
},
|
||||
.config = OMAP_DSS_LCD_IVS | OMAP_DSS_LCD_IHS |
|
||||
OMAP_DSS_LCD_IEO,
|
||||
|
@ -92,6 +98,12 @@ static struct panel_config generic_dpi_panels[] = {
|
|||
.vsw = 1,
|
||||
.vfp = 1,
|
||||
.vbp = 1,
|
||||
|
||||
.vsync_level = OMAPDSS_SIG_ACTIVE_LOW,
|
||||
.hsync_level = OMAPDSS_SIG_ACTIVE_LOW,
|
||||
.data_pclk_edge = OMAPDSS_DRIVE_SIG_RISING_EDGE,
|
||||
.de_level = OMAPDSS_SIG_ACTIVE_HIGH,
|
||||
.sync_pclk_edge = OMAPDSS_DRIVE_SIG_OPPOSITE_EDGES,
|
||||
},
|
||||
.config = OMAP_DSS_LCD_IVS | OMAP_DSS_LCD_IHS,
|
||||
.power_on_delay = 50,
|
||||
|
@ -114,6 +126,12 @@ static struct panel_config generic_dpi_panels[] = {
|
|||
.vfp = 4,
|
||||
.vsw = 2,
|
||||
.vbp = 2,
|
||||
|
||||
.vsync_level = OMAPDSS_SIG_ACTIVE_LOW,
|
||||
.hsync_level = OMAPDSS_SIG_ACTIVE_LOW,
|
||||
.data_pclk_edge = OMAPDSS_DRIVE_SIG_FALLING_EDGE,
|
||||
.de_level = OMAPDSS_SIG_ACTIVE_HIGH,
|
||||
.sync_pclk_edge = OMAPDSS_DRIVE_SIG_FALLING_EDGE,
|
||||
},
|
||||
.config = OMAP_DSS_LCD_IVS | OMAP_DSS_LCD_IHS |
|
||||
OMAP_DSS_LCD_IPC |
|
||||
|
@ -138,6 +156,12 @@ static struct panel_config generic_dpi_panels[] = {
|
|||
.vfp = 4,
|
||||
.vsw = 10,
|
||||
.vbp = 12 - 10,
|
||||
|
||||
.vsync_level = OMAPDSS_SIG_ACTIVE_LOW,
|
||||
.hsync_level = OMAPDSS_SIG_ACTIVE_LOW,
|
||||
.data_pclk_edge = OMAPDSS_DRIVE_SIG_RISING_EDGE,
|
||||
.de_level = OMAPDSS_SIG_ACTIVE_HIGH,
|
||||
.sync_pclk_edge = OMAPDSS_DRIVE_SIG_OPPOSITE_EDGES,
|
||||
},
|
||||
.config = OMAP_DSS_LCD_IVS | OMAP_DSS_LCD_IHS,
|
||||
.power_on_delay = 0,
|
||||
|
@ -160,6 +184,12 @@ static struct panel_config generic_dpi_panels[] = {
|
|||
.vsw = 2,
|
||||
.vfp = 4,
|
||||
.vbp = 11,
|
||||
|
||||
.vsync_level = OMAPDSS_SIG_ACTIVE_LOW,
|
||||
.hsync_level = OMAPDSS_SIG_ACTIVE_LOW,
|
||||
.data_pclk_edge = OMAPDSS_DRIVE_SIG_RISING_EDGE,
|
||||
.de_level = OMAPDSS_SIG_ACTIVE_HIGH,
|
||||
.sync_pclk_edge = OMAPDSS_DRIVE_SIG_OPPOSITE_EDGES,
|
||||
},
|
||||
.config = OMAP_DSS_LCD_IVS | OMAP_DSS_LCD_IHS,
|
||||
.power_on_delay = 0,
|
||||
|
@ -182,6 +212,12 @@ static struct panel_config generic_dpi_panels[] = {
|
|||
.vsw = 10,
|
||||
.vfp = 2,
|
||||
.vbp = 2,
|
||||
|
||||
.vsync_level = OMAPDSS_SIG_ACTIVE_LOW,
|
||||
.hsync_level = OMAPDSS_SIG_ACTIVE_LOW,
|
||||
.data_pclk_edge = OMAPDSS_DRIVE_SIG_RISING_EDGE,
|
||||
.de_level = OMAPDSS_SIG_ACTIVE_LOW,
|
||||
.sync_pclk_edge = OMAPDSS_DRIVE_SIG_OPPOSITE_EDGES,
|
||||
},
|
||||
.config = OMAP_DSS_LCD_IVS | OMAP_DSS_LCD_IHS |
|
||||
OMAP_DSS_LCD_IEO,
|
||||
|
@ -205,6 +241,12 @@ static struct panel_config generic_dpi_panels[] = {
|
|||
.vsw = 3,
|
||||
.vfp = 12,
|
||||
.vbp = 25,
|
||||
|
||||
.vsync_level = OMAPDSS_SIG_ACTIVE_LOW,
|
||||
.hsync_level = OMAPDSS_SIG_ACTIVE_LOW,
|
||||
.data_pclk_edge = OMAPDSS_DRIVE_SIG_RISING_EDGE,
|
||||
.de_level = OMAPDSS_SIG_ACTIVE_HIGH,
|
||||
.sync_pclk_edge = OMAPDSS_DRIVE_SIG_OPPOSITE_EDGES,
|
||||
},
|
||||
.config = OMAP_DSS_LCD_IVS | OMAP_DSS_LCD_IHS,
|
||||
.power_on_delay = 0,
|
||||
|
@ -227,6 +269,12 @@ static struct panel_config generic_dpi_panels[] = {
|
|||
.vsw = 1,
|
||||
.vfp = 2,
|
||||
.vbp = 7,
|
||||
|
||||
.vsync_level = OMAPDSS_SIG_ACTIVE_LOW,
|
||||
.hsync_level = OMAPDSS_SIG_ACTIVE_LOW,
|
||||
.data_pclk_edge = OMAPDSS_DRIVE_SIG_RISING_EDGE,
|
||||
.de_level = OMAPDSS_SIG_ACTIVE_HIGH,
|
||||
.sync_pclk_edge = OMAPDSS_DRIVE_SIG_OPPOSITE_EDGES,
|
||||
},
|
||||
.config = OMAP_DSS_LCD_IVS | OMAP_DSS_LCD_IHS,
|
||||
.name = "nec_nl2432dr22-11b",
|
||||
|
@ -247,6 +295,12 @@ static struct panel_config generic_dpi_panels[] = {
|
|||
.vsw = 1,
|
||||
.vfp = 1,
|
||||
.vbp = 1,
|
||||
|
||||
.vsync_level = OMAPDSS_SIG_ACTIVE_HIGH,
|
||||
.hsync_level = OMAPDSS_SIG_ACTIVE_HIGH,
|
||||
.data_pclk_edge = OMAPDSS_DRIVE_SIG_RISING_EDGE,
|
||||
.de_level = OMAPDSS_SIG_ACTIVE_HIGH,
|
||||
.sync_pclk_edge = OMAPDSS_DRIVE_SIG_OPPOSITE_EDGES,
|
||||
},
|
||||
.name = "h4",
|
||||
},
|
||||
|
@ -266,6 +320,12 @@ static struct panel_config generic_dpi_panels[] = {
|
|||
.vsw = 10,
|
||||
.vfp = 2,
|
||||
.vbp = 2,
|
||||
|
||||
.vsync_level = OMAPDSS_SIG_ACTIVE_LOW,
|
||||
.hsync_level = OMAPDSS_SIG_ACTIVE_LOW,
|
||||
.data_pclk_edge = OMAPDSS_DRIVE_SIG_RISING_EDGE,
|
||||
.de_level = OMAPDSS_SIG_ACTIVE_HIGH,
|
||||
.sync_pclk_edge = OMAPDSS_DRIVE_SIG_OPPOSITE_EDGES,
|
||||
},
|
||||
.config = OMAP_DSS_LCD_IVS | OMAP_DSS_LCD_IHS,
|
||||
|
||||
|
@ -286,6 +346,12 @@ static struct panel_config generic_dpi_panels[] = {
|
|||
.vsw = 3,
|
||||
.vfp = 13,
|
||||
.vbp = 29,
|
||||
|
||||
.vsync_level = OMAPDSS_SIG_ACTIVE_LOW,
|
||||
.hsync_level = OMAPDSS_SIG_ACTIVE_LOW,
|
||||
.data_pclk_edge = OMAPDSS_DRIVE_SIG_RISING_EDGE,
|
||||
.de_level = OMAPDSS_SIG_ACTIVE_HIGH,
|
||||
.sync_pclk_edge = OMAPDSS_DRIVE_SIG_OPPOSITE_EDGES,
|
||||
},
|
||||
.config = OMAP_DSS_LCD_IVS | OMAP_DSS_LCD_IHS,
|
||||
.name = "focaltech_etm070003dh6",
|
||||
|
@ -306,6 +372,12 @@ static struct panel_config generic_dpi_panels[] = {
|
|||
.vsw = 23,
|
||||
.vfp = 1,
|
||||
.vbp = 1,
|
||||
|
||||
.vsync_level = OMAPDSS_SIG_ACTIVE_LOW,
|
||||
.hsync_level = OMAPDSS_SIG_ACTIVE_LOW,
|
||||
.data_pclk_edge = OMAPDSS_DRIVE_SIG_FALLING_EDGE,
|
||||
.de_level = OMAPDSS_SIG_ACTIVE_HIGH,
|
||||
.sync_pclk_edge = OMAPDSS_DRIVE_SIG_OPPOSITE_EDGES,
|
||||
},
|
||||
.config = OMAP_DSS_LCD_IVS | OMAP_DSS_LCD_IHS |
|
||||
OMAP_DSS_LCD_IPC,
|
||||
|
@ -329,6 +401,12 @@ static struct panel_config generic_dpi_panels[] = {
|
|||
.vsw = 10,
|
||||
.vfp = 4,
|
||||
.vbp = 2,
|
||||
|
||||
.vsync_level = OMAPDSS_SIG_ACTIVE_HIGH,
|
||||
.hsync_level = OMAPDSS_SIG_ACTIVE_HIGH,
|
||||
.data_pclk_edge = OMAPDSS_DRIVE_SIG_RISING_EDGE,
|
||||
.de_level = OMAPDSS_SIG_ACTIVE_HIGH,
|
||||
.sync_pclk_edge = OMAPDSS_DRIVE_SIG_OPPOSITE_EDGES,
|
||||
},
|
||||
.name = "ortustech_com43h4m10xtc",
|
||||
},
|
||||
|
@ -348,6 +426,12 @@ static struct panel_config generic_dpi_panels[] = {
|
|||
.vsw = 10,
|
||||
.vfp = 12,
|
||||
.vbp = 23,
|
||||
|
||||
.vsync_level = OMAPDSS_SIG_ACTIVE_LOW,
|
||||
.hsync_level = OMAPDSS_SIG_ACTIVE_LOW,
|
||||
.data_pclk_edge = OMAPDSS_DRIVE_SIG_RISING_EDGE,
|
||||
.de_level = OMAPDSS_SIG_ACTIVE_LOW,
|
||||
.sync_pclk_edge = OMAPDSS_DRIVE_SIG_OPPOSITE_EDGES,
|
||||
},
|
||||
.config = OMAP_DSS_LCD_IVS | OMAP_DSS_LCD_IHS |
|
||||
OMAP_DSS_LCD_IEO,
|
||||
|
@ -369,6 +453,12 @@ static struct panel_config generic_dpi_panels[] = {
|
|||
.vsw = 1,
|
||||
.vfp = 26,
|
||||
.vbp = 1,
|
||||
|
||||
.vsync_level = OMAPDSS_SIG_ACTIVE_HIGH,
|
||||
.hsync_level = OMAPDSS_SIG_ACTIVE_HIGH,
|
||||
.data_pclk_edge = OMAPDSS_DRIVE_SIG_RISING_EDGE,
|
||||
.de_level = OMAPDSS_SIG_ACTIVE_HIGH,
|
||||
.sync_pclk_edge = OMAPDSS_DRIVE_SIG_OPPOSITE_EDGES,
|
||||
},
|
||||
.name = "mitsubishi_aa084sb01",
|
||||
},
|
||||
|
@ -386,6 +476,12 @@ static struct panel_config generic_dpi_panels[] = {
|
|||
.vsw = 2,
|
||||
.vfp = 35,
|
||||
.vbp = 10,
|
||||
|
||||
.vsync_level = OMAPDSS_SIG_ACTIVE_HIGH,
|
||||
.hsync_level = OMAPDSS_SIG_ACTIVE_HIGH,
|
||||
.data_pclk_edge = OMAPDSS_DRIVE_SIG_RISING_EDGE,
|
||||
.de_level = OMAPDSS_SIG_ACTIVE_HIGH,
|
||||
.sync_pclk_edge = OMAPDSS_DRIVE_SIG_OPPOSITE_EDGES,
|
||||
},
|
||||
.name = "edt_et0500g0dh6",
|
||||
},
|
||||
|
@ -405,6 +501,12 @@ static struct panel_config generic_dpi_panels[] = {
|
|||
.vsw = 2,
|
||||
.vfp = 10,
|
||||
.vbp = 33,
|
||||
|
||||
.vsync_level = OMAPDSS_SIG_ACTIVE_LOW,
|
||||
.hsync_level = OMAPDSS_SIG_ACTIVE_LOW,
|
||||
.data_pclk_edge = OMAPDSS_DRIVE_SIG_FALLING_EDGE,
|
||||
.de_level = OMAPDSS_SIG_ACTIVE_HIGH,
|
||||
.sync_pclk_edge = OMAPDSS_DRIVE_SIG_OPPOSITE_EDGES,
|
||||
},
|
||||
.config = OMAP_DSS_LCD_IVS | OMAP_DSS_LCD_IHS |
|
||||
OMAP_DSS_LCD_IPC,
|
||||
|
@ -426,6 +528,12 @@ static struct panel_config generic_dpi_panels[] = {
|
|||
.vsw = 2,
|
||||
.vfp = 10,
|
||||
.vbp = 33,
|
||||
|
||||
.vsync_level = OMAPDSS_SIG_ACTIVE_LOW,
|
||||
.hsync_level = OMAPDSS_SIG_ACTIVE_LOW,
|
||||
.data_pclk_edge = OMAPDSS_DRIVE_SIG_FALLING_EDGE,
|
||||
.de_level = OMAPDSS_SIG_ACTIVE_HIGH,
|
||||
.sync_pclk_edge = OMAPDSS_DRIVE_SIG_OPPOSITE_EDGES,
|
||||
},
|
||||
.config = OMAP_DSS_LCD_IVS | OMAP_DSS_LCD_IHS |
|
||||
OMAP_DSS_LCD_IPC,
|
||||
|
@ -447,6 +555,12 @@ static struct panel_config generic_dpi_panels[] = {
|
|||
.vsw = 4,
|
||||
.vfp = 1,
|
||||
.vbp = 23,
|
||||
|
||||
.vsync_level = OMAPDSS_SIG_ACTIVE_LOW,
|
||||
.hsync_level = OMAPDSS_SIG_ACTIVE_LOW,
|
||||
.data_pclk_edge = OMAPDSS_DRIVE_SIG_FALLING_EDGE,
|
||||
.de_level = OMAPDSS_SIG_ACTIVE_HIGH,
|
||||
.sync_pclk_edge = OMAPDSS_DRIVE_SIG_OPPOSITE_EDGES,
|
||||
},
|
||||
.config = OMAP_DSS_LCD_IVS | OMAP_DSS_LCD_IHS |
|
||||
OMAP_DSS_LCD_IPC,
|
||||
|
|
|
@ -40,6 +40,12 @@ static struct omap_video_timings lb035q02_timings = {
|
|||
.vsw = 2,
|
||||
.vfp = 4,
|
||||
.vbp = 18,
|
||||
|
||||
.vsync_level = OMAPDSS_SIG_ACTIVE_LOW,
|
||||
.hsync_level = OMAPDSS_SIG_ACTIVE_LOW,
|
||||
.data_pclk_edge = OMAPDSS_DRIVE_SIG_RISING_EDGE,
|
||||
.de_level = OMAPDSS_SIG_ACTIVE_HIGH,
|
||||
.sync_pclk_edge = OMAPDSS_DRIVE_SIG_OPPOSITE_EDGES,
|
||||
};
|
||||
|
||||
static int lb035q02_panel_power_on(struct omap_dss_device *dssdev)
|
||||
|
|
|
@ -76,6 +76,12 @@ static struct omap_video_timings nec_8048_panel_timings = {
|
|||
.vfp = 3,
|
||||
.vsw = 1,
|
||||
.vbp = 4,
|
||||
|
||||
.vsync_level = OMAPDSS_SIG_ACTIVE_LOW,
|
||||
.hsync_level = OMAPDSS_SIG_ACTIVE_LOW,
|
||||
.data_pclk_edge = OMAPDSS_DRIVE_SIG_RISING_EDGE,
|
||||
.de_level = OMAPDSS_SIG_ACTIVE_HIGH,
|
||||
.sync_pclk_edge = OMAPDSS_DRIVE_SIG_RISING_EDGE,
|
||||
};
|
||||
|
||||
static int nec_8048_bl_update_status(struct backlight_device *bl)
|
||||
|
|
|
@ -69,6 +69,12 @@ static struct omap_video_timings pico_ls_timings = {
|
|||
.vsw = 2,
|
||||
.vfp = 3,
|
||||
.vbp = 14,
|
||||
|
||||
.vsync_level = OMAPDSS_SIG_ACTIVE_LOW,
|
||||
.hsync_level = OMAPDSS_SIG_ACTIVE_LOW,
|
||||
.data_pclk_edge = OMAPDSS_DRIVE_SIG_RISING_EDGE,
|
||||
.de_level = OMAPDSS_SIG_ACTIVE_HIGH,
|
||||
.sync_pclk_edge = OMAPDSS_DRIVE_SIG_FALLING_EDGE,
|
||||
};
|
||||
|
||||
static inline struct picodlp_panel_data
|
||||
|
|
|
@ -44,6 +44,12 @@ static struct omap_video_timings sharp_ls_timings = {
|
|||
.vsw = 1,
|
||||
.vfp = 1,
|
||||
.vbp = 1,
|
||||
|
||||
.vsync_level = OMAPDSS_SIG_ACTIVE_LOW,
|
||||
.hsync_level = OMAPDSS_SIG_ACTIVE_LOW,
|
||||
.data_pclk_edge = OMAPDSS_DRIVE_SIG_RISING_EDGE,
|
||||
.de_level = OMAPDSS_SIG_ACTIVE_HIGH,
|
||||
.sync_pclk_edge = OMAPDSS_DRIVE_SIG_OPPOSITE_EDGES,
|
||||
};
|
||||
|
||||
static int sharp_ls_bl_update_status(struct backlight_device *bl)
|
||||
|
|
|
@ -39,6 +39,12 @@ static const struct omap_video_timings tfp410_default_timings = {
|
|||
.vfp = 3,
|
||||
.vsw = 4,
|
||||
.vbp = 7,
|
||||
|
||||
.vsync_level = OMAPDSS_SIG_ACTIVE_HIGH,
|
||||
.hsync_level = OMAPDSS_SIG_ACTIVE_HIGH,
|
||||
.data_pclk_edge = OMAPDSS_DRIVE_SIG_RISING_EDGE,
|
||||
.de_level = OMAPDSS_SIG_ACTIVE_HIGH,
|
||||
.sync_pclk_edge = OMAPDSS_DRIVE_SIG_OPPOSITE_EDGES,
|
||||
};
|
||||
|
||||
struct panel_drv_data {
|
||||
|
|
|
@ -267,6 +267,12 @@ static const struct omap_video_timings tpo_td043_timings = {
|
|||
.vsw = 1,
|
||||
.vfp = 39,
|
||||
.vbp = 34,
|
||||
|
||||
.vsync_level = OMAPDSS_SIG_ACTIVE_LOW,
|
||||
.hsync_level = OMAPDSS_SIG_ACTIVE_LOW,
|
||||
.data_pclk_edge = OMAPDSS_DRIVE_SIG_FALLING_EDGE,
|
||||
.de_level = OMAPDSS_SIG_ACTIVE_HIGH,
|
||||
.sync_pclk_edge = OMAPDSS_DRIVE_SIG_OPPOSITE_EDGES,
|
||||
};
|
||||
|
||||
static int tpo_td043_power_on(struct tpo_td043_device *tpo_td043)
|
||||
|
|
|
@ -45,7 +45,10 @@ static int hdmi_panel_probe(struct omap_dss_device *dssdev)
|
|||
|
||||
dssdev->panel.config = OMAP_DSS_LCD_IVS | OMAP_DSS_LCD_IHS;
|
||||
|
||||
dssdev->panel.timings = (struct omap_video_timings){640, 480, 25175, 96, 16, 48, 2 , 11, 31};
|
||||
dssdev->panel.timings = (struct omap_video_timings)
|
||||
{ 640, 480, 25175, 96, 16, 48, 2, 11, 31,
|
||||
OMAPDSS_SIG_ACTIVE_LOW, OMAPDSS_SIG_ACTIVE_LOW,
|
||||
};
|
||||
|
||||
DSSDBG("hdmi_panel_probe x_res= %d y_res = %d\n",
|
||||
dssdev->panel.timings.x_res,
|
||||
|
|
|
@ -80,6 +80,9 @@ int omapdss_sdi_display_enable(struct omap_dss_device *dssdev)
|
|||
/* 15.5.9.1.2 */
|
||||
dssdev->panel.config |= OMAP_DSS_LCD_RF | OMAP_DSS_LCD_ONOFF;
|
||||
|
||||
dssdev->panel.timings.data_pclk_edge = OMAPDSS_DRIVE_SIG_RISING_EDGE;
|
||||
dssdev->panel.timings.sync_pclk_edge = OMAPDSS_DRIVE_SIG_RISING_EDGE;
|
||||
|
||||
dispc_mgr_set_pol_freq(dssdev->manager->id, dssdev->panel.config);
|
||||
|
||||
r = dss_calc_clock_div(t->pixel_clock * 1000, &dss_cinfo, &dispc_cinfo);
|
||||
|
|
|
@ -130,6 +130,17 @@ enum omap_panel_config {
|
|||
OMAP_DSS_LCD_ONOFF = 1<<5,
|
||||
};
|
||||
|
||||
enum omap_dss_signal_level {
|
||||
OMAPDSS_SIG_ACTIVE_HIGH = 0,
|
||||
OMAPDSS_SIG_ACTIVE_LOW = 1,
|
||||
};
|
||||
|
||||
enum omap_dss_signal_edge {
|
||||
OMAPDSS_DRIVE_SIG_OPPOSITE_EDGES,
|
||||
OMAPDSS_DRIVE_SIG_RISING_EDGE,
|
||||
OMAPDSS_DRIVE_SIG_FALLING_EDGE,
|
||||
};
|
||||
|
||||
enum omap_dss_venc_type {
|
||||
OMAP_DSS_VENC_TYPE_COMPOSITE,
|
||||
OMAP_DSS_VENC_TYPE_SVIDEO,
|
||||
|
@ -337,6 +348,17 @@ struct omap_video_timings {
|
|||
u16 vfp; /* Vertical front porch */
|
||||
/* Unit: line clocks */
|
||||
u16 vbp; /* Vertical back porch */
|
||||
|
||||
/* Vsync logic level */
|
||||
enum omap_dss_signal_level vsync_level;
|
||||
/* Hsync logic level */
|
||||
enum omap_dss_signal_level hsync_level;
|
||||
/* Pixel clock edge to drive LCD data */
|
||||
enum omap_dss_signal_edge data_pclk_edge;
|
||||
/* Data enable logic level */
|
||||
enum omap_dss_signal_level de_level;
|
||||
/* Pixel clock edges to drive HSYNC and VSYNC signals */
|
||||
enum omap_dss_signal_edge sync_pclk_edge;
|
||||
};
|
||||
|
||||
#ifdef CONFIG_OMAP2_DSS_VENC
|
||||
|
|
Загрузка…
Ссылка в новой задаче