FAILED: patch "[PATCH] drm/dsc: fix drm_edp_dsc_sink_output_bpp() DPCD high byte" failed to apply to 6.2-stable tree
Subsystems (2)
[email protected]
maintainerThe patch below does not apply to the 6.2-stable tree.
If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to <[email protected]>.
To reproduce the conflict and resubmit, you may use the following commands:
git fetch https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/ linux-6.2.y
git checkout FETCH_HEAD
git cherry-pick -x 13525645e2246ebc8a21bd656248d86022a6ee8f
# <resolve conflicts, build, test, etc.>
git commit -s
git send-email --to '<[email protected]>' --in-reply-to '2023051325-mulch-agent-8347@gregkh' --subject-prefix 'PATCH 6.2.y' HEAD^..
Possible dependencies:
13525645e224 ("drm/dsc: fix drm_edp_dsc_sink_output_bpp() DPCD high byte usage") 1482ec00be4a ("drm: Add missing DP DSC extended capability definitions.")
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
From 13525645e2246ebc8a21bd656248d86022a6ee8f Mon Sep 17 00:00:00 2001
From: Jani Nikula <[email protected]>
Date: Thu, 6 Apr 2023 16:46:14 +0300
Subject: [PATCH] drm/dsc: fix drm_edp_dsc_sink_output_bpp() DPCD high byte
usage
The operator precedence between << and & is wrong, leading to the high byte being completely ignored. For example, with the 6.4 format, 32 becomes 0 and 24 becomes 8. Fix it, and remove the slightly confusing and unnecessary DP_DSC_MAX_BITS_PER_PIXEL_HI_SHIFT macro while at it.
include/drm/display/drm_dp.h +0 -1
@@ -286,7 +286,6 @@#define DP_DSC_MAX_BITS_PER_PIXEL_HI 0x068/* eDP 1.4 */ # define DP_DSC_MAX_BITS_PER_PIXEL_HI_MASK (0x3 << 0) -# define DP_DSC_MAX_BITS_PER_PIXEL_HI_SHIFT 8# define DP_DSC_MAX_BPP_DELTA_VERSION_MASK 0x06# define DP_DSC_MAX_BPP_DELTA_AVAILABILITY 0x08
include/drm/display/drm_dp_helper.h +2 -3
@@ -181,9 +181,8 @@ static inline u16 drm_edp_dsc_sink_output_bpp(const u8 dsc_dpcd[DP_DSC_RECEIVER_CAP_SIZE]) {return dsc_dpcd[DP_DSC_MAX_BITS_PER_PIXEL_LOW -DP_DSC_SUPPORT ] | - (dsc_dpcd[DP_DSC_MAX_BITS_PER_PIXEL_HI -DP_DSC_SUPPORT ] & -DP_DSC_MAX_BITS_PER_PIXEL_HI_MASK << -DP_DSC_MAX_BITS_PER_PIXEL_HI_SHIFT ); + ((dsc_dpcd[DP_DSC_MAX_BITS_PER_PIXEL_HI -DP_DSC_SUPPORT ] & +DP_DSC_MAX_BITS_PER_PIXEL_HI_MASK ) <<8 ); } static inline u32