• Matt Roper's avatar
    drm/i915/uncore: Drop gen11/gen12 mmio write handlers · aef02736
    Matt Roper authored
    Now that the reference to the shadow table is stored within the uncore,
    we don't need to generate separate fwtable, gen11_fwtable, and
    gen12_fwtable variants of the register write functions; a single
    'fwtable' implementation will work for all of those platforms now.
    
    While consolidating the functions, gen11/gen12 pick up a
    NEEDS_FORCE_WAKE() check that they didn't have before, allowing them to
    bypass a lot of forcewake/shadow checking for non-GT registers (e.g.,
    display).  However since these later platforms also introduce media
    engines at higher MMIO offsets, the definition of NEEDS_FORCE_WAKE() is
    extended to also consider register offsets above GEN11_BSD_RING_BASE.
    
    v2:
     - Restore NEEDS_FORCE_WAKE(), but extend it for compatibility with the
       gen11+ platforms by also passing offsets above GEN11_BSD_RING_BASE.
       (Chris, Tvrtko)
    
    Cc: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>
    Cc: Chris Wilson <chris@chris-wilson.co.uk>
    Signed-off-by: default avatarMatt Roper <matthew.d.roper@intel.com>
    Reviewed-by: default avatarTvrtko Ursulin <tvrtko.ursulin@intel.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/20210910201030.3436066-5-matthew.d.roper@intel.com
    aef02736
intel_uncore.c 77.1 KB