diff options
-rw-r--r-- | drivers/gpu/drm/panel/panel-simple.c | 7 | ||||
-rw-r--r-- | include/drm/drm_crtc.h | 9 |
2 files changed, 13 insertions, 3 deletions
diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c index 65d97b52aed3..f28f770dc9ec 100644 --- a/drivers/gpu/drm/panel/panel-simple.c +++ b/drivers/gpu/drm/panel/panel-simple.c @@ -68,6 +68,7 @@ struct panel_desc { } delay; u32 bus_format; + u32 bus_flags; }; struct panel_simple { @@ -140,6 +141,7 @@ static int panel_simple_get_fixed_modes(struct panel_simple *panel) if (panel->desc->bus_format) drm_display_info_set_bus_formats(&connector->display_info, &panel->desc->bus_format, 1); + connector->display_info.bus_flags = panel->desc->bus_flags; return num; } @@ -960,8 +962,7 @@ static const struct drm_display_mode nec_nl4827hc19_05b_mode = { .vsync_end = 272 + 2 + 4, .vtotal = 272 + 2 + 4 + 2, .vrefresh = 74, - .flags = DRM_MODE_FLAG_NVSYNC | DRM_MODE_FLAG_NHSYNC | - DISPLAY_FLAGS_PIXDATA_POSEDGE, + .flags = DRM_MODE_FLAG_NVSYNC | DRM_MODE_FLAG_NHSYNC, }; static const struct panel_desc nec_nl4827hc19_05b = { @@ -1109,7 +1110,6 @@ static const struct drm_display_mode tpk_f07a_0102_mode = { .vsync_end = 480 + 10 + 2, .vtotal = 480 + 10 + 2 + 33, .vrefresh = 60, - .flags = DISPLAY_FLAGS_PIXDATA_POSEDGE, }; static const struct panel_desc tpk_f07a_0102 = { @@ -1119,6 +1119,7 @@ static const struct panel_desc tpk_f07a_0102 = { .width = 152, .height = 91, }, + .bus_flags = DRM_BUS_FLAG_PIXDATA_POSEDGE, }; static const struct drm_display_mode tpk_f10a_0102_mode = { diff --git a/include/drm/drm_crtc.h b/include/drm/drm_crtc.h index 3f0c6909dda1..69726121e029 100644 --- a/include/drm/drm_crtc.h +++ b/include/drm/drm_crtc.h @@ -122,6 +122,14 @@ enum subpixel_order { #define DRM_COLOR_FORMAT_RGB444 (1<<0) #define DRM_COLOR_FORMAT_YCRCB444 (1<<1) #define DRM_COLOR_FORMAT_YCRCB422 (1<<2) + +#define DRM_BUS_FLAG_DE_LOW (1<<0) +#define DRM_BUS_FLAG_DE_HIGH (1<<1) +/* drive data on pos. edge */ +#define DRM_BUS_FLAG_PIXDATA_POSEDGE (1<<2) +/* drive data on neg. edge */ +#define DRM_BUS_FLAG_PIXDATA_NEGEDGE (1<<3) + /* * Describes a given display (e.g. CRT or flat panel) and its limitations. */ @@ -143,6 +151,7 @@ struct drm_display_info { const u32 *bus_formats; unsigned int num_bus_formats; + u32 bus_flags; /* Mask of supported hdmi deep color modes */ u8 edid_hdmi_dc_modes; |