• Matthew Auld's avatar
    drm/i915: fixup the initial fb base on DGFX · 7fe7c2a6
    Matthew Auld authored
    On integrated it looks like the GGTT base should always 1:1 maps to
    somewhere within DSM. On discrete the base seems to be pre-programmed with
    a normal lmem address, and is not 1:1 mapped with the base address. On
    such devices probe the lmem address directly from the PTE.
    
    v2(Ville):
      - The base is actually the pre-programmed GGTT address, which is then
        meant to 1:1 map to somewhere inside dsm. In the case of dgpu the
        base looks to just be some offset within lmem, but this also happens
        to be the exact dsm start, on dg1. Therefore we should only need to
        fudge the physical address, before allocating from stolen.
      - Bail if it's not located in dsm.
    v3:
      - Scratch that. There doesn't seem to be any relationship with the
        base and PTE address, on at least DG1. Let's instead just grab the
        lmem address from the PTE itself.
    Signed-off-by: default avatarMatthew Auld <matthew.auld@intel.com>
    Cc: Thomas Hellström <thomas.hellstrom@linux.intel.com>
    Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
    Cc: Nirmoy Das <nirmoy.das@linux.intel.com>
    Reviewed-by: default avatarNirmoy Das <nirmoy.das@linux.intel.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/20220315181425.576828-7-matthew.auld@intel.com
    7fe7c2a6
intel_plane_initial.c 8.08 KB