View previous topic :: View next topic |
Author |
Message |
flammenflitzer Advocate
Joined: 25 Nov 2003 Posts: 3483 Location: Berlin
|
Posted: Sun Dec 03, 2017 2:27 pm Post subject: Booten mit Framebuffer und Linux Pinguin Logo in der Console |
|
|
Hallo, diese Anleitung Code: | https://wiki.gentoo.org/wiki/Uvesafb | ist ja nun veraltet. Wie bekomme ich bei der Nutzung vom Proprietärem Nvidia Treiber Code: | x11-drivers/nvidia-drivers | ohne Initial RAM Filesystem und RAM Disk mit Grub2 und Systemd das Linux Logo beim Booten hin?
MfG |
|
Back to top |
|
|
schmidicom Veteran
Joined: 09 Mar 2006 Posts: 1924 Location: Schweiz
|
Posted: Mon Dec 04, 2017 12:16 pm Post subject: |
|
|
Ich habe es mir wegen den ganzen Firmwareblobs welche viele Treiber brauchen auch abgewöhnt diese gleich fest in den Kernel zu packen und stand deshalb vor einem ähnlichen Problem wie du. Bei mir habe ich es folgend gelöst:
Code: | CONFIG_X86_SYSFB=y
CONFIG_FB_EFI=y
CONFIG_FB_SIMPLE=y |
Alle weiteren Treiber landen dann bei mir als Module auf der Platte und müssen vom Kernel nach dem Zugriff auf "/" geladen werden. Bis jetzt funktionierte das bei mir sehr gut, mein Kernel switcht sauber (also ohne geflacker) vom FB_EFI oder FB_SIMPLE zum eigentlichen Treiber.
Mit dem Treiber von Nvidia müsste das ja eigentlich auch klappen... _________________ Lenovo - ThinkPad P16s Gen 2 - 21K9CTO1WW |
|
Back to top |
|
|
flammenflitzer Advocate
Joined: 25 Nov 2003 Posts: 3483 Location: Berlin
|
Posted: Mon Dec 04, 2017 4:43 pm Post subject: |
|
|
Könntest du den Rest auch posten? Welche Kernelmodule? Was hast du zu Systemd hinzugefügt? Und die Grub2 config. MfG |
|
Back to top |
|
|
schmidicom Veteran
Joined: 09 Mar 2006 Posts: 1924 Location: Schweiz
|
Posted: Mon Dec 04, 2017 6:34 pm Post subject: |
|
|
Meinst du die ganze Kernelkonfig? Die kannst gern haben.
Laptop - V4.14.3 - https://drive.google.com/file/d/1antzrk7fExD1gMsQQ1MixtspmNJyEtt7/view?usp=sharing
Die ist von meinem Laptop mit Intelgrafik und wegen dem bereits erwähnten Firmwareblob ist der Intel-Treiber nur als Modul konfiguriert. Spezielle Kerneloptionen braucht das ganze nicht, der Kernel lädt den Intel-Treiber automatisch sobald er das kann. _________________ Lenovo - ThinkPad P16s Gen 2 - 21K9CTO1WW |
|
Back to top |
|
|
flammenflitzer Advocate
Joined: 25 Nov 2003 Posts: 3483 Location: Berlin
|
Posted: Wed Dec 06, 2017 6:48 pm Post subject: |
|
|
Danke. Leider habe ich für die ganze Sache keine Anleitung gefunden. Beispielsweise muss m.E. doch bei openrc consolefont im boot-Level Code: | rc-update add consolefont boot | aktiviert sein. Zum Thema consolefont mit systemd habe ich nur den Vermerk gefunden: Code: | systemd-vconsole-setup.service | . Brauche ich das? Wie aktiviere ich das? Code: | systemctl restart systemd-vconsole-setup | ? |
|
Back to top |
|
|
schmidicom Veteran
Joined: 09 Mar 2006 Posts: 1924 Location: Schweiz
|
Posted: Wed Dec 06, 2017 7:58 pm Post subject: |
|
|
Ich musste wirklich nichts anderes machen als den Kernel so zu konfigurieren mit systemd-vconsole-setup.service oder dessen Konfiguration "vconsole.conf" bin nie in Berührung gekommen. So weit ich weiß muss man sich auch erst dann darum kümmern wenn man die Standards des Kernels (Tastaturlayout oder eben Font) ändern will. Mag sein das es zwischen systemd und OpenRC einen Unterschied gibt aber auch wenn meine Erfahrungen mit OpenRC etwas länger her sind erinnere ich mich nicht daran irgendwann mal etwas extra Konfiguriert haben zu müssen.
Probiere es doch einfach mal aus, mehr als nicht funktionieren kann es ja wohl nicht. _________________ Lenovo - ThinkPad P16s Gen 2 - 21K9CTO1WW |
|
Back to top |
|
|
flammenflitzer Advocate
Joined: 25 Nov 2003 Posts: 3483 Location: Berlin
|
Posted: Thu Dec 07, 2017 5:44 pm Post subject: |
|
|
Code: | lammenflitzer ~ $ cat /usr/src/linux/.config | grep FB | grep -v \#
CONFIG_X86_SYSFB=y
CONFIG_FB=y
CONFIG_FB_CMDLINE=y
CONFIG_FB_NOTIFY=y
CONFIG_FB_CFB_FILLRECT=y
CONFIG_FB_CFB_COPYAREA=y
CONFIG_FB_CFB_IMAGEBLIT=y
CONFIG_FB_SYS_FILLRECT=m
CONFIG_FB_SYS_COPYAREA=m
CONFIG_FB_SYS_IMAGEBLIT=m
CONFIG_FB_SYS_FOPS=m
CONFIG_FB_DEFERRED_IO=y
CONFIG_FB_MODE_HELPERS=y
CONFIG_FB_SIMPLE=y
CONFIG_HID_PICOLCD_FB=y | Code: | flammenflitzer ~ $ cat /usr/src/linux/.config | grep LOGO | grep -v \#
CONFIG_LOGO=y
CONFIG_LOGO_LINUX_CLUT224=y |
Code: | flammenflitzer ~ $ cat /usr/src/linux/.config | grep VG | grep -v \#
CONFIG_VGA_ARB=y
CONFIG_VGA_ARB_MAX_GPUS=16
CONFIG_VGA_CONSOLE=y
CONFIG_VGACON_SOFT_SCROLLBACK=y
CONFIG_VGACON_SOFT_SCROLLBACK_SIZE=256
CONFIG_USB_SISUSBVGA=m |
Das sollte doch m.E. passen.
Vielleicht liegt es an der /etc/default/grub ? Code: | GRUB_DISTRIBUTOR="Gentoo"
GRUB_TIMEOUT=5
GRUB_CMDLINE_LINUX="init=/usr/lib/systemd/systemd"
GRUB_GFXMODE=1680x1050x32
GRUB_THEME="/boot/grub/themes/starfield/theme.txt" |
|
|
Back to top |
|
|
schmidicom Veteran
Joined: 09 Mar 2006 Posts: 1924 Location: Schweiz
|
Posted: Fri Dec 08, 2017 10:12 am Post subject: |
|
|
So wie ich das Zusammenspiel der beiden Optionen "CONFIG_X86_SYSFB=y" und "CONFIG_FB_SIMPLE=y" verstanden habe setzen diese die Anzeige so fort wie sie vom BIOS/UEFI initialisiert wurde, zumindest so lange bis ein besserer Treiber geladen werden kann. Also ist es vom Kernel vermutlich schlicht etwas zu viel verlangt an dieser Stelle gleich das Logo mit der besten Qualität (224-color) anzuzeigen.
Ich persönlich würde einfach mal alle Varianten des Logo aktivieren, dann hat der Kernel auch schön die Auswahl und kann das nehmen welches gerade am besten passt. _________________ Lenovo - ThinkPad P16s Gen 2 - 21K9CTO1WW
Last edited by schmidicom on Fri Dec 08, 2017 2:43 pm; edited 1 time in total |
|
Back to top |
|
|
Josef.95 Advocate
Joined: 03 Sep 2007 Posts: 4554 Location: Germany
|
Posted: Fri Dec 08, 2017 2:23 pm Post subject: |
|
|
flammenflitzer wrote: | Vielleicht liegt es an der /etc/default/grub ? Code: | GRUB_DISTRIBUTOR="Gentoo"
GRUB_TIMEOUT=5
GRUB_CMDLINE_LINUX="init=/usr/lib/systemd/systemd"
GRUB_GFXMODE=1680x1050x32
GRUB_THEME="/boot/grub/themes/starfield/theme.txt" |
|
Wahrscheinlich fehlt noch
# Keep resolution when loading the kernel
GRUB_GFXPAYLOAD_LINUX=keep
Schau dazu zb auch im https://wiki.gentoo.org/wiki/GRUB2#Using_framebuffer_display
Welcher Framebuffer-Treiber wird denn nun genutzt? Schau mal via
cat /proc/fb |
|
Back to top |
|
|
schmidicom Veteran
Joined: 09 Mar 2006 Posts: 1924 Location: Schweiz
|
Posted: Fri Dec 08, 2017 3:54 pm Post subject: |
|
|
@Josef.95
Bedeutet das etwa das der aktuelle GRUB inzwischen sogar standardmäßig die Grafikausgabe so heftig zerlegt das damit selbst der Kernel ohne umfangreicheren Treiber so gut wie nichts mehr anfangen kann?
Also ich bin ja der Meinung das ein "Bootloader" eigentlich nicht anderes tun sollte als möglichst unspektakulär das Betriebssystem zu laden, aber vielleicht werde ich ja auch einfach nur alt... _________________ Lenovo - ThinkPad P16s Gen 2 - 21K9CTO1WW |
|
Back to top |
|
|
flammenflitzer Advocate
Joined: 25 Nov 2003 Posts: 3483 Location: Berlin
|
Posted: Fri Dec 08, 2017 4:27 pm Post subject: |
|
|
Kein Eintrag.
Den Unterschied macht Code: | GRUB_GFXPAYLOAD_LINUX=keep |
Jetzt : Code: | # ls /dev/*fb*
/dev/fb0
# cat /proc/fb
0 simple |
Allerdings ist es noch nicht das, was ich wollte. Jetzt habe ich einen schwarzen Bildschirm mit der Meldung "Gentoo .... wird geladen".
Code: | GRUB_GFXMODE=640x480 | Hier hängt sich der Bootvorgang auf. Code: | Dez 09 07:58:57 flammenflitzer bluetoothd[2418]: RFCOMM server failed for Object Push: socket(STREAM, RFCOMM): Protocol not supported (93)
Dez 09 07:58:57 flammenflitzer org.freedesktop.ConsoleKit[2431]: missing action
Dez 09 07:58:57 flammenflitzer dbus[2431]: [system] Successfully activated service 'org.freedesktop.ConsoleKit'
-- Reboot -- |
|
|
Back to top |
|
|
schmidicom Veteran
Joined: 09 Mar 2006 Posts: 1924 Location: Schweiz
|
Posted: Mon Dec 11, 2017 1:55 pm Post subject: |
|
|
flammenflitzer wrote: | Den Unterschied macht Code: | GRUB_GFXPAYLOAD_LINUX=keep |
Jetzt : Code: | # ls /dev/*fb*
/dev/fb0
# cat /proc/fb
0 simple |
Allerdings ist es noch nicht das, was ich wollte. Jetzt habe ich einen schwarzen Bildschirm mit der Meldung "Gentoo .... wird geladen". |
Das sieht doch schon besser aus, zumindest hat dein Kernel jetzt für die anfängliche Grafikausgabe einen Framebuffer der einfach genug sein sollte um dem nvidia-Treiber nicht in die Quere zu kommen. Aber wie bereits gesagt übernimmt dieser Treiber zusammen mit "CONFIG_X86_SYSFB" die Grafikausgabe so wie sie beim laden des Kernel ist und wenn der GRUB diese vor dem laden verändert musst du dort eventuell noch weitere Anpassungen machen.
Ich selbst benutze aber schon lange keinen GRUB mehr, also weiß ich auch nicht wie man sowas gebändigt bekommt.
Sobald das mit dem GRUB passt wäre mal die Installation des Nvidia-Treiber nicht schlecht. Dafür müsste ja ein VIDEO_CARDS="nvidia" in deiner make.conf reichen, wenn nicht dann forcierst du eben die Installation mit "emerge x11-drivers/nvidia-drivers". In dem Packet "x11-drivers/nvidia-drivers" sollte ein Kernel-Treiber drin sein der dann während dem booten den simplefb ersetzt, bei mir äußert sich das im kernelog so:
Code: | Dez 11 07:48:37 pc131am kernel: simple-framebuffer simple-framebuffer.0: framebuffer at 0xc0000000, 0x8ca000 bytes, mapped to 0xffffa500c2000000
Dez 11 07:48:37 pc131am kernel: simple-framebuffer simple-framebuffer.0: format=a8r8g8b8, mode=1920x1200x32, linelength=7680
...
Dez 11 07:48:37 pc131am kernel: simple-framebuffer simple-framebuffer.0: fb0: simplefb registered!
...
Dez 11 07:48:37 pc131am kernel: fb: switching to amdgpudrmfb from simple
...
Dez 11 07:48:37 pc131am kernel: fbcon: amdgpudrmfb (fb0) is primary device |
flammenflitzer wrote: | Hier hängt sich der Bootvorgang auf. Code: | Dez 09 07:58:57 flammenflitzer bluetoothd[2418]: RFCOMM server failed for Object Push: socket(STREAM, RFCOMM): Protocol not supported (93)
Dez 09 07:58:57 flammenflitzer org.freedesktop.ConsoleKit[2431]: missing action
Dez 09 07:58:57 flammenflitzer dbus[2431]: [system] Successfully activated service 'org.freedesktop.ConsoleKit'
-- Reboot -- |
|
Diese letzten drei Zeilen sagen mir nicht wirklich viel, eventuell lässt sich im Rest ja mehr herauslesen. Am besten du packst das ganze Log mal irgendwo Online denn so ist es wenig hilfreich. _________________ Lenovo - ThinkPad P16s Gen 2 - 21K9CTO1WW |
|
Back to top |
|
|
flammenflitzer Advocate
Joined: 25 Nov 2003 Posts: 3483 Location: Berlin
|
Posted: Mon Dec 11, 2017 4:23 pm Post subject: |
|
|
Den Nvidia-Treiber habe ich doch. Ist doch keine Neuinstallation....
Bisher habe ich Grub von meiner Ubuntu-Notfall-Installation genutzt. Jetzt habe ich nur auf den Grub von Gentoo umgestellt. Und dabei wollte ich halt ein angenehmes Bild beim Bootvorgang sehen, das aber auch die Meldungen anzeigt. So wie früher, mit grub(1) und popenrc.... |
|
Back to top |
|
|
|