• Matthew Auld's avatar
    drm/i915/lmem: add the fake lmem region · 16292243
    Matthew Auld authored
    Intended for upstream testing so that we can still exercise the LMEM
    plumbing and !i915_ggtt_has_aperture paths. Smoke tested on Skull Canyon
    device. This works by allocating an intel_memory_region for a reserved
    portion of system memory, which we treat like LMEM. For the LMEMBAR we
    steal the aperture and 1:1 it map to the stolen region.
    
    To enable simply set the i915 modparam fake_lmem_start= on the kernel
    cmdline with the start of reserved region(see memmap=). The size of the
    region we can use is determined by the size of the mappable aperture, so
    the size of reserved region should be >= mappable_end. For now we only
    enable for the selftests. Depends on CONFIG_DRM_I915_UNSTABLE being
    enabled.
    
    eg. memmap=2G$16G i915.fake_lmem_start=0x400000000
    
    v2: make fake_lmem_start an i915 modparam
    Signed-off-by: default avatarMatthew Auld <matthew.auld@intel.com>
    Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
    Cc: Abdiel Janulgue <abdiel.janulgue@linux.intel.com>
    Cc: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
    Cc: Chris Wilson <chris@chris-wilson.co.uk>
    Reviewed-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
    Signed-off-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
    Link: https://patchwork.freedesktop.org/patch/msgid/20191030173320.8850-1-matthew.auld@intel.com
    16292243
intel_memory_region.c 5.91 KB