Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[Solved]New Kernel, Grub2: Background works, but not Verbose
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Other Things Gentoo
View previous topic :: View next topic  
Author Message
Decibels
Veteran
Veteran


Joined: 16 Aug 2002
Posts: 1623
Location: U.S.A.

PostPosted: Wed Aug 13, 2014 1:08 am    Post subject: [Solved]New Kernel, Grub2: Background works, but not Verbose Reply with quote

Had the gentoo-sources-3.6.11 kernel and everything worked fine. Decided to upgrade to the gentoo-sources-3.14.14 kernel and everything works but the Verbose mode during bootup.
Didn't do anything else. Same hardware. Same /etc/default/grub file. Run grub2-mkconfig -o /boot/grub/grub.cfg and both entries look the same except for the kernel name.

What looks like with 3.14.14 kernel:
1) Grub2 loads up the Background fine and everything normal.
2) Pick the new kernel start boot.
3) Top part of display about inch down looks like maybe something is scrolling, but all garbled up.
4) The rest of the display below that looks like my Background image only all garbled up.
5) After few seconds the Background image comes back just like it is when Grub2 loads up.
6) Then until get to login screen it stays just like that: Background screen with about inch at top that looks like garbled scrolling text.

According to my Dmesg looks like with the 3.14.14 the vesafb is missing. This is the only part that shows up and is only talking about it and this part shows up in 3.6.11 also.
Code:
$  dmesg | grep vesa
[   10.428480] NVRM: drivers including, but not limited to, vesafb, may result in

Here is what 3.6.11 Dmesg looks like: (also has the NVRM part, but didn't show here.)
Code:
vesafb: mode is 1280x1024x32, linelength=5120, pages=0
vesafb: scrolling: redraw
vesafb: Truecolor: size=8:8:8:8, shift=24:16:8:0
vesafb: framebuffer at 0xf1000000, mapped to 0xffffc90005600000, using 5120k, total 5120k
Console: switching to colour frame buffer device 160x64
fb0: VESA VGA frame buffer device

Here is 3.14.14 Dmesg for VGA:
Code:
$  dmesg | grep vga
vgaarb: device added: PCI:0000:01:00.0,decodes=io+mem,owns=io+mem,locks=none
vgaarb: loaded
vgaarb: bridge control possible 0000:01:00.0
vga16fb: initializing
vga16fb: mapped to 0xffff8800000a0000
vgaarb: device changed decodes: PCI:0000:01:00.0,olddecodes=io+mem,decodes=none:owns=none

Here is 3.6.11 Dmesg for VGA:
Code:
$  dmesg | grep vga
vgaarb: device added: PCI:0000:01:00.0,decodes=io+mem,owns=io+mem,locks=none
vgaarb: loaded
vgaarb: bridge control possible 0000:01:00.0
fb0: VESA VGA frame buffer device
vga16fb: initializing
vga16fb: mapped to 0xffff8800000a0000
fb1: VGA16 VGA frame buffer device
vgaarb: device changed decodes: PCI:0000:01:00.0,olddecodes=io+mem,decodes=none:owns=io+mem


I do have a /dev/fb0 while booted to the 3.14.14 kernel though:
Code:
$  ls /dev/fb*
/dev/fb0


Checking with fbset command on both kernels yield these results. NO VESA?!
Code:
# Kernel-3.14.14
$ fbset -i -v
Linux Frame Buffer Device Configuration Version 2.1 (23/06/1999)
(C) Copyright 1995-1999 by Geert Uytterhoeven

Opening frame buffer device `/dev/fb0'
Using current video mode from `/dev/fb0'

mode "640x480-60"
    # D: 25.176 MHz, H: 31.469 kHz, V: 59.942 Hz
    geometry 640 480 640 480 4
    timings 39721 48 16 33 10 96 2
    rgba 6/0,6/0,6/0,0/0
endmode

Getting further frame buffer information
Frame buffer device information:
    Name        : VGA16 VGA
    Address     : 0xa0000
    Size        : 65536
    Type        : VGA 16 colors in 4 planes
    Visual      : PSEUDOCOLOR
    XPanStep    : 8
    YPanStep    : 1
    YWrapStep   : 0
    LineLength  : 80
    Accelerator : No


Kernel-3.6.11

$  fbset -i -v
Linux Frame Buffer Device Configuration Version 2.1 (23/06/1999)
(C) Copyright 1995-1999 by Geert Uytterhoeven

Opening frame buffer device `/dev/fb0'
Using current video mode from `/dev/fb0'

mode "1280x1024-77"
    # D: 131.096 MHz, H: 80.328 kHz, V: 76.649 Hz
    geometry 1280 1024 1280 1024 32
    timings 7628 160 32 16 4 160 4
    rgba 8/16,8/8,8/0,8/24
endmode

Getting further frame buffer information
Frame buffer device information:
    Name        : VESA VGA
    Address     : 0xf1000000
    Size        : 5242880
    Type        : PACKED PIXELS
    Visual      : TRUECOLOR
    XPanStep    : 0
    YPanStep    : 0
    YWrapStep   : 0
    LineLength  : 5120
    Accelerator : No


Checked my kernel configs multiple times and must be missing something:
Code:
# sdiff linux-3.6.11-gentoo/.config linux-3.14.14-gentoo/.config | grep -i verbose
# CONFIG_MAC80211_VERBOSE_DEBUG is not set                    <
# CONFIG_ATA_VERBOSE_ERROR is not set                           # CONFIG_ATA_VERBOSE_ERROR is not set
CONFIG_SND_VERBOSE_PROCFS=y                                     CONFIG_SND_VERBOSE_PROCFS=y
# CONFIG_SND_VERBOSE_PRINTK is not set                          # CONFIG_SND_VERBOSE_PRINTK is not set
CONFIG_DEBUG_BUGVERBOSE=y                                     <
                                                              > CONFIG_DEBUG_BUGVERBOSE=y
CONFIG_X86_VERBOSE_BOOTUP=y                                     CONFIG_X86_VERBOSE_BOOTUP=y

 # sdiff linux-3.6.11-gentoo/.config linux-3.14.14-gentoo/.config | grep -i vga
CONFIG_VGA_ARB=y                                                CONFIG_VGA_ARB=y
CONFIG_VGA_ARB_MAX_GPUS=16                                      CONFIG_VGA_ARB_MAX_GPUS=16
# CONFIG_VGA_SWITCHEROO is not set                              # CONFIG_VGA_SWITCHEROO is not set
CONFIG_VGASTATE=y                                               CONFIG_VGASTATE=y
# CONFIG_FB_SVGALIB is not set                                  # CONFIG_FB_SVGALIB is not set
CONFIG_FB_VGA16=y                                               CONFIG_FB_VGA16=y
CONFIG_VGA_CONSOLE=y                                            CONFIG_VGA_CONSOLE=y
CONFIG_VGACON_SOFT_SCROLLBACK=y                                 CONFIG_VGACON_SOFT_SCROLLBACK=y
CONFIG_VGACON_SOFT_SCROLLBACK_SIZE=256                          CONFIG_VGACON_SOFT_SCROLLBACK_SIZE=256
# CONFIG_LOGO_LINUX_VGA16 is not set                            # CONFIG_LOGO_LINUX_VGA16 is not set
# CONFIG_USB_SISUSBVGA is not set                               # CONFIG_USB_SISUSBVGA is not set

# sdiff linux-3.6.11-gentoo/.config linux-3.14.14-gentoo/.config | grep -i framebuffer
CONFIG_FRAMEBUFFER_CONSOLE=y                                    CONFIG_FRAMEBUFFER_CONSOLE=y
CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y                     CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y
# CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set                # CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set

# sdiff linux-3.6.11-gentoo/.config linux-3.14.14-gentoo/.config | grep -i vesa
CONFIG_FB_BOOT_VESA_SUPPORT=y                                   CONFIG_FB_BOOT_VESA_SUPPORT=y
# CONFIG_FB_UVESA is not set                                    # CONFIG_FB_UVESA is not set
CONFIG_FB_VESA=y                                                CONFIG_FB_VESA=y

# sdiff linux-3.6.11-gentoo/.config linux-3.14.14-gentoo/.config | grep -i CONFIG_FB
CONFIG_FB=y                                                     CONFIG_FB=y
# CONFIG_FB_DDC is not set                                      # CONFIG_FB_DDC is not set
CONFIG_FB_BOOT_VESA_SUPPORT=y                                   CONFIG_FB_BOOT_VESA_SUPPORT=y
CONFIG_FB_CFB_FILLRECT=y                                        CONFIG_FB_CFB_FILLRECT=y
CONFIG_FB_CFB_COPYAREA=y                                        CONFIG_FB_CFB_COPYAREA=y
CONFIG_FB_CFB_IMAGEBLIT=y                                       CONFIG_FB_CFB_IMAGEBLIT=y
# CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set                   # CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set
# CONFIG_FB_SYS_FILLRECT is not set                             # CONFIG_FB_SYS_FILLRECT is not set
# CONFIG_FB_SYS_COPYAREA is not set                             # CONFIG_FB_SYS_COPYAREA is not set
# CONFIG_FB_SYS_IMAGEBLIT is not set                            # CONFIG_FB_SYS_IMAGEBLIT is not set
# CONFIG_FB_FOREIGN_ENDIAN is not set                           # CONFIG_FB_FOREIGN_ENDIAN is not set
# CONFIG_FB_SYS_FOPS is not set                                 # CONFIG_FB_SYS_FOPS is not set
# CONFIG_FB_WMT_GE_ROPS is not set                            <
# CONFIG_FB_SVGALIB is not set                                  # CONFIG_FB_SVGALIB is not set
# CONFIG_FB_MACMODES is not set                                 # CONFIG_FB_MACMODES is not set
# CONFIG_FB_BACKLIGHT is not set                                # CONFIG_FB_BACKLIGHT is not set
CONFIG_FB_MODE_HELPERS=y                                        CONFIG_FB_MODE_HELPERS=y
# CONFIG_FB_TILEBLITTING is not set                             # CONFIG_FB_TILEBLITTING is not set
# CONFIG_FB_CIRRUS is not set                                   # CONFIG_FB_CIRRUS is not set
# CONFIG_FB_PM2 is not set                                      # CONFIG_FB_PM2 is not set
# CONFIG_FB_CYBER2000 is not set                                # CONFIG_FB_CYBER2000 is not set
# CONFIG_FB_ARC is not set                                      # CONFIG_FB_ARC is not set
# CONFIG_FB_ASILIANT is not set                                 # CONFIG_FB_ASILIANT is not set
# CONFIG_FB_IMSTT is not set                                    # CONFIG_FB_IMSTT is not set
CONFIG_FB_VGA16=y                                               CONFIG_FB_VGA16=y
# CONFIG_FB_UVESA is not set                                    # CONFIG_FB_UVESA is not set
CONFIG_FB_VESA=y                                                CONFIG_FB_VESA=y
# CONFIG_FB_EFI is not set                                      # CONFIG_FB_EFI is not set
# CONFIG_FB_N411 is not set                                     # CONFIG_FB_N411 is not set
# CONFIG_FB_HGA is not set                                      # CONFIG_FB_HGA is not set
                                                              > # CONFIG_FB_OPENCORES is not set
# CONFIG_FB_S1D13XXX is not set                                 # CONFIG_FB_S1D13XXX is not set
# CONFIG_FB_NVIDIA is not set                                   # CONFIG_FB_NVIDIA is not set
# CONFIG_FB_RIVA is not set                                     # CONFIG_FB_RIVA is not set
# CONFIG_FB_I740 is not set                                     # CONFIG_FB_I740 is not set
# CONFIG_FB_LE80578 is not set                                  # CONFIG_FB_LE80578 is not set
# CONFIG_FB_MATROX is not set                                   # CONFIG_FB_MATROX is not set
# CONFIG_FB_RADEON is not set                                   # CONFIG_FB_RADEON is not set
# CONFIG_FB_ATY128 is not set                                   # CONFIG_FB_ATY128 is not set
# CONFIG_FB_ATY is not set                                      # CONFIG_FB_ATY is not set
# CONFIG_FB_S3 is not set                                       # CONFIG_FB_S3 is not set
# CONFIG_FB_SAVAGE is not set                                   # CONFIG_FB_SAVAGE is not set
# CONFIG_FB_SIS is not set                                      # CONFIG_FB_SIS is not set
# CONFIG_FB_VIA is not set                                      # CONFIG_FB_VIA is not set
# CONFIG_FB_NEOMAGIC is not set                                 # CONFIG_FB_NEOMAGIC is not set
# CONFIG_FB_KYRO is not set                                     # CONFIG_FB_KYRO is not set
# CONFIG_FB_3DFX is not set                                     # CONFIG_FB_3DFX is not set
# CONFIG_FB_VOODOO1 is not set                                  # CONFIG_FB_VOODOO1 is not set
# CONFIG_FB_VT8623 is not set                                   # CONFIG_FB_VT8623 is not set
# CONFIG_FB_TRIDENT is not set                                  # CONFIG_FB_TRIDENT is not set
# CONFIG_FB_ARK is not set                                      # CONFIG_FB_ARK is not set
# CONFIG_FB_PM3 is not set                                      # CONFIG_FB_PM3 is not set
# CONFIG_FB_CARMINE is not set                                  # CONFIG_FB_CARMINE is not set
# CONFIG_FB_GEODE is not set                                  <
# CONFIG_FB_SMSCUFX is not set                                  # CONFIG_FB_SMSCUFX is not set
# CONFIG_FB_UDL is not set                                      # CONFIG_FB_UDL is not set
                                                              > # CONFIG_FB_GOLDFISH is not set
# CONFIG_FB_VIRTUAL is not set                                  # CONFIG_FB_VIRTUAL is not set
# CONFIG_FB_METRONOME is not set                                # CONFIG_FB_METRONOME is not set
# CONFIG_FB_MB862XX is not set                                  # CONFIG_FB_MB862XX is not set
# CONFIG_FB_BROADSHEET is not set                               # CONFIG_FB_BROADSHEET is not set
# CONFIG_FB_AUO_K190X is not set                                # CONFIG_FB_AUO_K190X is not set
                                                              > # CONFIG_FB_SIMPLE is not set
# CONFIG_FB_CON_DECOR is not set                                # CONFIG_FB_CON_DECOR is not set
# CONFIG_FB_SM7XX is not set                                    # CONFIG_FB_SM7XX is not set
# CONFIG_FB_XGI is not set                                      # CONFIG_FB_XGI is not set



Unless I am missing something they match for this. Even tried recompiling the new kernel after doing an: make mrproper
but that was no help.

Anyone have a clue what I am missing or neglected? Thanks.
_________________
Support bacteria – they’re the only culture some people have.”

– Steven Wright
Back to top
View user's profile Send private message
Decibels
Veteran
Veteran


Joined: 16 Aug 2002
Posts: 1623
Location: U.S.A.

PostPosted: Wed Aug 13, 2014 10:40 pm    Post subject: Reply with quote

Comparing the kernels further line per line. I discovered the fix.

Not sure when they added this, but in Kernel-3.14.14 they added this:
Code:
 CONFIG_X86_SYSFB:                                                                                                                           
  │                                                                                                                                             
  │ Firmwares often provide initial graphics framebuffers so the BIOS,                                                                         
  │ bootloader or kernel can show basic video-output during boot for                                                                               
  │ user-guidance and debugging. Historically, x86 used the VESA BIOS                                                                             
  │ Extensions and EFI-framebuffers for this, which are mostly limited                                                                               
  │ to x86.                                                                                                                                         
  │ This option, if enabled, marks VGA/VBE/EFI framebuffers as generic                                                                             
  │ framebuffers so the new generic system-framebuffer drivers can be                                                                               
  │ used on x86. If the framebuffer is not compatible with the generic                                                                             
  │ modes, it is adverticed as fallback platform framebuffer so legacy                                                                               
  │ drivers like efifb, vesafb and uvesafb can pick it up.                                                                                           
  │ If this option is not selected, all system framebuffers are always                                                                           
  │ marked as fallback platform framebuffers as usual.                                                                                               
  │                                                                                                                                                 
  │ Note: Legacy fbdev drivers, including vesafb, efifb, uvesafb, will                                                   
  │ not be able to pick up generic system framebuffers if this option                                                   
  │ is selected. You are highly encouraged to enable simplefb as                                                         
  │ replacement if you select this option. simplefb can correctly deal                                                   
  │ with generic system framebuffers. But you should still keep vesafb                                               
  │ and others enabled as fallback if a system framebuffer is                                                             
  │ incompatible with simplefb.                                                                                                       
  │                                                                                                                                               
  │ If unsure, say Y.                                                                                                                       
  │                                                                                                                                               
  │ Symbol: X86_SYSFB [=n]                                                                                                         
  │ Type  : boolean                                                                                                                       
  │ Prompt: Mark VGA/VBE/EFI FB as generic system framebuffer                                                     
  │   Location:                                                                                                                             
  │     -> Bus options (PCI etc.)                                                                                                     
  │   Defined at arch/x86/Kconfig:2324


I unset this option and booted fine. Background picture worked as should, then when selected boot option, it disappeared and got verbose mode like wanted.
The above "NOTE" part seems confusing to me. Unless I am reading it wrong, it seems to imply that I should keep the vesafb,... enabled as fallback, but earlier says that if the others are selected and the system framebuffers is selected the others will not be able to pick up the simplefb.

Going to do a little reading and try to see if can just use simplefb instead. But, as said, from my experience seems you need to disable the vesafb,....

Other than that, disabling this X86_SYSFB fixed my problem. But the main problem is I didn't catch that simplefb was CONFIG_FB_SIMPLE, so didn't enable it.

More info: http://lwn.net/Articles/538815/

I like this discussion on it. http://www.serverphorums.com/read.php?12,841788
Seems the info is there, but not real clear. Perhaps they should have said you should enable: CONFIG_FB_SIMPLE
and it might have been more clear. Seems I am not the only one confusing this issue. By the way CONFIG_FB_SIMPLE is in:
Code:
│   Location:                                                                                                                                     
  │     -> Device Drivers                                                                                                                           
  │       -> Graphics support                                                                                                                       
  │         -> Support for frame buffer devices (FB [=y])


LATER [THE FIX]: So retesting I did this:
1) ReEnabled X86_SYSFB
2) Enabled CONFIG_FB_SIMPLE
3) Unset the other Framebuffers. (List below)
Note: This might not work if you don't have a newer card (not sure). I have a Nvidia GeForce GTX560, so should have h/w framebuffers.
4) Rebooted with just the simplefb (ie. CONFIG_FB_SIMPLE) and worked fine.

List of my framebuffer options:
Code:
# grep -i fb /usr/src/linux-3.14.14-gentoo/.config
CONFIG_X86_SYSFB=y
# CONFIG_NET_SCH_SFB is not set
# CONFIG_IFB is not set
CONFIG_FB=y
# CONFIG_FB_DDC is not set
# CONFIG_FB_BOOT_VESA_SUPPORT is not set
CONFIG_FB_CFB_FILLRECT=y
CONFIG_FB_CFB_COPYAREA=y
CONFIG_FB_CFB_IMAGEBLIT=y
# CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set
# CONFIG_FB_SYS_FILLRECT is not set
# CONFIG_FB_SYS_COPYAREA is not set
# CONFIG_FB_SYS_IMAGEBLIT is not set
# CONFIG_FB_FOREIGN_ENDIAN is not set
# CONFIG_FB_SYS_FOPS is not set
# CONFIG_FB_SVGALIB is not set
# CONFIG_FB_MACMODES is not set
# CONFIG_FB_BACKLIGHT is not set
CONFIG_FB_MODE_HELPERS=y
# CONFIG_FB_TILEBLITTING is not set
# CONFIG_FB_CIRRUS is not set
# CONFIG_FB_PM2 is not set
# CONFIG_FB_CYBER2000 is not set
# CONFIG_FB_ARC is not set
# CONFIG_FB_ASILIANT is not set
# CONFIG_FB_IMSTT is not set
# CONFIG_FB_VGA16 is not set
# CONFIG_FB_UVESA is not set
# CONFIG_FB_VESA is not set
# CONFIG_FB_EFI is not set
# CONFIG_FB_N411 is not set
# CONFIG_FB_HGA is not set
# CONFIG_FB_OPENCORES is not set
# CONFIG_FB_S1D13XXX is not set
# CONFIG_FB_NVIDIA is not set
# CONFIG_FB_RIVA is not set
# CONFIG_FB_I740 is not set
# CONFIG_FB_LE80578 is not set
# CONFIG_FB_MATROX is not set
# CONFIG_FB_RADEON is not set
# CONFIG_FB_ATY128 is not set
# CONFIG_FB_ATY is not set
# CONFIG_FB_S3 is not set
# CONFIG_FB_SAVAGE is not set
# CONFIG_FB_SIS is not set
# CONFIG_FB_VIA is not set
# CONFIG_FB_NEOMAGIC is not set
# CONFIG_FB_KYRO is not set
# CONFIG_FB_3DFX is not set
# CONFIG_FB_VOODOO1 is not set
# CONFIG_FB_VT8623 is not set
# CONFIG_FB_TRIDENT is not set
# CONFIG_FB_ARK is not set
# CONFIG_FB_PM3 is not set
# CONFIG_FB_CARMINE is not set
# CONFIG_FB_SMSCUFX is not set
# CONFIG_FB_UDL is not set
# CONFIG_FB_GOLDFISH is not set
# CONFIG_FB_VIRTUAL is not set
# CONFIG_FB_METRONOME is not set
# CONFIG_FB_MB862XX is not set
# CONFIG_FB_BROADSHEET is not set
# CONFIG_FB_AUO_K190X is not set
CONFIG_FB_SIMPLE=y
# CONFIG_FB_CON_DECOR is not set
# CONFIG_FB_SM7XX is not set
# CONFIG_FB_XGI is not set

Now the Framebuffer Configuration looks like this (previous ones in first post):
Code:
# fbset -i -v
Linux Frame Buffer Device Configuration Version 2.1 (23/06/1999)
(C) Copyright 1995-1999 by Geert Uytterhoeven

Opening frame buffer device `/dev/fb0'
Using current video mode from `/dev/fb0'

mode "1280x1024"
    geometry 1280 1024 1280 1024 32
    timings 0 0 0 0 0 0 0
    rgba 8/16,8/8,8/0,8/24
endmode

Getting further frame buffer information
Frame buffer device information:
    Name        : simple
    Address     : 0xf1000000
    Size        : 5242880
    Type        : PACKED PIXELS
    Visual      : TRUECOLOR
    XPanStep    : 0
    YPanStep    : 0
    YWrapStep   : 0
    LineLength  : 5120
    Accelerator : No

_________________
Support bacteria – they’re the only culture some people have.”

– Steven Wright
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Other Things Gentoo All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum