[Qemu-devel] [PATCH v2 02/22] config: CONFIG_SERIAL* is already in pci.mak

Juan Quintela posted 22 patches 7 years, 2 months ago
[Qemu-devel] [PATCH v2 02/22] config: CONFIG_SERIAL* is already in pci.mak
Posted by Juan Quintela 7 years, 2 months ago
Signed-off-by: Juan Quintela <quintela@redhat.com>
---
 default-configs/alpha-softmmu.mak       | 2 --
 default-configs/arm-softmmu.mak         | 2 --
 default-configs/hppa-softmmu.mak        | 3 ---
 default-configs/i386-softmmu.mak        | 2 --
 default-configs/mips-softmmu-common.mak | 2 --
 default-configs/ppc-softmmu.mak         | 1 -
 default-configs/ppcemb-softmmu.mak      | 2 --
 default-configs/sh4-softmmu.mak         | 2 --
 default-configs/sh4eb-softmmu.mak       | 2 --
 default-configs/sparc64-softmmu.mak     | 2 --
 default-configs/x86_64-softmmu.mak      | 2 --
 11 files changed, 22 deletions(-)

diff --git a/default-configs/alpha-softmmu.mak b/default-configs/alpha-softmmu.mak
index bbe361f01a..2d81a98441 100644
--- a/default-configs/alpha-softmmu.mak
+++ b/default-configs/alpha-softmmu.mak
@@ -2,8 +2,6 @@
 
 include pci.mak
 include usb.mak
-CONFIG_SERIAL=y
-CONFIG_SERIAL_ISA=y
 CONFIG_I82374=y
 CONFIG_I8254=y
 CONFIG_I8257=y
diff --git a/default-configs/arm-softmmu.mak b/default-configs/arm-softmmu.mak
index 834d45cfaf..4d33e9983d 100644
--- a/default-configs/arm-softmmu.mak
+++ b/default-configs/arm-softmmu.mak
@@ -5,8 +5,6 @@ include usb.mak
 CONFIG_VGA=y
 CONFIG_NAND=y
 CONFIG_ECC=y
-CONFIG_SERIAL=y
-CONFIG_SERIAL_ISA=y
 CONFIG_PTIMER=y
 CONFIG_SD=y
 CONFIG_MAX7310=y
diff --git a/default-configs/hppa-softmmu.mak b/default-configs/hppa-softmmu.mak
index 4badc0521e..f3712afc27 100644
--- a/default-configs/hppa-softmmu.mak
+++ b/default-configs/hppa-softmmu.mak
@@ -1,8 +1,5 @@
 include pci.mak
 include usb.mak
-CONFIG_SERIAL=y
-CONFIG_SERIAL_ISA=y
-CONFIG_ISA_BUS=y
 CONFIG_I8259=y
 CONFIG_E1000_PCI=y
 CONFIG_IDE_ISA=y
diff --git a/default-configs/i386-softmmu.mak b/default-configs/i386-softmmu.mak
index 8c7d4a0fa0..8827166ba1 100644
--- a/default-configs/i386-softmmu.mak
+++ b/default-configs/i386-softmmu.mak
@@ -15,8 +15,6 @@ CONFIG_IPMI_LOCAL=y
 CONFIG_IPMI_EXTERN=y
 CONFIG_ISA_IPMI_KCS=y
 CONFIG_ISA_IPMI_BT=y
-CONFIG_SERIAL=y
-CONFIG_SERIAL_ISA=y
 CONFIG_PARALLEL=y
 CONFIG_I8254=y
 CONFIG_PCSPK=y
diff --git a/default-configs/mips-softmmu-common.mak b/default-configs/mips-softmmu-common.mak
index fae2347ee7..9bae997ca0 100644
--- a/default-configs/mips-softmmu-common.mak
+++ b/default-configs/mips-softmmu-common.mak
@@ -9,8 +9,6 @@ CONFIG_VGA_ISA=y
 CONFIG_VGA_ISA_MM=y
 CONFIG_VGA_CIRRUS=y
 CONFIG_VMWARE_VGA=y
-CONFIG_SERIAL=y
-CONFIG_SERIAL_ISA=y
 CONFIG_PARALLEL=y
 CONFIG_I8254=y
 CONFIG_PCSPK=y
diff --git a/default-configs/ppc-softmmu.mak b/default-configs/ppc-softmmu.mak
index 3181bbf163..d8dd969499 100644
--- a/default-configs/ppc-softmmu.mak
+++ b/default-configs/ppc-softmmu.mak
@@ -53,7 +53,6 @@ CONFIG_IDE_MACIO=y
 # For PReP
 CONFIG_PREP=y
 CONFIG_PREP_PCI=y
-CONFIG_SERIAL_ISA=y
 CONFIG_MC146818RTC=y
 CONFIG_ISA_TESTDEV=y
 CONFIG_RS6000_MC=y
diff --git a/default-configs/ppcemb-softmmu.mak b/default-configs/ppcemb-softmmu.mak
index ac44f150c6..f7a0d577d8 100644
--- a/default-configs/ppcemb-softmmu.mak
+++ b/default-configs/ppcemb-softmmu.mak
@@ -5,8 +5,6 @@ include sound.mak
 include usb.mak
 CONFIG_PPC4XX=y
 CONFIG_M48T59=y
-CONFIG_SERIAL=y
-CONFIG_SERIAL_ISA=y
 CONFIG_I8257=y
 CONFIG_OPENPIC=y
 CONFIG_PFLASH_CFI01=y
diff --git a/default-configs/sh4-softmmu.mak b/default-configs/sh4-softmmu.mak
index caeccd55be..2b46d57ab4 100644
--- a/default-configs/sh4-softmmu.mak
+++ b/default-configs/sh4-softmmu.mak
@@ -2,8 +2,6 @@
 
 include pci.mak
 include usb.mak
-CONFIG_SERIAL=y
-CONFIG_SERIAL_ISA=y
 CONFIG_PTIMER=y
 CONFIG_PFLASH_CFI02=y
 CONFIG_SH4=y
diff --git a/default-configs/sh4eb-softmmu.mak b/default-configs/sh4eb-softmmu.mak
index 53b9cd7b5a..279896a43d 100644
--- a/default-configs/sh4eb-softmmu.mak
+++ b/default-configs/sh4eb-softmmu.mak
@@ -2,8 +2,6 @@
 
 include pci.mak
 include usb.mak
-CONFIG_SERIAL=y
-CONFIG_SERIAL_ISA=y
 CONFIG_PTIMER=y
 CONFIG_PFLASH_CFI02=y
 CONFIG_SH4=y
diff --git a/default-configs/sparc64-softmmu.mak b/default-configs/sparc64-softmmu.mak
index 52edafe547..e039ae3057 100644
--- a/default-configs/sparc64-softmmu.mak
+++ b/default-configs/sparc64-softmmu.mak
@@ -4,8 +4,6 @@ include pci.mak
 include usb.mak
 CONFIG_M48T59=y
 CONFIG_PTIMER=y
-CONFIG_SERIAL=y
-CONFIG_SERIAL_ISA=y
 CONFIG_PARALLEL=y
 CONFIG_PCKBD=y
 CONFIG_FDC=y
diff --git a/default-configs/x86_64-softmmu.mak b/default-configs/x86_64-softmmu.mak
index 0390b4303c..85528ac9af 100644
--- a/default-configs/x86_64-softmmu.mak
+++ b/default-configs/x86_64-softmmu.mak
@@ -15,8 +15,6 @@ CONFIG_IPMI_LOCAL=y
 CONFIG_IPMI_EXTERN=y
 CONFIG_ISA_IPMI_KCS=y
 CONFIG_ISA_IPMI_BT=y
-CONFIG_SERIAL=y
-CONFIG_SERIAL_ISA=y
 CONFIG_PARALLEL=y
 CONFIG_I8254=y
 CONFIG_PCSPK=y
-- 
2.17.1


Re: [Qemu-devel] [PATCH v2 02/22] config: CONFIG_SERIAL* is already in pci.mak
Posted by Thomas Huth 7 years, 2 months ago
On 08/08/2018 01:48 PM, Juan Quintela wrote:
> Signed-off-by: Juan Quintela <quintela@redhat.com>
> ---
>  default-configs/alpha-softmmu.mak       | 2 --
>  default-configs/arm-softmmu.mak         | 2 --
>  default-configs/hppa-softmmu.mak        | 3 ---
>  default-configs/i386-softmmu.mak        | 2 --
>  default-configs/mips-softmmu-common.mak | 2 --
>  default-configs/ppc-softmmu.mak         | 1 -
>  default-configs/ppcemb-softmmu.mak      | 2 --
>  default-configs/sh4-softmmu.mak         | 2 --
>  default-configs/sh4eb-softmmu.mak       | 2 --
>  default-configs/sparc64-softmmu.mak     | 2 --
>  default-configs/x86_64-softmmu.mak      | 2 --
>  11 files changed, 22 deletions(-)
> 
> diff --git a/default-configs/alpha-softmmu.mak b/default-configs/alpha-softmmu.mak
> index bbe361f01a..2d81a98441 100644
> --- a/default-configs/alpha-softmmu.mak
> +++ b/default-configs/alpha-softmmu.mak
> @@ -2,8 +2,6 @@
>  
>  include pci.mak
>  include usb.mak
> -CONFIG_SERIAL=y
> -CONFIG_SERIAL_ISA=y
>  CONFIG_I82374=y
>  CONFIG_I8254=y
>  CONFIG_I8257=y
> diff --git a/default-configs/arm-softmmu.mak b/default-configs/arm-softmmu.mak
> index 834d45cfaf..4d33e9983d 100644
> --- a/default-configs/arm-softmmu.mak
> +++ b/default-configs/arm-softmmu.mak
> @@ -5,8 +5,6 @@ include usb.mak
>  CONFIG_VGA=y
>  CONFIG_NAND=y
>  CONFIG_ECC=y
> -CONFIG_SERIAL=y
> -CONFIG_SERIAL_ISA=y
>  CONFIG_PTIMER=y
>  CONFIG_SD=y
>  CONFIG_MAX7310=y
> diff --git a/default-configs/hppa-softmmu.mak b/default-configs/hppa-softmmu.mak
> index 4badc0521e..f3712afc27 100644
> --- a/default-configs/hppa-softmmu.mak
> +++ b/default-configs/hppa-softmmu.mak
> @@ -1,8 +1,5 @@
>  include pci.mak
>  include usb.mak
> -CONFIG_SERIAL=y
> -CONFIG_SERIAL_ISA=y
> -CONFIG_ISA_BUS=y

You should maybe mention CONFIG_ISA_BUS in the patch description, too.

Apart from that nit:

Reviewed-by: Thomas Huth <thuth@redhat.com>

Re: [Qemu-devel] [PATCH v2 02/22] config: CONFIG_SERIAL* is already in pci.mak
Posted by Paolo Bonzini 7 years, 2 months ago
On 08/08/2018 13:48, Juan Quintela wrote:
> Signed-off-by: Juan Quintela <quintela@redhat.com>
> ---
>  default-configs/alpha-softmmu.mak       | 2 --
>  default-configs/arm-softmmu.mak         | 2 --
>  default-configs/hppa-softmmu.mak        | 3 ---
>  default-configs/i386-softmmu.mak        | 2 --
>  default-configs/mips-softmmu-common.mak | 2 --
>  default-configs/ppc-softmmu.mak         | 1 -
>  default-configs/ppcemb-softmmu.mak      | 2 --
>  default-configs/sh4-softmmu.mak         | 2 --
>  default-configs/sh4eb-softmmu.mak       | 2 --
>  default-configs/sparc64-softmmu.mak     | 2 --
>  default-configs/x86_64-softmmu.mak      | 2 --
>  11 files changed, 22 deletions(-)

I don't think CONFIG_SERIAL_ISA should be in pci.mak though, and
CONFIG_SERIAL is a dependency of both CONFIG_SERIAL and
CONFIG_SERIAL_PCI.  Perhaps introduce a superio.mak with all the legacy
ISA devices?

Paolo

Re: [Qemu-devel] [PATCH v2 02/22] config: CONFIG_SERIAL* is already in pci.mak
Posted by Juan Quintela 7 years, 2 months ago
Paolo Bonzini <pbonzini@redhat.com> wrote:
> On 08/08/2018 13:48, Juan Quintela wrote:
>> Signed-off-by: Juan Quintela <quintela@redhat.com>
>> ---
>>  default-configs/alpha-softmmu.mak       | 2 --
>>  default-configs/arm-softmmu.mak         | 2 --
>>  default-configs/hppa-softmmu.mak        | 3 ---
>>  default-configs/i386-softmmu.mak        | 2 --
>>  default-configs/mips-softmmu-common.mak | 2 --
>>  default-configs/ppc-softmmu.mak         | 1 -
>>  default-configs/ppcemb-softmmu.mak      | 2 --
>>  default-configs/sh4-softmmu.mak         | 2 --
>>  default-configs/sh4eb-softmmu.mak       | 2 --
>>  default-configs/sparc64-softmmu.mak     | 2 --
>>  default-configs/x86_64-softmmu.mak      | 2 --
>>  11 files changed, 22 deletions(-)
>
> I don't think CONFIG_SERIAL_ISA should be in pci.mak though, and
> CONFIG_SERIAL is a dependency of both CONFIG_SERIAL and
> CONFIG_SERIAL_PCI.  Perhaps introduce a superio.mak with all the legacy
> ISA devices?

Hi

Several things here.

a- I am just removing bits that are duplicated in this patch
   So I think it should got in as it is.

b- SuperIO: I would really be able to remove isapc machine type and
   isa-bus and related friends. (Yes, as put before, I know that all
   pc's have an isa bus, but no need for things like mmouse nowadays)

c- untangling piix and q35 is a bit of work.  The things that I remember
   from memory:
   * tests: we have tests for both on the same file (we can split the
     file)
   * is_default.  This is a mess.  I tried to disable "piix" machine
     types leaving only q35, and then tests complain that there is no
     default machine type.  I think that we should remove all the
     is_default logic and just choose the 1st for the list of machines
     (but that is one idea that I haven't triued to follow yet).

And that is before we start doing things like network isa cards, isa
sound cards, vmport (I hate that), parallel port, whatdog, etc, etc.

Later, Juan.

Re: [Qemu-devel] [PATCH v2 02/22] config: CONFIG_SERIAL* is already in pci.mak
Posted by Paolo Bonzini 7 years, 2 months ago
On 10/08/2018 13:06, Juan Quintela wrote:
>> I don't think CONFIG_SERIAL_ISA should be in pci.mak though, and
>> CONFIG_SERIAL is a dependency of both CONFIG_SERIAL and
>> CONFIG_SERIAL_PCI.  Perhaps introduce a superio.mak with all the legacy
>> ISA devices?
>
> Hi
> 
> Several things here.
> 
> a- I am just removing bits that are duplicated in this patch
>    So I think it should got in as it is.

The right thing to do perhaps would be to remove CONFIG_SERIAL_ISA from
pci.mak.  There's no reason why a pSeries-only QEMU would include
CONFIG_SERIAL_ISA, I think.  Thomas, Laurent?

> b- SuperIO: I would really be able to remove isapc machine type and
>    isa-bus and related friends. (Yes, as put before, I know that all
>    pc's have an isa bus, but no need for things like mmouse nowadays)

Not sure how isapc and a hypothetical superio.mak are related.

> c- untangling piix and q35 is a bit of work.  The things that I remember
>    from memory:
>    * tests: we have tests for both on the same file (we can split the
>      file)

Again, you're duplicating what qos-test is doing, and again I'm not sure
how (c) is related to the other parts.

Paolo

Re: [Qemu-devel] [PATCH v2 02/22] config: CONFIG_SERIAL* is already in pci.mak
Posted by Juan Quintela 7 years, 2 months ago
Paolo Bonzini <pbonzini@redhat.com> wrote:
> On 08/08/2018 13:48, Juan Quintela wrote:
>> Signed-off-by: Juan Quintela <quintela@redhat.com>
>> ---
>>  default-configs/alpha-softmmu.mak       | 2 --
>>  default-configs/arm-softmmu.mak         | 2 --
>>  default-configs/hppa-softmmu.mak        | 3 ---
>>  default-configs/i386-softmmu.mak        | 2 --
>>  default-configs/mips-softmmu-common.mak | 2 --
>>  default-configs/ppc-softmmu.mak         | 1 -
>>  default-configs/ppcemb-softmmu.mak      | 2 --
>>  default-configs/sh4-softmmu.mak         | 2 --
>>  default-configs/sh4eb-softmmu.mak       | 2 --
>>  default-configs/sparc64-softmmu.mak     | 2 --
>>  default-configs/x86_64-softmmu.mak      | 2 --
>>  11 files changed, 22 deletions(-)
>
> I don't think CONFIG_SERIAL_ISA should be in pci.mak though

agreed.

>, and
> CONFIG_SERIAL is a dependency of both CONFIG_SERIAL and
> CONFIG_SERIAL_PCI.

I guess you here mean CONFIG_SERIAL_ISA or CONFIG_SERIAL_PCI.  That is
not enough.  CONFIG_SERIAL really means CONFIG_SERIAL_COMMON, and things
like riscv* require it (i.e. basically all the weird(*) boards have a
serial port)



> Perhaps introduce a superio.mak with all the legacy
> ISA devices?

What are the surperio.mak or isa.mak.  And once there, what are the isa
devices?  Weird things that came to my mind that can't be disabled:

- mmmouse
- serial-isa
- fdc
- vmport
- vga-isa (this is another weird thing)
- ipmi-isa?
- what else?

Later, Juan.

(*): weird here means that they don't have PCI available.

Re: [Qemu-devel] [PATCH v2 02/22] config: CONFIG_SERIAL* is already in pci.mak
Posted by Paolo Bonzini 7 years, 2 months ago
On 14/08/2018 13:40, Juan Quintela wrote:
>> CONFIG_SERIAL is a dependency of both CONFIG_SERIAL and
>> CONFIG_SERIAL_PCI.
> 
> I guess you here mean CONFIG_SERIAL_ISA or CONFIG_SERIAL_PCI.  That is
> not enough.  CONFIG_SERIAL really means CONFIG_SERIAL_COMMON, and things
> like riscv* require it

Right, I would put

   CONFIG_SERIAL=y
   CONFIG_SERIAL_ISA=y

in superio.mak and

   CONFIG_SERIAL=y
   CONFIG_SERIAL_PCI=y

in pci.mak.

>> Perhaps introduce a superio.mak with all the legacy
>> ISA devices?
> What are the surperio.mak or isa.mak.  And once there, what are the isa
> devices?  Weird things that came to my mind that can't be disabled:
> 
> - mmmouse

msmouse is a character device backend, not a device model

> - serial-isa
> - fdc
> - vmport
> - vga-isa (this is another weird thing)
> - ipmi-isa?
> - what else?

SuperIO is RTC, I8254, I8257, I8259, ISA serial, parallel, floppy.  They
can all be disabled (well, no guarantee that it compiles but the option
is there).

Paolo

Re: [Qemu-devel] [PATCH v2 02/22] config: CONFIG_SERIAL* is already in pci.mak
Posted by Peter Maydell 7 years, 2 months ago
On 14 August 2018 at 12:52, Paolo Bonzini <pbonzini@redhat.com> wrote:
> On 14/08/2018 13:40, Juan Quintela wrote:
>>> CONFIG_SERIAL is a dependency of both CONFIG_SERIAL and
>>> CONFIG_SERIAL_PCI.
>>
>> I guess you here mean CONFIG_SERIAL_ISA or CONFIG_SERIAL_PCI.  That is
>> not enough.  CONFIG_SERIAL really means CONFIG_SERIAL_COMMON, and things
>> like riscv* require it
>
> Right, I would put
>
>    CONFIG_SERIAL=y
>    CONFIG_SERIAL_ISA=y
>
> in superio.mak and
>
>    CONFIG_SERIAL=y
>    CONFIG_SERIAL_PCI=y
>
> in pci.mak.

What about the boards that use the serial.c code but do not
have PCI, ISA or a superio chip? That is, all the boards/devices
that call serial_mm_init() directly to create a memory-mapped
16550.

(If anybody feels like trying to do a complicated refactoring,
serial_mm_init() is a pretty ugly legacy API around some
non-QOMified core 16550 code...)

thanks
-- PMM

Re: [Qemu-devel] [PATCH v2 02/22] config: CONFIG_SERIAL* is already in pci.mak
Posted by Paolo Bonzini 7 years, 2 months ago
On 14/08/2018 14:06, Peter Maydell wrote:
> On 14 August 2018 at 12:52, Paolo Bonzini <pbonzini@redhat.com> wrote:
>> On 14/08/2018 13:40, Juan Quintela wrote:
>>>> CONFIG_SERIAL is a dependency of both CONFIG_SERIAL and
>>>> CONFIG_SERIAL_PCI.
>>>
>>> I guess you here mean CONFIG_SERIAL_ISA or CONFIG_SERIAL_PCI.  That is
>>> not enough.  CONFIG_SERIAL really means CONFIG_SERIAL_COMMON, and things
>>> like riscv* require it
>>
>> Right, I would put
>>
>>    CONFIG_SERIAL=y
>>    CONFIG_SERIAL_ISA=y
>>
>> in superio.mak and
>>
>>    CONFIG_SERIAL=y
>>    CONFIG_SERIAL_PCI=y
>>
>> in pci.mak.
> 
> What about the boards that use the serial.c code but do not
> have PCI, ISA or a superio chip? That is, all the boards/devices
> that call serial_mm_init() directly to create a memory-mapped
> 16550.

They just add

   CONFIG_SERIAL=y

to the .mak file.

Paolo

Re: [Qemu-devel] [PATCH v2 02/22] config: CONFIG_SERIAL* is already in pci.mak
Posted by Peter Maydell 7 years, 2 months ago
On 14 August 2018 at 13:56, Paolo Bonzini <pbonzini@redhat.com> wrote:
> On 14/08/2018 14:06, Peter Maydell wrote:
>> What about the boards that use the serial.c code but do not
>> have PCI, ISA or a superio chip? That is, all the boards/devices
>> that call serial_mm_init() directly to create a memory-mapped
>> 16550.
>
> They just add
>
>    CONFIG_SERIAL=y
>
> to the .mak file.

...but the patch that has kicked off this thread is *removing*
CONFIG_SERIAL=y from the various .mak files...

thanks
-- PMM

Re: [Qemu-devel] [PATCH v2 02/22] config: CONFIG_SERIAL* is already in pci.mak
Posted by Paolo Bonzini 7 years, 2 months ago
On 14/08/2018 14:57, Peter Maydell wrote:
> On 14 August 2018 at 13:56, Paolo Bonzini <pbonzini@redhat.com> wrote:
>> On 14/08/2018 14:06, Peter Maydell wrote:
>>> What about the boards that use the serial.c code but do not
>>> have PCI, ISA or a superio chip? That is, all the boards/devices
>>> that call serial_mm_init() directly to create a memory-mapped
>>> 16550.
>>
>> They just add
>>
>>    CONFIG_SERIAL=y
>>
>> to the .mak file.
> 
> ...but the patch that has kicked off this thread is *removing*
> CONFIG_SERIAL=y from the various .mak files...

Probably because they were including pci.mak.  Indeed CONFIG_SERIAL=y
should remain in the
ARM/HPPA/Microblaze/MIPS/Mozie/NiOS2/OpenRISC/PPC/RiscV/SH/SPARC64/Xtensa
.mak files.

Another possibility would be to split .mak files per-machine, and
include the per-machine file in the toplevel.

Thanks,

Paolo

Re: [Qemu-devel] [PATCH v2 02/22] config: CONFIG_SERIAL* is already in pci.mak
Posted by Juan Quintela 7 years, 2 months ago
Peter Maydell <peter.maydell@linaro.org> wrote:
> On 14 August 2018 at 12:52, Paolo Bonzini <pbonzini@redhat.com> wrote:
>> On 14/08/2018 13:40, Juan Quintela wrote:
>>>> CONFIG_SERIAL is a dependency of both CONFIG_SERIAL and
>>>> CONFIG_SERIAL_PCI.
>>>
>>> I guess you here mean CONFIG_SERIAL_ISA or CONFIG_SERIAL_PCI.  That is
>>> not enough.  CONFIG_SERIAL really means CONFIG_SERIAL_COMMON, and things
>>> like riscv* require it
>>
>> Right, I would put
>>
>>    CONFIG_SERIAL=y
>>    CONFIG_SERIAL_ISA=y
>>
>> in superio.mak and
>>
>>    CONFIG_SERIAL=y
>>    CONFIG_SERIAL_PCI=y
>>
>> in pci.mak.
>
> What about the boards that use the serial.c code but do not
> have PCI, ISA or a superio chip? That is, all the boards/devices
> that call serial_mm_init() directly to create a memory-mapped
> 16550.

That is what I mean that changing CONFIG_SERIAL to
$(call lor,$(CONFIG_SERIAL_ISA), $(CONFIG_SERIAL_PCI))

is not enough.


> (If anybody feels like trying to do a complicated refactoring,
> serial_mm_init() is a pretty ugly legacy API around some
> non-QOMified core 16550 code...)

It is really, really interesting, we have:

- serial_init()
  used is sh4, mips and imx serial

- serial_mm_init()
  loads of places

- serial_hds_isa_init()
  sparc64, ppc, other mips, and pc

And now you can start getting creative with qom.

O:-)

Later, Juan.