On 23 July 2013 13:34, Paolo Bonzini <pbonz...@redhat.com> wrote:
> Il 23/07/2013 14:22, Peter Maydell ha scritto:
>> On 23 July 2013 13:19, Paolo Bonzini <pbonz...@redhat.com> wrote:
>>> Il 22/07/2013 20:21, Peter Maydell ha scritto
>>>> you can't as a user of this sort of hardware
>>>> plug in an extra serial port to a SoC, because there's just nowhere
>>>> to plug it in. So why should it be possible to plug an extra
>>>> serial port into the QEMU model of the SoC?
>>>
>>> And why exactly should QEMU be limited to modeling an existing SoC?
>>>
>>> Perhaps the user is not working with an existing SoC.  They are working
>>> with with IP building blocks that they can combine the way they prefer,
>>> and they haven't yet made up their mind on the exact set of devices
>>> they'll have.  (because not all the world is a PC, but then not all the
>>> non-PC world is ARM either).
>>
>> This sounds like (a) a good thing (b) something that will
>> turn into an incredible incomprehensible mess if we try
>> to specify it on the command line. Why would we want to do that?
>
> It is an incomprehensible mess on the command line, but it is actually
> quite fine if you use "-readconfig" instead.

Well, the justification for this whole new bus appears to be
"so you can easily just add a new device on the command line".

>>> Perhaps the user can plug daughterboards that connect to the SoC and add
>>> an extra serial port, visible as yet another MMIO device.
>>
>> Pluggable daughterboards should be implemented by actually
>> defining the bus/socket that exists between the mainboard
>> and the daughterboard, so you could say -device my-daughterboard
>> and have it plug in to the mainboard.
>
> The bus might just be the processor's data bus + the interrupt
> controller's pins, basically the same as sysbus.

Yes, we should have easy support for defining a pluggable
bus as a collection of pins.

> In fact, the main thing I dislike about Alex's patch is adding a new bus
> instead of making sysbus devices "just work" as pluggable devices.

Agreed, more or less. Actually I'd rather sysbus devices
went away -- the requirement for interrupt and GPIO and
memory regions to all be defined as single arrays (so you
have to know what interrupt line 3 happens to be, and
that memory region 1 is the registers, and so on) is
pretty unfriendly. We should be able to define all these
as named connections.

-- PMM

Reply via email to