drm/i915: Move hotplug inversion logic into separate helper
Use *_hpd_invert() helpers whenever possible to isolate logic specific to hotplug inversion from common HPD setup logic to improve readability and maintainability of the source code. While we only define dg1_hpd_invert() here, future platforms are likely to have different hotplug inversion needs, thus it makes sense grouping different implementations under a common suffix. v2: Fix coding style and prefer to use small *_hdp_invert() helpers instead of a generic one. CC: Jani Nikula <jani.nikula@linux.intel.com> CC: Lucas De Marchi <lucas.demarchi@intel.com> Signed-off-by: Gustavo Sousa <gustavo.sousa@intel.com> Reviewed-by: Jani Nikula <jani.nikula@intel.com> Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20220922164949.163985-1-gustavo.sousa@intel.com
This commit is contained in:
parent
8146d588bf
commit
71690148db
|
@ -3411,17 +3411,18 @@ static u32 gen11_hotplug_enables(struct drm_i915_private *i915,
|
|||
}
|
||||
}
|
||||
|
||||
static void dg1_hpd_invert(struct drm_i915_private *i915)
|
||||
{
|
||||
u32 val = (INVERT_DDIA_HPD |
|
||||
INVERT_DDIB_HPD |
|
||||
INVERT_DDIC_HPD |
|
||||
INVERT_DDID_HPD);
|
||||
intel_uncore_rmw(&i915->uncore, SOUTH_CHICKEN1, 0, val);
|
||||
}
|
||||
|
||||
static void dg1_hpd_irq_setup(struct drm_i915_private *dev_priv)
|
||||
{
|
||||
u32 val;
|
||||
|
||||
val = intel_uncore_read(&dev_priv->uncore, SOUTH_CHICKEN1);
|
||||
val |= (INVERT_DDIA_HPD |
|
||||
INVERT_DDIB_HPD |
|
||||
INVERT_DDIC_HPD |
|
||||
INVERT_DDID_HPD);
|
||||
intel_uncore_write(&dev_priv->uncore, SOUTH_CHICKEN1, val);
|
||||
|
||||
dg1_hpd_invert(dev_priv);
|
||||
icp_hpd_irq_setup(dev_priv);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue