2003-07-15 05:33:10

by Amit Shah

[permalink] [raw]
Subject: 2.6.0-test1: Framebuffer problem

I have a Riva TNT2 display card. On compiling in framebuffer support and
the other options (like the fonts, vga16 support, etc, relevant part of
.config pasted below), the kernel doesn't proceed after some messages
(where it initializes the frame buffer)... I just see the grub screen
again with some stripes and there's no disk activity thereafter.

#
# Graphics support
#
CONFIG_FB=y
# CONFIG_FB_CIRRUS is not set
# CONFIG_FB_PM2 is not set
# CONFIG_FB_CYBER2000 is not set
# CONFIG_FB_IMSTT is not set
CONFIG_FB_VGA16=y
CONFIG_FB_VESA=y
CONFIG_VIDEO_SELECT=y
# CONFIG_FB_HGA is not set
CONFIG_FB_RIVA=y
# CONFIG_FB_I810 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_SIS is not set
# CONFIG_FB_NEOMAGIC is not set
# CONFIG_FB_3DFX is not set
# CONFIG_FB_VOODOO1 is not set
# CONFIG_FB_TRIDENT is not set
# CONFIG_FB_PM3 is not set
# CONFIG_FB_VIRTUAL is not set

#
# Console display driver support
#
CONFIG_VGA_CONSOLE=y
# CONFIG_MDA_CONSOLE is not set
CONFIG_DUMMY_CONSOLE=y
CONFIG_FRAMEBUFFER_CONSOLE=y
CONFIG_PCI_CONSOLE=y
CONFIG_FONTS=y
CONFIG_FONT_8x8=y
CONFIG_FONT_8x16=y
CONFIG_FONT_6x11=y
CONFIG_FONT_PEARL_8x8=y
CONFIG_FONT_ACORN_8x8=y
CONFIG_FONT_MINI_4x6=y
CONFIG_FONT_SUN8x16=y
CONFIG_FONT_SUN12x22=y

#
# Logo configuration
#
CONFIG_LOGO=y
CONFIG_LOGO_LINUX_MONO=y
CONFIG_LOGO_LINUX_VGA16=y
CONFIG_LOGO_LINUX_CLUT224=y


--
Amit Shah
http://amitshah.nav.to/

Why do you want to read your code?
The machine will.
-- Sunil Beta


2003-07-16 05:23:02

by Amit Shah

[permalink] [raw]
Subject: Re: 2.6.0-test1: Framebuffer problem

On Tuesday 15 Jul 2003 11:17, I wrote:
> I have a Riva TNT2 display card. On compiling in framebuffer support and
> the other options (like the fonts, vga16 support, etc, relevant part of
> .config pasted below), the kernel doesn't proceed after some messages
> (where it initializes the frame buffer)... I just see the grub screen
> again with some stripes and there's no disk activity thereafter.

the lspci output is:
01:00.0 VGA compatible controller: nVidia Corporation Vanta [NV6] (rev 15)
00:01.0 PCI bridge: Intel Corp. 82850 850 (Tehama) Chipset AGP Bridge (rev
04)

also, with CONFIG_FB disabled, in X, (using the "nv" driver), I get random
images thrown all over the screen... if an html page is loading in the
background, I'll portions of gifs/jpegs all over my screen, or the
toolbars, scroll bars, etc...

> #
> # Graphics support
> #
> CONFIG_FB=y
> # CONFIG_FB_CIRRUS is not set
> # CONFIG_FB_PM2 is not set
> # CONFIG_FB_CYBER2000 is not set
> # CONFIG_FB_IMSTT is not set
> CONFIG_FB_VGA16=y
> CONFIG_FB_VESA=y
> CONFIG_VIDEO_SELECT=y
> # CONFIG_FB_HGA is not set
> CONFIG_FB_RIVA=y
> # CONFIG_FB_I810 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_SIS is not set
> # CONFIG_FB_NEOMAGIC is not set
> # CONFIG_FB_3DFX is not set
> # CONFIG_FB_VOODOO1 is not set
> # CONFIG_FB_TRIDENT is not set
> # CONFIG_FB_PM3 is not set
> # CONFIG_FB_VIRTUAL is not set
>
> #
> # Console display driver support
> #
> CONFIG_VGA_CONSOLE=y
> # CONFIG_MDA_CONSOLE is not set
> CONFIG_DUMMY_CONSOLE=y
> CONFIG_FRAMEBUFFER_CONSOLE=y
> CONFIG_PCI_CONSOLE=y
> CONFIG_FONTS=y
> CONFIG_FONT_8x8=y
> CONFIG_FONT_8x16=y
> CONFIG_FONT_6x11=y
> CONFIG_FONT_PEARL_8x8=y
> CONFIG_FONT_ACORN_8x8=y
> CONFIG_FONT_MINI_4x6=y
> CONFIG_FONT_SUN8x16=y
> CONFIG_FONT_SUN12x22=y
>
> #
> # Logo configuration
> #
> CONFIG_LOGO=y
> CONFIG_LOGO_LINUX_MONO=y
> CONFIG_LOGO_LINUX_VGA16=y
> CONFIG_LOGO_LINUX_CLUT224=y

--
Amit Shah
http://amitshah.nav.to/

Why do you want to read your code?
The machine will.
-- Sunil Beta

2003-07-17 16:51:13

by James Simmons

[permalink] [raw]
Subject: Re: 2.6.0-test1: Framebuffer problem


> > #
> > # Graphics support
> > #
> > CONFIG_FB=y
> > # CONFIG_FB_CIRRUS is not set
> > # CONFIG_FB_PM2 is not set
> > # CONFIG_FB_CYBER2000 is not set
> > # CONFIG_FB_IMSTT is not set
> > CONFIG_FB_VGA16=y <---- to many drivers selected. Please
<---- pick only one.
> > CONFIG_FB_VESA=y
> > CONFIG_VIDEO_SELECT=y
> > # CONFIG_FB_HGA is not set
> > CONFIG_FB_RIVA=y <-----
> > # CONFIG_FB_I810 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_SIS is not set
> > # CONFIG_FB_NEOMAGIC is not set
> > # CONFIG_FB_3DFX is not set
> > # CONFIG_FB_VOODOO1 is not set
> > # CONFIG_FB_TRIDENT is not set
> > # CONFIG_FB_PM3 is not set
> > # CONFIG_FB_VIRTUAL is not set

2003-07-17 17:09:00

by Alan

[permalink] [raw]
Subject: Re: 2.6.0-test1: Framebuffer problem

On Iau, 2003-07-17 at 18:05, James Simmons wrote:
> > > CONFIG_FB_VGA16=y <---- to many drivers selected. Please
> <---- pick only one.
> > > CONFIG_FB_VESA=y

This is a completely sensible selection and works as expected in 2.4 so
it really wants fixing anyway

2003-07-17 17:19:30

by James Simmons

[permalink] [raw]
Subject: Re: 2.6.0-test1: Framebuffer problem


> > > > CONFIG_FB_VGA16=y <---- to many drivers selected. Please
> > <---- pick only one.
> > > > CONFIG_FB_VESA=y
>
> This is a completely sensible selection and works as expected in 2.4 so
> it really wants fixing anyway

It is if you have more than one graphics card. If you only have one card
then you will have problems.

2003-07-18 09:48:32

by Amit Shah

[permalink] [raw]
Subject: Re: 2.6.0-test1: Framebuffer problem

On Thursday 17 Jul 2003 23:04, James Simmons wrote:
> > > > > CONFIG_FB_VGA16=y <---- to many drivers selected. Please
> > >
> > > <---- pick only one.
> > >
> > > > > CONFIG_FB_VESA=y
> >
> > This is a completely sensible selection and works as expected in 2.4 so
> > it really wants fixing anyway
>
> It is if you have more than one graphics card. If you only have one card
> then you will have problems.

just checked and it works... shouldn't this be documented/fixed? ('cos as
Alan said, it works in 2.4).

--
Amit Shah
http://amitshah.nav.to/

Why do you want to read your code?
The machine will.
-- Sunil Beta

2003-07-18 12:44:48

by Alan

[permalink] [raw]
Subject: Re: 2.6.0-test1: Framebuffer problem

On Iau, 2003-07-17 at 18:34, James Simmons wrote:
> > > > > CONFIG_FB_VGA16=y <---- to many drivers selected. Please
> > > <---- pick only one.
> > > > > CONFIG_FB_VESA=y
> >
> > This is a completely sensible selection and works as expected in 2.4 so
> > it really wants fixing anyway
>
> It is if you have more than one graphics card. If you only have one card
> then you will have problems.

Then it still needs to be fixed. This works correctly in 2.4

--
Alan Cox <[email protected]>

2003-07-18 20:03:54

by Geert Uytterhoeven

[permalink] [raw]
Subject: Re: 2.6.0-test1: Framebuffer problem

On 18 Jul 2003, Alan Cox wrote:
> On Iau, 2003-07-17 at 18:34, James Simmons wrote:
> > > > > > CONFIG_FB_VGA16=y <---- to many drivers selected. Please
> > > > <---- pick only one.
> > > > > > CONFIG_FB_VESA=y
> > >
> > > This is a completely sensible selection and works as expected in 2.4 so
> > > it really wants fixing anyway
> >
> > It is if you have more than one graphics card. If you only have one card
> > then you will have problems.
>
> Then it still needs to be fixed. This works correctly in 2.4

Since vesafb can detect whether you booted with a graphics mode, vga16fb should
be able to detect you didn't, right?

Gr{oetje,eeting}s,

Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- [email protected]

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds

2003-07-18 21:04:23

by Alan

[permalink] [raw]
Subject: Re: 2.6.0-test1: Framebuffer problem

On Gwe, 2003-07-18 at 21:18, Geert Uytterhoeven wrote:
> > Then it still needs to be fixed. This works correctly in 2.4
>
> Since vesafb can detect whether you booted with a graphics mode, vga16fb should
> be able to detect you didn't, right?

Equally it knows that the frame buffer in question was allocated providing
someone is doing the resource handling right

2003-07-19 05:48:20

by Geert Uytterhoeven

[permalink] [raw]
Subject: Re: 2.6.0-test1: Framebuffer problem

On 18 Jul 2003, Alan Cox wrote:
> On Gwe, 2003-07-18 at 21:18, Geert Uytterhoeven wrote:
> > > Then it still needs to be fixed. This works correctly in 2.4
> > Since vesafb can detect whether you booted with a graphics mode, vga16fb should
> > be able to detect you didn't, right?
>
> Equally it knows that the frame buffer in question was allocated providing
> someone is doing the resource handling right

No, that's not so simple, because vesafb requests the linear frame buffer,
while vga16fb requests the VGA region.

Gr{oetje,eeting}s,

Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- [email protected]

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds

2003-07-19 12:54:42

by Alan

[permalink] [raw]
Subject: Re: 2.6.0-test1: Framebuffer problem

On Sad, 2003-07-19 at 07:02, Geert Uytterhoeven wrote:
> No, that's not so simple, because vesafb requests the linear frame buffer,
> while vga16fb requests the VGA region.

In standard usage mode both of them use the vga registers for palette control..


2003-07-21 20:00:23

by Geert Uytterhoeven

[permalink] [raw]
Subject: Re: 2.6.0-test1: Framebuffer problem

On 19 Jul 2003, Alan Cox wrote:
> On Sad, 2003-07-19 at 07:02, Geert Uytterhoeven wrote:
> > No, that's not so simple, because vesafb requests the linear frame buffer,
> > while vga16fb requests the VGA region.

Correction:
- vesafb uses
o request_mem_region() on the linear frame buffer
o request_region() on the 32 VGA registers (but the return code is
ignored because of vgacon)
- vga16fb doesn't use resource management (ugh)
- vgacon uses
o request_region() on the MDA/CGA/EGA/VGA registers

> In standard usage mode both of them use the vga registers for palette control..

Vesafb may use a protected mode BIOS call instead.

An additional complexity is that not only vesafb/vga16fb may claim the VGA
registers, but also vgacon. And it's allowed for vesafb/vga16fb to take over
vgacon.

Gr{oetje,eeting}s,

Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- [email protected]

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds