Message ID | 1452860484-12236-3-git-send-email-david@gibson.dropbear.id.au |
---|---|
State | New |
Headers | show |
On 15.01.2016 13:21, David Gibson 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, moxie, or32, and > xtensa. As best as I can tell, those platforms never used legacy ISA, > and also don't include PCI support (which would allow connection of a > PCI->ISA bridge and/or a southbridge including legacy ISA serial > ports). > > Signed-off-by: David Gibson <david@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/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 ++- > 15 files changed, 16 insertions(+), 1 deletion(-) ... > diff --git a/default-configs/ppc-softmmu.mak b/default-configs/ppc-softmmu.mak > index d4d0f9b..13eb94f 100644 > --- a/default-configs/ppc-softmmu.mak > +++ b/default-configs/ppc-softmmu.mak > @@ -45,5 +45,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 70a89d1..3e243fd 100644 > --- a/default-configs/ppc64-softmmu.mak > +++ b/default-configs/ppc64-softmmu.mak > @@ -50,6 +50,7 @@ CONFIG_LIBDECNUMBER=y > CONFIG_XICS=$(CONFIG_PSERIES) > CONFIG_XICS_KVM=$(and $(CONFIG_PSERIES),$(CONFIG_KVM)) > # For PReP > +CONFIG_SERIAL_ISA=y > CONFIG_MC146818RTC=y > CONFIG_ISA_TESTDEV=y > CONFIG_MEM_HOTPLUG=y A little bit off-topic ... but maybe we should simply "include ppc-softmmu.mak" in ppc64-softmmu.mak since the ppc64-softmmu is supposed to offer all the 32 bit platforms, too? Then changes like this would only affect one file instead of two. ... > diff --git a/hw/char/Makefile.objs b/hw/char/Makefile.objs > index 5931cc8..be42d2f 100644 > --- a/hw/char/Makefile.objs > +++ b/hw/char/Makefile.objs > @@ -2,7 +2,8 @@ common-obj-$(CONFIG_IPACK) += ipoctal232.o > common-obj-$(CONFIG_ESCC) += escc.o > common-obj-$(CONFIG_PARALLEL) += parallel.o > common-obj-$(CONFIG_PL011) += pl011.o > -common-obj-$(CONFIG_SERIAL) += serial.o serial-isa.o > +common-obj-$(CONFIG_SERIAL) += serial.o > +common-obj-$(CONFIG_SERIAL_ISA) += serial-isa.o > common-obj-$(CONFIG_SERIAL_PCI) += serial-pci.o > common-obj-$(CONFIG_VIRTIO) += virtio-console.o > common-obj-$(CONFIG_XILINX) += xilinx_uartlite.o Patch looks fine to me. Reviewed-by: Thomas Huth <thuth@redhat.com>
On Sat, Jan 16, 2016 at 01:37:57PM +0100, Thomas Huth wrote: > On 15.01.2016 13:21, David Gibson 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, moxie, or32, and > > xtensa. As best as I can tell, those platforms never used legacy ISA, > > and also don't include PCI support (which would allow connection of a > > PCI->ISA bridge and/or a southbridge including legacy ISA serial > > ports). > > > > Signed-off-by: David Gibson <david@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/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 ++- > > 15 files changed, 16 insertions(+), 1 deletion(-) > ... > > diff --git a/default-configs/ppc-softmmu.mak b/default-configs/ppc-softmmu.mak > > index d4d0f9b..13eb94f 100644 > > --- a/default-configs/ppc-softmmu.mak > > +++ b/default-configs/ppc-softmmu.mak > > @@ -45,5 +45,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 70a89d1..3e243fd 100644 > > --- a/default-configs/ppc64-softmmu.mak > > +++ b/default-configs/ppc64-softmmu.mak > > @@ -50,6 +50,7 @@ CONFIG_LIBDECNUMBER=y > > CONFIG_XICS=$(CONFIG_PSERIES) > > CONFIG_XICS_KVM=$(and $(CONFIG_PSERIES),$(CONFIG_KVM)) > > # For PReP > > +CONFIG_SERIAL_ISA=y > > CONFIG_MC146818RTC=y > > CONFIG_ISA_TESTDEV=y > > CONFIG_MEM_HOTPLUG=y > > A little bit off-topic ... but maybe we should simply "include > ppc-softmmu.mak" in ppc64-softmmu.mak since the ppc64-softmmu is > supposed to offer all the 32 bit platforms, too? Then changes like this > would only affect one file instead of two. Um.. perhaps, but not really within the scope of this series. > > ... > > diff --git a/hw/char/Makefile.objs b/hw/char/Makefile.objs > > index 5931cc8..be42d2f 100644 > > --- a/hw/char/Makefile.objs > > +++ b/hw/char/Makefile.objs > > @@ -2,7 +2,8 @@ common-obj-$(CONFIG_IPACK) += ipoctal232.o > > common-obj-$(CONFIG_ESCC) += escc.o > > common-obj-$(CONFIG_PARALLEL) += parallel.o > > common-obj-$(CONFIG_PL011) += pl011.o > > -common-obj-$(CONFIG_SERIAL) += serial.o serial-isa.o > > +common-obj-$(CONFIG_SERIAL) += serial.o > > +common-obj-$(CONFIG_SERIAL_ISA) += serial-isa.o > > common-obj-$(CONFIG_SERIAL_PCI) += serial-pci.o > > common-obj-$(CONFIG_VIRTIO) += virtio-console.o > > common-obj-$(CONFIG_XILINX) += xilinx_uartlite.o > > Patch looks fine to me. > > Reviewed-by: Thomas Huth <thuth@redhat.com> >
David Gibson <david@gibson.dropbear.id.au> writes: > 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, moxie, or32, and > xtensa. As best as I can tell, those platforms never used legacy ISA, > and also don't include PCI support (which would allow connection of a > PCI->ISA bridge and/or a southbridge including legacy ISA serial > ports). > > Signed-off-by: David Gibson <david@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/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 ++- > 15 files changed, 16 insertions(+), 1 deletion(-) Ignorant question: what about the CONFIG_SERIAL in pci.mak? Should it trigger CONFIG_SERIAL_ISA, too? If not, should the commit message explain why not?
On Wed, Feb 03, 2016 at 11:00:51AM +0100, Markus Armbruster wrote: > David Gibson <david@gibson.dropbear.id.au> writes: > > > 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, moxie, or32, and > > xtensa. As best as I can tell, those platforms never used legacy ISA, > > and also don't include PCI support (which would allow connection of a > > PCI->ISA bridge and/or a southbridge including legacy ISA serial > > ports). > > > > Signed-off-by: David Gibson <david@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/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 ++- > > 15 files changed, 16 insertions(+), 1 deletion(-) > > Ignorant question: what about the CONFIG_SERIAL in pci.mak? Should it > trigger CONFIG_SERIAL_ISA, too? If not, should the commit message > explain why not? Ah, yes, it probably should. I think I left it out because many of the PCI platforms also explicitly enable CONFIG_SERIAL, but putting CONFIG_SERIAL_ISA in pci.mak is safer for the time being, we can always turn it off one platform at a time later.
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 964888c..b928fd3 100644 --- a/default-configs/arm-softmmu.mak +++ b/default-configs/arm-softmmu.mak @@ -6,6 +6,7 @@ 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/i386-softmmu.mak b/default-configs/i386-softmmu.mak index b177e52..ac2a993 100644 --- a/default-configs/i386-softmmu.mak +++ b/default-configs/i386-softmmu.mak @@ -15,6 +15,7 @@ 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.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/ppc-softmmu.mak b/default-configs/ppc-softmmu.mak index d4d0f9b..13eb94f 100644 --- a/default-configs/ppc-softmmu.mak +++ b/default-configs/ppc-softmmu.mak @@ -45,5 +45,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 70a89d1..3e243fd 100644 --- a/default-configs/ppc64-softmmu.mak +++ b/default-configs/ppc64-softmmu.mak @@ -50,6 +50,7 @@ CONFIG_LIBDECNUMBER=y CONFIG_XICS=$(CONFIG_PSERIES) CONFIG_XICS_KVM=$(and $(CONFIG_PSERIES),$(CONFIG_KVM)) # For PReP +CONFIG_SERIAL_ISA=y CONFIG_MC146818RTC=y CONFIG_ISA_TESTDEV=y CONFIG_MEM_HOTPLUG=y diff --git a/default-configs/ppcemb-softmmu.mak b/default-configs/ppcemb-softmmu.mak index 54acc4d..7f56004 100644 --- a/default-configs/ppcemb-softmmu.mak +++ b/default-configs/ppcemb-softmmu.mak @@ -5,6 +5,7 @@ include sound.mak include usb.mak 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 8e00390..546d855 100644 --- a/default-configs/sh4-softmmu.mak +++ b/default-configs/sh4-softmmu.mak @@ -3,6 +3,7 @@ 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 efdd058..2d3fd49 100644 --- a/default-configs/sh4eb-softmmu.mak +++ b/default-configs/sh4eb-softmmu.mak @@ -3,6 +3,7 @@ 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 c0cdd64..922db55 100644 --- a/default-configs/sparc64-softmmu.mak +++ b/default-configs/sparc64-softmmu.mak @@ -5,6 +5,7 @@ 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 6e3b312..bb7eab8 100644 --- a/default-configs/x86_64-softmmu.mak +++ b/default-configs/x86_64-softmmu.mak @@ -15,6 +15,7 @@ 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/hw/char/Makefile.objs b/hw/char/Makefile.objs index 5931cc8..be42d2f 100644 --- a/hw/char/Makefile.objs +++ b/hw/char/Makefile.objs @@ -2,7 +2,8 @@ common-obj-$(CONFIG_IPACK) += ipoctal232.o common-obj-$(CONFIG_ESCC) += escc.o common-obj-$(CONFIG_PARALLEL) += parallel.o common-obj-$(CONFIG_PL011) += pl011.o -common-obj-$(CONFIG_SERIAL) += serial.o serial-isa.o +common-obj-$(CONFIG_SERIAL) += serial.o +common-obj-$(CONFIG_SERIAL_ISA) += serial-isa.o common-obj-$(CONFIG_SERIAL_PCI) += serial-pci.o common-obj-$(CONFIG_VIRTIO) += virtio-console.o common-obj-$(CONFIG_XILINX) += xilinx_uartlite.o
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, moxie, or32, and xtensa. As best as I can tell, those platforms never used legacy ISA, and also don't include PCI support (which would allow connection of a PCI->ISA bridge and/or a southbridge including legacy ISA serial ports). Signed-off-by: David Gibson <david@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/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 ++- 15 files changed, 16 insertions(+), 1 deletion(-)