• Matt Roper's avatar
    drm/i915/icl: Use revid->stepping tables · cc7a3393
    Matt Roper authored
    Switch ICL to use a revid->stepping table as we're trying to do on all
    platforms going forward.  While we're at it, let's include some
    additional steppings that have popped up, even if we don't yet have any
    workarounds tied to those steppings (we probably need to audit our
    workaround list soon to see if any of the bounds have moved or if new
    workarounds have appeared).
    
    Note that the current bspec table is missing information about how to
    map PCI revision ID to GT/display steppings; it only provides an SoC
    stepping.  The mapping to GT/display steppings (which aren't always the
    same as the SoC stepping) used to be in the bspec, but was apparently
    dropped during an update in Nov 2019; I've made my changes here based on
    an older bspec snapshot that still had the necessary information.  We've
    requested that the missing information be restored.
    
    I'm only including the production revids in the table here since we're
    past the point at which we usually stop trying to support pre-production
    hardware.  An appropriate check is added to
    intel_detect_preproduction_hw() to print an error and taint the kernel
    just in case someone still tries to load the driver on old
    pre-production hardware.
    
    v2:
     - Drop pre-production steppings and add error/taint at startup when
       loading on pre-production hardware.
    
    Bspec: 21141  # pre-Nov 2019 snapshot
    Signed-off-by: default avatarMatt Roper <matthew.d.roper@intel.com>
    Reviewed-by: default avatarJosé Roberto de Souza <jose.souza@intel.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/20210713193635.3390052-8-matthew.d.roper@intel.com
    cc7a3393
intel_workarounds.c 61.2 KB