Commit 9d267f08 authored by Dave Airlie's avatar Dave Airlie

Merge tag 'drm-intel-fixes-2021-11-18' of...

Merge tag 'drm-intel-fixes-2021-11-18' of git://anongit.freedesktop.org/drm/drm-intel into drm-fixes

One quick fix for return error handling, one fix for ADL-P display
and one revert targeting stable 5.4, for TGL's DSI display clocks
Signed-off-by: default avatarDave Airlie <airlied@redhat.com>

From: Rodrigo Vivi <rodrigo.vivi@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/YZbUPIHpR1S3JZ2b@intel.com
parents 0e11279b 8b2abf77
...@@ -696,10 +696,7 @@ static void gen11_dsi_map_pll(struct intel_encoder *encoder, ...@@ -696,10 +696,7 @@ static void gen11_dsi_map_pll(struct intel_encoder *encoder,
intel_de_write(dev_priv, ICL_DPCLKA_CFGCR0, val); intel_de_write(dev_priv, ICL_DPCLKA_CFGCR0, val);
for_each_dsi_phy(phy, intel_dsi->phys) { for_each_dsi_phy(phy, intel_dsi->phys) {
if (DISPLAY_VER(dev_priv) >= 12) val &= ~ICL_DPCLKA_CFGCR0_DDI_CLK_OFF(phy);
val |= ICL_DPCLKA_CFGCR0_DDI_CLK_OFF(phy);
else
val &= ~ICL_DPCLKA_CFGCR0_DDI_CLK_OFF(phy);
} }
intel_de_write(dev_priv, ICL_DPCLKA_CFGCR0, val); intel_de_write(dev_priv, ICL_DPCLKA_CFGCR0, val);
...@@ -1135,8 +1132,6 @@ static void ...@@ -1135,8 +1132,6 @@ static void
gen11_dsi_enable_port_and_phy(struct intel_encoder *encoder, gen11_dsi_enable_port_and_phy(struct intel_encoder *encoder,
const struct intel_crtc_state *crtc_state) const struct intel_crtc_state *crtc_state)
{ {
struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
/* step 4a: power up all lanes of the DDI used by DSI */ /* step 4a: power up all lanes of the DDI used by DSI */
gen11_dsi_power_up_lanes(encoder); gen11_dsi_power_up_lanes(encoder);
...@@ -1162,8 +1157,7 @@ gen11_dsi_enable_port_and_phy(struct intel_encoder *encoder, ...@@ -1162,8 +1157,7 @@ gen11_dsi_enable_port_and_phy(struct intel_encoder *encoder,
gen11_dsi_configure_transcoder(encoder, crtc_state); gen11_dsi_configure_transcoder(encoder, crtc_state);
/* Step 4l: Gate DDI clocks */ /* Step 4l: Gate DDI clocks */
if (DISPLAY_VER(dev_priv) == 11) gen11_dsi_gate_clocks(encoder);
gen11_dsi_gate_clocks(encoder);
} }
static void gen11_dsi_powerup_panel(struct intel_encoder *encoder) static void gen11_dsi_powerup_panel(struct intel_encoder *encoder)
...@@ -1271,7 +1265,8 @@ static void adlp_set_lp_hs_wakeup_gb(struct intel_encoder *encoder) ...@@ -1271,7 +1265,8 @@ static void adlp_set_lp_hs_wakeup_gb(struct intel_encoder *encoder)
if (DISPLAY_VER(i915) == 13) { if (DISPLAY_VER(i915) == 13) {
for_each_dsi_port(port, intel_dsi->ports) for_each_dsi_port(port, intel_dsi->ports)
intel_de_rmw(i915, TGL_DSI_CHKN_REG(port), intel_de_rmw(i915, TGL_DSI_CHKN_REG(port),
TGL_DSI_CHKN_LSHS_GB, 0x4); TGL_DSI_CHKN_LSHS_GB_MASK,
TGL_DSI_CHKN_LSHS_GB(4));
} }
} }
......
...@@ -3080,8 +3080,8 @@ guc_create_parallel(struct intel_engine_cs **engines, ...@@ -3080,8 +3080,8 @@ guc_create_parallel(struct intel_engine_cs **engines,
ce = intel_engine_create_virtual(siblings, num_siblings, ce = intel_engine_create_virtual(siblings, num_siblings,
FORCE_VIRTUAL); FORCE_VIRTUAL);
if (!ce) { if (IS_ERR(ce)) {
err = ERR_PTR(-ENOMEM); err = ERR_CAST(ce);
goto unwind; goto unwind;
} }
......
...@@ -11717,7 +11717,9 @@ enum skl_power_gate { ...@@ -11717,7 +11717,9 @@ enum skl_power_gate {
#define TGL_DSI_CHKN_REG(port) _MMIO_PORT(port, \ #define TGL_DSI_CHKN_REG(port) _MMIO_PORT(port, \
_TGL_DSI_CHKN_REG_0, \ _TGL_DSI_CHKN_REG_0, \
_TGL_DSI_CHKN_REG_1) _TGL_DSI_CHKN_REG_1)
#define TGL_DSI_CHKN_LSHS_GB REG_GENMASK(15, 12) #define TGL_DSI_CHKN_LSHS_GB_MASK REG_GENMASK(15, 12)
#define TGL_DSI_CHKN_LSHS_GB(byte_clocks) REG_FIELD_PREP(TGL_DSI_CHKN_LSHS_GB_MASK, \
(byte_clocks))
/* Display Stream Splitter Control */ /* Display Stream Splitter Control */
#define DSS_CTL1 _MMIO(0x67400) #define DSS_CTL1 _MMIO(0x67400)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment