Patch "drm: aux ->transfer() can return 0, deal with it" has been added to the 4.7-stable tree
Subsystems (3)
This is a note to let you know that I've just added the patch titled
drm: aux ->transfer() can return 0, deal with it
to the 4.7-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary
The filename of the patch is:
drm-aux-transfer-can-return-0-deal-with-it.patch
and it can be found in the queue-4.7 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.
Quoted 1 line
From
a1f5524a66ff6284d1380cdd7723de82698ff9d3Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ville=20Syrj=C3=A4l=C3=A4?= <[email protected]>
Date: Thu, 28 Jul 2016 17:54:42 +0300
Subject: drm: aux ->transfer() can return 0, deal with it
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
From: Ville Syrjälä <[email protected]>
commit a1f5524a66ff6284d1380cdd7723de82698ff9d3 upstream.
Restore the correct behaviour (as in check msg.reply) when aux ->transfer() returns 0. It got removed in
commit 82922da39190 ("drm/dp_helper: Retry aux transactions on all errors")
Now I can actually dump the "entire" DPCD on a Dell UP2314Q with ddrescue. It has some offsets in the DPCD that can't be read for some resaon, all you get is defers. Previously ddrescue would just give up at the first unredable offset on account of read() returning 0 means EOF. Here's the ddrescue log for the interested:
0x00000000 0x00001400 + 0x00001400 0x00000030 - 0x00001430 0x000001D0 + 0x00001600 0x00000030 - 0x00001630 0x0001F9D0 + 0x00021000 0x00000001 - 0x00021001 0x000DEFFF +
--- drivers/gpu/drm/drm_dp_helper.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
drivers/gpu/drm/drm_dp_helper.c +1 -1
@@ -203,7 +203,7 @@ static int drm_dp_dpcd_access(struct drm ret = aux->transfer (aux, &msg); -if (ret >0 ) { +if (ret >=0 ) { native_reply = msg.reply &DP_AUX_NATIVE_REPLY_MASK ;if (native_reply ==DP_AUX_NATIVE_REPLY_ACK ) {if (ret == size)
Patches currently in stable-queue which might be from [email protected] are
queue-4.7/drm-edid-add-6-bpc-quirk-for-display-aeo-model-0.patch queue-4.7/drm-aux-transfer-can-return-0-deal-with-it.patch queue-4.7/drm-i915-update-cdclk_freq-register-on-bdw-after-changing-cdclk-frequency.patch