Jellyfin hardware transcoding issues

I want to settup jellyfin media server and got an Intel Arc a310 that needs to use LP Mode Adding my GPU to the app works and is detected but it fials to not using the LP mode that is requierd.

found multiple examples of this problem but have not see fixes that fix it.

basicly did same as this guy did on the old forum Plex hardware transcoding issues

sudo dmesg | grep i915 command gives me:

[    0.000000] Command line: BOOT_IMAGE=/ROOT/24.04.0@/boot/vmlinuz-6.6.20-production+truenas root=ZFS=boot-pool/ROOT/24.04.0 ro libata.allow_tpm=1 amd_iommu=on iommu=pt kvm_amd.npt=1 kvm_amd.avic=1 intel_iommu=on zfsforce=1 nvme_core.multipath=N i915.enable_guc=3
[    0.018916] Kernel command line: BOOT_IMAGE=/ROOT/24.04.0@/boot/vmlinuz-6.6.20-production+truenas root=ZFS=boot-pool/ROOT/24.04.0 ro libata.allow_tpm=1 amd_iommu=on iommu=pt kvm_amd.npt=1 kvm_amd.avic=1 intel_iommu=on zfsforce=1 nvme_core.multipath=N i915.enable_guc=3
[    6.615176] i915 0000:03:00.0: vgaarb: deactivate vga console
[    6.615187] i915 0000:03:00.0: [drm] Can't resize LMEM BAR - platform support is missing
[    6.615197] i915 0000:03:00.0: [drm] Local memory IO size: 0x0000000010000000
[    6.615200] i915 0000:03:00.0: [drm] Local memory available: 0x00000000fd000000
[    6.615202] i915 0000:03:00.0: [drm] Using a reduced BAR size of 256MiB. Consider enabling 'Resizable BAR' or similar, if available in the BIOS.
[    6.630245] i915 0000:03:00.0: vgaarb: VGA decodes changed: olddecodes=io+mem,decodes=io+mem:owns=io+mem
[    6.637989] i915 0000:03:00.0: [drm] Finished loading DMC firmware i915/dg2_dmc_ver2_08.bin (v2.8)
[    6.641545] i915 0000:03:00.0: [drm] *ERROR* GT0: HuC firmware i915/dg2_huc_gsc.bin: fetch failed -ENOENT
[    6.641552] i915 0000:03:00.0: [drm] GT0: HuC firmware(s) can be downloaded from https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/tree/i915
[    6.647567] i915 0000:03:00.0: [drm] GT0: GuC firmware i915/dg2_guc_70.bin version 70.5.1
[    6.659445] i915 0000:03:00.0: [drm] GT0: GUC: submission enabled
[    6.659449] i915 0000:03:00.0: [drm] GT0: GUC: SLPC enabled
[    6.659653] i915 0000:03:00.0: [drm] GT0: GUC: RC enabled
[    6.698105] [drm] Initialized i915 1.6.0 20201103 for 0000:03:00.0 on minor 0
[    6.699002] snd_hda_intel 0000:04:00.0: bound 0000:03:00.0 (ops i915_audio_component_bind_ops [i915])
[    6.699658] i915 0000:03:00.0: [drm] Cannot find any crtc or sizes
[    6.699964] i915 0000:03:00.0: [drm] Cannot find any crtc or sizes
[    6.716926] mei_gsc i915.mei-gscfi.768: FW not ready: resetting: dev_state = 2 pxp = 0
[    6.716954] mei_gsc i915.mei-gscfi.768: unexpected reset: dev_state = ENABLED fw status = 00000345 84670000 00000000 00000000 E0020002 00000000
[    6.716980] mei i915.mei-gscfi.768-46e0c1fb-a546-414f-9170-b7f46d57b4ad: Could not read FW version ret = -19
[    6.716984] mei i915.mei-gscfi.768-46e0c1fb-a546-414f-9170-b7f46d57b4ad: FW version command failed -5
[    6.717698] mei_gsc i915.mei-gsc.768: FW not ready: resetting: dev_state = 2 pxp = 2
[    6.717724] mei_gsc i915.mei-gsc.768: unexpected reset: dev_state = ENABLED fw status = 00000345 84670000 00000000 00000000 E0020002 00000000

guc info:

admin@truenas[~]$ sudo cat /sys/kernel/debug/dri/0/gt0/uc/guc_info                                       
GuC firmware: i915/dg2_guc_70.bin
        status: RUNNING
        version: found 70.5.1
        uCode: 369088 bytes
        RSA: 384 bytes
GuC status 0x80030020:
        Bootrom status = 0x10
        uKernel status = 0x0
        MIA Core status = 0x3
Scratch registers:
         0:     0x0
         1:     0xb03d7
         2:     0x2c800
         3:     0x4
         4:     0x40
         5:     0x3a0
         6:     0x56a60005
         7:     0x0
         8:     0x0
         9:     0x0
        10:     0x0
        11:     0x0
        12:     0x0
        13:     0x0
        14:     0x0
        15:     0x0

GuC logging stats:
        Relay full count: 0
        DEBUG:  flush count          0, overflow count          0
        CRASH:  flush count          0, overflow count          0
        CAPTURE:        flush count          0, overflow count          0
CT enabled
H2G Space: 2212
Head: 470
Tail: 470
G2H Space: 12284
Head: 95
Tail: 95
GuC Submission API Version: 1.1.0
GuC Number Outstanding Submission G2H: 0
GuC tasklet count: 0
Requests in GuC submit tasklet:

Global scheduling policies:
  DPC promote time   = 500000
  Max num work items = 15
  Flags              = 0

huc info:

admin@truenas[~]$ sudo cat /sys/kernel/debug/dri/0/gt0/uc/huc_info
HuC firmware: i915/dg2_huc_gsc.bin
        status: MISSING
        version: found 0.0.0
        uCode: 0 bytes
        RSA: 0 bytes
HuC status: 0x00164000

Firmware list:

admin@truenas[/]$ ls /lib/firmware/i915
adlp_dmc.bin          adls_dmc_ver2_01.bin  bxt_guc_ver9_29.bin        cnl_dmc_ver1_07.bin  dg2_dmc_ver2_06.bin  ehl_guc_70.1.1.bin   glk_huc_ver03_01_2893.bin  icl_huc_ver8_4_3238.bin  kbl_guc_ver9_14.bin        skl_dmc_ver1_27.bin  skl_guc_ver6_1.bin         tgl_guc_62.0.0.bin
adlp_dmc_ver2_09.bin  bxt_dmc_ver1.bin      bxt_huc_2.0.0.bin          dg1_dmc_ver2_02.bin  dg2_dmc_ver2_07.bin  ehl_huc_9.0.0.bin    icl_dmc_ver1_07.bin        kbl_dmc_ver1.bin         kbl_guc_ver9_39.bin        skl_guc_32.0.3.bin   skl_guc_ver9_33.bin        tgl_guc_69.0.3.bin
adlp_dmc_ver2_10.bin  bxt_dmc_ver1_07.bin   bxt_huc_ver01_07_1398.bin  dg1_guc_49.0.1.bin   dg2_dmc_ver2_08.bin  glk_dmc_ver1_04.bin  icl_dmc_ver1_09.bin        kbl_dmc_ver1_01.bin      kbl_huc_4.0.0.bin          skl_guc_33.0.0.bin   skl_huc_2.0.0.bin          tgl_guc_70.1.1.bin
adlp_dmc_ver2_12.bin  bxt_guc_32.0.3.bin    bxt_huc_ver01_8_2893.bin   dg1_guc_62.0.0.bin   dg2_guc_70.1.2.bin   glk_guc_32.0.3.bin   icl_guc_32.0.3.bin         kbl_dmc_ver1_04.bin      kbl_huc_ver02_00_1810.bin  skl_guc_49.0.1.bin   skl_huc_ver01_07_1398.bin  tgl_guc_70.bin
adlp_dmc_ver2_14.bin  bxt_guc_33.0.0.bin    cml_guc_33.0.0.bin         dg1_guc_69.0.3.bin   dg2_guc_70.4.1.bin   glk_guc_33.0.0.bin   icl_guc_33.0.0.bin         kbl_guc_32.0.3.bin       mtl_dmc.bin                skl_guc_62.0.0.bin   tgl_dmc_ver2_04.bin        tgl_huc.bin
adlp_dmc_ver2_16.bin  bxt_guc_49.0.1.bin    cml_guc_49.0.1.bin         dg1_guc_70.1.1.bin   dg2_guc_70.bin       glk_guc_49.0.1.bin   icl_guc_49.0.1.bin         kbl_guc_33.0.0.bin       rkl_dmc_ver2_02.bin        skl_guc_69.0.3.bin   tgl_dmc_ver2_06.bin        tgl_huc_7.0.12.bin
adlp_guc_62.0.3.bin   bxt_guc_62.0.0.bin    cml_guc_62.0.0.bin         dg1_guc_70.bin       ehl_guc_33.0.4.bin   glk_guc_62.0.0.bin   icl_guc_62.0.0.bin         kbl_guc_49.0.1.bin       rkl_dmc_ver2_03.bin        skl_guc_70.1.1.bin   tgl_dmc_ver2_08.bin        tgl_huc_7.0.3.bin
adlp_guc_69.0.3.bin   bxt_guc_69.0.3.bin    cml_guc_69.0.3.bin         dg1_huc.bin          ehl_guc_49.0.1.bin   glk_guc_69.0.3.bin   icl_guc_69.0.3.bin         kbl_guc_62.0.0.bin       skl_dmc_ver1.bin           skl_guc_ver1.bin     tgl_dmc_ver2_12.bin        tgl_huc_7.5.0.bin
adlp_guc_70.1.1.bin   bxt_guc_70.1.1.bin    cml_guc_70.1.1.bin         dg1_huc_7.7.1.bin    ehl_guc_62.0.0.bin   glk_guc_70.1.1.bin   icl_guc_70.1.1.bin         kbl_guc_69.0.3.bin       skl_dmc_ver1_23.bin        skl_guc_ver4.bin     tgl_guc_35.2.0.bin         tgl_huc_7.9.3.bin
adlp_guc_70.bin       bxt_guc_ver8_7.bin    cml_huc_4.0.0.bin          dg1_huc_7.9.3.bin    ehl_guc_69.0.3.bin   glk_huc_4.0.0.bin    icl_huc_9.0.0.bin          kbl_guc_70.1.1.bin       skl_dmc_ver1_26.bin        skl_guc_ver6.bin     tgl_guc_49.0.1.bin

Hope that it is just an easy fix or something i missed, all help is welcome.

Found the issue after doing an other search and found the ticket that coresponds to the issue, follow this and after reboot it works.

comment with work around

FYI - The fix for ARC cards will land in 24.04.1 in a couple weeks as well.

2 Likes