12th Gen Intel UHD 770 (Alder Lake) iGPU support

kzsolt4444

Cadet
Joined
Oct 29, 2022
Messages
9
Hi all!

Before i spend my money i want to know if my plan can work.
I want to upgrade my system to use a i5-12500T (with uhd 770 iGPU)

Can you please tell me if it is officially supported by the current PROD version of truenas scale (TrueNAS-22.12.3.3)
I mean using its iGPU for hardware transcoding on Plex and Nextcloud apps.

Is there anybody here who actually using any Alder lake CPU (its iGPU) for hardware transcoding? If yes, was it working "out of the box", or you had to make some magic to get it working?

Thank you!
 

airninja

Cadet
Joined
Aug 28, 2023
Messages
3
I would also like to know if anyone has this setup working. I have an Alder Lake CPU, a i5-12400, UHD 730 graphics, and when I run:

# dmesg | grep i915

I am getting these errors in the output:

20230828_133555.jpg


i915 0000:00:02.0: Direct firmware load for i915/tgl_guc_62.0.0.bin failed with error -2
[drm] GuC firmware i915/tgl_guc_62.0.0.bin: fetch failed with error -2
[drm] GuC is uninitialized


Any feedback is greatly appreciated :)
 

Lipsum Ipsum

Dabbler
Joined
Aug 31, 2022
Messages
22
Can you please tell me if it is officially supported by the current PROD version of truenas scale (TrueNAS-22.12.3.3)
Officially supported? No
I mean using its iGPU for hardware transcoding on Plex and Nextcloud apps.
I don't use Plex and Nextcloud, but I do use Jellyfin. And I have hardware transcoding working.
Is there anybody here who actually using any Alder lake CPU (its iGPU) for hardware transcoding? If yes, was it working "out of the box", or you had to make some magic to get it working?
Yes, no not out of the box, but had to type some magic words to get it working.

Standard disclaimer: Run steps at your own risk. Always have a backup. Wait one hour after eating before entering pool. Actual coupon value 1/20th of one cent. Not valid in all states. Check with an adult if you are under the age of 18.
cd /tmp
git clone --depth=1 https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git
sudo cp -rn /tmp/linux-firmware/i915 /usr/lib/firmware
The above should copy any updated firmware files into the i915 firmware directory without overwriting existing files.
sudo midclt call system.advanced.update '{"kernel_extra_options": "i915.force_probe=4680 i915.enable_guc=3"}'
Replace 4680 with your id as required. The parameter enable_guc=3 enables loading of both the HuC (HEVC encoding) and GuC (everything else) firmware.
sudo reboot
Reboot.
After rebooting and getting back to a command prompt, check dmesg again and see what the output is.
admin@truenas[~]$ sudo dmesg|grep i915
[ 0.000000] Command line: BOOT_IMAGE=/ROOT/22.12.3.3@/boot/vmlinuz-5.15.107+truenas root=ZFS=boot-pool/ROOT/22.12.3.3 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.force_probe=4680 i915.enable_guc=3
[ 0.027317] Kernel command line: BOOT_IMAGE=/ROOT/22.12.3.3@/boot/vmlinuz-5.15.107+truenas root=ZFS=boot-pool/ROOT/22.12.3.3 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.force_probe=4680 i915.enable_guc=3
[ 14.290352] i915 0000:00:02.0: [drm] VT-d active for gfx access
[ 14.292182] i915 0000:00:02.0: vgaarb: changed VGA decodes: olddecodes=io+mem,decodes=none:owns=io+mem
[ 14.293985] mei_hdcp 0000:00:16.0-b638ab7e-94e2-4ea2-a552-d1c54b627f04: bound 0000:00:02.0 (ops i915_hdcp_component_ops [i915])
[ 14.298424] i915 0000:00:02.0: [drm] Finished loading DMC firmware i915/adls_dmc_ver2_01.bin (v2.1)
[ 14.412852] i915 0000:00:02.0: [drm] GuC firmware i915/tgl_guc_62.0.0.bin version 62.0 submission:enabled
[ 14.412872] i915 0000:00:02.0: [drm] GuC SLPC: enabled
[ 14.412881] i915 0000:00:02.0: [drm] HuC firmware i915/tgl_huc_7.9.3.bin version 7.9 authenticated:yes
[ 14.414276] i915 0000:00:02.0: [drm] GuC RC: enabled
[ 14.416585] [drm] Initialized i915 1.6.0 20201103 for 0000:00:02.0 on minor 1
[ 14.418817] snd_hda_intel 0000:00:1f.3: bound 0000:00:02.0 (ops i915_audio_component_bind_ops [i915])
[ 14.419157] i915 0000:00:02.0: [drm] Cannot find any crtc or sizes
[ 14.420608] i915 0000:00:02.0: [drm] Cannot find any crtc or sizes
[ 14.421906] i915 0000:00:02.0: [drm] Cannot find any crtc or sizes
You can also check to make sure you can card(s) and render* in the /dev/dri directory.
admin@truenas[~]$ ls -lh /dev/dri
total 0
drwxr-xr-x 2 root root 100 Aug 31 18:45 by-path
crw-rw---- 1 root video 226, 0 Aug 31 18:45 card0
crw-rw---- 1 root video 226, 1 Aug 31 18:45 card1
crw-rw---- 1 root render 226, 128 Aug 31 18:45 renderD128
 

help!

Explorer
Joined
Aug 3, 2023
Messages
57
Officially supported? No

I don't use Plex and Nextcloud, but I do use Jellyfin. And I have hardware transcoding working.

Yes, no not out of the box, but had to type some magic words to get it working.

Standard disclaimer: Run steps at your own risk. Always have a backup. Wait one hour after eating before entering pool. Actual coupon value 1/20th of one cent. Not valid in all states. Check with an adult if you are under the age of 18.

The above should copy any updated firmware files into the i915 firmware directory without overwriting existing files.

Replace 4680 with your id as required. The parameter enable_guc=3 enables loading of both the HuC (HEVC encoding) and GuC (everything else) firmware.

Reboot.
After rebooting and getting back to a command prompt, check dmesg again and see what the output is.

You can also check to make sure you can card(s) and render* in the /dev/dri directory.
you sire have enabled HW accel for me on 13 Gen 13400

thank you very much
 

godzila543

Cadet
Joined
Mar 29, 2024
Messages
1
Officially supported? No

I don't use Plex and Nextcloud, but I do use Jellyfin. And I have hardware transcoding working.

Yes, no not out of the box, but had to type some magic words to get it working.

Standard disclaimer: Run steps at your own risk. Always have a backup. Wait one hour after eating before entering pool. Actual coupon value 1/20th of one cent. Not valid in all states. Check with an adult if you are under the age of 18.

The above should copy any updated firmware files into the i915 firmware directory without overwriting existing files.

Replace 4680 with your id as required. The parameter enable_guc=3 enables loading of both the HuC (HEVC encoding) and GuC (everything else) firmware.

Reboot.
After rebooting and getting back to a command prompt, check dmesg again and see what the output is.

You can also check to make sure you can card(s) and render* in the /dev/dri directory.
You saved me! Thank you for your efforts, though there was one piece (!) missing I want to convey to any other complete linux noobs that run into the same issue. When I tried to copy the files into the firmware directory, I was met with a read-only filesystem error, here are the commands to get past that.
First find out what the filesystem is
df /lib/firmware
Then remount the filesystem as read write
sudo mount -o remount,rw filesystem
Finally once you have copied the files over, its probably best to remount it as read only
sudo mount -o remount,ro filesystem
 
Top