Provide an accessor function serial_hd() to return the Chardev
(if any) associated with the numbered serial port. This will
be used to replace direct accesses to the serial_hds[] array,
so that calling code doesn't need to care about the size of
that array.
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Message-id:
20180420145249.32435-7-peter.maydell@linaro.org
extern Chardev *serial_hds[MAX_SERIAL_PORTS];
+/* Return the Chardev for serial port i, or NULL if none */
+Chardev *serial_hd(int i);
+
/* parallel ports */
#define MAX_PARALLEL_PORTS 3
return 0;
}
+Chardev *serial_hd(int i)
+{
+ assert(i >= 0);
+ if (i < ARRAY_SIZE(serial_hds)) {
+ return serial_hds[i];
+ }
+ return NULL;
+}
+
static int parallel_parse(const char *devname)
{
static int index = 0;