]> xenbits.xensource.com Git - seabios.git/commitdiff
paravirt: serial console configuration.
authorGerd Hoffmann <kraxel@redhat.com>
Mon, 18 Sep 2017 08:47:22 +0000 (10:47 +0200)
committerKevin O'Connor <kevin@koconnor.net>
Fri, 22 Sep 2017 15:13:22 +0000 (11:13 -0400)
Read QEMU_CFG_NOGRAPHIC, if set add etc/sercon-port
file to enable the serial console.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
src/fw/paravirt.c

index 5b23d786bea9d9bb1ef9707b9f705ef32efc530c..9674ab8ba8dc44a88f6dea8a57eb028615c54905 100644 (file)
@@ -14,6 +14,7 @@
 #include "hw/pci.h" // pci_config_readw
 #include "hw/pcidevice.h" // pci_probe_devices
 #include "hw/pci_regs.h" // PCI_DEVICE_ID
+#include "hw/serialio.h" // PORT_SERIAL1
 #include "hw/rtc.h" // CMOS_*
 #include "malloc.h" // malloc_tmp
 #include "output.h" // dprintf
@@ -210,6 +211,7 @@ qemu_platform_setup(void)
 #define QEMU_CFG_SIGNATURE              0x00
 #define QEMU_CFG_ID                     0x01
 #define QEMU_CFG_UUID                   0x02
+#define QEMU_CFG_NOGRAPHIC              0x04
 #define QEMU_CFG_NUMA                   0x0d
 #define QEMU_CFG_BOOT_MENU              0x0e
 #define QEMU_CFG_NB_CPUS                0x05
@@ -511,6 +513,12 @@ qemu_cfg_legacy(void)
     qemu_romfile_add("etc/irq0-override", QEMU_CFG_IRQ0_OVERRIDE, 0, 1);
     qemu_romfile_add("etc/max-cpus", QEMU_CFG_MAX_CPUS, 0, 2);
 
+    // serial console
+    u16 nogfx = 0;
+    qemu_cfg_read_entry(&nogfx, QEMU_CFG_NOGRAPHIC, sizeof(nogfx));
+    if (nogfx)
+        const_romfile_add_int("etc/sercon-port", PORT_SERIAL1);
+
     // NUMA data
     u64 numacount;
     qemu_cfg_read_entry(&numacount, QEMU_CFG_NUMA, sizeof(numacount));