1. 16 Oct, 2023 8 commits
  2. 04 Oct, 2023 1 commit
    • Dave Airlie's avatar
      Merge tag 'drm-intel-next-2023-09-29' of git://anongit.freedesktop.org/drm/drm-intel into drm-next · 389af786
      Dave Airlie authored
      drm/i915 feature pull for v6.7:
      
      Features and functionality:
      - Early Xe2 LPD / Lunarlake (LNL) display enabling (Lucas, Matt, Gustavo,
        Stanislav, Luca, Clint, Juha-Pekka, Balasubramani, Ravi)
      - Plenty of various DSC improvements and fixes (Ankit)
      - Add DSC PPS state readout and verification (Suraj)
      - Improve fastsets for VRR, LRR and M/N updates (Ville)
      - Use connector->ddc to create (non-DP MST) connector sysfs ddc symlinks (Ville)
      - Various DSB improvements, load LUTs using DSB (Ville)
      - Improve shared link bandwidth management, starting with FDI (Imre)
      - Optimize get param ioctl for PXP status (Alan)
      - Remove DG2 pre-production hardware workarounds (Matt)
      - Add more RPL P/U PCI IDs (Dnyaneshwar)
      - Add new DG2-G12 stepping (Swati)
      - Add PSR sink error status to debugfs (Jouni)
      - Add DP enhanced framing to crtc state checker (Ville)
      
      Refactoring and cleanups:
      - Simplify TileY/Tile4 tiling selftest enumeration (Matt)
      - Remove some unused power domain code (Gustavo)
      - Check stepping of display IP version rather than MTL platform (Matt)
      - DP audio compute config cleanups (Vinod)
      - SDVO cleanups and refactoring, more robust failure handling (Ville)
      - Color register definition and readout cleanups (Jani)
      - Reduce header interdependencies for frontbuffer tracking (Jani)
      - Continue replacing struct edid with struct drm_edid (Jani)
      - Use source physical address instead of EDID for CEC (Jani)
      - Clean up Type-C port lane count functions (Luca)
      - Clean up DSC PPS register definitions and readout (Jani)
      - Stop using GEM_BUG_ON()/GEM_WARN_ON() in display code (Jani)
      - Move more of the display probe to display code (Jani)
      - Remove redundant runtime suspended state flag (Jouni)
      - Move display info printing to display code (Balasubramani)
      - Frontbuffer tracking improvements (Jouni)
      - Add trailing newlines to debug logging (Jim Cromie)
      - Separate display workarounds from clock gating init (Matt)
      - Reduce dmesg log spamming for combo PHY, PLL state, FEC, DP MST (Ville, Imre)
      
      Fixes:
      - Fix hotplug poll detect loops via suspend/resume (Imre)
      - Fix hotplug detect for forced connectors (Imre)
      - Fix DSC first_line_bpg_offset calculation (Suraj)
      - Fix debug prints for SDP CRC16 (Arun)
      - Fix PXP runtime resume (Alan)
      - Fix cx0 PHY lane handling (Gustavo)
      - Fix frontbuffer tracking locking in debugfs (Juha-Pekka)
      - Fix SDVO detect on some models (Ville)
      - Fix SDP split configuration for DP MST (Vinod)
      - Fix AUX usage and reads for HDCP on DP MST (Suraj)
      - Fix PSR workaround (Jouni)
      - Fix redundant AUX power get/put in DP force (Imre)
      - Fix ICL DSI TCLK POST by letting hardware handle it (William)
      - Fix IRQ reset for XE LP+ (Gustavo)
      - Fix h/vsync_end instead of h/vtotal in VBT (Ville)
      - Fix C20 PHY msgbus timeout issues (Gustavo)
      - Fix pre-TGL FEC pipe A vs. DDI A mixup (Ville)
      - Fix FEC state readout for DP MST (Ville)
      
      DRM subsystem core changes:
      - Assume sink supports 8 bpc when DSC is supported (Ankit)
      - Add drm_edid_is_digital() helper (Jani)
      - Parse source physical address from EDID (Jani)
      - Add function to attach CEC without EDID (Jani)
      - Reorder connector sysfs/debugfs remove (Ville)
      - Register connector sysfs ddc symlink later (Ville)
      
      Media subsystem changes:
      - Add comments about CEC source physical address usage (Jani)
      
      Merges:
      - Backmerge drm-next to get v6.6-rc1 (Jani)
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      
      # Conflicts:
      #	drivers/gpu/drm/i915/i915_drv.h
      From: Jani Nikula <jani.nikula@intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/87r0mhi7a6.fsf@intel.com
      389af786
  3. 02 Oct, 2023 1 commit
    • Dave Airlie's avatar
      Merge tag 'drm-intel-gt-next-2023-09-28' of... · caacbdc2
      Dave Airlie authored
      Merge tag 'drm-intel-gt-next-2023-09-28' of git://anongit.freedesktop.org/drm/drm-intel into drm-next
      
      Driver Changes:
      
      Fixes/improvements/new stuff:
      
      - Fix TLB-Invalidation seqno store [mtl] (Alan Previn)
      - Force a reset on internal GuC error [guc] (John Harrison)
      - Define GSC fw [gsc] (Daniele Ceraolo Spurio)
      - Update workaround 14016712196 [dg2/mtl] (Tejas Upadhyay)
      - Mark requests for GuC virtual engines to avoid use-after-free (Andrzej Hajda)
      - Add Wa_14015150844 [dg2/mtl] (Shekhar Chauhan)
      - Prevent error pointer dereference (Dan Carpenter)
      - Add Wa_18022495364 [tgl,adl,rpl] (Dnyaneshwar Bhadane)
      - Fix GuC PMU by moving execlist stats initialization to execlist specific setup (Umesh Nerlige Ramappa)
      - Fix PXP firmware load [pxp/mtl] (Alan Previn)
      - Fix execution/context state of PXP contexts (Alan Previn)
      - Limit the length of an sg list to the requested length (Matthew Wilcox)
      - Fix reservation address in ggtt_reserve_guc_top [guc] (Javier Pello)
      - Add Wa_18028616096 [dg2] (Shekhar Chauhan)
      - Get runtime pm in busyness worker only if already active [guc/pmu] (Umesh Nerlige Ramappa)
      - Don't set PIPE_CONTROL_FLUSH_L3 for aux inval (Nirmoy Das)
      
      Future platform enablement:
      
      - Fix and consolidate some workaround checks, make others IP version based [mtl] (Matt Roper)
      - Replace Meteorlake subplatforms with IP version checks (Matt Roper)
      - Adding DeviceID for Arrowlake-S under MTL [mtl] (Nemesa Garg)
      - Run relevant bits of debugfs drop_caches per GT (Tvrtko Ursulin)
      
      Miscellaneous:
      
      - Remove Wa_15010599737 [dg2] (Shekhar Chauhan)
      - Align igt_spinner_create_request with hangcheck [selftests] (Jonathan Cavitt)
      - Remove pre-production workarounds [dg2] (Matt Roper)
      - Tidy some workaround definitions (Matt Roper)
      - Wait longer for tasks in migrate selftest [gt] (Jonathan Cavitt)
      - Skip WA verification for GEN7_MISCCPCTL on DG2 [gt] (Andrzej Hajda)
      - Silence injected failure in the load via GSC path [huc] (Daniele Ceraolo Spurio)
      - Refactor deprecated strncpy (Justin Stitt)
      - Update RC6 mask for mtl_drpc [debugfs/mtl] (Badal Nilawar)
      - Remove a static inline that requires including i915_drv.h [gt] (Jani Nikula)
      - Remove inlines from i915_gem_execbuffer.c [gem] (Jani Nikula)
      - Remove gtt_offset from stream->oa_buffer.head/.tail [perf] (Ashutosh Dixit)
      - Do not disable preemption for resets (Tvrtko Ursulin)
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      From: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/ZRVzL02VFuwIkcGl@tursulin-desk
      caacbdc2
  4. 29 Sep, 2023 2 commits
  5. 28 Sep, 2023 13 commits
  6. 27 Sep, 2023 14 commits
  7. 26 Sep, 2023 1 commit
    • Umesh Nerlige Ramappa's avatar
      i915/guc: Get runtime pm in busyness worker only if already active · e2f99b79
      Umesh Nerlige Ramappa authored
      Ideally the busyness worker should take a gt pm wakeref because the
      worker only needs to be active while gt is awake. However, the gt_park
      path cancels the worker synchronously and this complicates the flow if
      the worker is also running at the same time. The cancel waits for the
      worker and when the worker releases the wakeref, that would call gt_park
      and would lead to a deadlock.
      
      The resolution is to take the global pm wakeref if runtime pm is already
      active. If not, we don't need to update the busyness stats as the stats
      would already be updated when the gt was parked.
      
      Note:
      - We do not requeue the worker if we cannot take a reference to runtime
        pm since intel_guc_busyness_unpark would requeue the worker in the
        resume path.
      
      - If the gt was parked longer than time taken for GT timestamp to roll
        over, we ignore those rollovers since we don't care about tracking the
        exact GT time. We only care about roll overs when the gt is active and
        running workloads.
      
      - There is a window of time between gt_park and runtime suspend, where
        the worker may run. This is acceptable since the worker will not find
        any new data to update busyness.
      
      v2: (Daniele)
      - Edit commit message and code comment
      - Use runtime pm in the worker
      - Put runtime pm after enabling the worker
      - Use Link tag and add Fixes tag
      
      v3: (Daniele)
      - Reword commit and comments and add details
      
      Link: https://gitlab.freedesktop.org/drm/intel/-/issues/7077
      Fixes: 77cdd054 ("drm/i915/pmu: Connect engine busyness stats from GuC to pmu")
      Signed-off-by: default avatarUmesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com>
      Reviewed-by: default avatarDaniele Ceraolo Spurio <daniele.ceraolospurio@intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20230925192117.2497058-1-umesh.nerlige.ramappa@intel.com
      e2f99b79