From 6e4b308a286821458633a90b82d63d2ce7e742b5 Mon Sep 17 00:00:00 2001 From: Octavian Purdila Date: Fri, 15 Jul 2011 17:34:15 +0100 Subject: gma500: skip getting modes via DDC on Moorestown Moorestown does not have a DDC bus, skip getting modes via DDC. This fixes the following bug: BUG: unable to handle kernel NULL pointer dereference at 00000010 IP: [] i2c_transfer+0x17/0xb0 *pde = 00000000 Oops: 0000 [#1] Call Trace: [] drm_do_probe_ddc_edid+0x59/0x90 [] drm_get_edid+0x24/0x250 [] psb_intel_ddc_get_modes+0x22/0x60 [] psb_intel_lvds_get_modes+0x21/0x80 Signed-off-by: Octavian Purdila Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman diff --git a/drivers/staging/gma500/psb_intel_lvds.c b/drivers/staging/gma500/psb_intel_lvds.c index da6f5c8..53803b2 100644 --- a/drivers/staging/gma500/psb_intel_lvds.c +++ b/drivers/staging/gma500/psb_intel_lvds.c @@ -521,7 +521,8 @@ static int psb_intel_lvds_get_modes(struct drm_connector *connector) psb_intel_output->mode_dev; int ret = 0; - ret = psb_intel_ddc_get_modes(psb_intel_output); + if (!IS_MRST(dev)) + ret = psb_intel_ddc_get_modes(psb_intel_output); if (ret) return ret; -- cgit v0.10.2