1. Mar 25, 2021
  2. Mar 24, 2021
  3. Mar 18, 2021
    • Ashutosh Dixit's avatar
      drm/i915: Disable pread/pwrite ioctl's for future platforms (v3) · f8d1ff10
      Ashutosh Dixit authored
      The rationale for this change is roughly as follows:
      
       1. The functionality can be done entirely in userspace with a
          combination of mmap + memcpy
      
       2. The only reason anyone in userspace is still using it is because
          someone implemented bo_subdata that way in libdrm ages ago and
          they're all too lazy to write the 5 lines of code to do a map.
      
       3. This falls cleanly into the category of things which will only get
          more painful with local memory support.
      
      These ioctls aren't used much anymore by "real" userspace drivers.
      Vulkan has never used them and neither has the iris GL driver.  The old
      i965 GL driver does use PWRITE for glBufferSubData but it only supports
      up through Gen11; Gen12 was never enabled in i965.  The compute driver
      has never used PREAD/PWRITE.  The only remaining user is the media
      driver which uses it exactly twice and they're easily removed [1] so
      expecting them to drop it going forward is reasonable.
      
      IGT changes which handle this kernel change have also been submitted [2].
      
      [1] https://github.com/intel/media-driver/pull/1160
      [2] https://patchwork.freedesktop.org/series/81384/
      
      
      
      v2 (Jason Ekstrand):
       - Improved commit message with the status of all usermode drivers
       - A more future-proof platform check
      
      v3 (Jason Ekstrand):
       - Drop the HAS_LMEM checks as they're already covered by the version
         checks
      
      Signed-off-by: default avatarAshutosh Dixit <ashutosh.dixit@intel.com>
      Signed-off-by: default avatarJason Ekstrand <jason@jlekstrand.net>
      Reviewed-by: default avatarJason Ekstrand <jason@jlekstrand.net>
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      Link: https://patchwork.freedesktop.org/patch/msgid/20210317234014.2271006-4-jason@jlekstrand.net
      f8d1ff10
    • Jason Ekstrand's avatar
      drm/i915/gem: Drop relocation support on all new hardware (v6) · 2eb8e1a6
      Jason Ekstrand authored
      The Vulkan driver in Mesa for Intel hardware never uses relocations if
      it's running on a version of i915 that supports at least softpin which
      all versions of i915 supporting Gen12 do.  On the OpenGL side, Gen12+ is
      only supported by iris which never uses relocations.  The older i965
      driver in Mesa does use relocations but it only supports Intel hardware
      through Gen11 and has been deprecated for all hardware Gen9+.  The
      compute driver also never uses relocations.  This only leaves the media
      driver which is supposed to be switching to softpin going forward.
      Making softpin a requirement for all future hardware seems reasonable.
      
      There is one piece of hardware enabled by default in i915: RKL which was
      enabled by e22fa6f0
      
       which has not yet landed in drm-next so this
      almost but not really a userspace API change for RKL.  If it becomes a
      problem, we can always add !IS_ROCKETLAKE(eb->i915) to the condition.
      
      Rejecting relocations starting with newer Gen12 platforms has the
      benefit that we don't have to bother supporting it on platforms with
      local memory.  Given how much CPU touching of memory is required for
      relocations, not having to do so on platforms where not all memory is
      directly CPU-accessible carries significant advantages.
      
      v2 (Jason Ekstrand):
       - Allow TGL-LP platforms as they've already shipped
      
      v3 (Jason Ekstrand):
       - WARN_ON platforms with LMEM support in case the check is wrong
      
      v4 (Jason Ekstrand):
       - Call out Rocket Lake in the commit message
      
      v5 (Jason Ekstrand):
       - Drop the HAS_LMEM check as it's already covered by the version check
      
      v6 (Jason Ekstrand):
       - Move the check to eb_validate_vma() with all the other exec_object
         validation checks.
      
      Signed-off-by: default avatarJason Ekstrand <jason@jlekstrand.net>
      Reviewed-by: default avatarZbigniew Kempczyński <zbigniew.kempczynski@intel.com>
      Reviewed-by: default avatarMaarten Lankhorst <maarten.lankhorst@linux.intel.com>
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      Link: https://patchwork.freedesktop.org/patch/msgid/20210317234014.2271006-3-jason@jlekstrand.net
      2eb8e1a6
    • Jason Ekstrand's avatar
      drm/i915/gem: Drop legacy execbuffer support (v2) · b5b6f6a6
      Jason Ekstrand authored
      
      
      libdrm has supported the newer execbuffer2 ioctl and using it by default
      when it exists since libdrm commit b50964027bef which landed Mar 2, 2010.
      The i915 and i965 drivers in Mesa at the time both used libdrm and so
      did the Intel X11 back-end.  The SNA back-end for X11 has always used
      execbuffer2.
      
      v2 (Jason Ekstrand):
       - Add a comment saying what Linux version it's being removed in.
      
      Signed-off-by: default avatarJason Ekstrand <jason@jlekstrand.net>
      Acked-by: default avatarKeith Packard <keithp@keithp.com>
      Acked-by: default avatarDave Airlie <airlied@redhat.com>
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      Link: https://patchwork.freedesktop.org/patch/msgid/20210317234014.2271006-2-jason@jlekstrand.net
      b5b6f6a6
    • Dave Airlie's avatar
      Merge tag 'drm-intel-next-2021-03-16' of git://anongit.freedesktop.org/drm/drm-intel into drm-next · 06debd6e
      Dave Airlie authored
      
      
      Highlights:
      - Alderlake S enabling, via topic branch (Aditya, Anusha, Caz, José, Lucas, Matt, Tejas)
      - Refactor display code to shrink intel_display.c etc. (Dave)
      - Support more gen 9 and Tigerlake PCH combinations (Lyude, Tejas)
      - Add eDP MSO support (Jani)
      
      Display:
      - Refactor to support multiple PSR instances (Gwan-gyeong)
      - Link training debug logging updates (Sean)
      - Updates to eDP fixed mode handling (Jani)
      - Disable PSR2 on JSL/EHL (Edmund)
      - Support DDR5 and LPDDR5 for bandwidth computation (Clint, José)
      - Update VBT DP max link rate table (Shawn)
      - Disable the QSES check for HDCP2.2 over MST (Juston)
      - PSR updates, refactoring, selective fetch (José, Gwan-gyeong)
      - Display init sequence refactoring (Lucas)
      - Limit LSPCON to gen 9 and 10 platforms (Ankit)
      - Fix DDI lane polarity per VBT info (Uma)
      - Fix HDMI vswing programming location in mode set (Ville)
      - Various display improvements and refactorings and cleanups (Ville)
      - Clean up DDI clock routing and readout (Ville)
      - Workaround async flip + VT-d corruption on HSW/BDW (Ville)
      - SAGV watermark fixes and cleanups (Ville)
      - Silence pipe tracepoint WARNs (Ville)
      
      Other:
      - Remove require_force_probe protection from RKL, may need to be revisited (Tejas)
      - Detect loss of MMIO access (Matt)
      - GVT display improvements
      - drm/i915: Disable runtime power management during shutdown (Imre)
      - Perf/OA updates (Umesh)
      - Remove references to struct drm_device.pdev, via topic branch (Thomas)
      - Backmerge (Jani)
      
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      
      From: Jani Nikula <jani.nikula@intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/87v99rnk1g.fsf@intel.com
      06debd6e
  4. Mar 16, 2021
  5. Mar 15, 2021