drm/rockchip: dw_hdmi: support ROCKCHIP_OUT_MODE_YUV420

VOP output mode and bus_format must be ROCKCHIP_OUT_MODE_YUV420
and MEDIA_BUS_FMT_YUV8_1X24 when display mode has a YCbCr420
flag.

Change-Id: Ib2d51c119f5a8f1b8a9285c47ab228b22a293d56
Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
This commit is contained in:
Zheng Yang
2017-03-01 16:05:37 +08:00
committed by Algea Cao
parent b33cca16c9
commit 4cebb9a409

View File

@@ -354,8 +354,15 @@ dw_hdmi_rockchip_encoder_atomic_check(struct drm_encoder *encoder,
struct drm_connector_state *conn_state)
{
struct rockchip_crtc_state *s = to_rockchip_crtc_state(crtc_state);
struct drm_display_info *info = &conn_state->connector->display_info;
s->output_mode = ROCKCHIP_OUT_MODE_AAAA;
if (drm_mode_is_420(info, &crtc_state->mode)) {
s->output_mode = ROCKCHIP_OUT_MODE_YUV420;
s->bus_format = MEDIA_BUS_FMT_YUV8_1X24;
} else {
s->output_mode = ROCKCHIP_OUT_MODE_AAAA;
s->bus_format = MEDIA_BUS_FMT_RGB888_1X24;
}
s->output_type = DRM_MODE_CONNECTOR_HDMIA;
return 0;