]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
3.18-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 4 Dec 2017 13:59:32 +0000 (14:59 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 4 Dec 2017 13:59:32 +0000 (14:59 +0100)
added patches:
drm-i915-don-t-try-indexed-reads-to-alternate-slave-addresses.patch
drm-i915-prevent-zero-length-index-write.patch

queue-3.18/drm-i915-don-t-try-indexed-reads-to-alternate-slave-addresses.patch [new file with mode: 0644]
queue-3.18/drm-i915-prevent-zero-length-index-write.patch [new file with mode: 0644]
queue-3.18/series

diff --git a/queue-3.18/drm-i915-don-t-try-indexed-reads-to-alternate-slave-addresses.patch b/queue-3.18/drm-i915-don-t-try-indexed-reads-to-alternate-slave-addresses.patch
new file mode 100644 (file)
index 0000000..5805243
--- /dev/null
@@ -0,0 +1,42 @@
+From ae5c631e605a452a5a0e73205a92810c01ed954b Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Ville=20Syrj=C3=A4l=C3=A4?= <ville.syrjala@linux.intel.com>
+Date: Thu, 23 Nov 2017 21:41:56 +0200
+Subject: drm/i915: Don't try indexed reads to alternate slave addresses
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+From: Ville Syrjälä <ville.syrjala@linux.intel.com>
+
+commit ae5c631e605a452a5a0e73205a92810c01ed954b upstream.
+
+We can only specify the one slave address to indexed reads/writes.
+Make sure the messages we check are destined to the same slave
+address before deciding to do an indexed transfer.
+
+Cc: Daniel Kurtz <djkurtz@chromium.org>
+Cc: Chris Wilson <chris@chris-wilson.co.uk>
+Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
+Cc: Sean Paul <seanpaul@chromium.org>
+Fixes: 56f9eac05489 ("drm/i915/intel_i2c: use INDEX cycles for i2c read transactions")
+Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
+Link: https://patchwork.freedesktop.org/patch/msgid/20171123194157.25367-2-ville.syrjala@linux.intel.com
+Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
+(cherry picked from commit c4deb62d7821672265b87952bcd1c808f3bf3e8f)
+Signed-off-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/gpu/drm/i915/intel_i2c.c |    1 +
+ 1 file changed, 1 insertion(+)
+
+--- a/drivers/gpu/drm/i915/intel_i2c.c
++++ b/drivers/gpu/drm/i915/intel_i2c.c
+@@ -394,6 +394,7 @@ static bool
+ gmbus_is_index_read(struct i2c_msg *msgs, int i, int num)
+ {
+       return (i + 1 < num &&
++              msgs[i].addr == msgs[i + 1].addr &&
+               !(msgs[i].flags & I2C_M_RD) && msgs[i].len <= 2 &&
+               (msgs[i + 1].flags & I2C_M_RD));
+ }
diff --git a/queue-3.18/drm-i915-prevent-zero-length-index-write.patch b/queue-3.18/drm-i915-prevent-zero-length-index-write.patch
new file mode 100644 (file)
index 0000000..91b7183
--- /dev/null
@@ -0,0 +1,44 @@
+From 56350fb8978bbf4aafe08f21234e161dd128b417 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Ville=20Syrj=C3=A4l=C3=A4?= <ville.syrjala@linux.intel.com>
+Date: Thu, 23 Nov 2017 21:41:57 +0200
+Subject: drm/i915: Prevent zero length "index" write
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+From: Ville Syrjälä <ville.syrjala@linux.intel.com>
+
+commit 56350fb8978bbf4aafe08f21234e161dd128b417 upstream.
+
+The hardware always writes one or two bytes in the index portion of
+an indexed transfer. Make sure the message we send as the index
+doesn't have a zero length.
+
+Cc: Daniel Kurtz <djkurtz@chromium.org>
+Cc: Chris Wilson <chris@chris-wilson.co.uk>
+Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
+Cc: Sean Paul <seanpaul@chromium.org>
+Fixes: 56f9eac05489 ("drm/i915/intel_i2c: use INDEX cycles for i2c read transactions")
+Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
+Link: https://patchwork.freedesktop.org/patch/msgid/20171123194157.25367-3-ville.syrjala@linux.intel.com
+Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
+(cherry picked from commit bb9e0d4bca50f429152e74a459160b41f3d60fb2)
+Signed-off-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/gpu/drm/i915/intel_i2c.c |    3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+--- a/drivers/gpu/drm/i915/intel_i2c.c
++++ b/drivers/gpu/drm/i915/intel_i2c.c
+@@ -395,7 +395,8 @@ gmbus_is_index_read(struct i2c_msg *msgs
+ {
+       return (i + 1 < num &&
+               msgs[i].addr == msgs[i + 1].addr &&
+-              !(msgs[i].flags & I2C_M_RD) && msgs[i].len <= 2 &&
++              !(msgs[i].flags & I2C_M_RD) &&
++              (msgs[i].len == 1 || msgs[i].len == 2) &&
+               (msgs[i + 1].flags & I2C_M_RD));
+ }
index c2e7778a3eee3f0b126c841e92eac9292197f8c1..b251dd41da088978b9c7ce87669396bc3fdb8c9f 100644 (file)
@@ -8,3 +8,5 @@ kvm-x86-inject-exceptions-produced-by-x86_decode_insn.patch
 eeprom-at24-check-at24_read-write-arguments.patch
 drm-panel-simple-add-missing-panel_simple_unprepare-calls.patch
 nfs-revalidate-.-etc-correctly-on-open.patch
+drm-i915-don-t-try-indexed-reads-to-alternate-slave-addresses.patch
+drm-i915-prevent-zero-length-index-write.patch