From b8846a4d6352b2a1d2012f8b3b9115640524aeda Mon Sep 17 00:00:00 2001 From: Peter Maydell Date: Fri, 20 Apr 2018 15:52:49 +0100 Subject: [PATCH] vl.c: new function serial_max_hds() MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Create a new function serial_max_hds() which returns the number of serial ports defined by the user. This is needed only by spapr. This allows us to remove the MAX_SERIAL_PORTS define. Signed-off-by: Peter Maydell Reviewed-by: Philippe Mathieu-Daudé Reviewed-by: Thomas Huth Tested-by: Philippe Mathieu-Daudé Message-id: 20180420145249.32435-14-peter.maydell@linaro.org --- hw/ppc/spapr.c | 2 +- include/sysemu/sysemu.h | 6 ++++-- vl.c | 5 +++++ 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c index b0ecfaca9ec..92194a9a535 100644 --- a/hw/ppc/spapr.c +++ b/hw/ppc/spapr.c @@ -2589,7 +2589,7 @@ static void spapr_machine_init(MachineState *machine) /* Set up VIO bus */ spapr->vio_bus = spapr_vio_bus_init(); - for (i = 0; i < MAX_SERIAL_PORTS; i++) { + for (i = 0; i < serial_max_hds(); i++) { if (serial_hd(i)) { spapr_vty_create(spapr->vio_bus, serial_hd(i)); } diff --git a/include/sysemu/sysemu.h b/include/sysemu/sysemu.h index 989cbc2b7b9..544ab77a2b3 100644 --- a/include/sysemu/sysemu.h +++ b/include/sysemu/sysemu.h @@ -159,10 +159,12 @@ void hmp_pcie_aer_inject_error(Monitor *mon, const QDict *qdict); /* serial ports */ -#define MAX_SERIAL_PORTS 4 - /* Return the Chardev for serial port i, or NULL if none */ Chardev *serial_hd(int i); +/* return the number of serial ports defined by the user. serial_hd(i) + * will always return NULL for any i which is greater than or equal to this. + */ +int serial_max_hds(void); /* parallel ports */ diff --git a/vl.c b/vl.c index a8a98c5a37b..616956adf17 100644 --- a/vl.c +++ b/vl.c @@ -2524,6 +2524,11 @@ Chardev *serial_hd(int i) return NULL; } +int serial_max_hds(void) +{ + return num_serial_hds; +} + static int parallel_parse(const char *devname) { static int index = 0; -- 2.39.5