From e6f40492f35401feb49b1d6858af65ecc4dc8d41 Mon Sep 17 00:00:00 2001 From: jsg Date: Fri, 8 Aug 2014 16:35:56 +0000 Subject: [PATCH] drm/radeon/atom: fix dithering on certain panels From Alex Deucher 9102ef0d290f01247918f5a519d8fa4a96eaf370 in ubuntu 3.8 642528355c694f5ed68f6bff9ff520326a249f99 in mainline linux --- sys/dev/pci/drm/radeon/atombios_encoders.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/sys/dev/pci/drm/radeon/atombios_encoders.c b/sys/dev/pci/drm/radeon/atombios_encoders.c index 06afa21e7fe..02789d46516 100644 --- a/sys/dev/pci/drm/radeon/atombios_encoders.c +++ b/sys/dev/pci/drm/radeon/atombios_encoders.c @@ -1,4 +1,4 @@ -/* $OpenBSD: atombios_encoders.c,v 1.7 2014/04/12 06:05:53 jsg Exp $ */ +/* $OpenBSD: atombios_encoders.c,v 1.8 2014/08/08 16:35:56 jsg Exp $ */ /* * Copyright 2007-11 Advanced Micro Devices, Inc. * Copyright 2008 Red Hat Inc. @@ -1876,8 +1876,11 @@ atombios_set_encoder_crtc_source(struct drm_encoder *encoder) args.v2.ucEncodeMode = ATOM_ENCODER_MODE_CRT; else args.v2.ucEncodeMode = atombios_get_encoder_mode(encoder); - } else + } else if (radeon_encoder->devices & (ATOM_DEVICE_LCD_SUPPORT)) { + args.v2.ucEncodeMode = ATOM_ENCODER_MODE_LVDS; + } else { args.v2.ucEncodeMode = atombios_get_encoder_mode(encoder); + } switch (radeon_encoder->encoder_id) { case ENCODER_OBJECT_ID_INTERNAL_UNIPHY: case ENCODER_OBJECT_ID_INTERNAL_UNIPHY1: -- 2.20.1