Quoting Joonas Lahtinen (2021-05-28 10:25:57) > Hi Dave & Daniel, > > Here's drm-intel-gt-next pull request. > > Most notably it has the reworked DG1 uAPI (behind CONFIG_BROKEN) > as requested. Important fix for Gitlab issues #3293 and #3450 and > one another kernel crash. Adds missing workarounds for Gen11 and > Gen12. Hiding of modparams for compiled-out features. Conversion > to use trylock shrinking for BSW VT-d and BXT. > > Then there are the uAPI kerneldoc improvements as part of the DG1 > uAPI rework. Usual amount smaller fixes, code refactoring and > cleanups as prep for upcoming patches. And includes tag 'topic/intel-gen-to-ver-2021-04-19' (but that is already merged to drm-next). Regards, Joonas > Regards, Joonas > > *** > > drm-intel-gt-next-2021-05-28: > > UAPI Changes: > - Add reworked uAPI for DG1 behind CONFIG_BROKEN (Matt A, Abdiel) > > Driver Changes: > > - Fix for Gitlab issues #3293 and #3450: > Avoid kernel crash on older L-shape memory machines > > - Hide modparams for compiled-out features (Tvrtko) > - Add Wa_14010733141 (VDBox SFC reset) for Gen11+ (Aditya) > - Fix crash in auto_retire active retire callback due to > misalignment (Stephane) > - Use trylock in shrinker for GGTT on BSW VT-d and BXT (Maarten) > - Fix overlay active retire callback alignment (Tvrtko) > - Eliminate need to align active retire callbacks (Matt A, Ville, > Daniel) > - Program FF_MODE2 tuning value for all Gen12 platforms (Caz) > - Add Wa_14011060649 for TGL,RKL,DG1 and ADLS (Swathi) > - Create stolen memory region from local memory on DG1 (CQ) > - Place PD in LMEM on dGFX (Matt A) > - Use WC when default state object is allocated in LMEM (Venkata) > - Determine the coherent map type based on object location (Venkata) > - Use lmem physical addresses for fb_mmap() on discrete (Mohammed) > - Bypass aperture on fbdev when LMEM is available (Anusha) > - Return error value when displayable BO not in LMEM for dGFX (Mohammed) > - Do release kernel context if breadcrumb measure fails (Janusz) > - Apply Wa_22010271021 for all Gen11 platforms (Caz) > - Fix unlikely ref count race in arming the watchdog timer (Tvrtko) > - Check actual RC6 enable status in PMU (Tvrtko) > - Fix a double free in gen8_preallocate_top_level_pdp (Lv) > - Remove erroneous i915_is_ggtt check for > I915_GEM_OBJECT_UNBIND_VM_TRYLOCK (Maarten) > > - Convert uAPI headers to real kerneldoc (Matt A) > - Clean up kerneldoc warnings headers (Matt A, Maarten) > - Fail driver if LMEM training failed (Matt R) > - Avoid div-by-zero on Gen2 (Ville) > - Read C0DRB3/C1DRB3 as 16 bits again and add _BW suffix (Ville) > - Remove reference to struct drm_device.pdev (Thomas) > - Increase separation between GuC and execlists code (Chris, Matt B) > > - Use might_alloc() (Bernard) > - Split DGFX_FEATURES from GEN12_FEATURES (Lucas) > - Deduplicate Wa_22010271021 programming on (Jose) > - Drop duplicate WaDisable4x2SubspanOptimization:hsw (Tvrtko) > - Selftest improvements (Chris, Hsin-Yi, Tvrtko) > - Shuffle around init_memory_region for stolen (Matt) > - Typo fixes (wengjianfeng) > > The following changes since commit 425390c5dce6da76578389629d19517fcd79c959: > > drm/i915: split dgfx features from gen 12 (2021-04-14 13:05:06 +0300) > > are available in the Git repository at: > > git://anongit.freedesktop.org/drm/drm-intel tags/drm-intel-gt-next-2021-05-28 > > for you to fetch changes up to 5b26d57fdb499c2363f3d895ef008e73ec02eb9b: > > drm/i915: Add Wa_14010733141 (2021-05-27 11:05:09 -0700) > > ---------------------------------------------------------------- > UAPI Changes: > - Add reworked uAPI for DG1 behind CONFIG_BROKEN (Matt A, Abdiel) > > Driver Changes: > > - Fix for Gitlab issues #3293 and #3450: > Avoid kernel crash on older L-shape memory machines > > - Add Wa_14010733141 (VDBox SFC reset) for Gen11+ (Aditya) > - Fix crash in auto_retire active retire callback due to > misalignment (Stephane) > - Fix overlay active retire callback alignment (Tvrtko) > - Eliminate need to align active retire callbacks (Matt A, Ville, > Daniel) > - Program FF_MODE2 tuning value for all Gen12 platforms (Caz) > - Add Wa_14011060649 for TGL,RKL,DG1 and ADLS (Swathi) > - Create stolen memory region from local memory on DG1 (CQ) > - Place PD in LMEM on dGFX (Matt A) > - Use WC when default state object is allocated in LMEM (Venkata) > - Determine the coherent map type based on object location (Venkata) > - Use lmem physical addresses for fb_mmap() on discrete (Mohammed) > - Bypass aperture on fbdev when LMEM is available (Anusha) > - Return error value when displayable BO not in LMEM for dGFX (Mohammed) > - Do release kernel context if breadcrumb measure fails (Janusz) > - Hide modparams for compiled-out features (Tvrtko) > - Apply Wa_22010271021 for all Gen11 platforms (Caz) > - Fix unlikely ref count race in arming the watchdog timer (Tvrtko) > - Check actual RC6 enable status in PMU (Tvrtko) > - Fix a double free in gen8_preallocate_top_level_pdp (Lv) > - Use trylock in shrinker for GGTT on BSW VT-d and BXT (Maarten) > - Remove erroneous i915_is_ggtt check for > I915_GEM_OBJECT_UNBIND_VM_TRYLOCK (Maarten) > > - Convert uAPI headers to real kerneldoc (Matt A) > - Clean up kerneldoc warnings headers (Matt A, Maarten) > - Fail driver if LMEM training failed (Matt R) > - Avoid div-by-zero on Gen2 (Ville) > - Read C0DRB3/C1DRB3 as 16 bits again and add _BW suffix (Ville) > - Remove reference to struct drm_device.pdev (Thomas) > - Increase separation between GuC and execlists code (Chris, Matt B) > > - Use might_alloc() (Bernard) > - Split DGFX_FEATURES from GEN12_FEATURES (Lucas) > - Deduplicate Wa_22010271021 programming on (Jose) > - Drop duplicate WaDisable4x2SubspanOptimization:hsw (Tvrtko) > - Selftest improvements (Chris, Hsin-Yi, Tvrtko) > - Shuffle around init_memory_region for stolen (Matt) > - Typo fixes (wengjianfeng) > > ---------------------------------------------------------------- > Abdiel Janulgue (1): > drm/i915/query: Expose memory regions through the query uAPI > > Aditya Swarup (1): > drm/i915: Add Wa_14010733141 > > Anusha Srivatsa (1): > drm/i915/lmem: Bypass aperture when lmem is available > > Bernard Zhao (1): > drm/i915: Use might_alloc() > > CQ Tang (2): > drm/i915: Create stolen memory region from local memory > drm/i915/stolen: enforce the min_page_size contract > > Caz Yokoyama (2): > drm/i915/gen12: Add recommended hardware tuning value > drm/i915/icl: add Wa_22010271021 for all gen11 > > Chris Wilson (6): > drm/i915/selftests: Skip aperture remapping selftest where there is no aperture > drm/i915/selftests: Only query RAPL for integrated power measurements > drm/i915/gem: Pin the L-shape quirked object as unshrinkable > drm/i915/gt: Move engine setup out of set_default_submission > drm/i915/gt: Move submission_method into intel_gt > drm/i915/gt: Move CS interrupt handler to the backend > > Hsin-Yi Wang (1): > drm/i915/selftests: Rename pm_ prefixed functions names > > Janusz Krzysztofik (1): > drm/i915/gt: Do release kernel context if breadcrumb measure fails > > Joonas Lahtinen (1): > Merge tag 'topic/intel-gen-to-ver-2021-04-19' of git://anongit.freedesktop.org/drm/drm-intel into drm-intel-gt-next > > José Roberto de Souza (1): > drm/i915: Move Wa_16011163337 to gen12_ctx_workarounds_init() > > Lv Yunlong (1): > drm/i915/gt: Fix a double free in gen8_preallocate_top_level_pdp > > Maarten Lankhorst (4): > drm/i915: Fix docbook descriptions for i915_gem_shrinker > drm/i915: Fix docbook descriptions for i915_cmd_parser > drm/i915: Use trylock in shrinker for ggtt on bsw vt-d and bxt, v2. > drm/i915: Remove erroneous i915_is_ggtt check for I915_GEM_OBJECT_UNBIND_VM_TRYLOCK > > Matt Roper (1): > drm/i915/lmem: Fail driver init if LMEM training failed > > Matthew Auld (19): > drm/i915/uapi: fix kernel doc warnings > drm/i915/uapi: convert i915_user_extension to kernel doc > drm/i915/uapi: convert i915_query and friend to kernel doc > drm/doc: add section for driver uAPI > drm/i915/stolen: treat stolen local as normal local memory > drm/i915/stolen: actually mark as contiguous > drm/i915/gtt: map the PD up front > drm/i915/gtt/dgfx: place the PD in LMEM > drm/doc/rfc: i915 DG1 uAPI > drm/i915: mark stolen as private > drm/i915: rework gem_create flow for upcoming extensions > drm/i915/uapi: introduce drm_i915_gem_create_ext > drm/i915/uapi: implement object placement extension > drm/i915/lmem: support optional CPU clearing for special internal use > drm/i915/gem: clear userspace buffers for LMEM > drm/i915/gem: hide new uAPI behind CONFIG_BROKEN > drm/i915: drop the __i915_active_call pointer packing > drm/i915/stolen: shuffle around init_memory_region > drm/doc/rfc: drop the i915_gem_lmem.h header > > Mohammed Khajapasha (2): > drm/i915/fbdev: Use lmem physical addresses for fb_mmap() on discrete > drm/i915: Return error value when bo not in LMEM for discrete > > Stéphane Marchesin (1): > drm/i915: Fix crash in auto_retire > > Swathi Dhanavanthri (1): > drm/i915: Add Wa_14011060649 > > Thomas Zimmermann (1): > drm/i915/gem: Remove reference to struct drm_device.pdev > > Tvrtko Ursulin (6): > drm/i915: Take request reference before arming the watchdog timer > drm/i915/pmu: Check actual RC6 status > drm/i915/overlay: Fix active retire callback alignment > drm/i915/selftests: Fix active retire callback alignment > drm/i915: Drop duplicate WaDisable4x2SubspanOptimization:hsw > drm/i915/params: Align visibility of device level and global modparams > > Venkata Ramana Nayana (1): > drm/i915/dg1: Fix mapping type for default state object > > Venkata Sandeep Dhanalakota (1): > drm/i915: Update the helper to set correct mapping > > Ville Syrjälä (3): > drm/i915: Avoid div-by-zero on gen2 > drm/i915: Read C0DRB3/C1DRB3 as 16 bits again > drm/i915: Give C0DRB3/C1DRB3 a _BW suffix > > wengjianfeng (1): > drm/i915/gt: fix typo issue > > Documentation/gpu/driver-uapi.rst | 8 + > Documentation/gpu/index.rst | 1 + > Documentation/gpu/rfc/i915_gem_lmem.rst | 131 +++++++ > Documentation/gpu/rfc/index.rst | 4 + > drivers/gpu/drm/i915/display/intel_display.c | 10 + > drivers/gpu/drm/i915/display/intel_fbdev.c | 51 ++- > drivers/gpu/drm/i915/display/intel_frontbuffer.c | 4 +- > drivers/gpu/drm/i915/display/intel_overlay.c | 5 +- > drivers/gpu/drm/i915/gem/i915_gem_context.c | 3 +- > drivers/gpu/drm/i915/gem/i915_gem_create.c | 345 ++++++++++++++++-- > drivers/gpu/drm/i915/gem/i915_gem_ioctls.h | 2 + > drivers/gpu/drm/i915/gem/i915_gem_lmem.c | 20 +- > drivers/gpu/drm/i915/gem/i915_gem_lmem.h | 5 + > drivers/gpu/drm/i915/gem/i915_gem_mman.c | 2 +- > drivers/gpu/drm/i915/gem/i915_gem_object.c | 3 + > drivers/gpu/drm/i915/gem/i915_gem_object_types.h | 14 +- > drivers/gpu/drm/i915/gem/i915_gem_pages.c | 2 + > drivers/gpu/drm/i915/gem/i915_gem_region.c | 22 ++ > drivers/gpu/drm/i915/gem/i915_gem_shrinker.c | 14 +- > drivers/gpu/drm/i915/gem/i915_gem_stolen.c | 159 +++++++-- > drivers/gpu/drm/i915/gem/i915_gem_stolen.h | 3 +- > .../gpu/drm/i915/gem/selftests/i915_gem_context.c | 11 +- > drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c | 26 ++ > drivers/gpu/drm/i915/gt/gen6_ppgtt.c | 13 +- > drivers/gpu/drm/i915/gt/gen8_ppgtt.c | 32 +- > drivers/gpu/drm/i915/gt/intel_context.c | 3 +- > drivers/gpu/drm/i915/gt/intel_engine.h | 8 +- > drivers/gpu/drm/i915/gt/intel_engine_cs.c | 21 +- > drivers/gpu/drm/i915/gt/intel_engine_pm.c | 2 +- > drivers/gpu/drm/i915/gt/intel_engine_types.h | 14 +- > .../gpu/drm/i915/gt/intel_execlists_submission.c | 95 +++-- > .../gpu/drm/i915/gt/intel_execlists_submission.h | 3 - > drivers/gpu/drm/i915/gt/intel_ggtt.c | 10 +- > drivers/gpu/drm/i915/gt/intel_ggtt_fencing.c | 6 +- > drivers/gpu/drm/i915/gt/intel_gt_buffer_pool.c | 3 +- > drivers/gpu/drm/i915/gt/intel_gt_irq.c | 82 ++--- > drivers/gpu/drm/i915/gt/intel_gt_irq.h | 23 ++ > drivers/gpu/drm/i915/gt/intel_gt_types.h | 7 + > drivers/gpu/drm/i915/gt/intel_gtt.c | 91 +++-- > drivers/gpu/drm/i915/gt/intel_gtt.h | 12 +- > drivers/gpu/drm/i915/gt/intel_lrc.c | 4 +- > drivers/gpu/drm/i915/gt/intel_ppgtt.c | 7 +- > drivers/gpu/drm/i915/gt/intel_reset.c | 201 +++++++---- > drivers/gpu/drm/i915/gt/intel_ring.c | 11 +- > drivers/gpu/drm/i915/gt/intel_ring_submission.c | 12 +- > drivers/gpu/drm/i915/gt/intel_rps.c | 2 +- > drivers/gpu/drm/i915/gt/intel_timeline.c | 4 +- > drivers/gpu/drm/i915/gt/intel_workarounds.c | 100 ++++-- > drivers/gpu/drm/i915/gt/mock_engine.c | 2 +- > drivers/gpu/drm/i915/gt/selftest_context.c | 3 +- > .../gpu/drm/i915/gt/selftest_engine_heartbeat.c | 2 +- > drivers/gpu/drm/i915/gt/selftest_execlists.c | 2 +- > drivers/gpu/drm/i915/gt/selftest_hangcheck.c | 4 +- > drivers/gpu/drm/i915/gt/selftest_lrc.c | 4 +- > drivers/gpu/drm/i915/gt/selftest_rc6.c | 32 +- > drivers/gpu/drm/i915/gt/selftest_ring_submission.c | 2 +- > drivers/gpu/drm/i915/gt/selftest_rps.c | 6 +- > drivers/gpu/drm/i915/gt/shmem_utils.c | 4 +- > drivers/gpu/drm/i915/gt/uc/intel_guc.c | 4 +- > drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c | 64 ++-- > drivers/gpu/drm/i915/gt/uc/intel_guc_submission.h | 1 - > drivers/gpu/drm/i915/gt/uc/intel_huc.c | 4 +- > drivers/gpu/drm/i915/i915_active.c | 11 +- > drivers/gpu/drm/i915/i915_active.h | 11 +- > drivers/gpu/drm/i915/i915_active_types.h | 5 - > drivers/gpu/drm/i915/i915_cmd_parser.c | 18 +- > drivers/gpu/drm/i915/i915_debugfs.c | 4 +- > drivers/gpu/drm/i915/i915_drv.c | 1 + > drivers/gpu/drm/i915/i915_drv.h | 29 +- > drivers/gpu/drm/i915/i915_gem.c | 25 +- > drivers/gpu/drm/i915/i915_irq.c | 10 +- > drivers/gpu/drm/i915/i915_params.h | 8 +- > drivers/gpu/drm/i915/i915_pci.c | 2 +- > drivers/gpu/drm/i915/i915_perf.c | 10 +- > drivers/gpu/drm/i915/i915_pmu.c | 4 +- > drivers/gpu/drm/i915/i915_query.c | 62 ++++ > drivers/gpu/drm/i915/i915_reg.h | 17 +- > drivers/gpu/drm/i915/i915_request.c | 5 +- > drivers/gpu/drm/i915/i915_vma.c | 31 +- > drivers/gpu/drm/i915/intel_memory_region.c | 29 +- > drivers/gpu/drm/i915/intel_memory_region.h | 18 +- > drivers/gpu/drm/i915/intel_uncore.c | 12 + > drivers/gpu/drm/i915/selftests/i915_active.c | 2 +- > drivers/gpu/drm/i915/selftests/i915_gem.c | 20 +- > drivers/gpu/drm/i915/selftests/i915_gem_gtt.c | 10 +- > drivers/gpu/drm/i915/selftests/i915_perf.c | 3 +- > drivers/gpu/drm/i915/selftests/i915_vma.c | 3 + > drivers/gpu/drm/i915/selftests/igt_spinner.c | 4 +- > .../gpu/drm/i915/selftests/intel_memory_region.c | 87 ++++- > drivers/gpu/drm/i915/selftests/librapl.c | 10 + > drivers/gpu/drm/i915/selftests/librapl.h | 4 + > include/uapi/drm/i915_drm.h | 393 +++++++++++++++++++-- > 92 files changed, 2018 insertions(+), 575 deletions(-) > create mode 100644 Documentation/gpu/driver-uapi.rst > create mode 100644 Documentation/gpu/rfc/i915_gem_lmem.rst _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx