FAILED: patch "[PATCH] phy: qcom: edp: Unify generic DP/eDP swing and pre-emphasis" failed to apply to 6.12-stable tree
Subsystems (3)
[email protected]
maintainerThe patch below does not apply to the 6.12-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.12.y
git checkout FETCH_HEAD
git cherry-pick -x fd672888cccd6b855154efe0ac78e7ce3e8ab088
# <resolve conflicts, build, test, etc.>
git commit -s
git send-email --to '<[email protected]>' --in-reply-to '2026052853-nanometer-lavish-2518@gregkh' --subject-prefix 'PATCH 6.12.y' HEAD^..
Possible dependencies:
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
From fd672888cccd6b855154efe0ac78e7ce3e8ab088 Mon Sep 17 00:00:00 2001
From: Yongxing Mou <[email protected]>
Date: Mon, 27 Apr 2026 14:35:19 +0800
Subject: [PATCH] phy: qcom: edp: Unify generic DP/eDP swing and pre-emphasis
tables
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
The current eDP and DP swing/pre-emphasis tables do not match the HPG requirements for the supported platforms, correct the table accordingly.
The generic tables which can be shared as follows:
DP mode:
-sa8775p/sc7280/sc8280xp/x1e80100 -glymur -sc8180x eDP mode(low vdiff): -glymur/sa8775p/sc8280xp/x1e80100 -sc7280 -sc8180x
The proper tables for SC8180X and SC7280 will be added in a later patch, since they need separate table.
drivers/phy/qualcomm/phy-qcom-edp.c +10 -31
@@ -116,17 +116,17 @@ struct qcom_edp { };static const u8 dp_swing_hbr_rbr[4 ][4 ] = { - {0x08 ,0x0f ,0x16 ,0x1f }, + {0x07 ,0x0f ,0x16 ,0x1f }, {0x11 ,0x1e ,0x1f ,0xff }, {0x16 ,0x1f ,0xff ,0xff }, {0x1f ,0xff ,0xff ,0xff } };static const u8 dp_pre_emp_hbr_rbr[4 ][4 ] = { - {0x00 ,0x0d ,0x14 ,0x1a }, + {0x00 ,0x0e ,0x15 ,0x1a }, {0x00 ,0x0e ,0x15 ,0xff }, {0x00 ,0x0e ,0xff ,0xff }, - {0x03 ,0xff ,0xff ,0xff } + {0x04 ,0xff ,0xff ,0xff } };static const u8 dp_swing_hbr2_hbr3[4 ][4 ] = {
@@ -158,7 +158,7 @@ static const u8 edp_swing_hbr_rbr[4][4] = { };static const u8 edp_pre_emp_hbr_rbr[4 ][4 ] = { - {0x05 ,0x12 ,0x17 ,0x1d }, + {0x05 ,0x11 ,0x17 ,0x1d }, {0x05 ,0x11 ,0x18 ,0xff }, {0x06 ,0x11 ,0xff ,0xff }, {0x00 ,0xff ,0xff ,0xff }
@@ -172,10 +172,10 @@ static const u8 edp_swing_hbr2_hbr3[4][4] = { };static const u8 edp_pre_emp_hbr2_hbr3[4 ][4 ] = { - {0x08 ,0x11 ,0x17 ,0x1b }, - {0x00 ,0x0c ,0x13 ,0xff }, - {0x05 ,0x10 ,0xff ,0xff }, - {0x00 ,0xff ,0xff ,0xff } + {0x0c ,0x15 ,0x19 ,0x1e }, + {0x0b ,0x15 ,0x19 ,0xff }, + {0x0e ,0x14 ,0xff ,0xff }, + {0x0d ,0xff ,0xff ,0xff } };static const struct qcom_edp_swing_pre_emph_cfg edp_phy_swing_pre_emph_cfg = {
@@ -193,27 +193,6 @@ static const u8 edp_phy_vco_div_cfg_v4[4] = { 0x01, 0x01, 0x02, 0x00, }; -static const u8 edp_pre_emp_hbr_rbr_v5[4 ][4 ] = { - {0x05 ,0x11 ,0x17 ,0x1d }, - {0x05 ,0x11 ,0x18 ,0xff }, - {0x06 ,0x11 ,0xff ,0xff }, - {0x00 ,0xff ,0xff ,0xff } -}; - -static const u8 edp_pre_emp_hbr2_hbr3_v5[4 ][4 ] = { - {0x0c ,0x15 ,0x19 ,0x1e }, - {0x0b ,0x15 ,0x19 ,0xff }, - {0x0e ,0x14 ,0xff ,0xff }, - {0x0d ,0xff ,0xff ,0xff } -}; - -static const struct qcom_edp_swing_pre_emph_cfg edp_phy_swing_pre_emph_cfg_v5 = { - .swing_hbr_rbr = &edp_swing_hbr_rbr, - .swing_hbr3_hbr2 = &edp_swing_hbr2_hbr3, - .pre_emphasis_hbr_rbr = &edp_pre_emp_hbr_rbr_v5, - .pre_emphasis_hbr3_hbr2 = &edp_pre_emp_hbr2_hbr3_v5, -}; -static const u8 edp_phy_aux_cfg_v5[DP_AUX_CFG_SIZE ] = {0x00 ,0x13 ,0xa4 ,0x00 ,0x0a ,0x26 ,0x0a ,0x03 ,0x37 ,0x03 ,0x02 ,0x02 ,0x00 , };
@@ -564,7 +543,7 @@ static const struct qcom_edp_phy_cfg sa8775p_dp_phy_cfg = { .is_edp = false, .aux_cfg = edp_phy_aux_cfg_v5, .vco_div_cfg = edp_phy_vco_div_cfg_v4, - .swing_pre_emph_cfg = &edp_phy_swing_pre_emph_cfg_v5, + .swing_pre_emph_cfg = &edp_phy_swing_pre_emph_cfg, .ver_ops = &qcom_edp_phy_ops_v4, };
@@ -945,7 +924,7 @@ static const struct phy_ver_ops qcom_edp_phy_ops_v8 = {static struct qcom_edp_phy_cfg glymur_phy_cfg = { .aux_cfg = edp_phy_aux_cfg_v8, .vco_div_cfg = edp_phy_vco_div_cfg_v8, - .swing_pre_emph_cfg = &edp_phy_swing_pre_emph_cfg_v5, + .swing_pre_emph_cfg = &edp_phy_swing_pre_emph_cfg, .ver_ops = &qcom_edp_phy_ops_v8, };