[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).
--
Gleb.
More information about the SeaBIOS
mailing list