mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-13 23:24:05 +08:00
Merge tag 'drm-intel-next-fixes-2022-01-20' of git://anongit.freedesktop.org/drm/drm-intel into drm-next
- Latest updates for the EHL display voltage swing table (José Roberto de Souza) - Additional step is required when programming the ADL-P display TC voltage swing (José Roberto de Souza) Signed-off-by: Dave Airlie <airlied@redhat.com> From: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/Yek1zdsnRPiBVvFF@tursulin-mobl2
This commit is contained in:
commit
410482b51a
@ -1298,6 +1298,28 @@ static void tgl_dkl_phy_set_signal_levels(struct intel_encoder *encoder,
|
||||
|
||||
intel_de_rmw(dev_priv, DKL_TX_DPCNTL2(tc_port),
|
||||
DKL_TX_DP20BITMODE, 0);
|
||||
|
||||
if (IS_ALDERLAKE_P(dev_priv)) {
|
||||
u32 val;
|
||||
|
||||
if (intel_crtc_has_type(crtc_state, INTEL_OUTPUT_HDMI)) {
|
||||
if (ln == 0) {
|
||||
val = DKL_TX_DPCNTL2_CFG_LOADGENSELECT_TX1(0);
|
||||
val |= DKL_TX_DPCNTL2_CFG_LOADGENSELECT_TX2(2);
|
||||
} else {
|
||||
val = DKL_TX_DPCNTL2_CFG_LOADGENSELECT_TX1(3);
|
||||
val |= DKL_TX_DPCNTL2_CFG_LOADGENSELECT_TX2(3);
|
||||
}
|
||||
} else {
|
||||
val = DKL_TX_DPCNTL2_CFG_LOADGENSELECT_TX1(0);
|
||||
val |= DKL_TX_DPCNTL2_CFG_LOADGENSELECT_TX2(0);
|
||||
}
|
||||
|
||||
intel_de_rmw(dev_priv, DKL_TX_DPCNTL2(tc_port),
|
||||
DKL_TX_DPCNTL2_CFG_LOADGENSELECT_TX1_MASK |
|
||||
DKL_TX_DPCNTL2_CFG_LOADGENSELECT_TX2_MASK,
|
||||
val);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -477,14 +477,14 @@ static const struct intel_ddi_buf_trans icl_combo_phy_trans_hdmi = {
|
||||
static const union intel_ddi_buf_trans_entry _ehl_combo_phy_trans_dp[] = {
|
||||
/* NT mV Trans mV db */
|
||||
{ .icl = { 0xA, 0x33, 0x3F, 0x00, 0x00 } }, /* 350 350 0.0 */
|
||||
{ .icl = { 0xA, 0x47, 0x36, 0x00, 0x09 } }, /* 350 500 3.1 */
|
||||
{ .icl = { 0xC, 0x64, 0x34, 0x00, 0x0B } }, /* 350 700 6.0 */
|
||||
{ .icl = { 0x6, 0x7F, 0x30, 0x00, 0x0F } }, /* 350 900 8.2 */
|
||||
{ .icl = { 0xA, 0x47, 0x38, 0x00, 0x07 } }, /* 350 500 3.1 */
|
||||
{ .icl = { 0xC, 0x64, 0x33, 0x00, 0x0C } }, /* 350 700 6.0 */
|
||||
{ .icl = { 0x6, 0x7F, 0x2F, 0x00, 0x10 } }, /* 350 900 8.2 */
|
||||
{ .icl = { 0xA, 0x46, 0x3F, 0x00, 0x00 } }, /* 500 500 0.0 */
|
||||
{ .icl = { 0xC, 0x64, 0x38, 0x00, 0x07 } }, /* 500 700 2.9 */
|
||||
{ .icl = { 0xC, 0x64, 0x37, 0x00, 0x08 } }, /* 500 700 2.9 */
|
||||
{ .icl = { 0x6, 0x7F, 0x32, 0x00, 0x0D } }, /* 500 900 5.1 */
|
||||
{ .icl = { 0xC, 0x61, 0x3F, 0x00, 0x00 } }, /* 650 700 0.6 */
|
||||
{ .icl = { 0x6, 0x7F, 0x38, 0x00, 0x07 } }, /* 600 900 3.5 */
|
||||
{ .icl = { 0x6, 0x7F, 0x37, 0x00, 0x08 } }, /* 600 900 3.5 */
|
||||
{ .icl = { 0x6, 0x7F, 0x3F, 0x00, 0x00 } }, /* 900 900 0.0 */
|
||||
};
|
||||
|
||||
|
@ -11166,8 +11166,12 @@ enum skl_power_gate {
|
||||
_DKL_PHY2_BASE) + \
|
||||
_DKL_TX_DPCNTL1)
|
||||
|
||||
#define _DKL_TX_DPCNTL2 0x2C8
|
||||
#define DKL_TX_DP20BITMODE (1 << 2)
|
||||
#define _DKL_TX_DPCNTL2 0x2C8
|
||||
#define DKL_TX_DP20BITMODE REG_BIT(2)
|
||||
#define DKL_TX_DPCNTL2_CFG_LOADGENSELECT_TX1_MASK REG_GENMASK(4, 3)
|
||||
#define DKL_TX_DPCNTL2_CFG_LOADGENSELECT_TX1(val) REG_FIELD_PREP(DKL_TX_DPCNTL2_CFG_LOADGENSELECT_TX1_MASK, (val))
|
||||
#define DKL_TX_DPCNTL2_CFG_LOADGENSELECT_TX2_MASK REG_GENMASK(6, 5)
|
||||
#define DKL_TX_DPCNTL2_CFG_LOADGENSELECT_TX2(val) REG_FIELD_PREP(DKL_TX_DPCNTL2_CFG_LOADGENSELECT_TX2_MASK, (val))
|
||||
#define DKL_TX_DPCNTL2(tc_port) _MMIO(_PORT(tc_port, \
|
||||
_DKL_PHY1_BASE, \
|
||||
_DKL_PHY2_BASE) + \
|
||||
|
Loading…
Reference in New Issue
Block a user