2004-10-22 16:37:36

by Pallipadi, Venkatesh

[permalink] [raw]
Subject: RE: [Linux-fbdev-devel] Re: Generic VESA framebuffer driver and Video card BOOT?

>-----Original Message-----
>From: Matthew Garrett [mailto:[email protected]]
>Sent: Thursday, October 21, 2004 6:39 PM
>To: Pallipadi, Venkatesh
>Cc: [email protected]
>Subject: Re: [Linux-fbdev-devel] Re: Generic VESA framebuffer
>driver and Video card BOOT?
>
>Pallipadi, Venkatesh <[email protected]> wrote:
>
>Hi,
>
>> Even I thought so. But, with the emulator it doesn't hang. It brings
>> back my video. I double checked this using another vm86
>emulator too.
>> No hang even there. I couldn't figure out why Ole's patch won't work
>> though. Right now I am using call_usermodehelper() to call the
>> emulator during resume and the video comes back just fine on this
>> system where Ole's patch didn't work.
>
>Is it possible to get this patch and code off you? I'd be interested in
>testing this solution on various bits of hardware I've been working on.
>

Actually I sent the kernel patch to call some userlevel vgapost utility
on this same thread around a week back. I am sending it here again.

I don't think sending a big userlevel code tar file is appropriate on
lkml.
I will send that in a separate mail to Matthew and Stefan. If anyone
else
wants to play with it, just let me know.

It works for me on various systems with Radeon card. It didn't help on
systems with Intel Graphics card.

Stefan: Yes. Usermodehelper won't work during the driver resume. But, it

works later after the kernel threads are woken up. With attached patch
and
with user level vgapost I can get video back, both on X and VGA console.
It doesn't help with framebuffer, as the framebuffer reinitialization
happens during the driver resume, which is earlier than this vgapost
call.


Thanks,
Venki


Attachments:
vgapost2.patch (1.87 kB)
vgapost2.patch

2004-10-22 17:31:19

by [email protected]

[permalink] [raw]
Subject: Re: [Linux-fbdev-devel] Re: Generic VESA framebuffer driver and Video card BOOT?

On Fri, 22 Oct 2004 09:36:40 -0700, Pallipadi, Venkatesh
<[email protected]> wrote:
> Actually I sent the kernel patch to call some userlevel vgapost utility
> on this same thread around a week back. I am sending it here again.

It is more complex to restart the VGA system when there are multiple
cards. You have to disable all of the other VGA devices before
reseting one otherwise you will end up with two enabled VGA devices
and address ownership conflicts. You also have to move the PCI bus
routing around so that it points to the correct card.

There is a pending patch in mm, bk-pci, that exposes video ROMs via
sysfs. That makes writing the reset program cleaner. You should not
play with the ROM or the PIC bus routine from user space, that needs
to be done in the kernel.

Another proposal is that basic VGA control be moved to a separate
driver. I'll attach some code I started for this driver but I never
finished.

In a complete driver VGAcon should move to the active VGA device if
sysfs is used to change it.

--
Jon Smirl
[email protected]


Attachments:
(No filename) (1.04 kB)
vga.patch (15.03 kB)
Download all attachments

2004-10-23 04:16:29

by Stefan Dösinger

[permalink] [raw]
Subject: Re: [Linux-fbdev-devel] Re: Generic VESA framebuffer driver and Video card BOOT?


> Actually I sent the kernel patch to call some userlevel vgapost utility
> on this same thread around a week back. I am sending it here again.
>
> I don't think sending a big userlevel code tar file is appropriate on
> lkml.
> I will send that in a separate mail to Matthew and Stefan. If anyone
> else
> wants to play with it, just let me know.
>
> It works for me on various systems with Radeon card. It didn't help on
> systems with Intel Graphics card.
Works for me too. You can add "Acer Travelmate 800" to the it_works_on
list ;-)

> Stefan: Yes. Usermodehelper won't work during the driver resume. But, it
>
> works later after the kernel threads are woken up. With attached patch
> and
> with user level vgapost I can get video back, both on X and VGA console.
> It doesn't help with framebuffer, as the framebuffer reinitialization
> happens during the driver resume, which is earlier than this vgapost
> call.
I expected this, but I hoped that it works somehow with radeonfb.

Stefan