Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 19 Aug 2010 08:48:04 +0400
From:      Oleg Sharoyko <osharoiko@gmail.com>
To:        Jung-uk Kim <jkim@freebsd.org>
Cc:        freebsd-hackers@freebsd.org, Christian Zander <czander@nvidia.com>
Subject:   Re: PCI config space is not restored upon resume (macbook pro)
Message-ID:  <AANLkTimOt9qGsoLrYah9ooDsnUaE8qFip%2BK5J8X_G-mw@mail.gmail.com>
In-Reply-To: <201008161422.01541.jkim@FreeBSD.org>
References:  <AANLkTikMFhG1QLDf4raf%2BrxOKhobjoA-dRbUew2-8KeF@mail.gmail.com> <AANLkTim-xFd9ve=M0iWBZRHrysSQ=aRGz8_1O1mT%2BW0f@mail.gmail.com> <AANLkTi=Yq_UTWpOiKR7=-_1mQfQOBBE_H16L_TpnDRdJ@mail.gmail.com> <201008161422.01541.jkim@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On 16 August 2010 22:21, Jung-uk Kim <jkim@freebsd.org> wrote:

> In theory, we can shadow video ROM and execute it in emulation *iff*
> it actually contains x86 real mode code. =C2=A0It won't be too hard but I
> am not sure whether it is worth trying. =C2=A0Are you sure the option ROM
> is actually real mode code but not shadowed again after resume?

Sorry, I guess I wasn't clear enough. There is no VGA ROM at 0xc0000
after resume. In patches for linux loader (which I've mentioned in
previous message) they search for ROM, then copy it into memory,
execute and install at proper address. This is possible during boot,
but I don't think this can be done after resume. And, moreover, I tend
to agree that this isn't worth trying as this is very specific to
macboocs only (AFAIK).

By the way, do you think it could be possible to dump option ROM
contents into a file before suspending the system and then load it
back on resume from userland? I've seen a userland tool in ports
(sysutils/vbetool) which can execute VESA BIOS functions. So, I guess,
it could be possible to try to call POST using saved ROM dump, but I
don't know if it's possible to stick this ROM image into memory
"forever" and for all processes.

--=20
Oleg Sharoyko



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?AANLkTimOt9qGsoLrYah9ooDsnUaE8qFip%2BK5J8X_G-mw>