[SeaBIOS] [PATCH v2 0/6] Build PCI hotplug SSDT from a single template

Paolo Bonzini pbonzini at redhat.com
Tue Aug 7 14:07:08 CEST 2012


Il 03/08/2012 19:52, Michael S. Tsirkin ha scritto:
> On Fri, Aug 03, 2012 at 05:57:41PM +0200, Paolo Bonzini wrote:
>> Il 03/08/2012 16:53, Jason Baron ha scritto:
>>> I think this patch should be ok. Its harder for me in the sense that I
>>> need to re-do my patch :)
>>>
>>> Here's my current ssdt-pcihp.dsl patch, maybe Paolo can spot if there
>>> would be any conflicts. I suspect, the auto generation that Paolo is
>>> doing is actually going to simplify things in general for these typtes
>>> of nested tables.
>>
>> There are two parts here.
>>
>> One is the actual declaration of the devices, and here I think my patch
>> is actually going to simplify things a bit.  The second level of devices
>> can stay in ssdt-pcihp.dsl, and it will just work.
> 
> Long term, it is worth exploring whether we can load second
> level dynamically when bridge is added by hotplug
> or detected by bus scan.

This should be doable with LoadTable (to replace a non-bridge
_SB.PCI0.Sxx with a bridge-aware definition).  Even if it's long-term,
it makes sense then to split now the huge PCNT method between a part
that is in \_SB.PCI0

            If (LEqual(Arg0, 0x##slot)) {
                If (LEqual(Arg1, Zero)) {
                    Notify(S##slot, Arg2)
                } Else {
                    \_SB.PCI0.S##slot.PCNT(Arg1, Arg2)
                }
            }

and another that is in the per-slot devices.  All in all, it doesn't
seem like this series would add any hurdle, and it helps remaining clean.

Where would you handle cold-plug? _PS0?

Paolo




More information about the SeaBIOS mailing list