[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] KVM call minutes 2013-01-29 - Port I/O
From: |
Michael S. Tsirkin |
Subject: |
Re: [Qemu-devel] KVM call minutes 2013-01-29 - Port I/O |
Date: |
Wed, 30 Jan 2013 14:31:56 +0200 |
On Wed, Jan 30, 2013 at 11:48:14AM +0000, Peter Maydell wrote:
> On 30 January 2013 11:39, Andreas Färber <address@hidden> wrote:
> > Proposal by hpoussin was to move _list_add() code to ISADevice:
> > http://lists.gnu.org/archive/html/qemu-devel/2013-01/msg00508.html
> >
> > Concerns:
> > * PCI devices (VGA, QXL) register I/O ports as well
> > => above patches add dependency on ISABus to machines
> > -> "<benh> no mac ever had one"
> > => PCIDevice shouldn't use ISA API with NULL ISADevice
> > * Lack of avi: Who decides about memory API these days?
> >
> > armbru and agraf concluded that moving this into ISA is wrong.
> >
> > => I will drop the remaining ioport patches from above series.
> >
> > Suggestions on how to proceed with tackling the issue are welcome.
>
> How does this stuff work on real hardware? I would have
> expected that a PCI device registering the fact it has
> IO ports would have to do so via the PCI controller it
> is plugged into...
All programming is done by the OS, devices do not register
with controller.
Each bridge has two ways to claim an IO transaction:
- transaction is within the window programmed in the bridge
- subtractive decoding enabled and no one else claims the transaction
At the bus level, transaction happens on a bus and an appropriate device
will claim it.
> My naive don't-know-much-about-portio suggestion is that this
> should work the same way as memory regions: each device
> provides portio regions, and the controller for the bus
> (ISA or PCI) exposes those to the next layer up, and
> something at board level maps it all into the right places.
>
> -- PMM
- [Qemu-devel] What to do about non-qdevified devices? (was: KVM call minutes 2013-01-29), (continued)
- [Qemu-devel] What to do about non-qdevified devices? (was: KVM call minutes 2013-01-29), Markus Armbruster, 2013/01/30
- Re: [Qemu-devel] What to do about non-qdevified devices?, Andreas Färber, 2013/01/30
- Re: [Qemu-devel] What to do about non-qdevified devices? (was: KVM call minutes 2013-01-29), Peter Maydell, 2013/01/30
- Re: [Qemu-devel] What to do about non-qdevified devices?, Markus Armbruster, 2013/01/30
- Re: [Qemu-devel] What to do about non-qdevified devices?, Andreas Färber, 2013/01/30
- Re: [Qemu-devel] What to do about non-qdevified devices?, Paolo Bonzini, 2013/01/30
- Re: [Qemu-devel] What to do about non-qdevified devices?, Andreas Färber, 2013/01/30
- Re: [Qemu-devel] What to do about non-qdevified devices?, Anthony Liguori, 2013/01/30
[Qemu-devel] KVM call minutes 2013-01-29 - Port I/O, Andreas Färber, 2013/01/30
Re: [Qemu-devel] KVM call minutes 2013-01-29 - Port I/O, Alexander Graf, 2013/01/30
Re: [Qemu-devel] KVM call minutes 2013-01-29 - Port I/O, Markus Armbruster, 2013/01/30
Re: [Qemu-devel] KVM call minutes 2013-01-29 - Port I/O, Anthony Liguori, 2013/01/30
Re: [Qemu-devel] KVM call minutes 2013-01-29 - Port I/O, Andreas Färber, 2013/01/30
Re: [Qemu-devel] KVM call minutes 2013-01-29 - Port I/O, Michael S. Tsirkin, 2013/01/30
Re: [Qemu-devel] KVM call minutes 2013-01-29 - Port I/O, Andreas Färber, 2013/01/30
Re: [Qemu-devel] KVM call minutes 2013-01-29 - Port I/O, Michael S. Tsirkin, 2013/01/30
Re: [Qemu-devel] KVM call minutes 2013-01-29 - Port I/O, Anthony Liguori, 2013/01/30