# [SOLVED] uvesafb does not work

## johanson

Hey,

I have a problem with my (new) laptop and the framebuffer.

The laptop is a Hp omnibook xe4500 with an ali chipset and an ATI  Mobility M6 LY gpu.

The problem is that the vesafb can't display the default resolution of 1400x1050 and is very slow,

randeonfb strikes completly - so i set all my hope to uvesafb.

The Kernel i use is 2.6.23-gentoo-r1.

As the point uvesafb starts, the screen is black and doesn't came back (in the back he finished booting).

my grub.conf:

```

kernel /vmlinuz-2.6.23-gentoo-r1 root=/dev/hda3 video=uvesafb:640x480-16,mtrr:1,ypan

```

cut of kernel config:

```

CONFIG_INITRAMFS_SOURCE="/usr/share/v86d/initramfs"

CONFIG_INITRAMFS_ROOT_UID=0

CONFIG_INITRAMFS_ROOT_GID=0

CONFIG_CONNECTOR=y

CONFIG_FB_UVESA=y

CONFIG_INITRAMFS_SOURCE="/usr/share/v86d/initramfs"

CONFIG_FRAMEBUFFER_CONSOLE=y

```

Here a short cut from dmesg:

```

uvesafb: ATI Technologies Inc., R100, 01.00, OEM: ATI MOBILITY RADEON, VBE v2.0

uvesafb: protected mode interface info at c000:5243

uvesafb: pmi: set display start = c00c52d7, set palette = c00c5323

uvesafb: pmi: ports = 9010 9016 9054 9038 903c 905c 9000 9004 90b0 90b2 90b4

uvesafb: no monitor limits have been set, default refresh rate will be used

uvesafb: scrolling: ypan using protected mode interface, yres_virtual=9187

Switched to high resolution mode on CPU 0

uvesafb: mode switch failed (eax=0x4f02, err=1)

Console: switching to colour frame buffer device 80x30

uvesafb: framebuffer at 0xe8000000, mapped to 0xf8880000, using 11484k, total 32768k

fb0: VESA VGA frame buffer device

```

klibc is re-emerged and v86d too.

I tried most of the possible resolutions and options related to uvesafb (grub.conf)

thanks for your help

JohansonLast edited by johanson on Thu Nov 15, 2007 2:07 pm; edited 1 time in total

----------

## eyoung100

See this topic:

UVesaFB - The Successor to VesaFB-TNG (Bootsplash)

From the look of your command line, you may have left off the CONSOLE= entry

----------

## johanson

thx,

i read this post, but i think this CONSOLE= option is splash related,...

i tried it anyway, but it doesn't help.

i get the same error, i think this is the importend line:

```

uvesafb: mode switch failed (eax=0x4f02, err=1)

```

but i didn't find anything about this "err=1",...

----------

## eyoung100

Well, let's follow along with their thread in ours.  Please post the output of:

```
cat /sys/bus/platform/drivers/uvesafb/uvesafb.0/vbe_modes
```

----------

## johanson

thx for your reply,

here's the output:

```

laptop ~ # cat /sys/bus/platform/drivers/uvesafb/uvesafb.0/vbe_modes

320x200-8, 0x0182

320x200-15, 0x010d

320x200-16, 0x010e

320x200-24, 0x010f

320x200-32, 0x0120

320x240-8, 0x0192

320x240-15, 0x0193

320x240-16, 0x0194

320x240-24, 0x0195

320x240-32, 0x0196

400x300-8, 0x01a2

400x300-15, 0x01a3

400x300-16, 0x01a4

400x300-24, 0x01a5

400x300-32, 0x01a6

512x384-8, 0x01b2

512x384-15, 0x01b3

512x384-16, 0x01b4

512x384-24, 0x01b5

512x384-32, 0x01b6

640x350-8, 0x01c2

640x350-15, 0x01c3

640x350-16, 0x01c4

640x350-24, 0x01c5

640x350-32, 0x01c6

640x400-8, 0x0100

640x400-15, 0x0183

640x400-16, 0x0184

640x400-24, 0x0185

640x400-32, 0x0186

640x480-8, 0x0101

640x480-15, 0x0110

640x480-16, 0x0111

640x480-24, 0x0112

640x480-32, 0x0121

800x600-8, 0x0103

800x600-15, 0x0113

800x600-16, 0x0114

800x600-24, 0x0115

800x600-32, 0x0122

1024x768-8, 0x0105

1024x768-15, 0x0116

1024x768-16, 0x0117

1024x768-24, 0x0118

1024x768-32, 0x0123

1280x1024-8, 0x0107

1280x1024-15, 0x0119

1280x1024-16, 0x011a

1280x1024-24, 0x011b

1280x1024-32, 0x0124

1400x1050-8, 0x0140

1400x1050-15, 0x0141

1400x1050-16, 0x0142

1400x1050-24, 0x0143

1400x1050-32, 0x0144

```

i tried most of them, but no one is functionally,...

hope that helps,...

lg

Johanson

----------

## eyoung100

The output confirms your BIOS supports the mode you want:

```

1400x1050-8, 0x0140 

1400x1050-15, 0x0141 

1400x1050-16, 0x0142 

1400x1050-24, 0x0143 

1400x1050-32, 0x0144 

```

Let's start at the beginning:

```
emerge -C gentoo-sources && emerge --sync && emerge gentoo-sources
```

This will remove your current kernel, update, and re-install it.  DO NOT select anything having to do with the framebuffer.  After we get your system working with a clean kernel, we will start adding the framebuffer back in.

----------

## johanson

hey,

ok, i unmerged the gentoo-sources, reemerged them and completly disabled the framebuffer.

here's my kernel config

thx

Johanson

----------

## eyoung100

```

#

# Display hardware drivers

#

# CONFIG_VGASTATE is not set

# CONFIG_VIDEO_OUTPUT_CONTROL is not set

CONFIG_FB=y

# CONFIG_FIRMWARE_EDID is not set

# CONFIG_FB_DDC is not set

CONFIG_FB_CFB_FILLRECT=y

CONFIG_FB_CFB_COPYAREA=y

CONFIG_FB_CFB_IMAGEBLIT=y

# CONFIG_FB_SYS_FILLRECT is not set

# CONFIG_FB_SYS_COPYAREA is not set

# CONFIG_FB_SYS_IMAGEBLIT is not set

# CONFIG_FB_SYS_FOPS is not set

CONFIG_FB_DEFERRED_IO=y

# 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

```

Assuming you took out framebuffer support, and this config is from November 11, 2007, now set CONFIG_FB=y, along with CONFIG_FIRMWARE_EDID=y

This will let the kernel access your video BIOS, and grab an auto-computed resolution.  We then will add:

```

#

# Frame buffer hardware drivers

#

# 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=y

...

# CONFIG_FB_RADEON is not set

...

```

Disable UVESA and enable Radeon.

Rebuild your kernel, and reboot, and tell me if you get a framebuffer at all.  Right now were testing to see if any framebufer works.

----------

## johanson

ok,

 here's the new config

and this is from dmesg:

```

radeonfb: Retrieved PLL infos from BIOS

radeonfb: Reference=27.00 MHz (RefDiv=60) Memory=166.00 Mhz, System=166.00 MHz

radeonfb: PLL min 12000 max 35000

Non-DDC laptop panel detected

radeonfb: Monitor 1 type LCD found

radeonfb: Monitor 2 type no found

radeonfb: panel ID string: Samsung LTN150P1-L02

radeonfb: detected LVDS panel size from BIOS: 1400x1050

radeondb: BIOS provided dividers will be used

radeonfb: Dynamic Clock Power Management enabled

radeonfb (0000:01:00.0): ATI Radeon LY

```

Framebuffer works, but only with 640x480

----------

## eyoung100

I think we need to add:

```

#

# Console display driver support

#

CONFIG_VGA_CONSOLE=y

# CONFIG_VGACON_SOFT_SCROLLBACK is not set

# CONFIG_VIDEO_SELECT is not set

# CONFIG_MDA_CONSOLE is not set

CONFIG_DUMMY_CONSOLE=y

# CONFIG_FRAMEBUFFER_CONSOLE is not set

# CONFIG_LOGO is not set

```

CONFIG_FRAMEBUFFER_CONSOLE=y, CONFIG_LOGO=y and CONFIG_VIDEO_SELECT=y

CONFIG_FRAMEBUFFER_CONSOLE initializes the framebuffer using the driver we selected.

CONFIG_LOGO draws a penguin in the upper left corner.

CONFIG_VIDEO_SELECT lets the framebuffer select the video mode.

CONFIG_VIDEO_SELECT will be selected via your EDID settings. (post above)

----------

## johanson

Hey,

thx eyoung100, it works !!!

you're the man - thx a lot !!!

Frambuffer, X with DRI - no problems.

lg

Johanson

P.s.: Can anybody set this thread as "solved" - I didn't know how to do this

----------

## swimmer

 *johanson wrote:*   

> [...]
> 
> P.s.: Can anybody set this thread as "solved" - I didn't know how to do this

 Just edit the subject of your first post  :Wink: 

Greetz

swimmer

----------

## johanson

@swimmer

thx ;o)

----------

## eyoung100

Thank you, but you may not be where you want to be.  What framebuffer device did you use?

----------

## johanson

I use the radeonfb, and it works.

it can display the right resolution, and there are no problems with DRI under X.

----------

## bandreabis

 *johanson wrote:*   

> I use the radeonfb, and it works.
> 
> it can display the right resolution, and there are no problems with DRI under X.

 

And.... what about suspending?

Does it resume?

----------

## johanson

sry, i didn't know.

I've never tried suspending on this machine, but it's a good idea ;o)

When there's a little bit of freetime, i will try it and post it here.

ciao

Johanson

----------

