Jump to content
XPEnology Community

i915.ko backported driver for intel 10th gen (DS918+ ver 7.0.1 up3)


Recommended Posts

2 часа назад, blackmanga сказал:

 

Much better, but:

 

root@xpe-home:/volume1/homes/mitya/i915# ./rm_modules.sh
rmmod: ERROR: Module fb is in use by: efifb fbcon softcursor bitblit
root@xpe-home:/volume1/homes/mitya/i915# ./in_modules.sh
insmod: ERROR: could not insert module fb.ko: File exists
./in_modules.sh: line 10:  9267 Killed                  insmod i915.ko

 


 

dmesg.txt

Edited by mitya_zzz
Link to comment
Share on other sites

  • 3 months later...

@blackmanga Awesome work.

Would you mind having a quick look into adding support for Alder Lake N? It looks a fairly trivial backport since you've already got Gen11 support.

 

I'm on (918 7.2 modules loaded fine, just not matching the id so toolchain/kernel should be good for dva still)

Linux GB-NVR 4.4.302+ #69057 SMP Fri Jan 12 17:02:28 CST 2024 x86_64 GNU/Linux synology_geminilake_dva1622

 

https://lore.kernel.org/all/20211210051802.4063958-1-tejaskumarx.surendrakumar.upadhyay@intel.com/

 

Adding PCI device ids and enabling ADL-N platform.
ADL-N from i915 point of view is subplatform of ADL-P.

BSpec: 68397

Changes since V2:
	- Added version log history
Changes since V1:
	- replace IS_ALDERLAKE_N with IS_ADLP_N - Jani Nikula

Signed-off-by: Tejas Upadhyay <tejaskumarx.surendrakumar.upadhyay@intel.com>
---
 arch/x86/kernel/early-quirks.c           | 1 +
 drivers/gpu/drm/i915/i915_drv.h          | 2 ++
 drivers/gpu/drm/i915/i915_pci.c          | 1 +
 drivers/gpu/drm/i915/intel_device_info.c | 7 +++++++
 drivers/gpu/drm/i915/intel_device_info.h | 3 +++
 include/drm/i915_pciids.h                | 6 ++++++
 6 files changed, 20 insertions(+)
 ....

 

 

Link to comment
Share on other sites

  • 4 weeks later...
On 4/9/2022 at 11:16 PM, blackmanga said:

I have managed to compile the i915.ko module (and associated modules) for Intel 10th Gen CPUs (i.e. 9BC8 etc.)

 

Tested and working on DS918+ 7.0.1-42218 up3; Redpill loader on baremetal instance. The patched i915 module from IG88 had issues and would end up in a hardlockup/kernel panic for me. 

For anyone who wants to test, i have attached the compiled modules.

 

https://www.filehosting.org/file/details/3054890/i915.7z

https://www104.zippyshare.com/v/oPItjx82/file.html

https://dailyuploads.net/41tops2ix61g

 

Hi! all the links are dead. Also, can you tell me if this works for DS923+ or DS920+? And is there a step by step guide to make sure it works? Couldn't get it to work even with RR automated loader..

Thanks.

Link to comment
Share on other sites

Posted (edited)
8 часов назад, Fox Mulder сказал:

Hi! all the links are dead. Also, can you tell me if this works for DS923+ or DS920+? And is there a step by step guide to make sure it works? Couldn't get it to work even with RR automated loader..

Thanks.

1) DS923+ == AMD ==>  i915.ko doesn't work. For Intel CPU with iGPU only ==> DS918+, DS920+

2) You can not compile the module, but use a simple hex editor (or use the i915 addon in Arc Loader). 

It was described here. In short, it's like this:

 1. Find the iGPU ID (for example 3E98). You can use the specification of your CPU or connect via SSH and enter the command lspci -tvnnq 

find your iGPU in the list (something like "... [UHD Graphics 630] [8086:3e98]")

 2. Insert this ID into file (get it here - /usr/lib/modules/i915.ko) with the tool "HxD" (or WinHex):  find the hexadecimal value 86800000923E0000, change 923E to 983E (the ID is written in reverse order)

 3. Delete the driver signature – at the end of the file, starting from 30 82, delete to end of file and then save the file

 4. Copy the patched file to the original location (/usr/lib/modules/i915.ko)

Edited by dj_nsk
Link to comment
Share on other sites

11 hours ago, dj_nsk said:

1) DS923+ == AMD ==>  i915.ko doesn't work. For Intel CPU with iGPU only ==> DS918+, DS920+

2) You can not compile the module, but use a simple hex editor (or use the i915 addon in Arc Loader). 

It was described here. In short, it's like this:

 1. Find the iGPU ID (for example 3E98). You can use the specification of your CPU or connect via SSH and enter the command lspci -tvnnq 

find your iGPU in the list (something like "... [UHD Graphics 630] [8086:3e98]")

 2. Insert this ID into file (get it here - /usr/lib/modules/i915.ko) with the tool "HxD" (or WinHex):  find the hexadecimal value 86800000923E0000, change 923E to 983E (the ID is written in reverse order)

 3. Delete the driver signature – at the end of the file, starting from 30 82, delete to end of file and then save the file

 4. Copy the patched file to the original location (/usr/lib/modules/i915.ko)

Thanks! I might try it. How can I test it? Do you know how to use the GPU in portainer? My main reason for the use of the integrated GPU is to be able to use it in chat AI such as serge or llama-gpt

Link to comment
Share on other sites

  • 1 month later...

Hi!!

I'm trying to set up a DS920+ with DSM 7.2 on an "Ashrock H470M" motherboard with an Intel i3 10100 and UHD 930 (ID 0x9BC8) graphics.

 

I can install DSM 7.2.1 update 5 with any Loader (ARC Loader, Redpill loader, RR loader, etc.), but the "/dev/dri" folder does not exist.

The i915.ko appears in "/usr/lib/modules/" and all the corresponding bin files are present in "/usr/lib/firmware".

 

I've tried to activate the "ARC Loader" or any other loader addon, and it always does the same thing - constant reboots and it never fully boots up.

I've also tried to patch the i915.ko file by editing it in a hex editor, replacing "923E" with "C89B" and removing the signature part at the end.

But in all cases, I get the same result.

Does anyone have a patched i915.ko file for DSM7.2.1 and DS920+? Or can you tell me how I can patch the system to enable hardware acceleration?

I don't know what else to do. I know this hardware configuration should work, but I haven't been able to get it to work.

 

Thanks

Link to comment
Share on other sites

I managed to get the graphics working by downloading blackmanga's unstripe patches for the DS918+. The striped ones were causing the system to reboot."

However, I have not been able to do it with the DS920+ since the striped patches also give me an error.

Would it be possible for someone to indicate or provide me with the unstripe version for DS920+ 7.2 for 4.4.302+?

 

Thank you very much

Link to comment
Share on other sites

1 hour ago, vledgar said:

Would it be possible for someone to indicate or provide me with the unstripe version for DS920+ 7.2 for 4.4.302+?

 

i'd suggest you try arc loader (and read the wiki there) it should provide alll you need to get a 10th en intel cpu with intel qick sync running

https://github.com/AuxXxilium

 

afair an 0x9BC8 device id is not going to work ootb with kernel 4 i915 drivers provided by synology ist need a patched driver (crude version where one pcie id is changed from one persent to 9BC8 like 9BC2 to 9BC8) or a kernel 5.x based dsm model like epyc7002 where a newer i915 driver ist present by default and imho a 10th gen gpu should wot ootb with the default driver (the should als be a i915 driver for up to 13th gen for that model)

Link to comment
Share on other sites

8 часов назад, vledgar сказал:

Does anyone have a patched i915.ko file for DSM7.2.1 and DS920+? Or can you tell me how I can patch the system to enable hardware acceleration?

I don't know what else to do. I know this hardware configuration should work, but I haven't been able to get it to work.

Use addon i915 in Arc Loader

Link to comment
Share on other sites

3 hours ago, vledgar said:

I managed to get the graphics working by downloading blackmanga's unstripe patches for the DS918+. The striped ones were causing the system to reboot."

However, I have not been able to do it with the DS920+ since the striped patches also give me an error.

Would it be possible for someone to indicate or provide me with the unstripe version for DS920+ 7.2 for 4.4.302+?

 

Thank you very much

https://www.mediafire.com/file/8fg0uq2fe4bu662/i915_920_7.2_unstripped.7z/file

  • Like 2
Link to comment
Share on other sites

Thanks to everyone.

 

IG-88 and dj_nsk: 

I have tried ARC Loader and the i915 addon, both on the DS920+ and DS918+ versions, and they do the same thing. After installing DSM, it no longer boots. It generates a constant loop of restarts. 

The only thing that has worked for me is installing DS918+ with blackmanga's i915 patches in unstriped format, and installing both ARC Loader without the i915 plugin, as well as RR or Redpill loader, and manually copying the .ko files.

I have read the ARC wiki and followed all the instructions but with no positive result. I have manually patched, but nothing works on DS920+.

And I don't understand why the i915 plugin from any loader is not working for me. It's possible that my Asrock H-470M-HVS motherboard is conflicting with some module loaded by ARC, I don't know.

 

blackmanga:

Thank you for the files. I will try them now to see if it works and I'll give you feedback.

 

Thanks to evryone.

 

 

Link to comment
Share on other sites

 

Hi blackmanga !!!

I think it's working now. It has created the folder "/dev/dri/" and "i915_frequency_info" shows active hardware. I hope Jellyfin works correctly with this.

I have restarted and it has booted up correctly.

 

 

ls -lah /dev/dri

total 0
drwxr-xr-x  3 root root             100 Jul 11 18:10 .
drwxr-xr-x 14 root root             14K Jul 11 18:10 ..
drwxr-xr-x  2 root root              80 Jul 11 18:10 by-path
crw-------  1 root root        226,   0 Jul 11 18:10 card0
crw-rw----  1 root videodriver 226, 128 Jul 11 18:10 renderD128
 

cat /sys/kernel/debug/dri/0/i915_frequency_info

Video Turbo Mode: yes
HW control enabled: yes
SW control enabled: no
PM IER=0x00000000 IMR=0xffffffff ISR=0x00000000 IIR=0x00000000, MASK=0x00003ffe
pm_intrmsk_mbz: 0x80000000
GT_PERF_STATUS: 0x00000000
Render p-state ratio: 0
Render p-state VID: 0
Render p-state limit: 22
RPSTAT1: 0x0a800000
RPMODECTL: 0x00000d92
RPINCLIMIT: 0x00002c88
RPDECLIMIT: 0x00004fb0
RPNSWREQ: 350MHz
CAGF: 350MHz
RP CUR UP EI: 29 (38us)
RP CUR UP: 29 (38us)
RP PREV UP: 0 (0us)
Up threshold: 95%
RP CUR DOWN EI: 30 (40us)
RP CUR DOWN: 30 (40us)
RP PREV DOWN: 0 (0us)
Down threshold: 85%
Lowest (RPN) frequency: 350MHz
Nominal (RP1) frequency: 350MHz
Max non-overclocked (RP0) frequency: 1100MHz
Max overclocked frequency: 1100MHz
Current freq: 350 MHz
Actual freq: 350 MHz
Idle freq: 350 MHz
Min freq: 350 MHz
Boost freq: 1100 MHz
Max freq: 1100 MHz
efficient (RPe) frequency: 350 MHz
Current CD clock frequency: 337500 kHz
Max CD clock frequency: 675000 kHz
Max pixel clock frequency: 675000 kHz
 

 

Thank you very much, everyone.

Link to comment
Share on other sites

6 hours ago, vledgar said:

 

Hi blackmanga !!!

I think it's working now. It has created the folder "/dev/dri/" and "i915_frequency_info" shows active hardware. I hope Jellyfin works correctly with this.

I have restarted and it has booted up correctly.

 

 

ls -lah /dev/dri

total 0
drwxr-xr-x  3 root root             100 Jul 11 18:10 .
drwxr-xr-x 14 root root             14K Jul 11 18:10 ..
drwxr-xr-x  2 root root              80 Jul 11 18:10 by-path
crw-------  1 root root        226,   0 Jul 11 18:10 card0
crw-rw----  1 root videodriver 226, 128 Jul 11 18:10 renderD128
 

cat /sys/kernel/debug/dri/0/i915_frequency_info

Video Turbo Mode: yes
HW control enabled: yes
SW control enabled: no
PM IER=0x00000000 IMR=0xffffffff ISR=0x00000000 IIR=0x00000000, MASK=0x00003ffe
pm_intrmsk_mbz: 0x80000000
GT_PERF_STATUS: 0x00000000
Render p-state ratio: 0
Render p-state VID: 0
Render p-state limit: 22
RPSTAT1: 0x0a800000
RPMODECTL: 0x00000d92
RPINCLIMIT: 0x00002c88
RPDECLIMIT: 0x00004fb0
RPNSWREQ: 350MHz
CAGF: 350MHz
RP CUR UP EI: 29 (38us)
RP CUR UP: 29 (38us)
RP PREV UP: 0 (0us)
Up threshold: 95%
RP CUR DOWN EI: 30 (40us)
RP CUR DOWN: 30 (40us)
RP PREV DOWN: 0 (0us)
Down threshold: 85%
Lowest (RPN) frequency: 350MHz
Nominal (RP1) frequency: 350MHz
Max non-overclocked (RP0) frequency: 1100MHz
Max overclocked frequency: 1100MHz
Current freq: 350 MHz
Actual freq: 350 MHz
Idle freq: 350 MHz
Min freq: 350 MHz
Boost freq: 1100 MHz
Max freq: 1100 MHz
efficient (RPe) frequency: 350 MHz
Current CD clock frequency: 337500 kHz
Max CD clock frequency: 675000 kHz
Max pixel clock frequency: 675000 kHz
 

 

Thank you very much, everyone.

Super! 

Link to comment
Share on other sites

В 26.05.2024 в 16:07, dj_nsk сказал:

1) DS923+ == AMD ==>  i915.ko doesn't work. For Intel CPU with iGPU only ==> DS918+, DS920+

2) You can not compile the module, but use a simple hex editor (or use the i915 addon in Arc Loader). 

It was described here. In short, it's like this:

 1. Find the iGPU ID (for example 3E98). You can use the specification of your CPU or connect via SSH and enter the command lspci -tvnnq 

find your iGPU in the list (something like "... [UHD Graphics 630] [8086:3e98]")

 2. Insert this ID into file (get it here - /usr/lib/modules/i915.ko) with the tool "HxD" (or WinHex):  find the hexadecimal value 86800000923E0000, change 923E to 983E (the ID is written in reverse order)

 3. Delete the driver signature – at the end of the file, starting from 30 82, delete to end of file and then save the file

 4. Copy the patched file to the original location (/usr/lib/modules/i915.ko)

Hello!
Strange, it doesn't help me. After i915.ko modification I've got boot loop.
My system if i5-10400 [UHD Graphics 630] [8086:9bc8 ] DS920+ DSM7.2.1U5
Could you please share your i915.ko?

Link to comment
Share on other sites

Hello,

 

Tried several files, but i can't get it to work.

 

I915 920+ with an i3-13100 will not work.

 

Thanx for giving me so much options to work with.

 

Hopefully the 13th gen will be supported soon.

Link to comment
Share on other sites

  • 1 month later...
33 minutes ago, shibby said:

@blackmanga is a possible to support iGPU from 13gen CPU? I want to switch from 7700T to 13500T... At the moment i`m on DS423+ but i can switch to different model.

The above CPU should be supported under SA6400 model.  https://auxxxilium.tech/wiki/arc-loader-arc-loader/getestete-hardware/

 

DS918+ or other models use the older linux kernel, so getting anything above 10th gen iGPU will involve a lot of backporting. That is beyond my humble expertise unfortunately :)

 

  • Like 1
Link to comment
Share on other sites

On 9/2/2024 at 8:01 AM, blackmanga said:

The above CPU should be supported under SA6400 model.  https://auxxxilium.tech/wiki/arc-loader-arc-loader/getestete-hardware/

 

DS918+ or other models use the older linux kernel, so getting anything above 10th gen iGPU will involve a lot of backporting. That is beyond my humble expertise unfortunately :)

 

 

Cheers for the comment.

 

Went for ARC loader and model SA6400

My i3 Gen 13  is recognized properly and shows the onboard GPU in DSM.

 

Plex now recognizes hardware acceleration aswell.

Plex is playing now with Hardware transcoding

 

 

 

 

 

 

Link to comment
Share on other sites

  • 2 weeks later...
On 9/7/2024 at 6:13 AM, 4MOTION said:

 

Cheers for the comment.

 

Went for ARC loader and model SA6400

My i3 Gen 13  is recognized properly and shows the onboard GPU in DSM.

 

Plex now recognizes hardware acceleration aswell.

Plex is playing now with Hardware transcoding

Did you get it working on bare metal or is it with a VM with PCI passthrough? I am trying to do the same thing with my 12th gen Intel processor with the iGPU to be passthru'd to the DSM VM in Proxmox but having trouble getting it recognized. Running Arcloader Redpill with the SA6400 hardware model selected. Did you also select the i915 module in Arcloader?

Edited by Syntax Error
Link to comment
Share on other sites

  • 3 weeks later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...