Re: [Qemu-devel] [PATCH 1/4] Split serial-isa into its own config option

2015-07-01 Thread Peter Maydell
On 1 July 2015 at 05:20, David Gibson da...@gibson.dropbear.id.au wrote:
 On Mon, Jun 29, 2015 at 11:35:23AM +0100, Peter Maydell wrote:
 A quick grep suggests you can knock arm, moxie, sh4
 and sh4eb off your list of things with CONFIG_SERIAL_ISA
 (no hits for ISABus).

 I'll remove moxie, sh4 and sh4eb in my next spin.

 I'm not so comfortable about ARM.  I get the impression that there are
 so many x86 people now working in the ARM space, that it wouldn't
 surprise me at all if some vendors go and stick legacy stuff on
 there.  So I'd prefer to leave it to the ARM people themselves to turn
 it off if I'm wrong.

I'm an ARM person :-)

I'm happy to turn ISA off for ARM, except for the case of
generic PCI-to-ISA devices which IIRC you're handling by
having pci.mak set CONFIG_ISA ?

(In practice that means ARM will still compile in the ISA
code, but hey.)

-- PMM



Re: [Qemu-devel] [PATCH 1/4] Split serial-isa into its own config option

2015-07-01 Thread David Gibson
On Wed, Jul 01, 2015 at 12:15:09PM +0100, Peter Maydell wrote:
 On 1 July 2015 at 05:20, David Gibson da...@gibson.dropbear.id.au wrote:
  On Mon, Jun 29, 2015 at 11:35:23AM +0100, Peter Maydell wrote:
  A quick grep suggests you can knock arm, moxie, sh4
  and sh4eb off your list of things with CONFIG_SERIAL_ISA
  (no hits for ISABus).
 
  I'll remove moxie, sh4 and sh4eb in my next spin.
 
  I'm not so comfortable about ARM.  I get the impression that there are
  so many x86 people now working in the ARM space, that it wouldn't
  surprise me at all if some vendors go and stick legacy stuff on
  there.  So I'd prefer to leave it to the ARM people themselves to turn
  it off if I'm wrong.
 
 I'm an ARM person :-)
 
 I'm happy to turn ISA off for ARM, except for the case of
 generic PCI-to-ISA devices which IIRC you're handling by
 having pci.mak set CONFIG_ISA ?
 
 (In practice that means ARM will still compile in the ISA
 code, but hey.)

So that makes sense for the patch in this series which allows
deconfiguration of the ISA bus itself.  But this patch is just about
ISA serial ports - given that ARM does have ISA for now, and will
still be able to with a bridge it seems odd to disable ISA serial
specifically.

Come to think of it, the same applies to SH4, since it has PCI. So
I've put SERIAL_ISA back in for SH4, and updated the commit message to
explain that for now I'm only taking out SERIAL_ISA support for things
that clearly have neither ISA nor PCI support.

-- 
David Gibson| I'll have my music baroque, and my code
david AT gibson.dropbear.id.au  | minimalist, thank you.  NOT _the_ _other_
| _way_ _around_!
http://www.ozlabs.org/~dgibson


pgppG5ipCt_rw.pgp
Description: PGP signature


Re: [Qemu-devel] [PATCH 1/4] Split serial-isa into its own config option

2015-06-30 Thread David Gibson
On Mon, Jun 29, 2015 at 11:35:23AM +0100, Peter Maydell wrote:
 On 29 June 2015 at 06:36, David Gibson da...@gibson.dropbear.id.au wrote:
  At present, the core device model code for 8250-like serial ports
  (serial.c) and the code for serial ports attached to ISA-style legacy IO
  (serial-isa.c) are both controlled by the CONFIG_SERIAL variable.
 
  There are lots and lots of embedded platforms that have 8250-like serial
  ports but have never had anything resembling ISA legacy IO.  Therefore,
  split serial-isa into its own CONFIG_SERIAL_ISA option so it can be
  disabled for platforms where it's not appropriate.
 
  For now, I enabled CONFIG_SERIAL_ISA in every default-config where
  CONFIG_SERIAL is enabled, excepting microblaze, xtensa and or32.  Those
  platforms have technically lost functionality, but since they have no
  other PCI or ISA devices, it's fairly clear they never actually used
  leagacy IO stuff.
 
 s/leagacy/legacy/
 
 Is it worth having a default-configs/isa.mak along the
 lines of our current pci.mak and usb.mak, for putting
 CONFIG_ defines for all ISA devices?
 
 A quick grep suggests you can knock arm, moxie, sh4
 and sh4eb off your list of things with CONFIG_SERIAL_ISA
 (no hits for ISABus).

I'll remove moxie, sh4 and sh4eb in my next spin.

I'm not so comfortable about ARM.  I get the impression that there are
so many x86 people now working in the ARM space, that it wouldn't
surprise me at all if some vendors go and stick legacy stuff on
there.  So I'd prefer to leave it to the ARM people themselves to turn
it off if I'm wrong.

 I notice in passing that we still have a handful of config
 files which set CONFIG_ISA_MMIO, despite that having been
 deleted in commit 61fcb628627ea4 two years ago.

Hm, I'll add a patch to clean that up, why not.

-- 
David Gibson| I'll have my music baroque, and my code
david AT gibson.dropbear.id.au  | minimalist, thank you.  NOT _the_ _other_
| _way_ _around_!
http://www.ozlabs.org/~dgibson


pgpYwEso92tpn.pgp
Description: PGP signature


Re: [Qemu-devel] [PATCH 1/4] Split serial-isa into its own config option

2015-06-29 Thread Peter Maydell
On 29 June 2015 at 06:36, David Gibson da...@gibson.dropbear.id.au wrote:
 At present, the core device model code for 8250-like serial ports
 (serial.c) and the code for serial ports attached to ISA-style legacy IO
 (serial-isa.c) are both controlled by the CONFIG_SERIAL variable.

 There are lots and lots of embedded platforms that have 8250-like serial
 ports but have never had anything resembling ISA legacy IO.  Therefore,
 split serial-isa into its own CONFIG_SERIAL_ISA option so it can be
 disabled for platforms where it's not appropriate.

 For now, I enabled CONFIG_SERIAL_ISA in every default-config where
 CONFIG_SERIAL is enabled, excepting microblaze, xtensa and or32.  Those
 platforms have technically lost functionality, but since they have no
 other PCI or ISA devices, it's fairly clear they never actually used
 leagacy IO stuff.

s/leagacy/legacy/

Is it worth having a default-configs/isa.mak along the
lines of our current pci.mak and usb.mak, for putting
CONFIG_ defines for all ISA devices?

A quick grep suggests you can knock arm, moxie, sh4
and sh4eb off your list of things with CONFIG_SERIAL_ISA
(no hits for ISABus).

I notice in passing that we still have a handful of config
files which set CONFIG_ISA_MMIO, despite that having been
deleted in commit 61fcb628627ea4 two years ago.

thanks
-- PMM



Re: [Qemu-devel] [PATCH 1/4] Split serial-isa into its own config option

2015-06-29 Thread Andreas Färber
Am 29.06.2015 um 07:36 schrieb David Gibson:
 At present, the core device model code for 8250-like serial ports
 (serial.c) and the code for serial ports attached to ISA-style legacy IO
 (serial-isa.c) are both controlled by the CONFIG_SERIAL variable.
 
 There are lots and lots of embedded platforms that have 8250-like serial
 ports but have never had anything resembling ISA legacy IO.  Therefore,
 split serial-isa into its own CONFIG_SERIAL_ISA option so it can be
 disabled for platforms where it's not appropriate.
 
 For now, I enabled CONFIG_SERIAL_ISA in every default-config where
 CONFIG_SERIAL is enabled, excepting microblaze, xtensa and or32.  Those
 platforms have technically lost functionality, but since they have no
 other PCI or ISA devices, it's fairly clear they never actually used
 leagacy IO stuff.

I think we can add moxie to that list, I'd be very surprised if it uses
ISA. Applies also to 2/4. CC'ing the maintainer.

Which arm machines use ISA?

Regards,
Andreas

 
 Signed-off-by: David Gibson da...@gibson.dropbear.id.au
 ---
  default-configs/alpha-softmmu.mak| 1 +
  default-configs/arm-softmmu.mak  | 1 +
  default-configs/i386-softmmu.mak | 1 +
  default-configs/mips-softmmu.mak | 1 +
  default-configs/mips64-softmmu.mak   | 1 +
  default-configs/mips64el-softmmu.mak | 1 +
  default-configs/mipsel-softmmu.mak   | 1 +
  default-configs/moxie-softmmu.mak| 1 +
  default-configs/ppc-softmmu.mak  | 1 +
  default-configs/ppc64-softmmu.mak| 1 +
  default-configs/ppcemb-softmmu.mak   | 1 +
  default-configs/sh4-softmmu.mak  | 1 +
  default-configs/sh4eb-softmmu.mak| 1 +
  default-configs/sparc64-softmmu.mak  | 1 +
  default-configs/x86_64-softmmu.mak   | 1 +
  hw/char/Makefile.objs| 3 ++-
  16 files changed, 17 insertions(+), 1 deletion(-)
[snip]

-- 
SUSE Linux GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Felix Imendörffer, Jane Smithard, Dilip Upmanyu, Graham Norton; HRB
21284 (AG Nürnberg)



Re: [Qemu-devel] [PATCH 1/4] Split serial-isa into its own config option

2015-06-29 Thread David Gibson
On Mon, Jun 29, 2015 at 11:35:23AM +0100, Peter Maydell wrote:
 On 29 June 2015 at 06:36, David Gibson da...@gibson.dropbear.id.au wrote:
  At present, the core device model code for 8250-like serial ports
  (serial.c) and the code for serial ports attached to ISA-style legacy IO
  (serial-isa.c) are both controlled by the CONFIG_SERIAL variable.
 
  There are lots and lots of embedded platforms that have 8250-like serial
  ports but have never had anything resembling ISA legacy IO.  Therefore,
  split serial-isa into its own CONFIG_SERIAL_ISA option so it can be
  disabled for platforms where it's not appropriate.
 
  For now, I enabled CONFIG_SERIAL_ISA in every default-config where
  CONFIG_SERIAL is enabled, excepting microblaze, xtensa and or32.  Those
  platforms have technically lost functionality, but since they have no
  other PCI or ISA devices, it's fairly clear they never actually used
  leagacy IO stuff.
 
 s/leagacy/legacy/
 
 Is it worth having a default-configs/isa.mak along the
 lines of our current pci.mak and usb.mak, for putting
 CONFIG_ defines for all ISA devices?

I considered it, but there were enough variations in exactly what ISA
options were selected in the existing configs for different targets
that it seemed like a substantial distraction from what I'm trying to
accomplish.

 A quick grep suggests you can knock arm, moxie, sh4
 and sh4eb off your list of things with CONFIG_SERIAL_ISA
 (no hits for ISABus).
 
 I notice in passing that we still have a handful of config
 files which set CONFIG_ISA_MMIO, despite that having been
 deleted in commit 61fcb628627ea4 two years ago.
 
 thanks
 -- PMM
 

-- 
David Gibson| I'll have my music baroque, and my code
david AT gibson.dropbear.id.au  | minimalist, thank you.  NOT _the_ _other_
| _way_ _around_!
http://www.ozlabs.org/~dgibson


pgpTXSwZzI5nn.pgp
Description: PGP signature


Re: [Qemu-devel] [PATCH 1/4] Split serial-isa into its own config option

2015-06-29 Thread David Gibson
On Mon, Jun 29, 2015 at 12:12:01PM +0200, Andreas Färber wrote:
 Am 29.06.2015 um 07:36 schrieb David Gibson:
  At present, the core device model code for 8250-like serial ports
  (serial.c) and the code for serial ports attached to ISA-style legacy IO
  (serial-isa.c) are both controlled by the CONFIG_SERIAL variable.
  
  There are lots and lots of embedded platforms that have 8250-like serial
  ports but have never had anything resembling ISA legacy IO.  Therefore,
  split serial-isa into its own CONFIG_SERIAL_ISA option so it can be
  disabled for platforms where it's not appropriate.
  
  For now, I enabled CONFIG_SERIAL_ISA in every default-config where
  CONFIG_SERIAL is enabled, excepting microblaze, xtensa and or32.  Those
  platforms have technically lost functionality, but since they have no
  other PCI or ISA devices, it's fairly clear they never actually used
  leagacy IO stuff.
 
 I think we can add moxie to that list, I'd be very surprised if it uses
 ISA. Applies also to 2/4. CC'ing the maintainer.

Right.  I'm being deliberately conservative in what I removed here.
With this patch in place it's easy for boards to remove ISA serial
support in future, but that seems like a change best made by the
people who actually know the boards.

 Which arm machines use ISA?

I don't know, but the point was I couldn't quickly convince myself
that none did.

-- 
David Gibson| I'll have my music baroque, and my code
david AT gibson.dropbear.id.au  | minimalist, thank you.  NOT _the_ _other_
| _way_ _around_!
http://www.ozlabs.org/~dgibson


pgp6JcKLXwI51.pgp
Description: PGP signature


[Qemu-devel] [PATCH 1/4] Split serial-isa into its own config option

2015-06-28 Thread David Gibson
At present, the core device model code for 8250-like serial ports
(serial.c) and the code for serial ports attached to ISA-style legacy IO
(serial-isa.c) are both controlled by the CONFIG_SERIAL variable.

There are lots and lots of embedded platforms that have 8250-like serial
ports but have never had anything resembling ISA legacy IO.  Therefore,
split serial-isa into its own CONFIG_SERIAL_ISA option so it can be
disabled for platforms where it's not appropriate.

For now, I enabled CONFIG_SERIAL_ISA in every default-config where
CONFIG_SERIAL is enabled, excepting microblaze, xtensa and or32.  Those
platforms have technically lost functionality, but since they have no
other PCI or ISA devices, it's fairly clear they never actually used
leagacy IO stuff.

Signed-off-by: David Gibson da...@gibson.dropbear.id.au
---
 default-configs/alpha-softmmu.mak| 1 +
 default-configs/arm-softmmu.mak  | 1 +
 default-configs/i386-softmmu.mak | 1 +
 default-configs/mips-softmmu.mak | 1 +
 default-configs/mips64-softmmu.mak   | 1 +
 default-configs/mips64el-softmmu.mak | 1 +
 default-configs/mipsel-softmmu.mak   | 1 +
 default-configs/moxie-softmmu.mak| 1 +
 default-configs/ppc-softmmu.mak  | 1 +
 default-configs/ppc64-softmmu.mak| 1 +
 default-configs/ppcemb-softmmu.mak   | 1 +
 default-configs/sh4-softmmu.mak  | 1 +
 default-configs/sh4eb-softmmu.mak| 1 +
 default-configs/sparc64-softmmu.mak  | 1 +
 default-configs/x86_64-softmmu.mak   | 1 +
 hw/char/Makefile.objs| 3 ++-
 16 files changed, 17 insertions(+), 1 deletion(-)

diff --git a/default-configs/alpha-softmmu.mak 
b/default-configs/alpha-softmmu.mak
index 7f6161e..e0d75e3 100644
--- a/default-configs/alpha-softmmu.mak
+++ b/default-configs/alpha-softmmu.mak
@@ -3,6 +3,7 @@
 include pci.mak
 include usb.mak
 CONFIG_SERIAL=y
+CONFIG_SERIAL_ISA=y
 CONFIG_I8254=y
 CONFIG_PCKBD=y
 CONFIG_VGA_CIRRUS=y
diff --git a/default-configs/arm-softmmu.mak b/default-configs/arm-softmmu.mak
index 74f1db3..abeec21 100644
--- a/default-configs/arm-softmmu.mak
+++ b/default-configs/arm-softmmu.mak
@@ -7,6 +7,7 @@ CONFIG_ISA_MMIO=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/i386-softmmu.mak b/default-configs/i386-softmmu.mak
index 91d602c..bc2fc72 100644
--- a/default-configs/i386-softmmu.mak
+++ b/default-configs/i386-softmmu.mak
@@ -9,6 +9,7 @@ CONFIG_VGA_CIRRUS=y
 CONFIG_VMWARE_VGA=y
 CONFIG_VMMOUSE=y
 CONFIG_SERIAL=y
+CONFIG_SERIAL_ISA=y
 CONFIG_PARALLEL=y
 CONFIG_I8254=y
 CONFIG_PCSPK=y
diff --git a/default-configs/mips-softmmu.mak b/default-configs/mips-softmmu.mak
index 44467c3..cccf41b 100644
--- a/default-configs/mips-softmmu.mak
+++ b/default-configs/mips-softmmu.mak
@@ -9,6 +9,7 @@ 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/mips64-softmmu.mak 
b/default-configs/mips64-softmmu.mak
index 66ed5f9..6fab828 100644
--- a/default-configs/mips64-softmmu.mak
+++ b/default-configs/mips64-softmmu.mak
@@ -9,6 +9,7 @@ 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/mips64el-softmmu.mak 
b/default-configs/mips64el-softmmu.mak
index bfca2b2..2facfc6 100644
--- a/default-configs/mips64el-softmmu.mak
+++ b/default-configs/mips64el-softmmu.mak
@@ -9,6 +9,7 @@ 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/mipsel-softmmu.mak 
b/default-configs/mipsel-softmmu.mak
index 0162ef0..8331100 100644
--- a/default-configs/mipsel-softmmu.mak
+++ b/default-configs/mipsel-softmmu.mak
@@ -9,6 +9,7 @@ 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/moxie-softmmu.mak 
b/default-configs/moxie-softmmu.mak
index 1a95476..7e22863 100644
--- a/default-configs/moxie-softmmu.mak
+++ b/default-configs/moxie-softmmu.mak
@@ -2,4 +2,5 @@
 
 CONFIG_MC146818RTC=y
 CONFIG_SERIAL=y
+CONFIG_SERIAL_ISA=y
 CONFIG_VGA=y
diff --git a/default-configs/ppc-softmmu.mak b/default-configs/ppc-softmmu.mak
index 4befde3..b5bb29b 100644
--- a/default-configs/ppc-softmmu.mak
+++ b/default-configs/ppc-softmmu.mak
@@ -46,5 +46,6 @@ CONFIG_PLATFORM_BUS=y
 CONFIG_ETSEC=y
 CONFIG_LIBDECNUMBER=y
 # For PReP
+CONFIG_SERIAL_ISA=y
 CONFIG_MC146818RTC=y
 CONFIG_ISA_TESTDEV=y
diff --git a/default-configs/ppc64-softmmu.mak 
b/default-configs/ppc64-softmmu.mak
index ab62cc7..2b05329 100644
--- a/default-configs/ppc64-softmmu.mak
+++ b/default-configs/ppc64-softmmu.mak
@@ -50,5 +50,6 @@ CONFIG_LIBDECNUMBER=y
 CONFIG_XICS=$(CONFIG_PSERIES)
 CONFIG_XICS_KVM=$(and