summaryrefslogtreecommitdiff
path: root/linux-core/radeon_display.c
diff options
context:
space:
mode:
authorDave Airlie <airlied@linux.ie>2008-09-18 10:13:30 +1000
committerDave Airlie <airlied@linux.ie>2008-09-18 10:13:30 +1000
commit0e384803c5f2528735e43b8d30f90ea82f6b3f47 (patch)
treebace4746d822f8f7ab35776988345c1a67a8e877 /linux-core/radeon_display.c
parent8f23d4a44cdb17abff8f1ab3585e533ae0572224 (diff)
radeon: don't do full edid for detection purposes
Diffstat (limited to 'linux-core/radeon_display.c')
-rw-r--r--linux-core/radeon_display.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/linux-core/radeon_display.c b/linux-core/radeon_display.c
index d105e1ae..c532ef0f 100644
--- a/linux-core/radeon_display.c
+++ b/linux-core/radeon_display.c
@@ -31,6 +31,7 @@
#include <asm/div64.h>
#include "drm_crtc_helper.h"
+#include "drm_edid.h"
int radeon_ddc_dump(struct drm_connector *connector);
@@ -305,6 +306,11 @@ int radeon_ddc_get_modes(struct radeon_connector *radeon_connector)
edid = drm_get_edid(&radeon_connector->base, &radeon_connector->ddc_bus->adapter);
radeon_i2c_do_lock(radeon_connector, 0);
if (edid) {
+ /* update digital bits here */
+ if (edid->digital)
+ radeon_connector->use_digital = 1;
+ else
+ radeon_connector->use_digital = 0;
drm_mode_connector_update_edid_property(&radeon_connector->base, edid);
ret = drm_add_edid_modes(&radeon_connector->base, edid);
kfree(edid);