From: Jani Nikula <jani.nikula@intel.com>
To: ionic@ionic.de
Cc: daniel@ffwll.ch, intel-gfx@lists.freedesktop.org,
linux-kernel@vger.kernel.org, jani.nikula@intel.com
Subject: [PATCH 1/1] drm/i915: ensure i2c adapter is all set before adding it
Date: Mon, 13 Aug 2012 17:33:02 +0300 [thread overview]
Message-ID: <b6dc8317cdc108b22f90453b3d6f7475a620d96c.1344867962.git.jani.nikula@intel.com> (raw)
In-Reply-To: <cover.1344867962.git.jani.nikula@intel.com>
In-Reply-To: <cover.1344867962.git.jani.nikula@intel.com>
i2c_add_adapter() may do i2c transfers on the bus to detect supported
devices. Therefore the adapter needs to be all set before adding it. This
was not the case for the bit-banging fallback, resulting in an oops if the
device detection GMBUS transfers timed out. Fix the issue by calling
i2c_add_adapter() only after intel_gpio_setup().
LKML-Reference: <5021F00B.7000503@ionic.de>
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
---
drivers/gpu/drm/i915/intel_i2c.c | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/drivers/gpu/drm/i915/intel_i2c.c b/drivers/gpu/drm/i915/intel_i2c.c
index 1991a44..a23ba84f 100644
--- a/drivers/gpu/drm/i915/intel_i2c.c
+++ b/drivers/gpu/drm/i915/intel_i2c.c
@@ -486,9 +486,6 @@ int intel_setup_gmbus(struct drm_device *dev)
bus->dev_priv = dev_priv;
bus->adapter.algo = &gmbus_algorithm;
- ret = i2c_add_adapter(&bus->adapter);
- if (ret)
- goto err;
/* By default use a conservative clock rate */
bus->reg0 = port | GMBUS_RATE_100KHZ;
@@ -498,6 +495,10 @@ int intel_setup_gmbus(struct drm_device *dev)
bus->force_bit = true;
intel_gpio_setup(bus, port);
+
+ ret = i2c_add_adapter(&bus->adapter);
+ if (ret)
+ goto err;
}
intel_i2c_reset(dev_priv->dev);
--
1.7.9.5
next prev parent reply other threads:[~2012-08-13 14:29 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-08-08 4:50 null pointer dereference while loading i915 Mihai Moldovan
2012-08-10 10:10 ` Daniel Vetter
2012-08-10 16:05 ` Mihai Moldovan
2012-08-10 16:39 ` Daniel Vetter
2012-08-10 17:44 ` Mihai Moldovan
2012-08-10 23:09 ` Mihai Moldovan
2012-08-13 14:33 ` [PATCH 0/1] hopefully fix null pointer dereference on i915 load Jani Nikula
2012-08-13 14:33 ` Jani Nikula [this message]
2012-08-13 17:05 ` [PATCH 1/1] drm/i915: ensure i2c adapter is all set before adding it Daniel Vetter
2012-08-13 15:03 ` [PATCH 0/1] hopefully fix null pointer dereference on i915 load Mihai Moldovan
2012-08-13 15:09 ` Daniel Vetter
2012-08-13 15:27 ` Mihai Moldovan
2012-08-13 16:15 ` Mihai Moldovan
2012-08-14 6:17 ` Jani Nikula
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=b6dc8317cdc108b22f90453b3d6f7475a620d96c.1344867962.git.jani.nikula@intel.com \
--to=jani.nikula@intel.com \
--cc=daniel@ffwll.ch \
--cc=intel-gfx@lists.freedesktop.org \
--cc=ionic@ionic.de \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Powered by JetHome