drm/i915: Track IRQ state in local device state
Replace usage of struct drm_device.irq_enabled with the driver's own state field struct drm_i915_private.irq_enabled. The field in the DRM device structure is considered legacy and should not be used by KMS drivers. Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de> Reviewed-by: Jani Nikula <jani.nikula@intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20210625082222.3845-7-tzimmermann@suse.de
This commit is contained in:
parent
24d31c4995
commit
ac1723c16b
@ -1134,6 +1134,8 @@ struct drm_i915_private {
|
||||
/* For i915gm/i945gm vblank irq workaround */
|
||||
u8 vblank_enabled;
|
||||
|
||||
bool irq_enabled;
|
||||
|
||||
/* perform PHY state sanity checks? */
|
||||
bool chv_phy_assert[2];
|
||||
|
||||
|
@ -4488,14 +4488,14 @@ int intel_irq_install(struct drm_i915_private *dev_priv)
|
||||
*/
|
||||
dev_priv->runtime_pm.irqs_enabled = true;
|
||||
|
||||
dev_priv->drm.irq_enabled = true;
|
||||
dev_priv->irq_enabled = true;
|
||||
|
||||
intel_irq_reset(dev_priv);
|
||||
|
||||
ret = request_irq(irq, intel_irq_handler(dev_priv),
|
||||
IRQF_SHARED, DRIVER_NAME, dev_priv);
|
||||
if (ret < 0) {
|
||||
dev_priv->drm.irq_enabled = false;
|
||||
dev_priv->irq_enabled = false;
|
||||
return ret;
|
||||
}
|
||||
|
||||
@ -4521,10 +4521,10 @@ void intel_irq_uninstall(struct drm_i915_private *dev_priv)
|
||||
* intel_modeset_driver_remove() calling us out of sequence.
|
||||
* Would be nice if it didn't do that...
|
||||
*/
|
||||
if (!dev_priv->drm.irq_enabled)
|
||||
if (!dev_priv->irq_enabled)
|
||||
return;
|
||||
|
||||
dev_priv->drm.irq_enabled = false;
|
||||
dev_priv->irq_enabled = false;
|
||||
|
||||
intel_irq_reset(dev_priv);
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user