You are not logged in.
Hello,
I recently installed Arch in dual boot configuration on a MacBook Pro, mostly following the official Mac documentation.
Hardware Specs:
Apple MacBook Pro, 13-inch, Early 2015
Processor: 2.7 GHz Intel Core i5
Memory: 16 GB 1867 MHz DDR3
Intel Iris Graphics 6100 1536 MB
Native resolution: 2560x1600 at 227ppi
Software specs:
$ uname -a
Linux wpbdry 5.1.2-arch1-1-ARCH #1 SMP PREEMPT Wed May 15 00:09:47 UTC 2019 x86_64 GNU/LinuxMy problem is that in the TTY virtual consoles I cannot see the entire "virtual screen". The screen size is set to larger than the actual screen size so I can't see the ends of rows or the bottom few rows on the screen. I want to use a very minimal setup (no full desktop environment) so it's quite important to me that I can see the bottom lines of text in the console.
General info:
PCI devices:
$ lspci
00:00.0 Host bridge: Intel Corporation Broadwell-U Host Bridge -OPI (rev 09)
00:02.0 VGA compatible controller: Intel Corporation Iris Graphics 6100 (rev 09)
00:03.0 Audio device: Intel Corporation Broadwell-U Audio Controller (rev 09)
00:14.0 USB controller: Intel Corporation Wildcat Point-LP USB xHCI Controller (rev 03)
00:15.0 DMA controller: Intel Corporation Wildcat Point-LP Serial IO DMA Controller (rev 03)
00:15.4 Serial bus controller [0c80]: Intel Corporation Wildcat Point-LP Serial IO GSPI Controller #1 (rev 03)
00:16.0 Communication controller: Intel Corporation Wildcat Point-LP MEI Controller #1 (rev 03)
00:1b.0 Audio device: Intel Corporation Wildcat Point-LP High Definition Audio Controller (rev 03)
00:1c.0 PCI bridge: Intel Corporation Wildcat Point-LP PCI Express Root Port #1 (rev e3)
00:1c.1 PCI bridge: Intel Corporation Wildcat Point-LP PCI Express Root Port #2 (rev e3)
00:1c.2 PCI bridge: Intel Corporation Wildcat Point-LP PCI Express Root Port #3 (rev e3)
00:1c.4 PCI bridge: Intel Corporation Wildcat Point-LP PCI Express Root Port #5 (rev e3)
00:1c.5 PCI bridge: Intel Corporation Wildcat Point-LP PCI Express Root Port #6 (rev e3)
00:1f.0 ISA bridge: Intel Corporation Wildcat Point-LP LPC Controller (rev 03)
00:1f.3 SMBus: Intel Corporation Wildcat Point-LP SMBus Controller (rev 03)
00:1f.6 Signal processing controller: Intel Corporation Wildcat Point-LP Thermal Management Controller (rev 03)
02:00.0 Multimedia controller: Broadcom Inc. and subsidiaries 720p FaceTime HD Camera
03:00.0 Network controller: Broadcom Inc. and subsidiaries BCM43602 802.11ac Wireless LAN SoC (rev 01)
04:00.0 SATA controller: Samsung Electronics Co Ltd Device a801 (rev 01)
05:00.0 PCI bridge: Intel Corporation DSL5520 Thunderbolt 2 Bridge [Falcon Ridge 4C 2013]
06:00.0 PCI bridge: Intel Corporation DSL5520 Thunderbolt 2 Bridge [Falcon Ridge 4C 2013]
06:03.0 PCI bridge: Intel Corporation DSL5520 Thunderbolt 2 Bridge [Falcon Ridge 4C 2013]
06:04.0 PCI bridge: Intel Corporation DSL5520 Thunderbolt 2 Bridge [Falcon Ridge 4C 2013]
06:05.0 PCI bridge: Intel Corporation DSL5520 Thunderbolt 2 Bridge [Falcon Ridge 4C 2013]
06:06.0 PCI bridge: Intel Corporation DSL5520 Thunderbolt 2 Bridge [Falcon Ridge 4C 2013]
07:00.0 System peripheral: Intel Corporation DSL5520 Thunderbolt 2 NHI [Falcon Ridge 4C 2013]Video cards:
$ ls /sys/class/drm
card0 card0-DP-1 card0-DP-2 card0-eDP-1 card0-HDMI-A-1 card0-HDMI-A-2 renderD128 versionI presume I am using Kernel Mode Setting, since I believe Intel requires it, and because switching between TTYs and X-server is pretty fast.
The kernel is also correctly reading the dimensions of the monitor as shown here:
$ cat /sys/class/drm/card0-eDP-1/modes
2560x1600However, some weird "virtual size" is being set at boot, as seen here:
$ cat /sys/class/graphics/fb0/virtual_size
2880,1800It's obviously this virtual size that is being used in the TTYs, since it is bigger in both width and height, and that's my problem. But I don't know how to change that.
I have tried editing this `virtual_size` file, which slightly breaks things, but of course the next reboot sets it back to what it was anyway, since these files are generated by the kernel at boot.
I have also tried booting with the following kernel parameters, all to no avail:
video=2560x1600set video=2560x1600video=eDP-1:2560x1600set video=eDP-1:2560x1600(Not sure whether it should be with or without `set`). Are there other kernel parameters I could try?
Ubesafb
I have also tried doing it with Uvesafb, both with default settings and with:
options uvesafb mode_option=2560x1600-32 scroll=ywrapboth of which also make no difference.
However, I'm not sure if these are valid resolutions or if I have even installed Uvesafb correctly (although I followed all steps and double checked) since the file described in Optimizing Resolution doesn't exist.
Any help there would also be appreciated.
Thanks!
Last edited by wpbdry (2019-05-18 13:56:19)
Offline
The solution was way more simple than I ever imagined
$ sudo pacman -S fbset
$ sudo fbset -fb /dev/fb0 -g 2560 1600 2560 1600 32After that everything worked beautifully. Even after a reboot.
I found this solution on Stack Overflow
If you are a Newbie struggling with the same problem, and you can't get this solution to work for you, please feel free to comment on this post and I will try to help, because this was super frustrating for me and I thought I was never going to find the answer. Only through relentless googling of the same thing with slightly different phrasing each time, did I finally stumble across the solution :joy:
Offline