[SeaBIOS] [PATCH 6/6] acpi: build PCI hotplug devices from a single template
Kevin O'Connor
kevin at koconnor.net
Wed Aug 1 02:46:30 CEST 2012
On Tue, Jul 31, 2012 at 11:52:13AM +0200, Paolo Bonzini wrote:
> More than 1kb of data is taken by the 32 copies of the PCI hotplug SSDT
> methods. We can build them from a single template like we do for CPUs
> (wrapped in a Scope(\_SB.PCI0) block).
>
> Three items differ for each slot: the device name, bits 16-23 of _ADR,
> the _SUN value. On top of this we have to rename the eject method for
> non-removable slots, like we already do in build_pcihp.
>
> There is a small change in the ASL: instead of including the number of
> the slot in the implementation of _EJ0, we just call _SUN. This is also
> similar to what we do for CPU hotplug.
>
> Once we do this, there is no need to keep a separate SSDT for PCI hotplug.
> Everything can reside in the same table.
I agree with this patch series. A couple of questions - why not
create the Notify stuff dynamically (as CPU hotplug does) instead of
moving it back to the dsdt? If a device doesn't support hotplug, why
not skip creating the device instead of patching _EJ0?
-Kevin
More information about the SeaBIOS
mailing list