On Wed, Feb 25, 2026 at 07:57:02PM +0200, Jani Nikula wrote: > I realized xe_reg_defs.h subtly pulls in i915_reg_defs.h from i915 via > the compat headers, which is ugly and wrong to say the least, and then > xe uses the macros all over the place.
I also hadn't realized we had this mess o.O > > Clean this up by creating two shared headers under include/drm/intel, > with some related cleanups on top. Nice idea on the common header and nice clean up. Either way is good but probably drm-intel-next is easier: Acked-by: Rodrigo Vivi <[email protected]> > > BR, > Jani. > > > Jani Nikula (8): > drm/i915/reg: make masked field helpers constexpr > drm/i915/lrc: switch to _MASKED_BIT_ENABLE() and _MASKED_BIT_DISABLE() > drm/{i915,xe}/reg: rename masked field helpers REG_MASKED_FIELD*() > drm/i915/perf: prefer REG_MASKED_FIELD_ENABLE() and > REG_MASKED_FIELD_DISABLE() > drm/xe/oa: prefer REG_MASKED_FIELD_ENABLE() and > REG_MASKED_FIELD_DISABLE() > drm/intel: add reg_bits.h for the various register content helpers > drm/intel: add pick.h for the various "picker" helpers > drm/i915/gt: prefer _PICK_EVEN() over _PICK() > > drivers/gpu/drm/i915/display/i9xx_wm.c | 8 +- > .../gpu/drm/i915/display/intel_display_irq.c | 4 +- > drivers/gpu/drm/i915/gt/gen6_ppgtt.c | 2 +- > drivers/gpu/drm/i915/gt/intel_engine_cs.c | 10 +- > drivers/gpu/drm/i915/gt/intel_engine_pm.c | 2 +- > .../drm/i915/gt/intel_execlists_submission.c | 6 +- > drivers/gpu/drm/i915/gt/intel_ggtt_fencing.c | 6 +- > drivers/gpu/drm/i915/gt/intel_gt_regs.h | 8 +- > drivers/gpu/drm/i915/gt/intel_lrc.c | 21 +- > drivers/gpu/drm/i915/gt/intel_rc6.c | 22 +-- > drivers/gpu/drm/i915/gt/intel_reset.c | 4 +- > .../gpu/drm/i915/gt/intel_ring_submission.c | 19 +- > drivers/gpu/drm/i915/gt/intel_workarounds.c | 24 +-- > .../gpu/drm/i915/gt/uc/intel_guc_submission.c | 4 +- > drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c | 4 +- > drivers/gpu/drm/i915/gvt/handlers.c | 10 +- > drivers/gpu/drm/i915/gvt/mmio_context.c | 2 +- > drivers/gpu/drm/i915/gvt/reg.h | 4 +- > drivers/gpu/drm/i915/i915_perf.c | 34 ++-- > drivers/gpu/drm/i915/i915_reg_defs.h | 179 +----------------- > drivers/gpu/drm/i915/intel_clock_gating.c | 38 ++-- > drivers/gpu/drm/i915/intel_uncore.c | 4 +- > drivers/gpu/drm/i915/pxp/intel_pxp.c | 4 +- > .../drm/xe/compat-i915-headers/intel_uncore.h | 1 + > drivers/gpu/drm/xe/regs/xe_reg_defs.h | 5 +- > drivers/gpu/drm/xe/xe_eu_stall.c | 20 +- > drivers/gpu/drm/xe/xe_execlist.c | 6 +- > drivers/gpu/drm/xe/xe_hw_engine.c | 8 +- > drivers/gpu/drm/xe/xe_lrc.c | 12 +- > drivers/gpu/drm/xe/xe_oa.c | 42 ++-- > drivers/gpu/drm/xe/xe_pxp.c | 4 +- > drivers/gpu/drm/xe/xe_uc_fw.c | 4 +- > include/drm/intel/pick.h | 51 +++++ > include/drm/intel/reg_bits.h | 139 ++++++++++++++ > 34 files changed, 362 insertions(+), 349 deletions(-) > create mode 100644 include/drm/intel/pick.h > create mode 100644 include/drm/intel/reg_bits.h > > -- > 2.47.3 >
