Message ID | 20240814181534.218964-5-shentey@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | Serial device cleanup | expand |
On 14/08/2024 19:15, Bernhard Beschow wrote: > The includes where updated based on compile errors. Now, the inclusion of the > header roughly matches Kconfig dependencies: > > # grep -r -e "select SERIAL_ISA" > hw/ppc/Kconfig: select SERIAL_ISA > hw/isa/Kconfig: select SERIAL_ISA > hw/sparc64/Kconfig: select SERIAL_ISA > hw/i386/Kconfig: select SERIAL_ISA > hw/i386/Kconfig: select SERIAL_ISA # for serial_hds_isa_init() > > Signed-off-by: Bernhard Beschow <shentey@gmail.com> > --- > include/hw/char/serial-isa.h | 38 ++++++++++++++++++++++++++++++++++++ > include/hw/char/serial.h | 9 --------- > hw/char/serial-isa.c | 1 + > hw/i386/microvm-dt.c | 2 +- > hw/i386/microvm.c | 2 +- > hw/i386/pc.c | 2 +- > hw/isa/isa-superio.c | 2 +- > hw/isa/vt82c686.c | 2 +- > hw/ppc/pnv.c | 2 +- > hw/sparc64/sun4u.c | 1 + > 10 files changed, 46 insertions(+), 15 deletions(-) > create mode 100644 include/hw/char/serial-isa.h > > diff --git a/include/hw/char/serial-isa.h b/include/hw/char/serial-isa.h > new file mode 100644 > index 0000000000..8517afa128 > --- /dev/null > +++ b/include/hw/char/serial-isa.h > @@ -0,0 +1,38 @@ > +/* > + * QEMU ISA 16550A UART emulation > + * > + * Copyright (c) 2003-2004 Fabrice Bellard > + * Copyright (c) 2008 Citrix Systems, Inc. > + * > + * Permission is hereby granted, free of charge, to any person obtaining a copy > + * of this software and associated documentation files (the "Software"), to deal > + * in the Software without restriction, including without limitation the rights > + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell > + * copies of the Software, and to permit persons to whom the Software is > + * furnished to do so, subject to the following conditions: > + * > + * The above copyright notice and this permission notice shall be included in > + * all copies or substantial portions of the Software. > + * > + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR > + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, > + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL > + * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER > + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, > + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN > + * THE SOFTWARE. > + */ > + > +#ifndef HW_SERIAL_ISA_H > +#define HW_SERIAL_ISA_H > + > +#include "hw/isa/isa.h" > + > +#define MAX_ISA_SERIAL_PORTS 4 > + > +#define TYPE_ISA_SERIAL "isa-serial" > +void serial_hds_isa_init(ISABus *bus, int from, int to); > +void isa_serial_set_iobase(ISADevice *serial, hwaddr iobase); > +void isa_serial_set_enabled(ISADevice *serial, bool enabled); > + > +#endif > diff --git a/include/hw/char/serial.h b/include/hw/char/serial.h > index 40aad21df3..ccf322a031 100644 > --- a/include/hw/char/serial.h > +++ b/include/hw/char/serial.h > @@ -104,13 +104,4 @@ SerialMM *serial_mm_init(MemoryRegion *address_space, > qemu_irq irq, int baudbase, > Chardev *chr, enum device_endian end); > > -/* serial-isa.c */ > - > -#define MAX_ISA_SERIAL_PORTS 4 > - > -#define TYPE_ISA_SERIAL "isa-serial" > -void serial_hds_isa_init(ISABus *bus, int from, int to); > -void isa_serial_set_iobase(ISADevice *serial, hwaddr iobase); > -void isa_serial_set_enabled(ISADevice *serial, bool enabled); > - > #endif > diff --git a/hw/char/serial-isa.c b/hw/char/serial-isa.c > index 329b352b9a..b562ec9d37 100644 > --- a/hw/char/serial-isa.c > +++ b/hw/char/serial-isa.c > @@ -29,6 +29,7 @@ > #include "sysemu/sysemu.h" > #include "hw/acpi/acpi_aml_interface.h" > #include "hw/char/serial.h" > +#include "hw/char/serial-isa.h" > #include "hw/isa/isa.h" > #include "hw/qdev-properties.h" > #include "migration/vmstate.h" > diff --git a/hw/i386/microvm-dt.c b/hw/i386/microvm-dt.c > index b3049e4f9f..fc5db6ed7f 100644 > --- a/hw/i386/microvm-dt.c > +++ b/hw/i386/microvm-dt.c > @@ -34,7 +34,7 @@ > #include "qemu/cutils.h" > #include "qapi/error.h" > #include "sysemu/device_tree.h" > -#include "hw/char/serial.h" > +#include "hw/char/serial-isa.h" > #include "hw/i386/fw_cfg.h" > #include "hw/rtc/mc146818rtc.h" > #include "hw/sysbus.h" > diff --git a/hw/i386/microvm.c b/hw/i386/microvm.c > index 40edcee7af..05c882669c 100644 > --- a/hw/i386/microvm.c > +++ b/hw/i386/microvm.c > @@ -39,7 +39,7 @@ > #include "hw/intc/i8259.h" > #include "hw/timer/i8254.h" > #include "hw/rtc/mc146818rtc.h" > -#include "hw/char/serial.h" > +#include "hw/char/serial-isa.h" > #include "hw/display/ramfb.h" > #include "hw/i386/topology.h" > #include "hw/i386/e820_memory_layout.h" > diff --git a/hw/i386/pc.c b/hw/i386/pc.c > index c74931d577..b273d4a2e1 100644 > --- a/hw/i386/pc.c > +++ b/hw/i386/pc.c > @@ -25,7 +25,7 @@ > #include "qemu/osdep.h" > #include "qemu/units.h" > #include "hw/i386/pc.h" > -#include "hw/char/serial.h" > +#include "hw/char/serial-isa.h" > #include "hw/char/parallel.h" > #include "hw/hyperv/hv-balloon.h" > #include "hw/i386/fw_cfg.h" > diff --git a/hw/isa/isa-superio.c b/hw/isa/isa-superio.c > index a8c8c58ef7..cff756e791 100644 > --- a/hw/isa/isa-superio.c > +++ b/hw/isa/isa-superio.c > @@ -22,7 +22,7 @@ > #include "hw/qdev-properties.h" > #include "hw/input/i8042.h" > #include "hw/char/parallel-isa.h" > -#include "hw/char/serial.h" > +#include "hw/char/serial-isa.h" > #include "trace.h" > > static void isa_superio_realize(DeviceState *dev, Error **errp) > diff --git a/hw/isa/vt82c686.c b/hw/isa/vt82c686.c > index 505b44c4e6..1aa5c9613f 100644 > --- a/hw/isa/vt82c686.c > +++ b/hw/isa/vt82c686.c > @@ -17,7 +17,7 @@ > #include "hw/isa/vt82c686.h" > #include "hw/block/fdc.h" > #include "hw/char/parallel-isa.h" > -#include "hw/char/serial.h" > +#include "hw/char/serial-isa.h" > #include "hw/pci/pci.h" > #include "hw/qdev-properties.h" > #include "hw/ide/pci.h" > diff --git a/hw/ppc/pnv.c b/hw/ppc/pnv.c > index 3526852685..ffc3f2bca0 100644 > --- a/hw/ppc/pnv.c > +++ b/hw/ppc/pnv.c > @@ -53,7 +53,7 @@ > #include "hw/ppc/pnv_pnor.h" > > #include "hw/isa/isa.h" > -#include "hw/char/serial.h" > +#include "hw/char/serial-isa.h" > #include "hw/rtc/mc146818rtc.h" > > #include <libfdt.h> > diff --git a/hw/sparc64/sun4u.c b/hw/sparc64/sun4u.c > index 4ece1ac1ff..a839abbf5d 100644 > --- a/hw/sparc64/sun4u.c > +++ b/hw/sparc64/sun4u.c > @@ -35,6 +35,7 @@ > #include "hw/qdev-properties.h" > #include "hw/pci-host/sabre.h" > #include "hw/char/serial.h" > +#include "hw/char/serial-isa.h" > #include "hw/char/parallel-isa.h" > #include "hw/rtc/m48t59.h" > #include "migration/vmstate.h" This appears to be a straightforward substitution and LGTM: Reviewed-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk> ATB, Mark.
diff --git a/include/hw/char/serial-isa.h b/include/hw/char/serial-isa.h new file mode 100644 index 0000000000..8517afa128 --- /dev/null +++ b/include/hw/char/serial-isa.h @@ -0,0 +1,38 @@ +/* + * QEMU ISA 16550A UART emulation + * + * Copyright (c) 2003-2004 Fabrice Bellard + * Copyright (c) 2008 Citrix Systems, Inc. + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + +#ifndef HW_SERIAL_ISA_H +#define HW_SERIAL_ISA_H + +#include "hw/isa/isa.h" + +#define MAX_ISA_SERIAL_PORTS 4 + +#define TYPE_ISA_SERIAL "isa-serial" +void serial_hds_isa_init(ISABus *bus, int from, int to); +void isa_serial_set_iobase(ISADevice *serial, hwaddr iobase); +void isa_serial_set_enabled(ISADevice *serial, bool enabled); + +#endif diff --git a/include/hw/char/serial.h b/include/hw/char/serial.h index 40aad21df3..ccf322a031 100644 --- a/include/hw/char/serial.h +++ b/include/hw/char/serial.h @@ -104,13 +104,4 @@ SerialMM *serial_mm_init(MemoryRegion *address_space, qemu_irq irq, int baudbase, Chardev *chr, enum device_endian end); -/* serial-isa.c */ - -#define MAX_ISA_SERIAL_PORTS 4 - -#define TYPE_ISA_SERIAL "isa-serial" -void serial_hds_isa_init(ISABus *bus, int from, int to); -void isa_serial_set_iobase(ISADevice *serial, hwaddr iobase); -void isa_serial_set_enabled(ISADevice *serial, bool enabled); - #endif diff --git a/hw/char/serial-isa.c b/hw/char/serial-isa.c index 329b352b9a..b562ec9d37 100644 --- a/hw/char/serial-isa.c +++ b/hw/char/serial-isa.c @@ -29,6 +29,7 @@ #include "sysemu/sysemu.h" #include "hw/acpi/acpi_aml_interface.h" #include "hw/char/serial.h" +#include "hw/char/serial-isa.h" #include "hw/isa/isa.h" #include "hw/qdev-properties.h" #include "migration/vmstate.h" diff --git a/hw/i386/microvm-dt.c b/hw/i386/microvm-dt.c index b3049e4f9f..fc5db6ed7f 100644 --- a/hw/i386/microvm-dt.c +++ b/hw/i386/microvm-dt.c @@ -34,7 +34,7 @@ #include "qemu/cutils.h" #include "qapi/error.h" #include "sysemu/device_tree.h" -#include "hw/char/serial.h" +#include "hw/char/serial-isa.h" #include "hw/i386/fw_cfg.h" #include "hw/rtc/mc146818rtc.h" #include "hw/sysbus.h" diff --git a/hw/i386/microvm.c b/hw/i386/microvm.c index 40edcee7af..05c882669c 100644 --- a/hw/i386/microvm.c +++ b/hw/i386/microvm.c @@ -39,7 +39,7 @@ #include "hw/intc/i8259.h" #include "hw/timer/i8254.h" #include "hw/rtc/mc146818rtc.h" -#include "hw/char/serial.h" +#include "hw/char/serial-isa.h" #include "hw/display/ramfb.h" #include "hw/i386/topology.h" #include "hw/i386/e820_memory_layout.h" diff --git a/hw/i386/pc.c b/hw/i386/pc.c index c74931d577..b273d4a2e1 100644 --- a/hw/i386/pc.c +++ b/hw/i386/pc.c @@ -25,7 +25,7 @@ #include "qemu/osdep.h" #include "qemu/units.h" #include "hw/i386/pc.h" -#include "hw/char/serial.h" +#include "hw/char/serial-isa.h" #include "hw/char/parallel.h" #include "hw/hyperv/hv-balloon.h" #include "hw/i386/fw_cfg.h" diff --git a/hw/isa/isa-superio.c b/hw/isa/isa-superio.c index a8c8c58ef7..cff756e791 100644 --- a/hw/isa/isa-superio.c +++ b/hw/isa/isa-superio.c @@ -22,7 +22,7 @@ #include "hw/qdev-properties.h" #include "hw/input/i8042.h" #include "hw/char/parallel-isa.h" -#include "hw/char/serial.h" +#include "hw/char/serial-isa.h" #include "trace.h" static void isa_superio_realize(DeviceState *dev, Error **errp) diff --git a/hw/isa/vt82c686.c b/hw/isa/vt82c686.c index 505b44c4e6..1aa5c9613f 100644 --- a/hw/isa/vt82c686.c +++ b/hw/isa/vt82c686.c @@ -17,7 +17,7 @@ #include "hw/isa/vt82c686.h" #include "hw/block/fdc.h" #include "hw/char/parallel-isa.h" -#include "hw/char/serial.h" +#include "hw/char/serial-isa.h" #include "hw/pci/pci.h" #include "hw/qdev-properties.h" #include "hw/ide/pci.h" diff --git a/hw/ppc/pnv.c b/hw/ppc/pnv.c index 3526852685..ffc3f2bca0 100644 --- a/hw/ppc/pnv.c +++ b/hw/ppc/pnv.c @@ -53,7 +53,7 @@ #include "hw/ppc/pnv_pnor.h" #include "hw/isa/isa.h" -#include "hw/char/serial.h" +#include "hw/char/serial-isa.h" #include "hw/rtc/mc146818rtc.h" #include <libfdt.h> diff --git a/hw/sparc64/sun4u.c b/hw/sparc64/sun4u.c index 4ece1ac1ff..a839abbf5d 100644 --- a/hw/sparc64/sun4u.c +++ b/hw/sparc64/sun4u.c @@ -35,6 +35,7 @@ #include "hw/qdev-properties.h" #include "hw/pci-host/sabre.h" #include "hw/char/serial.h" +#include "hw/char/serial-isa.h" #include "hw/char/parallel-isa.h" #include "hw/rtc/m48t59.h" #include "migration/vmstate.h"
The includes where updated based on compile errors. Now, the inclusion of the header roughly matches Kconfig dependencies: # grep -r -e "select SERIAL_ISA" hw/ppc/Kconfig: select SERIAL_ISA hw/isa/Kconfig: select SERIAL_ISA hw/sparc64/Kconfig: select SERIAL_ISA hw/i386/Kconfig: select SERIAL_ISA hw/i386/Kconfig: select SERIAL_ISA # for serial_hds_isa_init() Signed-off-by: Bernhard Beschow <shentey@gmail.com> --- include/hw/char/serial-isa.h | 38 ++++++++++++++++++++++++++++++++++++ include/hw/char/serial.h | 9 --------- hw/char/serial-isa.c | 1 + hw/i386/microvm-dt.c | 2 +- hw/i386/microvm.c | 2 +- hw/i386/pc.c | 2 +- hw/isa/isa-superio.c | 2 +- hw/isa/vt82c686.c | 2 +- hw/ppc/pnv.c | 2 +- hw/sparc64/sun4u.c | 1 + 10 files changed, 46 insertions(+), 15 deletions(-) create mode 100644 include/hw/char/serial-isa.h