Fresh install of Aramo on laptop with Radeon Vega GPU

15 réponses [Dernière contribution]
emmes
Hors ligne
A rejoint: 10/11/2022

I have found a strange problem installing and running Trisquel-11.0 on an
Asus f512da laptop which has a Radeon AMD Ryzen5 3500U GPU. The video driver is
amdgpu. I hope someone can please help me.

The problem is that after logging in to Aramo, running xrandr shows
the maximum, minimum, and current resolution of the only screen to be the same,
with no options for other resolutions. The resolution, 800x600, is considerably
less than the specifications of the GPU.

I have found a work-around that is even stranger than the original problem.
The work-around is to install Linux Mint 21.1 on the same nvme drive, to run
grub-install from Linux Mint, and then to rebooot and log into Aramo. The
resolution, as demonstrated by running xrandr, is again fixed, but now at the
specified resolution of the GPU.

I can understand why Linux Mint, which installs proprietary firmware, might
have a better screen resolution for the Radeon Vega GPU than Aramo. But I
cannot understand why logging into Aramo from a grub installed by Linux
Mint should be any different from logging in from one installed by Aramo.

Does this give anyone who understands these things any ideas on how to
improve Trisquel's handling of the Radeon Vega GPU? I for one, am simply
confused.

Magic Banana

I am a member!

I am a translator!

Hors ligne
A rejoint: 07/24/2010

Can you show us the content of Mint's /etc/default/grub and /boot/grub/grub.cfg?

quidam

I am a member!

I am a translator!

Hors ligne
A rejoint: 12/22/2004

Does it happen when starting the computer from a full power-off? Or only when you reboot into Trisquel after having booted into Mint? It could be that the hardware remains initialized by Mint in a way that can be reused.

emmes
Hors ligne
A rejoint: 10/11/2022

Thank you for your interest.

@quidam: I thought your question a good one since it might explain the
different behaviors, but alas, powering down and up again before logging into
Aramo does not affect the strange behavior.

@Magic Banana: Is it more convenient to try to attach the files you want to
look at or cut-and-paste to in-line text? I'll try to attach them; tell me if
you want them cut and pasted?

Also, the commands generated by Mint's os-prober and installed with
grub-install are different from those generated by Aramo's grub-install.
However, the lines that differ can be edited by hand from the login screen
generated by Aramo's grub-install until they appear, at least to the eye, to be
the same as those generated by the Mint grub-install. This makes no difference
to the resolution.

Two final bits of information: The differences in resolution are already
apparent at the lightdm login screen. And, as you might expect, setting the resolution from a GRUB_GFXMODE line in /etc/default/grub has no effect on the resolution after login.

While you are considering this additional information, I will do some searching
on setting resolution from the linux boot command line.

Pièce jointeTaille
boot-grub-grub-cfg.txt 11.33 Ko
etc-default-grub.txt 1.19 Ko
Magic Banana

I am a member!

I am a translator!

Hors ligne
A rejoint: 07/24/2010

I could not find any relevant different difference between the files you attached and those on my system. In particular, the line in /boot/grub.cfg to boot the kernel, which then handles the graphics (as far as I understand), is:
linux /boot/vmlinuz-5.15.0-76-generic root=UUID=84bc2046-ca4e-4eaf-9b92-243fa40e7d3e ro quiet splash $vt_handoff
Mine is the same with a different UUID for root (of course) and that of my swap partition for resume (because I followed the instructions I wrote on https://trisquel.info/en/wiki/hibernation-aka-suspend-disk to be able to hibernate). No additional magical option...

The rest of the GRUB entry has the same two lines regarding graphics (and the exact same code defines linux_gfx_mode, which is anyway about the display during the init and not that after the display manager is launched, as far as I understand):
load_video
gfxmode $linux_gfx_mode

So, well, to me, it looks like the configurations of GRUB are no different. Have you tried to revert to Trisquel's GRUB and see if the resolution is back to 800x600? I believe you can simply execute that in Trisquel's terminal:
$ sudo update-grub

quidam's hypothesis was a good one (no surprise!). Nevertheless, the nonfree firmware Mint's kernel uploads on the video card should not be persistent: after a poweroff, it would be absent. Only the mystery persists...

quidam

I am a member!

I am a translator!

Hors ligne
A rejoint: 12/22/2004

> The rest of the GRUB entry has the same two lines regarding graphics (and the exact same code defines linux_gfx_mode, which is anyway about the display during the init and not that after the display manager is launched, as far as I understand):
> load_video
> gfxmode $linux_gfx_mode

It may be that this has some influence in how the card resolution is set from this point on. I think the line you cite doesn't change things, as it may default to "gfxmode keep". The actual value is set some lines prior at:
if loadfont $font ; then
set gfxmode=640x480

And there it is interesting to see that the value is "gfxmode=640x480" in Trisquel, and "gfxmode=auto" in Mint. It is worth trying to edit grub.cfg and change that line between those two values and seeing if it affects the result. If that is the case, we can patch our grub or actually figure out why that line is different between both distros to begin with.

Magic Banana

I am a member!

I am a translator!

Hors ligne
A rejoint: 07/24/2010

I actually redefined GRUB_GFXMODE on my system (not because I was facing troubles, just to have a nicer grub menu, as far as I remember). emmes may try the same, executing those commands in Trisquel's terminal:
$ printf \\nGRUB_GFXMODE=1920x1080x32 | sudo tee -a /etc/default/grub
$ sudo update-grub

"auto" could replace "1920x1080x32", but I suggest to first try "1920x1080x32", in case GRUB, like xrandr, cannot list the supported resolutions, although it supports them.

emmes
Hors ligne
A rejoint: 10/11/2022

@Magic Banana: I tried your latest suggestion, having previously tried something similar (without the x32) and even the more modern "set gfxmode=1920x1080". None of these do anything.

It is clear, and probably previously known to others, that the 5.15.0-75 Linux-Libre kernel does not allow xrandr to change the monitor sensitivity of my Radeon Vega GPU. Why the default resolution changes depending upon whether grub is installed by Trisquel-11.0 or in my case, Mint-21.1, which resides on the same nvme disk, is unclear. If anyone with the ability to do so wants to tackle the radeon driver problem again, I am willing to help with my laptop and man-hours.

Magic Banana

I am a member!

I am a translator!

Hors ligne
A rejoint: 07/24/2010

None of these do anything.

It does not even change the resolution of GRUB's menu? If it does not show up, press Shift (or is it Esc?). GRUB does not use Linux's drivers and does not accept proprietary firmware. As far as I understand, if Mint's GRUB allows to get a higher-resolution menu, although GRUB is at the same version (2.06), the difference must be on the video card itself (the firmware staying, somehow).

emmes
Hors ligne
A rejoint: 10/11/2022

You quoted me correctly as saying "None of these do anything". What I meant to say is that none of these changes to /etc/default/grub do anything.

I am not sure whether it is an issue of screen resolution, but the grub menu installed by Mint is visually different from that installed by Trisquel and the differences persist until the next grub-install from the other OS. The grub menu installed by Mint appears in the upper left corner rather than the middle of the screen, and the bounding-box lines and font glyph edges are crisper (less fuzzy).

The last paragraph possibly supports your conjecture. What possibly goes against it is that the sizes of the bounding-box displayed by the two installed grubs as they appear on the screen are not significantly different (certainly not in the ratio of 1920/800).

quidam

I am a member!

I am a translator!

Hors ligne
A rejoint: 12/22/2004

Did you try "gfxmode=auto"?

Ark74

I am a member!

I am a translator!

Hors ligne
A rejoint: 07/15/2009

>Nevertheless, the nonfree firmware Mint's kernel uploads on the video card should not be persistent: after a poweroff, it would be absent.

I've heard once that while you don't pull the power cord on the machine, the hardware could keep "activated", while discussing testing compatibility at linux-libre irc channel, making a bit tricky how to test.

prospero
Hors ligne
A rejoint: 05/20/2022

Since this is happening on a laptop, the minimal settings would be to unplug the power cord *and* remove the battery. Even better, remove any USB device (including wireless devices) and press the power button for at least 20 seconds. Then wait five minutes, plug the power cord and boot Trisquel.

Else, quidam's original hypothesis cannot be ruled out.

emmes
Hors ligne
A rejoint: 10/11/2022

@Magic Bananna: Thanks for considering this so fully.

You said your grub entry was similar to mine. On my machine, the grub
entry created by Aramo was actually somewhat longer, but I erased the extra
stuff from the grub window until the entry was identical to that created by
Mint, but this had no effect.

You asked if I reverted back to Trisquel's grub to see if the resolution
went back to 800x600. The answer is yes, many times, and it always reverted! As
near as I can tell, this strange phenomenon is both reversible and persistent
until one of the two OSes on my nvme0n1 disk does a grub-install.

Have you read /etc/X11/xorg.conf.d/20-radeon.conf, clearly written by
someone at Trisquel? It seems that the amdgpu kernel driver just does not work
well without proprietary blobs.

I am 99% content with running Trisquel-11 with grub installed by Mint. My
reason for raising the issue I first raised was to learn if something about
Trisquel (other than using prorietary blobs) could be changed for the better.

So what is "wrong" with the current Trisquel iso? For one, xrandr does not
work properly with the AMD Raven GPU I have.

Here is the output of xrandr while running Aramo with grub installed
by Trisquel.

Screen 0: minimum 800 x 600, current 800 x 600, maximum 800 x 600
default connected 800x600+0+0 0mm x 0mm
800x600 75.00*

We may never understand why if I log in after installing grub from Mint it
is stuck at a value more convenient to me. Here is the output from xrandr run
within Trisquel in that case.

Screen 0: minimum 1920 x 1080, current 1920 x 1080, maximum 1920 x 1080
default connected 1920x1080+0+0 0mm x 0mm
1920x1080 77.00*

I prefer the 1920x800 resolution, but xrandr is still not working in that
it cannot be used to changed the resolution.

I am not posting the output, but running xrandr from within Mint yields a slew of potential resolutions as one normally would expect.

To explore what is wrong on Trisquel, I ran lspci -v from within Trisquel (no non-free
firmware) and from within Mint (with non-free firmware). The diff file
comparing the two is below with ">" representing the Trisquel entry

3c3
< Flags: bus master, fast devsel, latency 0, IRQ 24, IOMMU group 10
---
> Flags: bus master, fast devsel, latency 0, IRQ 255, IOMMU group 10
6c6
< I/O ports at d000 [size=256]
---
> I/O ports at d000 [disabled] [size=256]
12c12
< Capabilities: [c0] MSI-X: Enable+ Count=3 Masked-
---
> Capabilities: [c0] MSI-X: Enable- Count=3 Masked-
21d20
< Kernel driver in use: amdgpu

There are four differences: I suspect the difference in IRQs is not
significant. I suspect the disabling of I/O ports at d000 is, as is the fact
that no kernel driver is listed for Trisquel. I wonder if this is a correctable
configuration problem or there simply are no kernel drivers that work without
proprietary firmware. Perhaps Ark74 or jxself would comment.

A final question is whether xrandr could be made to work with the AMD Raven
GPU without finding a better driver.

Magic Banana

I am a member!

I am a translator!

Hors ligne
A rejoint: 07/24/2010

You asked if I reverted back to Trisquel's grub to see if the resolution went back to 800x600. The answer is yes, many times, and it always reverted!

That is strange.

Have you read /etc/X11/xorg.conf.d/20-radeon.conf, clearly written by someone at Trisquel?

I have /etc/X11/xorg.conf.d/10-radeon.conf. GNUtoo and quidam (and Ark74?) worked on the support of AMD graphics for Trisquel 11, as quidam explain in https://media.libreplanet.org/u/libreplanet/m/trisquel-gnu-linux-new-architectures-and-other-challenges/ at 24:50.

Quidam and Ark74 are replying in this thread. You can contact GNUtoo through https://trisquel.info/users/gnutoo/contact

emmes
Hors ligne
A rejoint: 10/11/2022

@Magic Banana

Sorry, my bad. I meant 10-radeon.conf