You are not logged in.
Pages: 1
Hi there,
I have a text mode only Arch Linux installation on an external USB drive which I'm mainly booting on my current computer which has three displays: the main one is 4K while the other two are full HD. After booting, the TTY is being displayed on all three displays, but on the 4K display is showing on the top left quarter. Is there any way I can force the 4K display to show the TTY "stretched" on on the whole screen? Like it was a full HD display instead of a 4K one?
Thanks in advance.
Last edited by mdcclxv (2025-02-23 22:33:18)
Offline
Take a look at this thread:
https://bbs.archlinux.org/viewtopic.php?id=278369
Offline
Thanks for the link. I've been reading through that thread and there are many details that are beyond my knowledge. That aside, the final post of the thread is pointing as a fix running fbset (to force the same resolution on all displays) sometime before the login prompt is being displayed. The user providing this fix has managed that by executing it from rc.local, which is not available on Arch. I've read about implementing a surrogate rc systemd service unit with various opinions on how (not) recommended that is. Another option, which seemed healthier, was to actually run fbset directly via a systemd service unit, but I have no idea on which target is that service supposed to wait.
As test I also tried running "fbset -xres 1920 -yres 1080" after logging in. That had no effect whatsoever, nothing happened.
Any ideas on both these issues?
Offline
Well, what do you know? Adding video=1920x1080@60 kernel parameter in GRUB solved my problem. Easier done than said.
I would still like to know what's the catch with fbset. Why it doesn't do anything when executed manually from CLI?
Offline
Read more about framebuffer. I got it all wrong about what fbset is doing: it;s actually setting the resolution of the internal memory buffer, it has nothing to do with the display itself. So the command ""fbset -xres 1920 -yres 1080" was doing nothing because that was already the resolution that the framebuffer was set on.
Offline
What do "fbset -i" and "fbset -s" post?
(Passing the mode to the kernel via the video parameter would be the preferred approach, though)
Offline
What do "fbset -i" and "fbset -s" post?
(Passing the mode to the kernel via the video parameter would be the preferred approach, though)
Sorry for the late answer, been away for a week.
fbset -i
mode "3840x2160"
geometry 3840 2160 3840 2160 32
timings 0 0 0 0 0 0 0
rgba 8/16,8/8,8/0,0/0
endmode
Frame buffer device information:
Name : amdgpudrmfb
Address : (nil)
Size : 33177600
Type : PACKED PIXELS
Visual : TRUECOLOR
XPanStep : 1
YPanStep : 1
YWrapStep : 0
LineLength : 15360
Accelerator : No
fbset -s
mode "3840x2160"
geometry 3840 2160 3840 2160 32
timings 0 0 0 0 0 0 0
rgba 8/16,8/8,8/0,0/0
endmodeOffline
No problem, since you found a solution nobody's under any time-pressure here (because that would only ever have been you
)
The framebuffer operates at 4k, though?
Offline
Yest, that's what it looks like, but the console is being stretched across the whole 4K display, so that kind of baffles me. Not I got from my readings.
Offline
Well, because it runs at 4k - not a big surprise.
Isn't the font toosmall™?
Offline
I have three displays, two of them full HD and one 4K. So the "virtual" resolution is the same on all of them. On the 4K the console is just stretched, but it's 1:1 with what shows up on the full HD displays. Since the full HD displays are the lower limit, I was expecting a full HD resolution for the framebuffer.
Offline
Pages: 1