04-25-2019 05:04 PM - edited 04-25-2019 05:09 PM
I've unfortunately decided to actually go with a solution that 'fixes' this problem. I'm currently reinstalling Windows 10 to the laptop and will sell it.
I'll instead purchase a laptop that actually does support Linux - Maybe a System76 Galago Pro. Really unfortunate because I liked everything else about this thing.
That said I will share where I landed with the Laptop. It actually pretty stable, but could not get bluetooth working.
OS: MX Linux 18.2 Continuum
Extra Kernel Parameters: iommu=soft
I found that only using iommu=soft worked best for me. Very few changes but seemed relatively stable. I don't remember having any cases where it wouldn't wake from sleep. Just had kind of flaky WiFi and Bluetooth doesn't work at all.
04-26-2019 01:09 PM
My void linux (lxqt) install has been relatively painless with just "amd_iommu=pt ivrs_ioapic=00:14.0" added to grub.
I got the paramters from the arch wiki - Arch Lenvo page).
The biggest frustration was manually typing the paramaters incorrectly when booting off the USB and not fully understanding the directions on Void's wiki. (still pretty novice chose void for the challenge/learning experience). I was honestly expecting worse.
I haven't had any issues with Wifi (I'm just using WPA_Supplicant / gui) or suspend. I don't have a use for bluetooth but I may try it to see if that gives me the same issues some of you are having.
(I did have issues booting when it first upgraded to 4.19, but I just booted back into 4.18 and installed 5.0.9. Have been fine since)
04-28-2019 04:25 AM
Also updated to the recent bios but still have those freezes from time to time when waking up from standby. I am not willing to manually disable powersave in order to go in standby. This is a a workaround but not a solution. Maybe one could trigger that script automatically before going into standby? And automatically re-enable the powersaving after coming from sleep? I never had such trouble on any other lenovo device before.
04-30-2019 06:00 PM - edited 04-30-2019 06:05 PM
E495 is almost out and it would have second generation mobile Ryzen APU, which fixes hardware freezes bug.
I wonder if Lenovo will use a fixed firmware for it, or it will again come with this broken mess of defunct bluetooth and missing acpi entries? If anyone gets it and tries Linux on it, please post here.
05-01-2019 02:47 AM
05-05-2019 06:00 PM
Okay so I decided not to give up quite yet because I got a pretty great deal on this Laptop and actually like a lot about it.
I have installed Pop!_OS 19.04, and boot with the two parameters: amd_iommu=pt ivrs_ioapic=00:14.0
Bluetooth is working for me this time around! Although audio quality seems below expections, and it 'skips' briefly every now and then.
Unfortunately I am back to having issues with it never recovering from a long suspend. More fiddling to be done.
05-05-2019 06:03 PM - edited 05-06-2019 10:09 PM
I have the exact opposite problem. I am running the same OS, Bluetooth doesn’t work/not detected… However I have no issues with long suspended sleep. Weird. Also I have been doing all my minor updates. I noticed on one of the smaller updates the other day it over wrote my changes to the config file for the system the changes you mentioned, that’s a little annoying but at least I almost have the command memorized now LOL.
(oops, forgot to actually try since some updates...I guess my bluetooth does work now? Interesting)
05-05-2019 07:40 PM
I have recently been privately messaging the Lenovo Twitter team asking for an answer to all the issues mentioned in this thread in a hope we will get native linux support and to let them know there is a growing customer base of unhappy users.
I would like to urge you all to do the same.
Hopefully with enough of us doing it they might fix it like they did the A485
05-19-2019 07:06 AM
after the newest BIOS version 1.52 most things were working for me on:
* E585 with Ryzen 2700u
* kernel boot params "ivrs_ioapic=00:14.0 iommu=pt pci=noaer"
* Manjaro with manual built kernel 5.1.3 with copied default manjaro config
(there seems to be a fix for Bluetooth/Wifi in this version)
The big problem that persisted was that resume only worked half of the time, which was pretty annoying.
I pinpointed the problem with the help of suspend/resume debugging, which uses the RTC to save a hash value for device number and source file where a freeze occurs and it is readable on next
reboot (https://www.kernel.org/doc/Documentation/power/s2ram.txt), to pci number 04:00.0 which is
"VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Raven Ridge [Radeon Vega Series / Radeon Vega Mobile Series] (rev c3)"
The freeze occuring or not seems to be dependent on timing conditions. I actually was able to fix my issues by inserting udelay(5000) calls
all over in file drivers/gpu/drm/amd/amdgpu/amdgpu_device.c.
This is not really a fix but it doesn't delay the resume much and I suspended and resumed successfully for 20 times now, while before it failed on every second resume. That's enough for me to not throw this piece of hardware out of the window.
I have no experience with kernel development and have no idea what the cause of this timing problems could be (BIOS definitely has some influence, because version 1.32 resumed fine, but had other problems). Maybe someone with more knowledge could look into this.
That being said, the BIOS still seems to be a mess, which is very sad, LENOVO. Please fix this.
### For anyone who wants to try this, this is what i did on Manjaro: ###
# put the following into /etc/mkinitcpio.d/linux5.1.3custom.preset
# Download kernel from https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.1.3.tar.xz to ~/Downloads
# overwrite amdgpu_device.c with appended one
cd ~/Downloads/linux-5.1.3 &&
zcat /proc/config.gz > .config &&
make olddefconfig &&
make menuconfig #change Local version to "custom"
make -j9 &&
sudo cp -f arch/x86_64/boot/bzImage /boot/vmlinuz-5.1.3custom &&
sudo make modules_install &&
sudo mkinitcpio -p linux5.1.3custom &&
05-19-2019 07:54 AM
I've never had any suspend problems with OpenSuSe. Maybe they've done some customization that other distributors haven't.
I'm on Tumbleweed with kernel 5.0.9 and to my kernel parameters I've added "amd_iommu_dump=1 amd_iommu=off iommu = pt amdgpu.ppfeaturemask=0xffffbfff"
The amd_iommu=off parameter is one I added on my own. There is a post one or two pages back talking about effects on power savings which might be worth a look.