qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH] pci: add standard bridge device


From: Michael S. Tsirkin
Subject: Re: [Qemu-devel] [PATCH] pci: add standard bridge device
Date: Tue, 1 Nov 2011 13:48:17 +0200
User-agent: Mutt/1.5.21 (2010-09-15)

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 

It seems easier to start with a non hotpluggable bridge.
I'm still trying to understand how is bridge hotplug
supposed to work under ACPI, which wants all devices
described in a static page.

> >>>
> >>>> 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.

Yes, but ACPI can drive SHPC.

> >> 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?

I don't think so.

> >> Thanks
> >> Wen Congyang
> > 
> > Can we discuss these questions on the mailing list?
> 
> No problem.
> I have cced qemu mailing list.
> 
> Thanks
> Wen Congyang



reply via email to

[Prev in Thread] Current Thread [Next in Thread]