2005-10-07 13:47:58

by Bernhard Rosenkraenzer

[permalink] [raw]
Subject: Modular i810fb broken, partial fix

Hi,
i810fb as a module is broken (checked with 2.6.13-mm3 and 2.6.14-rc2-mm1).
It compiles, but the module doesn't actually load because the kernel doesn't
recognize the hardware (the MODULE_DEVICE_TABLE statement is missing).

The attached patch fixes this.

However, the resulting module still doesn't work.
It loads, and then garbles the display (black screen with a couple of yellow
lines, no matter what is written into the framebuffer device).

Related .config entries:
CONFIG_I2C_I810=m
CONFIG_FB_I810=m
CONFIG_FB_I810_GTF=y
CONFIG_FB_I810_I2C=y


Attachments:
(No filename) (555.00 B)
2.6.13-mm3-fix-i810fb.patch (348.00 B)
Download all attachments

2005-10-08 10:39:48

by Antonino A. Daplas

[permalink] [raw]
Subject: Re: Modular i810fb broken, partial fix

Bernhard Rosenkraenzer wrote:
> Hi,
> i810fb as a module is broken (checked with 2.6.13-mm3 and 2.6.14-rc2-mm1).
> It compiles, but the module doesn't actually load because the kernel doesn't
> recognize the hardware (the MODULE_DEVICE_TABLE statement is missing).


>
> The attached patch fixes this.
>
> However, the resulting module still doesn't work.
> It loads, and then garbles the display (black screen with a couple of yellow
> lines, no matter what is written into the framebuffer device).

Did you compile CONFIG_FRAMEBUFFER_CONSOLE statically, or did a modprobe fbcon?
Does i810fb work if compiled statically?

Tony

2005-10-08 11:02:52

by Bernhard Rosenkraenzer

[permalink] [raw]
Subject: Re: Modular i810fb broken, partial fix

On Saturday, 8. October 2005 12:39, Antonino A. Daplas wrote:
> Did you compile CONFIG_FRAMEBUFFER_CONSOLE statically, or did a modprobe
> fbcon? Does i810fb work if compiled statically?

CONFIG_FRAMEBUFFER_CONSOLE is compiled statically. Can't tell if it works if
compiled statically because I don't have the hardware -- I'll try to get the
user who reported this to check though.

2005-10-08 11:35:07

by Giuseppe Bilotta

[permalink] [raw]
Subject: Re: Modular i810fb broken, partial fix

On Sat, 08 Oct 2005 18:39:35 +0800, Antonino A. Daplas wrote:

> Bernhard Rosenkraenzer wrote:
>> Hi,
>> i810fb as a module is broken (checked with 2.6.13-mm3 and 2.6.14-rc2-mm1).
>> It compiles, but the module doesn't actually load because the kernel doesn't
>> recognize the hardware (the MODULE_DEVICE_TABLE statement is missing).
>
>>
>> The attached patch fixes this.
>>
>> However, the resulting module still doesn't work.
>> It loads, and then garbles the display (black screen with a couple of yellow
>> lines, no matter what is written into the framebuffer device).
>
> Did you compile CONFIG_FRAMEBUFFER_CONSOLE statically, or did a modprobe fbcon?
> Does i810fb work if compiled statically?

Since this is *really* coming out often: is there a specific reason
why the fb modules do not depend on fbcon?

--
Giuseppe "Oblomov" Bilotta

"They that can give up essential liberty to obtain
a little temporary safety deserve neither liberty
nor safety." Benjamin Franklin

2005-10-08 11:56:14

by Manuel Lauss

[permalink] [raw]
Subject: Re: Modular i810fb broken, partial fix

Antonino A. Daplas wrote:
> Bernhard Rosenkraenzer wrote:
>
>>Hi,
>>i810fb as a module is broken (checked with 2.6.13-mm3 and 2.6.14-rc2-mm1).
>>It compiles, but the module doesn't actually load because the kernel doesn't
>>recognize the hardware (the MODULE_DEVICE_TABLE statement is missing).
>
>
>
>>The attached patch fixes this.
>>
>>However, the resulting module still doesn't work.
>>It loads, and then garbles the display (black screen with a couple of yellow
>>lines, no matter what is written into the framebuffer device).
>
>
> Did you compile CONFIG_FRAMEBUFFER_CONSOLE statically, or did a modprobe fbcon?
> Does i810fb work if compiled statically?

I tried the module on my i815 laptop, after modprobe the module does nothing.
The call to pci_register_driver() returns 0, and thats it; the probe function
does not get called. Same thing with Bernhard's patch applied. No problems
when compiled-in. Kernel 2.6.14-rc2-mm1, AGP compiled in, no DRM.

thx,

--
Manuel Lauss.

2005-10-08 13:03:38

by Antonino A. Daplas

[permalink] [raw]
Subject: Re: Modular i810fb broken, partial fix

Manuel Lauss wrote:
> Antonino A. Daplas wrote:
>> Bernhard Rosenkraenzer wrote:
>>
>>> Hi,
>>> i810fb as a module is broken (checked with 2.6.13-mm3 and
>>> 2.6.14-rc2-mm1).
>>> It compiles, but the module doesn't actually load because the kernel
>>> doesn't recognize the hardware (the MODULE_DEVICE_TABLE statement is
>>> missing).
>>
>>
>>
>>> The attached patch fixes this.
>>>
>>> However, the resulting module still doesn't work.
>>> It loads, and then garbles the display (black screen with a couple of
>>> yellow lines, no matter what is written into the framebuffer device).
>>
>>
>> Did you compile CONFIG_FRAMEBUFFER_CONSOLE statically, or did a
>> modprobe fbcon?
>> Does i810fb work if compiled statically?
>
> I tried the module on my i815 laptop, after modprobe the module does
> nothing.
> The call to pci_register_driver() returns 0, and thats it; the probe
> function
> does not get called. Same thing with Bernhard's patch applied. No problems
> when compiled-in. Kernel 2.6.14-rc2-mm1, AGP compiled in, no DRM.

That's weird. Can you find out why the probe function is not called? Can
you trace the pci_register_driver call starting in drivers/pci/pci-driver.c, then
in drivers/base/*.c?

(Or you can #define DEBUG somewhere, perhaps in include/linux/device.h?)

Tony

2005-10-08 13:03:29

by Antonino A. Daplas

[permalink] [raw]
Subject: Re: Modular i810fb broken, partial fix

Giuseppe Bilotta wrote:
> On Sat, 08 Oct 2005 18:39:35 +0800, Antonino A. Daplas wrote:
>
>> Bernhard Rosenkraenzer wrote:
>>> Hi,
>>> i810fb as a module is broken (checked with 2.6.13-mm3 and 2.6.14-rc2-mm1).
>>> It compiles, but the module doesn't actually load because the kernel doesn't
>>> recognize the hardware (the MODULE_DEVICE_TABLE statement is missing).
>>> The attached patch fixes this.
>>>
>>> However, the resulting module still doesn't work.
>>> It loads, and then garbles the display (black screen with a couple of yellow
>>> lines, no matter what is written into the framebuffer device).
>> Did you compile CONFIG_FRAMEBUFFER_CONSOLE statically, or did a modprobe fbcon?
>> Does i810fb work if compiled statically?
>
> Since this is *really* coming out often: is there a specific reason
> why the fb modules do not depend on fbcon?
>

Some need fbdev only, without fbcon, ie, embedded.

Tony

2005-10-08 14:55:39

by Giuseppe Bilotta

[permalink] [raw]
Subject: Re: Modular i810fb broken, partial fix

On Sat, 08 Oct 2005 21:03:15 +0800, Antonino A. Daplas wrote:

> Giuseppe Bilotta wrote:
>> On Sat, 08 Oct 2005 18:39:35 +0800, Antonino A. Daplas wrote:
>>
>>> Bernhard Rosenkraenzer wrote:
>>>> Hi,
>>>> i810fb as a module is broken (checked with 2.6.13-mm3 and 2.6.14-rc2-mm1).
>>>> It compiles, but the module doesn't actually load because the kernel doesn't
>>>> recognize the hardware (the MODULE_DEVICE_TABLE statement is missing).
>>>> The attached patch fixes this.
>>>>
>>>> However, the resulting module still doesn't work.
>>>> It loads, and then garbles the display (black screen with a couple of yellow
>>>> lines, no matter what is written into the framebuffer device).
>>> Did you compile CONFIG_FRAMEBUFFER_CONSOLE statically, or did a modprobe fbcon?
>>> Does i810fb work if compiled statically?
>>
>> Since this is *really* coming out often: is there a specific reason
>> why the fb modules do not depend on fbcon?
>>
>
> Some need fbdev only, without fbcon, ie, embedded.

And does fbcon make sense *without* fbdevs?

--
Giuseppe "Oblomov" Bilotta

"Da grande lotter? per la pace"
"A me me la compra il mio babbo"
(Altan)
("When I grow up, I will fight for peace"
"I'll have my daddy buy it for me")

2005-10-08 15:30:31

by Manuel Lauss

[permalink] [raw]
Subject: Re: Modular i810fb broken, partial fix

Antonino A. Daplas wrote:
> Manuel Lauss wrote:
>>I tried the module on my i815 laptop, after modprobe the module does
>>nothing.
>>The call to pci_register_driver() returns 0, and thats it; the probe
>>function
>>does not get called. Same thing with Bernhard's patch applied. No problems
>>when compiled-in. Kernel 2.6.14-rc2-mm1, AGP compiled in, no DRM.
>
>
> That's weird. Can you find out why the probe function is not called? Can

Stupid me, the i810_smbus driver grabbed the device and so the driver core
didn't probe i810fb against it.
With that one out of the way, modprobing i810fb with the appropriate parameters
correctly switches to graphics mode and fbcon gives me a nice console,
with and without Bernhard's patch.

for reference:
modprobe i810fb mode_option=1024x768-8@60 hsync1=40 hsync2=60 vsync1=50 vsync2=70 vram=4


--
Manuel Lauss

2005-10-08 21:22:17

by Antonino A. Daplas

[permalink] [raw]
Subject: Re: Modular i810fb broken, partial fix

Giuseppe Bilotta wrote:
> On Sat, 08 Oct 2005 21:03:15 +0800, Antonino A. Daplas wrote:
>
>> Giuseppe Bilotta wrote:
>>> On Sat, 08 Oct 2005 18:39:35 +0800, Antonino A. Daplas wrote:
>>>
>>>> Bernhard Rosenkraenzer wrote:
>>>>> Hi,
>>>>> i810fb as a module is broken (checked with 2.6.13-mm3 and 2.6.14-rc2-mm1).
>>>>> It compiles, but the module doesn't actually load because the kernel doesn't
>>>>> recognize the hardware (the MODULE_DEVICE_TABLE statement is missing).
>>>>> The attached patch fixes this.
>>>>>
>>>>> However, the resulting module still doesn't work.
>>>>> It loads, and then garbles the display (black screen with a couple of yellow
>>>>> lines, no matter what is written into the framebuffer device).
>>>> Did you compile CONFIG_FRAMEBUFFER_CONSOLE statically, or did a modprobe fbcon?
>>>> Does i810fb work if compiled statically?
>>> Since this is *really* coming out often: is there a specific reason
>>> why the fb modules do not depend on fbcon?
>>>
>> Some need fbdev only, without fbcon, ie, embedded.
>
> And does fbcon make sense *without* fbdevs?
>

You can load fbcon only if you also load the core fb layer. But without
any registered fbdevs, fbcon just stays in memory and will not take over
the console.

Tony

2005-10-09 16:49:05

by Bernhard Rosenkraenzer

[permalink] [raw]
Subject: Re: Modular i810fb broken, partial fix

On Saturday, 8. October 2005 17:30, Manuel Lauss wrote:
> for reference:
> modprobe i810fb mode_option=1024x768-8@60 hsync1=40 hsync2=60 vsync1=50
> vsync2=70 vram=4

Can you try with 1024x768-16@60? That's what we're using in the installer (and
what people reported to gable the display).

Thanks
bero

2005-10-09 17:13:58

by Manuel Lauss

[permalink] [raw]
Subject: Re: Modular i810fb broken, partial fix

Bernhard Rosenkraenzer wrote:
> On Saturday, 8. October 2005 17:30, Manuel Lauss wrote:
>
>>for reference:
>>modprobe i810fb mode_option=1024x768-8@60 hsync1=40 hsync2=60 vsync1=50
>>vsync2=70 vram=4
>
>
> Can you try with 1024x768-16@60? That's what we're using in the installer (and
> what people reported to gable the display).

tried with -16 and -32, with/without accel=1, mtrr=1, extvga=1,
no problems. I _do_ see problems with >8 bpp when
warm-rebooting from windows. Cursor is a 8 character long
random pixelpile or a 3x3 ch blinking block of text.
Cold boot and warm-rebooting from linux
are okay though (I suspect bios does not reset accel engine).

--
mano

2005-10-09 17:21:55

by Manuel Lauss

[permalink] [raw]
Subject: Re: Modular i810fb broken, partial fix

Bernhard Rosenkraenzer wrote:
> On Saturday, 8. October 2005 17:30, Manuel Lauss wrote:
>
>>for reference:
>>modprobe i810fb mode_option=1024x768-8@60 hsync1=40 hsync2=60 vsync1=50
>>vsync2=70 vram=4
>
>
> Can you try with 1024x768-16@60? That's what we're using in the installer (and
> what people reported to gable the display).

Are you using bootsplash in your installer kernels?
Last time I tried that (2.4.22 iirc), it garbled
the display horribly.

--
Manuel Lauss

2005-10-10 08:06:34

by Antonino A. Daplas

[permalink] [raw]
Subject: Re: Modular i810fb broken, partial fix

Bernhard Rosenkraenzer wrote:
> On Saturday, 8. October 2005 17:30, Manuel Lauss wrote:
>> for reference:
>> modprobe i810fb mode_option=1024x768-8@60 hsync1=40 hsync2=60 vsync1=50
>> vsync2=70 vram=4
>
> Can you try with 1024x768-16@60? That's what we're using in the installer (and
> what people reported to gable the display).
>

Try disabling I2C/DDC support of i810fb. A messed-up EDID block can
give problems with the display.

Tony