[SeaBIOS] seabios: acpi: add _RMV control method for PCI devices

Gleb Natapov gleb at redhat.com
Mon Dec 13 09:49:32 CET 2010

On Mon, Dec 13, 2010 at 10:41:25AM +0200, Avi Kivity wrote:
> On 12/13/2010 02:00 AM, Marcelo Tosatti wrote:
> >On Sat, Dec 11, 2010 at 09:39:30AM +0200, Avi Kivity wrote:
> >>  On 12/08/2010 07:08 PM, Marcelo Tosatti wrote:
> >>  >Use _RMV method to indicate whether device can be removed.
> >>  >
> >>  >Data is retrieved from QEMU via I/O port 0xae0c.
> >>  >
> >>
> >>  Where did this port come from?
> >
> >Its the next available address after "PCI EJ base", used
> >for QEMU<->ACPI hotplug communication.
> >
> >>  What's the protocol?
> >
> >ACPI reads the 32-bit field indicating the return value of the _RMV
> >method (which is used by Windows to decide removability). 1-bit per
> >slot.
> >
> >More ports have to be registered if more buses are added.
> >
> >>  Maybe we should do this via fw_cfg.
> >
> >I don't see a need for it? (yes, it might be possible, but i'm not
> >familiar enough with AML).
> To avoid adding tons of undocumented I/O ports, and to allow
> discoverability (what happens with a new seabios on old qemu)?
We already have out own mini pci hot-plug controller at io port 0xae00.
The patch just extends its functionality a bit. Logically this
functionality belongs there.

> We could do this in two ways: by adding a fwcfg client to the DSDT,
> or by copying the information to system memory, and referencing
> system memory from the DSDT.
This is even worse. It requires some fixed address to be shared between
DSDT and Seabios (or alternatively Seabios will have to generate this
part of DSDT dynamically).


More information about the SeaBIOS mailing list