"Failed to create device link (0x124)" for Intel Management Engine Interface on Xe graphics
Simon Richter
Simon.Richter at hogyros.de
Thu Aug 14 06:29:00 UTC 2025
Hi,
I'm trying to enable the MEI on my graphics card, to allow for firmware
updates. The MEI is enumerated through an auxiliary bus, so it is
detected only when the main driver is loaded.
The MEI driver tries to register an interrupt. On PPC64 (LE), I get:
xe 0030:03:00.0: enabling device (0140 -> 0142)
xe 0030:03:00.0: [drm] unbounded parent pci bridge, device won't support
any PM support.
xe 0030:03:00.0: [drm] Found battlemage (device ID e20b) discrete
display version 14.01 stepping B0
...
pci 0030:02:01.0: Failed to create device link (0x124) with supplier
0.interrupt-controller for /pciex at 620c3c0000000/pci at 0/pci at 0/pci at 1
pci 0030:01:00.0: Failed to create device link (0x124) with supplier
0.interrupt-controller for /pciex at 620c3c0000000/pci at 0/pci at 0
pci 0030:00:00.0: Failed to create device link (0x124) with supplier
0.interrupt-controller for /pciex at 620c3c0000000/pci at 0
mei_gsc xe.mei-gscfi.3146496: irq register failed -22
mei_gsc xe.mei-gscfi.3146496: probe failed: -22
mei_gsc xe.mei-gscfi.3146496: probe with driver mei_gsc failed with
error -22
My initial suspicion was that this is caused by
pcie_ports_disabled = true;
in arch/powerpc/platforms/powernv/pci.c:784 which stops the pcieport
driver from being registered, and attaching to all the PCIe bridge
ports, so there is neither power management nor something for the device
link to attach to.
Simply commenting out this line does not change anything though: lspci
shows the driver as registered and bound to the bridges, but it still
complains about a lack of power management, still fails to create device
links, and still fails to register the irq for the MEI.
So clearly there is something I've overlooked, and I'm a bit less
confident now that the failure to register the IRQ is related to the
"device link" functionality.
Since the weekend is coming up and I should have a bit of time to try
things then:
1. how is this supposed to work on PPC? Should there be an OPAL call for
power management of non-root PCIe bridges (i.e. "someone should write a
driver"), or should non-root bridges be managed by pcieport as normal?
2. how is this interrupt supposed to work on Xe? is that a separate
interrupt that needs to be requested and routed in addition to the MSI
we already have, or is the MSI shared?
3. are these problems actually related, or did I misinterpret anything?
Simon
More information about the Intel-xe
mailing list