[SeaBIOS] [PATCH] seabios: restore piix pm config registers after resume
Kevin O'Connor
kevin at koconnor.net
Mon Jan 13 18:11:52 CET 2014
On Mon, Jan 13, 2014 at 06:55:50PM +0200, Michael S. Tsirkin wrote:
> On Mon, Jan 13, 2014 at 11:45:40AM -0500, Kevin O'Connor wrote:
> > On Mon, Jan 13, 2014 at 06:36:56PM +0200, Michael S. Tsirkin wrote:
> > > On Mon, Jan 13, 2014 at 11:31:20AM -0500, Kevin O'Connor wrote:
> > > > +void
> > > > +pci_resume(void)
> > > > +{
> > > > + if (!CONFIG_QEMU)
> > > > + return;
> > > > + if (PiixPMBDF >= 0)
> > >
> > > so this does nothing unless piix4_pm_setup run but
> > > if it did why do we need to resume anything?
> >
> > PiixPMBDF is set during the SeaBIOS init phase. The proposed
> > pci_resume() function is called during the resume phase. The goal of
> > the proposed patch is to store the BDF during init so that it's
> > available during resume without requiring a bus scan.
> >
> > -Kevin
>
> Confused. I thought pci_init_device is the one
> calling piix4_pm_setup.
It is. Call chain on init is:
handle_post()->...->qemu_platform_setup()->pci_setup()->pci_bios_init_devices()->pci_bios_init_device()->pci_init_device()->piix4_pm_setup()
Call chain on proposed resume is:
handle_resume()->handle_resume32()->s3_resume()->pci_resume().
> What am I missing?
You have me confused now. Perhaps I've misunderstood your question or
misunderstood the intent of your/Marcel's original patch.
-Kevin
More information about the SeaBIOS
mailing list