Summary
On a fleet of iMac20,1 machines running Ubuntu 22.04 with t2 kernels, amdgpu fails to
initialise. The SMU never responds to the driver's first message, init aborts, no DRM
device is created, and the machine boots headless. The GPU initialises correctly under
macOS on the same hardware.
Environment
| |
|
| Model |
iMac20,1 |
| GPU |
Navi 14 — Radeon RX 5500/5500M / Pro 5500M [1002:7340] at 0000:03:00.0 |
| VBIOS |
113-D322A1XL-011 |
| OS |
Ubuntu 22.04 (Jammy) |
| Kernel |
6.12.81-2-t2-jammy (also reproduced on 6.6.72-1-t2-jammy) |
| linux-firmware |
20220329.git681281e4-0ubuntu3.40 (navi14_smc.bin dated 2025-09-18) |
Symptom
Boot proceeds normally until amdgpu probes. The driver deactivates the VGA console, then
fails ~3s later and tears down, leaving no console output device. The screen freezes on
the last drawn frame and never updates again.
The system is fully booted behind that stale image — SSH, DHCP, and cron all work
normally. systemctl list-jobs reports no jobs running. It is not a hang.
ls /sys/class/drm/ shows only version — no card0.
Relevant log
amdgpu 0000:03:00.0: amdgpu: Fetched VBIOS from VFCT
amdgpu: ATOM BIOS: 113-D322A1XL-011
amdgpu 0000:03:00.0: amdgpu: reserve 0x900000 from 0x80fd000000 for PSP TMR
amdgpu 0000:03:00.0: amdgpu: RAS: optional ras ta ucode is not available
amdgpu 0000:03:00.0: amdgpu: RAP: optional rap ta ucode is not available
amdgpu 0000:03:00.0: amdgpu: SECUREDISPLAY: securedisplay ta ucode is not available
amdgpu 0000:03:00.0: amdgpu: use vbios provided pptable
amdgpu 0000:03:00.0: amdgpu: smc_dpm_info table revision(format.content): 4.5
amdgpu 0000:03:00.0: amdgpu: SMU: I'm not done with your previous command: SMN_C2PMSG_66:0x00000006 SMN_C2PMSG_82:0x00000000
amdgpu 0000:03:00.0: amdgpu: Failed to enable requested dpm features!
amdgpu 0000:03:00.0: amdgpu: Failed to setup smc hw!
[drm:amdgpu_device_init [amdgpu]] *ERROR* hw_init of IP block <smu> failed -62
amdgpu 0000:03:00.0: amdgpu: amdgpu_device_ip_init failed
amdgpu 0000:03:00.0: amdgpu: Fatal error during GPU init
WARNING: CPU: 4 PID: 426 at drivers/gpu/drm/amd/amdgpu/amdgpu_irq.c:631 amdgpu_irq_put+0xa4/0xc0 [amdgpu]
amdgpu 0000:03:00.0: probe with driver amdgpu failed with error -62
PSP completes successfully; SMU is the first block to fail. Message 0x6
(EnableAllSmuFeatures) gets response 0x00000000 — no reply at all.
Possibly related ACPI errors early in boot:
ACPI: [Firmware Bug]: BIOS _OSI(Linux) query ignored
ACPI Error: Aborting method \_SB._OSC due to previous error (AE_AML_BUFFER_LIMIT)
ACPI Error: Aborting method \_SB.PR00._OSC due to previous error (AE_ALREADY_EXISTS)
Ruled out
- Hardware. macOS Internet Recovery boots and renders correctly on the same machine.
- Kernel version. Reproduced on both 6.6.72 and 6.12.81 t2 kernels.
- Firmware.
navi14_smc.bin present and current (Sep 2025 blob).
- Retained SMU state. Full power cycle with PSU disconnected 30s — no change.
- Filesystem.
fsck clean.
- Kernel parameters tried, no effect:
amdgpu.dpm=0, amdgpu.ppfeaturemask=0,
amdgpu.sg_display=0, and removing intel_iommu=on iommu=pt.
- PCI remove + rescan. Device re-enumerates cleanly but amdgpu does not re-probe.
Current kernel cmdline
BOOT_IMAGE=/boot/vmlinuz-6.12.81-2-t2-jammy root=UUID=... ro
pcie_ports=compat acpi=force intel_iommu=on iommu=pt
kvm.enable_virt_at_load=0 systemd.show_status=true
Fleet context
Multiple identically-imaged iMac20,1 units. Behaviour progressed from working, to booting
successfully roughly half the time, to never booting to a display. A 2021 Arch Linux
forum report on the same model and same PCI address describes the same ~50% success rate
and the same -62, with amdgpu.dpm=0 as a workaround on kernel 5.11 that stopped
working on later kernels.
Questions
- Is amdgpu known-working on iMac20,1 under any t2 kernel? If so, which, and with what
parameters?
- Given the GPU initialises under macOS, is this an OS-identity issue — i.e. does
apple_set_os / rEFInd macOS spoofing / acpi_osi=Darwin apply to iMacs, or is that
MacBook-only?
- Are the
_OSC ACPI aborts significant here, and is acpi=force advisable on this
model?
- Is there a known-good
amdgpu.ppfeaturemask value for this Apple VBIOS, along the
lines of the iMac17,1 workaround?
Happy to run diagnostics, test patches, or supply full dmesg / acpidump on request.
Summary
On a fleet of iMac20,1 machines running Ubuntu 22.04 with t2 kernels,
amdgpufails to initialise. The SMU never responds to the driver's first message, init aborts, no DRM device is created, and the machine boots headless. The GPU initialises correctly under macOS on the same hardware.Environment
Symptom
Boot proceeds normally until amdgpu probes. The driver deactivates the VGA console, then fails ~3s later and tears down, leaving no console output device. The screen freezes on the last drawn frame and never updates again.
The system is fully booted behind that stale image — SSH, DHCP, and cron all work normally.
systemctl list-jobsreports no jobs running. It is not a hang.ls /sys/class/drm/shows onlyversion— nocard0.Relevant log
PSP completes successfully; SMU is the first block to fail. Message 0x6 (
EnableAllSmuFeatures) gets response0x00000000— no reply at all.Possibly related ACPI errors early in boot:
Ruled out
navi14_smc.binpresent and current (Sep 2025 blob).fsckclean.amdgpu.dpm=0,amdgpu.ppfeaturemask=0,amdgpu.sg_display=0, and removingintel_iommu=on iommu=pt.Current kernel cmdline
Fleet context
Multiple identically-imaged iMac20,1 units. Behaviour progressed from working, to booting successfully roughly half the time, to never booting to a display. A 2021 Arch Linux forum report on the same model and same PCI address describes the same ~50% success rate and the same
-62, withamdgpu.dpm=0as a workaround on kernel 5.11 that stopped working on later kernels.Questions
apple_set_os/ rEFInd macOS spoofing /acpi_osi=Darwinapply to iMacs, or is that MacBook-only?_OSCACPI aborts significant here, and isacpi=forceadvisable on this model?amdgpu.ppfeaturemaskvalue for this Apple VBIOS, along the lines of the iMac17,1 workaround?Happy to run diagnostics, test patches, or supply full
dmesg/acpidumpon request.