drm: rockchip: analogix_dp: update the comments about why need to hardcode VOP output...
authorYakir Yang <ykk@rock-chips.com>
Wed, 13 Apr 2016 04:15:39 +0000 (12:15 +0800)
committerHuang, Tao <huangtao@rock-chips.com>
Thu, 14 Apr 2016 06:41:52 +0000 (14:41 +0800)
The hardware IC designed that VOP must output the RGB10 video format to
eDP contoller, and if eDP panel only support RGB8, then eDP contoller
should cut down the video data, not via VOP contoller, that's why we need
to hardcode the VOP output mode to RGA10 here.

Change-Id: I733eae8a5dda51c0288d8627ceffb39a2f804e62
Signed-off-by: Yakir Yang <ykk@rock-chips.com>
drivers/gpu/drm/rockchip/analogix_dp-rockchip.c

index 8bbdd79a6974e42244672d14bd1366fce1bb3d6a..6ea88d3e8c20136b0aa18ade2a147cdfc90ff39b 100644 (file)
@@ -122,21 +122,14 @@ rockchip_dp_drm_encoder_mode_fixup(struct drm_encoder *encoder,
                                   struct drm_display_mode *adjusted_mode)
 {
        /*
-        * FIXME(Yakir): driver should configure the CRTC output video
-        * mode with the display information which indicated the monitor
-        * support colorimetry.
-        *
-        * But don't know why the CRTC driver seems could only output the
-        * RGBaaa rightly. For example, if connect the "innolux,n116bge"
-        * eDP screen, EDID would indicated that screen only accepted the
-        * 6bpc mode. But if I configure CRTC to RGB666 output, then eDP
-        * screen would show a blue picture (RGB888 show a green picture).
-        * But if I configure CTRC to RGBaaa, and eDP driver still keep
-        * RGB666 input video mode, then screen would works prefect.
+        * The hardware IC designed that VOP must output the RGB10 video
+        * format to eDP contoller, and if eDP panel only support RGB8,
+        * then eDP contoller should cut down the video data, not via VOP
+        * contoller, that's why we need to hardcode the VOP output mode
+        * to RGA10 here.
         */
        adjusted_mode->private_flags = ROCKCHIP_DSP_MODE(eDP, AAAA);
 
-       /* do nothing */
        return true;
 }