* Video BIOS reset?
@ 2003-09-17 17:00 Nate Lawson
[not found] ` <20030917095045.K12240-Y6VGUYTwhu0@public.gmane.org>
0 siblings, 1 reply; 2+ messages in thread
From: Nate Lawson @ 2003-09-17 17:00 UTC (permalink / raw)
To: Pavel Machek; +Cc: acpi-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f
I am looking into a common problem on FreeBSD. Whenever I resume, the
console is messed up. X works fine. When data is printed to the console,
it scrolls diagonally and skips lines. My first thought was that the VESA
display was not in linear mode.
I looked at the Linux code and noted two parts that seem to be intended to
address this:
1. lcall 0xc0000,$3
2. int 0x10, func 0x4f02
The first one appears to only be a read of the current VESA mode register.
The second is Set Mode. I tried adding this manually to our resume code
but there is no change. I also looked at vgacon.c to see if our console
resume code wasn't complete but nothing jumped out at me. Any ideas what
we might be missing?
Src:
linux/arch/i386/kernel/acpi/wakeup.S
linux/drivers/video/console/vgacon.c
Thanks,
Nate
-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: Video BIOS reset?
[not found] ` <20030917095045.K12240-Y6VGUYTwhu0@public.gmane.org>
@ 2003-09-17 23:47 ` Pavel Machek
0 siblings, 0 replies; 2+ messages in thread
From: Pavel Machek @ 2003-09-17 23:47 UTC (permalink / raw)
To: Nate Lawson; +Cc: acpi-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f
Hi!
[Greetings to root.org. There's root.cz in our country, and I have
some friends there].
> I am looking into a common problem on FreeBSD. Whenever I resume, the
> console is messed up. X works fine. When data is printed to the console,
> it scrolls diagonally and skips lines. My first thought was that the VESA
> display was not in linear mode.
>
> I looked at the Linux code and noted two parts that seem to be intended to
> address this:
>
> 1. lcall 0xc0000,$3
> 2. int 0x10, func 0x4f02
> The first one appears to only be a read of the current VESA mode
> register.
The first one is "init VGA rom".
> The second is Set Mode. I tried adding this manually to our resume code
> but there is no change. I also looked at vgacon.c to see if our console
> resume code wasn't complete but nothing jumped out at me. Any ideas what
> we might be missing?
Notice that both lcall and int 0x10 are extremely ugly hacks, that are
not guaranteed to work, and have to be enabled manually by
commmand-line option. It does not work on all machines, either (there
are machines where neither 1. nor 2. works). Its a mess. Unfortunately
anything better needs video driver that knows how to bring up video
card from resume :-(.
Pavel
--
When do you have a heart between your knees?
[Johanka's followup: and *two* hearts?]
-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2003-09-17 23:47 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2003-09-17 17:00 Video BIOS reset? Nate Lawson
[not found] ` <20030917095045.K12240-Y6VGUYTwhu0@public.gmane.org>
2003-09-17 23:47 ` Pavel Machek
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox