At 11/02/2011 10:15 AM, Isaku Yamahata Write: > On Tue, Nov 01, 2011 at 04:49:08PM +0800, Wen Congyang wrote: >> At 11/01/2011 04:44 PM, Michael S. Tsirkin Write: >>> On Tue, Nov 01, 2011 at 09:27:25AM +0800, Wen Congyang wrote: >>>> Hi, Michael S. Tsirkin >>>> >>>> At 09/26/2011 03:08 PM, Michael S. Tsirkin Write: >>>>> On Mon, Sep 26, 2011 at 02:18:15PM +0800, Wen Congyang wrote: >>>>>> Hi, Michael S. Tsirkin >>>>>> >>>>>> At 07/04/2011 05:43 PM, Michael S. Tsirkin Write: >>>>>>> This adds support for a standard pci to pci bridge, >>>>>>> enabling support for more than 32 PCI devices in the system. >>>>>>> To use, specify the device id as a 'bus' option. >>>>>>> Example: >>>>>>> -device pci-bridge,id=bridge1 \ >>>>>>> -netdev user,id=u \ >>>>>>> -device ne2k_pci,id=net2,bus=bridge1,netdev=u >>>>>>> >>>>>>> TODO: device hotplug support. >>>>>> >>>>>> Do you have any plan to implement this? >>>>> >>>>> I think this will be needed before merging the bridge code. >>>> >>>> What will you plan to support? >>>> >>>> 1. all PCI-to-PCI bridge is not hotpluggable. >>>> host bridge >>>> | >>>> --------------------- >>>> | | >>>> bridge bridge <= *not* hotpluggable >>>> | | >>>> ----------- ------------ >>>> | | | | >>>> slot slot slot slot <= hotplug here >>>> >>>> >>>> 2. PCI-to-PCI bridge is hotpluggable. >>>> bridge >>>> | >>>> ------------------- >>>> | | >>>> bridge on slot bridge on slot <= hot-plug here >>>> | | >>>> ------- ------- >>>> | | | | >>>> slot slot slot slot <= hot-plug here >>>> > > If P2P bridge hotplug is supported, pci bus numbering needs refinement > for numbering bus sparsely. > > >>>>>> I read the qemu's code, and find that qemu uses PIIX4_PM to support >>>>>> pci device hot plugging on PCI bus 0. How to support it on the other >>>>>> bus? Add PIIX4_PM to each PCI bus or implement a new power management? >>>>>> >>>>>> Thanks >>>>>> Wen Congyang >>>>> >>>>> There are many valid options. One is shpc interface. >>>>> I started looking into this but got preempted by other >>>>> tasks. Hope to get back to this at some point. >>>> >>>> Some old OS does not support shpc. So I think it's better to use ACPI to >>>> do it. > > Out of curiosity, what OS do you have in mind?
Windows. IIRC, Windows supports SHPC after vista. > > >>>> Currently, we get which device is removed or inserted by reading the I/O >>>> port >>>> 0xae00(length: 8 bytes), and _EJ0 method uses I/O port 0xae08(length: 4 >>>> bytes). >>>> How do we determine this I/O address? Is there any spec to describe it? > > As Michael already stated, we can support shpc with acpi. > What's the point of enhancing adhoc qemu specific hotplug controller > instead of shpc? > We've suffered from its adhoc interface, I think. Do you mean I/O region 0xae00, 0xae08 is not standard. It can work only with qemu. Thanks Wen Congyang > > thanks, > >>>> Thanks >>>> Wen Congyang >>> >>> Can we discuss these questions on the mailing list? >> >> No problem. >> I have cced qemu mailing list. >> >> Thanks >> Wen Congyang >> >