Trisquel + old radeon
Hello everybody.
First of all - congratulations on such awesome OS! I have never used anything more stable and reliable than trisquel. I am just overexcited about everything in it. Have been following GNU philosophy for years...
Although, I suppose, nobody can get running a free (libre) linux distribution and run into no problems.
I am using an old laptop with radeon ATI graphics. I know...I shouldn't. But my radeon is very old. It can run on open source / free drivers, and therefore had no problems on Trisquel 6. I know also that there was a change in kernel, moving from Trisquel 6 to 7 and a lot of users had the same problem like mine - the VESA driver. I know, newer radeon cards use proprietary firmware. The older ones doesn't. But I'll try to stay on topic and explain what I want to do.
First problem I got was the wrong monitor resolution. I easily fixed that following these forum topics:
https://trisquel.info/en/forum/trisquel-70-flash-disk-and-amd-raedonlimited-resolution
https://trisquel.info/en/forum/cannot-get-widescreen-resolution-and-use-multiple-monitors-trisquel-7-i-could-trisquel-6
Everything is running smooth ant stable now, uncomparable to other non free linux distributions. Trisquel is about 2 times faster than ubuntu in this machine. And the system runs much cooler, especially on idle. It just gives that nice feeling of being in control, knowing that your machine does not run some peculiar "background collecting data" thing one me anymore....
My problem is, that after unblacklisting the radeon driver (and therefore getting correct monitor resolution) my suspend/resume had broken. It was working with VESA. I cannot wake up my laptop - the display, mouse and keyboard are frozen. And I really do need this function. All other things in this OS is just incredible and I do not want to just move back to nonfree ubuntu.
What could I do? Where do I start troubleshoot?
My laptop is acer ferrari 1000 (video: ATI radeon xpress 1150), everything as in factory, except I changed the WiFi chip to the libre compatible Atheros. Trisquel 8 is up to date.
Thank you guys for any insight!!I am prepared to do anything I can to let this machine run trisquel... IT's Almost There!
Trisquel 6 was using a libre version of Linux 3.2. If you are not afraid of unpatched vulnerabilities (I do not think anybody is backporting fixes to such antique kernels), I guess you could install a .deb of that version.
I do not know where to find Trisquel 6's deb packages. However, I found http://archive.gnewsense.org/gnewsense/pool/main/l/linux/linux-image-3.2.0-4gnewsense1-amd64_3.2.57-3+deb7u1gnewsense1_amd64.deb in gNewSense's repository. After downloading that file, double-clicking on it should propose its installation.
After installing, reboot and; in the "Advanced options for Trisquel" (or something like that) of GRUB, choose the newly installed kernel. If the kernel suits you, you can then remove the newer kernels or, safer, keep them but configure GRUB to boot version 3.2 by default. That is done through the variable GRUB_DEFAULT in /etc/default/grub (you can write GRUB_DEFAULT=saved and GRUB_SAVEDEFAULT=true to boot by default the last version that was booted).
Thank you Magic Banana for suggestion. I don't think that using an old kernel is a very wise idea, although I've tried it. However as you would expect it gave me bunch of errors and did not mount the /home directory properly. The boot process dropped me into a terminal (recovery mode). I started X from there, but there was no option to suspend computer at all. And strangely, the graphics also didn't work well, I got VESA driver again.
Booted back to original kernel then. I tried changing sleep modes in /lib/systemd/system/systemd.suspend.service and I have tried suspend (original), hybrid-sleep and hibernate modes - all of these failed the same. The computer actually suspends in suspend mode, power led changes from green to orange. When I push the power button it changes the color again, the cooler starts spinning, but there is a black screen and no inputs working, looks like the system just freeze. In /var/log/syslog I find no errors in the suspend process, but there is absolutely no log entries of what happens after I wake up my laptop.
I then do a hard power off and the next log entry after suspend is just a new boot process.
Maybe you have other suggestions, more options to play with, maybe some specific logs I have to check? I'm still not giving up on this!
I don't understand how only radeon driver can cause such problems. I haven't made any more tweaks on this OS. Is this KMS/UMS related? It should be some solution, I believe it!
Thanks
If a user of this forum can help you, I would bet on jxself, who maintains that Linux-libre repository: https://jxself.org/linux-libre/
"I don't understand how only radeon driver can cause such problems"
Because, on newer kernels, the radeon module is known to fall over and die when the proprietary junk isn't present. You can thank the Linux kernel developers for that.
And not necessarily for any good reason. In some cases Linux-libre changed the firmware loading to a conditional instead of an outright failure and it worked just fine. Although this may not be the case for all of them.
I had this problem and eventually changed the graphics card in my computer.
Thank you jxself and Magic Banana.
So actually nothing can be done, if I understand correctly. I guess nobody gonna develop an open source driver for such an old card. That's a shame.
So that's it with radeon driver.
But maybe you guys can help me somehow force the VESA driver to my native screen resolution? It is 1280x800, but VESA gives me 1024x768 max. With VESA driver I'm able to suspend and resume my computer. How should I proceed?
I have nothing against VESA, I don't need any graphics acceleration. If I could set up my monitor resolution with it, I'd be pretty much happy about it.
I also had this problem two months ago when installing Trisquel 8 in my Acer laptop with an old Radeon card (AMD/ATI Park Mobility Radeon HD 5470)
However -after different trials- I was able to solve the problem as follows:
- After installing Trisquel 8 the Vesa driver was only giving a 1280x720 resolution and it could not handle an external monitor
- I updated Trisquel using the software updater and the resolution was still the same
- Then, in order to be able to use the radeon driver, I updated the kernel to the HWE-kernel available in the Trisquel repositories:
$ sudo apt install --install-recommends linux-generic-hwe-8.0 xserver-xorg-hwe-16.04
$ sudo update-grub
- I restarted my laptop
- Finally, I added the line "modprobe radeon" at the end of my /etc/rc.local file to make sure the kernel loads the radeon driver when I start Trisquel
Everything works fine now: I am getting a 1366x768 resolution in the laptop display and I can use it together with a 24" external monitor.
Hope this comment helps other people having a similar problem!
Oh man! many thanks! I was ran to the same problem when I tried Trisquel 7. Back to 6 and migrated some time later to Mint, but with minor performance for a year :(
And now I found this thread (tears of happiness)...
Thanks again. Love you Trisquel comunnity.
EDIT: corrected some misspelling in my poor english
.....another Thank You from me! I was about to give up on Trisquel because of not getting correct resolution using my old Radeon card but now it works great and I very much enjoy Trisquel. :-)