Repository navigation
Replies: 4 comments 4 replies
|
Thanks for the detailed issue, I stumbled here trying to find a solution for the same issue on Fedora 43 and this worked flawlessly! |
|
I had similar issue with my iMac Late 2015 27 in AMD R9 M395 Mac Edition. Loading in userspace took 52 seconds and from time to time the system froze with reboot needed. |
|
@muyyii on native 5K: the work in drm/amd#4455 now runs the panel at full 5120×2880 on amdgpu, both tiles genlocked. It's verified on the 2017 iMac18,3 (my daily machine: https://github.com/ahmadtv/omarchy-imac18-3) and on the iMac Pro. Mark Pronkin's universal patcher (https://github.com/MarkPronkin/imac5k-universal-linux-patcher) accepts the iMac17,1, but its 5K module is still untested there. The 17,1's GPUs are a different generation from the 18,3's, so if one of you tries it, a report in drm/amd#4455 would be the missing data point. @yegorrusakovich one thing that may be behind the freezes: since kernel 7.1.6 the video encoder in VCE 3 Radeons can hang the GPU during screen recording or hardware H.264 export. That's drm/amd#5595, fixed in 7.3. I've only hit it on Polaris, but the M395 uses the same VCE 3 code in the driver, so if your freezes line up with recording or exporting video, that's a candidate. |
|
Update for the R9 M395 / M395X owners (not the M380 from the original post). You may not need I used the M395 line from this thread ( I replaced it with taprobane99's parameters from iMac5KLinux: and kept Since then, on Omarchy 4.0.4 with kernel 7.2.5:
Test it before you commit to it. I added it as a second Limine entry first (a manual entry in One thing to know with DPM on: the default power profile keeps the core at top clock after every redraw, so the GPU idles warm (~35 W). Setting @ahmadtv on native 5K for the iMac17,1: Mark Pronkin's lean stack works here. It runs 5120×2880 in Hyprland on the M395X with both tiles healthy, including after suspend. Details: MarkPronkin/imac5k-universal-linux-patcher#9 Investigated, built and written up with Claude Code (Anthropic, model Claude Opus 5.5, |
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
iMac 27" Late 2015 (iMac17,1) — AMD R9 M380 requires specific kernel parameters for amdgpu
Hi Omarchy Dev Team and community,
Thank you for bringing Omarchy to the masses — it's a genuinely brilliant project.
I spent from Saturday morning to Sunday evening (a day and a half!) attempting to get Omarchy running on my iMac Late 2015. This was a joint effort between myself and Claude, and we eventually cracked it. Sharing the full details here in case any other iMac 2015 owners hit the same wall.
Following is a report written by claude on my request to properly document the issue and workaround. I hope that is accepted.
The Journey
I first tried the Omarchy 3.4.2 installer directly. It would boot but the screen would go blank/dim after LUKS unlock — keyboard still responsive but no display. Then I tried a manual Arch Linux install, same issue. We tried many kernel parameter combinations over many hours:
amdgpu.dc=0— amdgpu probe failed with error -22MODULES=(amdgpu)in mkinitcpio — caused hang before LUKS promptnomodeset— booted but only simpledrm (no GPU acceleration, Hyprland impossible)amdgpu.cik_support=1 radeon.cik_support=0— got further but fatal UVD init error -110amdgpu.dpm=0— display changed resolution briefly then diedEventually I (not claude :-) ) found this Phoronix article which led to the upstream bug report and the working fix.
Hardware
1002:6640106B:014B113-C6005T-009Problem
Without specific kernel parameters, the
amdgpudriver fails fatally on boot:The display dies before or shortly after the LUKS prompt, the system hangs or falls back to
simpledrm(basic framebuffer), and Hyprland/Wayland cannot start.Root Cause
Apple's custom VBIOS on the R9 M380 Mac Edition does not properly expose the UVD (Unified Video Decoder) engine to Linux. Additionally, the
amdgpudriver does not implement the voltage dependency on the display clock for Sea Islands (CIK/Bonaire) GPUs — the default voltage is not high enough to properly drive the display controller.This is a confirmed upstream bug, open since June 2024:
Fix
Add the following kernel parameters to
limine.conf:With these parameters,
amdgpuloads cleanly and the display works:What each parameter does:
amdgpu.cik_support=1radeon.cik_support=0amdgpu.ppfeaturemask=0xfff7bffdamdgpu.dc=0Also add to
/etc/modprobe.d/blacklist-radeon.conf:Upstream Fix Status
Valve developer Timur Kristóf has identified, reproduced (he acquired the same iMac hardware), and patched this issue. Patches are in review targeting Linux 7.0 (mid-2026):
Key commits (all pushed March 29, 2026):
5b42b318drm/amdgpu/uvd4.2: Don't initialize UVD 4.2 when DPM is disableda204f787drm/amd/pm/ci: Disable MCLK DPM on problematic CI ASICs9170e1fadrm/amd/pm/ci: Use highest MCLK on CI when MCLK DPM is disabled98bd58d1drm/amd/pm/smu7: Fix SMU7 voltage dependency on display clockOnce Linux 7.0 lands in Arch, a simple
pacman -Syushould make these parameters unnecessary.Note on 4K vs 5K
With the above fix, the display runs at 4K (3840×2160). Getting full 5K (5120×2880) on Linux from these iMacs is a separate, still-unsolved problem requiring OCLP bootloader tricks and additional driver work. 4K is perfectly usable and crisp on this panel — Hyprland with 2x scaling looks excellent.
Request
It would be great if Omarchy could consider:
Document this hardware requirement so iMac 2015 owners know what kernel params to add before installing — perhaps in a hardware compatibility notes page
Protect existing bootloader config during install — or at minimum warn the user and back up
limine.confbefore touching itIn my case - the limine conf didn't changed or got overwritten as it preserved the parameters i had added prior to installing omarchy.
Eventually drop these params automatically once Linux 7.0 ships the upstream fix
System Info — After Successful Omarchy Install
It works. Fully. On a 27" 5K iMac. With amdgpu. Running Omarchy 3.4.2 with Hyprland and Tokyo Night.
Full Install Journey — Step by Step
For anyone attempting this on the same hardware, here is the exact sequence that worked:
Step 1 — Manual Arch Linux install first
Install Arch Linux manually (standard archinstall or manual). Do NOT use the Omarchy ISO directly — the GPU will fail and you'll get a blank screen with no way to fix it.
Step 2 — Apply kernel parameters before first boot
Before rebooting into your new Arch install, edit
/boot/limine/limine.confand add the params to the cmdline:Also add:
Step 3 — Install openssh and enable it
pacman -S openssh systemctl enable sshdThis gives you SSH access as a fallback if display fails.
Step 4 — Verify amdgpu is working
Boot into Arch, unlock LUKS, login. Verify:
Step 5 — Backup limine.conf
cp /boot/limine/limine.conf ~/limine.conf.bakStep 6 — Run Omarchy installer
curl -fsSL https://omarchy.org/install | bashIt will ask for sudo password, then your name and email for git config. Runs 5-30 minutes. At the end it reboots automatically.
Step 7 — Verify params survived the Omarchy install
At the Limine boot menu, press E to inspect the Linux entry. Omarchy's installer correctly preserved our kernel parameters in the generated limine.conf. ✓
Step 8 — Boot into Omarchy
Step 9 — Allow SSH through firewall
Omarchy enables ufw by default. Allow SSH:
Applying the Fix via Chroot (if you have no display at all)
If your display is completely dead and you can't SSH in, fix
limine.conffrom the Arch live USB:Replace
sdXwith your actual drive letter — uselsblkto identify it. On different boots the drive letter may change (sdb, sdc etc) so always verify first.Big thanks to the Omarchy team and especially to Timur Kristóf at Valve for tracking down this hardware bug on decade-old Apple silicon.
All reactions