On Tue Apr 14, 2026 at 05:20:45PM +1000, Jonathan Gray wrote:
> On Mon, Apr 06, 2026 at 03:09:39PM +0200, Rafael Sadowski wrote:
> > On Fri Apr 03, 2026 at 06:28:50PM +1100, Jonathan Gray wrote:
> > > On Fri, Apr 03, 2026 at 09:15:51AM +0200, Rafael Sadowski wrote:
> > > > As an alternative to my AMD T14, I have an Intel X13 Gen 5 here.
> > > > Unfortunately, the DRM isn't working. Is this a bug, or do we not
> > > > support this GPU?
> > > 
> > > On Meteor Lake GuC submission sometimes does this from cold boot.
> > > It is not consistent.
> > > 
> > > GuC submission has been disabled and enabled multiple times,
> > > the last was i915_driver.c rev 1.26
> > 
> > I reverted i915_driver.c rev 1.26 and now my kernel stuck at boot
> > with:
> > 
> > drm:pid0:gen8_engine_reset_prepare *ERROR* [drm] *ERROR* GT1: other'6 rest 
> > request timed out:
> > {request: 00000001, REST_CTL: 00000001}
> 
> Ah yes, also requires disabling guc tlb invalidation.
> 
> You will see dmesg noise along the lines of:
> 
> drm:pid78281:gsc_fw_load *ERROR* [drm] *ERROR* GT1: Request submission for 
> GSC load failed 0xffffffffffffffc4e
> drm:pid78281:intel_uc_fw_mark_load_failed *ERROR* [drm] *ERROR* GT1: Failed 
> to load GSC firmware i915/mtl_gsc_1.bin 0xffffffffffffffc4e
> i915_capture_error_state: stub
> drm:pid92175:__intel_engine_reset_bh *NOTICE* [drm] Resetting other0 for 
> stopped heartbeat on other0
> drm:pid92175:gen8_engine_reset_prepare *ERROR* [drm] *ERROR* GT1: other0 
> reset request timed out: {request: 00000001, RESET_CTL: 00000001}
> drm:pid92175:intel_gt_reset *NOTICE* [drm] GT1: Resetting chip for stopped 
> heartbeat on other0
> drm:pid92175:gen8_engine_reset_prepare *ERROR* [drm] *ERROR* GT1: other0 
> reset request timed out: {request: 00000001, RESET_CTL: 00000001}
> drm:pid92175:gen8_engine_reset_prepare *ERROR* [drm] *ERROR* GT1: other0 
> reset request timed out: {request: 00000001, RESET_CTL: 00000001}
> 
> and perhaps some rendering problems.  Which is part of why GuC
> submission was enabled on Meteor Lake.

dmesg drm output with this diff:

drm:pid50343:gsc_fw_load *ERROR* [drm] *ERROR* GT1: Request submission for GSC 
load failed 0xffffffffffffffc4e
drm:pid50343:intel_uc_fw_mark_load_failed *ERROR* [drm] *ERROR* GT1: Failed to 
load GSC firmware i915/mtl_gsc_1.bin 0xffffffffffffffc4e
i915_capture_error_state: stub
drm:pid339:__intel_engine_reset_bh *NOTICE* [drm] Resetting other0 for stopped 
heartbeat on other0
drm:pid339:gen8_engine_reset_prepare *ERROR* [drm] *ERROR* GT1: other0 reset 
request timed out: {request: 00000001, RESET_CTL: 00000001}
drm:pid339:intel_gt_reset *NOTICE* [drm] GT1: Resetting chip for stopped 
heartbeat on other0
drm:pid339:gen8_engine_reset_prepare *ERROR* [drm] *ERROR* GT1: other0 reset 
request timed out: {request: 00000001, RESET_CTL: 00000001}
drm:pid339:gen8_engine_reset_prepare *ERROR* [drm] *ERROR* GT1: other0 reset 
request timed out: {request: 00000001, RESET_CTL: 00000001}

but it reliably initialises the GPU:

libva info: VA-API version 1.22.0
libva info: Trying to open /usr/X11R6/lib/modules/dri/iHD_drv_video.so
libva info: Trying to open /usr/local/lib/dri/iHD_drv_video.so
libva info: Found init function __vaDriverInit_1_22
libva info: va_openDriver() returns 0
Trying display: x11
vainfo: VA-API version: 1.22 (libva 2.22.0)
vainfo: Driver version: Intel iHD driver for Intel(R) Gen Graphics - 25.3.4 
(OpenBSD)
vainfo: Supported profile and entrypoints
      VAProfileNone                   : VAEntrypointVideoProc
      VAProfileMPEG2Simple            : VAEntrypointVLD
      VAProfileMPEG2Main              : VAEntrypointVLD
      VAProfileH264Main               : VAEntrypointVLD
      VAProfileH264Main               : VAEntrypointEncSlice
      VAProfileH264High               : VAEntrypointVLD
      VAProfileH264High               : VAEntrypointEncSlice
      VAProfileJPEGBaseline           : VAEntrypointVLD
      VAProfileJPEGBaseline           : VAEntrypointEncPicture
      VAProfileH264ConstrainedBaseline: VAEntrypointVLD
      VAProfileH264ConstrainedBaseline: VAEntrypointEncSlice
      VAProfileVP8Version0_3          : VAEntrypointVLD
      VAProfileHEVCMain               : VAEntrypointVLD
      VAProfileHEVCMain               : VAEntrypointEncSlice
      VAProfileHEVCMain10             : VAEntrypointVLD
      VAProfileHEVCMain10             : VAEntrypointEncSlice
      VAProfileVP9Profile0            : VAEntrypointVLD
      VAProfileVP9Profile0            : VAEntrypointEncSlice
      VAProfileVP9Profile1            : VAEntrypointVLD
      VAProfileVP9Profile1            : VAEntrypointEncSlice
      VAProfileVP9Profile2            : VAEntrypointVLD
      VAProfileVP9Profile2            : VAEntrypointEncSlice
      VAProfileVP9Profile3            : VAEntrypointVLD
      VAProfileVP9Profile3            : VAEntrypointEncSlice
      VAProfileHEVCMain12             : VAEntrypointVLD
      VAProfileHEVCMain422_10         : VAEntrypointVLD
      VAProfileHEVCMain422_12         : VAEntrypointVLD
      VAProfileHEVCMain444            : VAEntrypointVLD
      VAProfileHEVCMain444            : VAEntrypointEncSlice
      VAProfileHEVCMain444_10         : VAEntrypointVLD
      VAProfileHEVCMain444_10         : VAEntrypointEncSlice
      VAProfileHEVCMain444_12         : VAEntrypointVLD
      VAProfileHEVCSccMain            : VAEntrypointVLD
      VAProfileHEVCSccMain            : VAEntrypointEncSlice
      VAProfileHEVCSccMain10          : VAEntrypointVLD
      VAProfileHEVCSccMain10          : VAEntrypointEncSlice
      VAProfileHEVCSccMain444         : VAEntrypointVLD
      VAProfileHEVCSccMain444         : VAEntrypointEncSlice
      VAProfileAV1Profile0            : VAEntrypointVLD
      VAProfileAV1Profile0            : VAEntrypointEncSlice
      VAProfileHEVCSccMain444_10      : VAEntrypointVLD
      VAProfileHEVCSccMain444_10      : VAEntrypointEncSlice

> 
> Index: sys/dev/pci/drm/i915/i915_driver.c
> ===================================================================
> RCS file: /cvs/src/sys/dev/pci/drm/i915/i915_driver.c,v
> diff -u -p -r1.29 i915_driver.c
> --- sys/dev/pci/drm/i915/i915_driver.c        19 Mar 2026 23:04:02 -0000      
> 1.29
> +++ sys/dev/pci/drm/i915/i915_driver.c        14 Apr 2026 06:57:41 -0000
> @@ -2322,11 +2322,10 @@ inteldrm_attach(struct device *parent, s
>  
>       dev_priv->display = display;
>  
> -     /*
> -      * with GuC submission, init sometimes fails on Alder Lake-P
> -      * too early for IS_ALDERLAKE_P
> -      */
> -     if (info->platform == INTEL_ALDERLAKE_P)
> +     /* uc_expand_default_options() with no GuC submission */
> +     if (GRAPHICS_VER(dev_priv) >= 12 &&
> +         (INTEL_INFO(dev_priv)->platform != INTEL_TIGERLAKE) &&
> +         (INTEL_INFO(dev_priv)->platform != INTEL_ROCKETLAKE))
>               dev_priv->params.enable_guc = ENABLE_GUC_LOAD_HUC;
>  
>       mmio_bar = (GRAPHICS_VER(dev_priv) == 2) ? 0x14 : 0x10;
> Index: sys/dev/pci/drm/i915/i915_pci.c
> ===================================================================
> RCS file: /cvs/src/sys/dev/pci/drm/i915/i915_pci.c,v
> diff -u -p -r1.25 i915_pci.c
> --- sys/dev/pci/drm/i915/i915_pci.c   9 Mar 2026 23:58:01 -0000       1.25
> +++ sys/dev/pci/drm/i915/i915_pci.c   14 Apr 2026 07:00:42 -0000
> @@ -771,7 +771,7 @@ static const struct intel_device_info mt
>       .has_flat_ccs = 0,
>       .has_gmd_id = 1,
>       .has_guc_deprivilege = 1,
> -     .has_guc_tlb_invalidation = 1,
> +     .has_guc_tlb_invalidation = 0,
>       .has_llc = 0,
>       .has_mslice_steering = 0,
>       .has_snoop = 1,

Reply via email to