From: Jani Nikula Date: Tue, 5 May 2026 09:16:47 +0000 (+0300) Subject: drm/i915/display: add struct intel_error_regs and use it X-Git-Url: http://git.ipfire.org/gitweb/?a=commitdiff_plain;h=1abb4a4e6dca55f2557f345dedec2c7a7045f64d;p=thirdparty%2Flinux.git drm/i915/display: add struct intel_error_regs and use it Add struct intel_error_regs, a display version of struct i915_error_regs, and use it. The goal is to reduce the dependency on i915 core types and headers. Reviewed-by: Michał Grzelak Acked-by: Ville Syrjälä Link: https://patch.msgid.link/7f909c6b1f7ae623792b5abc3d31d4a682006e24.1777972548.git.jani.nikula@intel.com Signed-off-by: Jani Nikula --- diff --git a/drivers/gpu/drm/i915/display/intel_display_irq.c b/drivers/gpu/drm/i915/display/intel_display_irq.c index 0c9c21b1290b..b679992cb1e6 100644 --- a/drivers/gpu/drm/i915/display/intel_display_irq.c +++ b/drivers/gpu/drm/i915/display/intel_display_irq.c @@ -73,7 +73,7 @@ static void irq_init(struct intel_display *display, struct intel_irq_regs regs, intel_de_posting_read(display, regs.imr); } -static void error_reset(struct intel_display *display, struct i915_error_regs regs) +static void error_reset(struct intel_display *display, struct intel_error_regs regs) { intel_de_write(display, regs.emr, 0xffffffff); intel_de_posting_read(display, regs.emr); @@ -84,7 +84,7 @@ static void error_reset(struct intel_display *display, struct i915_error_regs re intel_de_posting_read(display, regs.eir); } -static void error_init(struct intel_display *display, struct i915_error_regs regs, +static void error_init(struct intel_display *display, struct intel_error_regs regs, u32 emr_val) { intel_de_write(display, regs.eir, 0xffffffff); diff --git a/drivers/gpu/drm/i915/display/intel_display_reg_defs.h b/drivers/gpu/drm/i915/display/intel_display_reg_defs.h index d044967aa6d9..a56f8ed055f6 100644 --- a/drivers/gpu/drm/i915/display/intel_display_reg_defs.h +++ b/drivers/gpu/drm/i915/display/intel_display_reg_defs.h @@ -20,6 +20,14 @@ struct intel_irq_regs { #define INTEL_IRQ_REGS(_imr, _ier, _iir) \ ((const struct intel_irq_regs){ .imr = (_imr), .ier = (_ier), .iir = (_iir) }) +struct intel_error_regs { + intel_reg_t emr; + intel_reg_t eir; +}; + +#define INTEL_ERROR_REGS(_emr, _eir) \ + ((const struct intel_error_regs){ .emr = (_emr), .eir = (_eir) }) + #define VLV_DISPLAY_BASE 0x180000 /* diff --git a/drivers/gpu/drm/i915/display/intel_display_regs.h b/drivers/gpu/drm/i915/display/intel_display_regs.h index d1387d98e364..4321f8b529da 100644 --- a/drivers/gpu/drm/i915/display/intel_display_regs.h +++ b/drivers/gpu/drm/i915/display/intel_display_regs.h @@ -117,7 +117,7 @@ #define VLV_ERROR_PAGE_TABLE (1 << 4) #define VLV_ERROR_CLAIM (1 << 0) -#define VLV_ERROR_REGS I915_ERROR_REGS(VLV_EMR, VLV_EIR) +#define VLV_ERROR_REGS INTEL_ERROR_REGS(VLV_EMR, VLV_EIR) #define _MBUS_ABOX0_CTL 0x45038 #define _MBUS_ABOX1_CTL 0x45048