• Matt Roper's avatar
    drm/i915/display: Handle GMD_ID identification in display code · 12e6f6dc
    Matt Roper authored
    For platforms with GMD_ID support (i.e., everything MTL and beyond),
    identification of the display IP present should be based on the contents
    of the GMD_ID register rather than a PCI devid match.
    
    Note that since GMD_ID readout requires access to the PCI BAR, a slight
    change to the driver init sequence is needed --- pci_enable_device() is
    now called before i915_driver_create().
    
    v2:
     - Fix use of uninitialized i915 pointer in error path if
       pci_enable_device() fails before the i915 device is created.  (lkp)
     - Use drm_device parameter to intel_display_device_probe.  This goes
       against i915 conventions, but since the primary goal here is to make
       it easy to call this function from other drivers (like Xe) and since
       we don't need anything from the i915 structure, this seems like an
       exception where drm_device is a more natural fit.
    v3:
     - Go back do drm_i915_private for intel_display_device_probe.  (Jani)
     - Move forward decl to top of header.  (Jani)
    Signed-off-by: default avatarMatt Roper <matthew.d.roper@intel.com>
    Reviewed-by: default avatarAndrzej Hajda <andrzej.hajda@intel.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/20230523195609.73627-6-matthew.d.roper@intel.com
    12e6f6dc
intel_display_device.h 1.77 KB