Author Topic: Intel Arc Support in Kernel 6.8  (Read 557 times)

Hasturtium

  • Full Member
  • ***
  • Posts: 123
  • Karma: +10/-0
    • View Profile
Intel Arc Support in Kernel 6.8
« on: January 24, 2024, 09:01:53 am »
It looks like Intel's Xe driver is being mainlined in kernel 6.8. To this point Arc support's been officially limited to the i915 driver, which has had hard x86 dependencies. However the driver is confirmed to compile and work on aarch64, so we may be in luck. While the driver is chiefly intended for the to-be-released Battlemage hardware it does support the current Alchemist line; the only thing we'll likely miss out on is support for the HuC microcontroller. Without that support the video encoder is rather less capable... but given a choice between AMD and Intel's open graphics software stack, I know which way I'm leaning. Let's hope for good things.

r34per

  • Newbie
  • *
  • Posts: 27
  • Karma: +2/-0
    • View Profile
Re: Intel Arc Support in Kernel 6.8
« Reply #1 on: February 09, 2024, 11:26:58 am »
I'm cautiously optimistic, I've been literally looking for an excuse to pick up an arc gpu as it'd be perfect for my blackbird. One question, why is the Huc microcontroller not likely to be supported and what limitations would there be on video encoders without it?

Hasturtium

  • Full Member
  • ***
  • Posts: 123
  • Karma: +10/-0
    • View Profile
Re: Intel Arc Support in Kernel 6.8
« Reply #2 on: February 09, 2024, 05:50:57 pm »
I'm cautiously optimistic, I've been literally looking for an excuse to pick up an arc gpu as it'd be perfect for my blackbird. One question, why is the Huc microcontroller not likely to be supported and what limitations would there be on video encoders without it?

To my recollection that microcontroller won’t be supported from Battlemage/future IGPs, and the driver maintainers consider implementing support outside the x86-only i915 driver to be too pernicious to be worth bothering with. IIRC the microcontroller’s responsible for configuration of parameters to be passed to the video encoder, so outside of some default setting it won’t be configurable. Once kernel support for the Xe driver is verified working I’ll throw my little Arc A380 in and take it for a test drive.

min1123

  • Newbie
  • *
  • Posts: 1
  • Karma: +1/-0
    • View Profile
Re: Intel Arc Support in Kernel 6.8
« Reply #3 on: February 15, 2024, 10:01:21 pm »
I have three Intel Arc Alchemist cards, an A310 is the one I am currently testing in my Blackbird.

It kernel panics, but continues to boot afterwards. No video ever starts.

Believe it is due to the card not being initialized as a VGA controller by boot firmware, and not being in the state the driver expects, though it could also be not being able to access that memory address that fails. Also note some of the SATA controller messages get jumbled in the mix.

git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
commit 4f5e5092fdbf5cec6bedc19fbe69cce4f5f08372 - Thu Feb 15 11:39:27 2024 -0800

Quote
[    9.548952] xe 0000:03:00.0: vgaarb: VGA decodes changed: olddecodes=io+mem,decodes=none:owns=none
[    9.548971] BUG: Unable to handle kernel data access on read at 0xc00a0000000003cc
[    9.549000] Faulting instruction address: 0xc008000000c43a24
[    9.549014] Oops: Kernel access of bad area, sig: 11 [#1]
[    9.549035] LE PAGE_SIZE=64K MMU=Radix SMP NR_CPUS=2048 NUMA PowerNV
[    9.549052] Modules linked in: xe(+) drm_gpuvm drm_exec drm_buddy gpu_sched drm_suballoc_helper i2c_algo_bit drm_display_helper drm_ttm_helper ttm drm_kms_helper sd_mod tg3 t10_pi sr_mod crc64_rocksoft crc64 cdrom crc_t10dif crct10dif_generic xhci_pci crct10dif_common drm atlantic xhci_hcd libphy crc32c_vpmsum ahci macsec libahci drm_panel_orientation_quirks
[    9.549176] CPU: 0 PID: 437 Comm: kworker/0:3 Not tainted 6.8.0-rc4+ #2
[    9.549191] Hardware name: C1P9S01 REV 1.01 POWER9 0x4e1202 opal:skiboot-852ac62 PowerNV
[    9.549208] Workqueue: events work_for_cpu_fn
[    9.549233] NIP:  c008000000c43a24 LR: c008000000c4392c CTR: 000000003006c394
[    9.549280] REGS: c00000002202b620 TRAP: 0300   Not tainted  (6.8.0-rc4+)
[    9.549305] MSR:  9000000000009033 <SF,HV,EE,ME,IR,DR,RI,LE>  CR: 24088428  XER: 20040006
[    9.549347] CFAR: c008000000c43940 DAR: c00a0000000003cc DSISR: 40000000 IRQMASK: 0
               GPR00: c008000000c4392c c00000002202b8c0 c0080000005fc500 c00a0000000003cc
               GPR04: 0000000000000000 0000000000000004 0000000031c20060 0000000031c20060
               GPR08: 0000000000000000 c00a000000000000 0000000000000000 0000000000008000
               GPR12: 0000000000000000 c000000002a70000 c00000000018782c c000000002acd040
               GPR16: 0000000000000000 0000000000000000 0000000000000000 0000000000000000
               GPR20: 0000000000000000 c000000ffb8a0b00 c00000000309a440 000000000000002e
               GPR24: c008000000678650 c000000003050028 0000000000000003 000000000000000b
               GPR28: 0000000000000001 c0000000029003c0 c000000002b94000 c00000002860d000
[    9.549765] NIP [c008000000c43a24] intel_vga_reset_io_mem+0x138/0x180 [xe]
[    9.549914] LR [c008000000c4392c] intel_vga_reset_io_mem+0x40/0x180 [xe]
[    9.550068] Call Trace:
[    9.550105] sd 3:0:0:0: [sda] supports TCG Opal
[    9.550086] [c00000002202b8c0] [c008000000c4392c] intel_vga_reset_io_mem+0x40/0x180 [xe]
[    9.550143] sd 3:0:0:0: [sda] Attached SCSI removable disk
[    9.550293]  (unreliable)
[    9.550312] [c00000002202b900] [c008000000bb91d8] hsw_power_well_enable+0x200/0x354 [xe]
[    9.550461] [c00000002202b960] [c008000000bbb3b0] intel_power_well_enable+0x8c/0xb8 [xe]
[    9.550620] [c00000002202b9d0] [c008000000bb27a8] __intel_display_power_get_domain.part.0+0xa4/0x100 [xe]
[    9.550775] [c00000002202ba20] [c008000000bb35d4] intel_display_power_get+0x78/0xd0 [xe]
[    9.550930] [c00000002202ba60] [c008000000bb5684] intel_power_domains_init_hw+0x64/0x3d8 [xe]
[    9.551078] [c00000002202bb10] [c008000000baa834] intel_display_driver_probe_noirq+0xdc/0x2c8 [xe]
[    9.551234] [c00000002202bb90] [c008000000b3dd28] xe_display_init_noirq+0x74/0xc0 [xe]
[    9.551397] [c00000002202bbc0] [c008000000acbf50] xe_device_probe+0x240/0x584 [xe]
[    9.551542] [c00000002202bc40] [c008000000b0fb14] xe_pci_probe+0x774/0xd80 [xe]
[    9.551672] [c00000002202bd90] [c000000000c30220] local_pci_probe+0x68/0xfc
[    9.551711] [c00000002202be20] [c00000000017416c] work_for_cpu_fn+0x38/0x54
[    9.551760] [c00000002202be50] [c000000000178fc4] process_one_work+0x1e4/0x47c
[    9.551814] [c00000002202bef0] [c000000000179bbc] worker_thread+0x3ac/0x584
[    9.551854] [c00000002202bf90] [c00000000018795c] kthread+0x138/0x140
[    9.551904] [c00000002202bfe0] [c00000000000de58] start_kernel_thread+0x14/0x18
[    9.551958] Code: ebc1fff0 ebe1fff8 7c0803a6 4e800020 60000000 60000000 60000000 3d220000 e92912c0 e9290000 386903cc 7c0004ac <8bc903cc> 0c1e0000 4c00012c 57c9063e
[    9.552061] ---[ end trace 0000000000000000 ]---