From b482fb43deb3fa9f5c44fd3da3dde04acec7750f Mon Sep 17 00:00:00 2001 From: Thomas Huth Date: Thu, 9 Feb 2023 17:15:40 +0100 Subject: [PATCH] hw/misc/sga: Remove the deprecated "sga" device It's been deprecated since QEMU v6.2, so it should be OK to finally remove this now. Message-Id: <20230209161540.1054669-1-thuth@redhat.com> Reviewed-by: Juan Quintela Acked-by: Gerd Hoffmann Signed-off-by: Thomas Huth --- .gitmodules | 3 -- MAINTAINERS | 1 - docs/about/deprecated.rst | 9 ---- docs/about/removed-features.rst | 10 ++++ hw/i386/Kconfig | 1 - hw/misc/Kconfig | 4 -- hw/misc/meson.build | 1 - hw/misc/sga.c | 71 ---------------------------- pc-bios/README | 6 --- pc-bios/meson.build | 1 - pc-bios/sgabios.bin | Bin 4096 -> 0 bytes roms/Makefile | 9 +--- roms/sgabios | 1 - tests/migration/guestperf/engine.py | 2 +- 14 files changed, 12 insertions(+), 107 deletions(-) delete mode 100644 hw/misc/sga.c delete mode 100644 pc-bios/sgabios.bin delete mode 160000 roms/sgabios diff --git a/.gitmodules b/.gitmodules index 24cffa87d4..6ce5bf49c5 100644 --- a/.gitmodules +++ b/.gitmodules @@ -13,9 +13,6 @@ [submodule "roms/qemu-palcode"] path = roms/qemu-palcode url = https://gitlab.com/qemu-project/qemu-palcode.git -[submodule "roms/sgabios"] - path = roms/sgabios - url = https://gitlab.com/qemu-project/sgabios.git [submodule "dtc"] path = dtc url = https://gitlab.com/qemu-project/dtc.git diff --git a/MAINTAINERS b/MAINTAINERS index 96e25f62ac..fd54c1f140 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -1676,7 +1676,6 @@ F: hw/acpi/piix4.c F: hw/acpi/ich9*.c F: include/hw/acpi/ich9*.h F: include/hw/southbridge/piix.h -F: hw/misc/sga.c F: hw/isa/apm.c F: include/hw/isa/apm.h F: tests/unit/test-x86-cpuid.c diff --git a/docs/about/deprecated.rst b/docs/about/deprecated.rst index 9317046177..cb1ec72347 100644 --- a/docs/about/deprecated.rst +++ b/docs/about/deprecated.rst @@ -260,15 +260,6 @@ full SCSI support. Use virtio-scsi instead when SCSI passthrough is required. Note this also applies to ``-device virtio-blk-pci,scsi=on|off``, which is an alias. -``-device sga`` (since 6.2) -^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -The ``sga`` device loads an option ROM for x86 targets which enables -SeaBIOS to send messages to the serial console. SeaBIOS 1.11.0 onwards -contains native support for this feature and thus use of the option -ROM approach is obsolete. The native SeaBIOS support can be activated -by using ``-machine graphics=off``. - ``-device nvme-ns,eui64-default=on|off`` (since 7.1) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ diff --git a/docs/about/removed-features.rst b/docs/about/removed-features.rst index a17d0554d6..4a84e6174f 100644 --- a/docs/about/removed-features.rst +++ b/docs/about/removed-features.rst @@ -789,6 +789,16 @@ The 'ide-drive' device has been removed. Users should use 'ide-hd' or The 'scsi-disk' device has been removed. Users should use 'scsi-hd' or 'scsi-cd' as appropriate to get a SCSI hard disk or CD-ROM as needed. +``sga`` (removed in 8.0) +'''''''''''''''''''''''' + +The ``sga`` device loaded an option ROM for x86 targets which enabled +SeaBIOS to send messages to the serial console. SeaBIOS 1.11.0 onwards +contains native support for this feature and thus use of the option +ROM approach was obsolete. The native SeaBIOS support can be activated +by using ``-machine graphics=off``. + + Related binaries ---------------- diff --git a/hw/i386/Kconfig b/hw/i386/Kconfig index 1bf47b0b0b..9fbfe748b5 100644 --- a/hw/i386/Kconfig +++ b/hw/i386/Kconfig @@ -26,7 +26,6 @@ config PC imply QXL imply SEV imply SGX - imply SGA imply TEST_DEVICES imply TPM_CRB imply TPM_TIS_ISA diff --git a/hw/misc/Kconfig b/hw/misc/Kconfig index eaeddca277..2ef5781ef8 100644 --- a/hw/misc/Kconfig +++ b/hw/misc/Kconfig @@ -15,10 +15,6 @@ config ISA_DEBUG bool depends on ISA_BUS -config SGA - bool - depends on ISA_BUS - config ISA_TESTDEV bool default y if TEST_DEVICES diff --git a/hw/misc/meson.build b/hw/misc/meson.build index 448e14b531..fe869b98ca 100644 --- a/hw/misc/meson.build +++ b/hw/misc/meson.build @@ -5,7 +5,6 @@ softmmu_ss.add(when: 'CONFIG_ISA_DEBUG', if_true: files('debugexit.c')) softmmu_ss.add(when: 'CONFIG_ISA_TESTDEV', if_true: files('pc-testdev.c')) softmmu_ss.add(when: 'CONFIG_PCA9552', if_true: files('pca9552.c')) softmmu_ss.add(when: 'CONFIG_PCI_TESTDEV', if_true: files('pci-testdev.c')) -softmmu_ss.add(when: 'CONFIG_SGA', if_true: files('sga.c')) softmmu_ss.add(when: 'CONFIG_UNIMP', if_true: files('unimp.c')) softmmu_ss.add(when: 'CONFIG_EMPTY_SLOT', if_true: files('empty_slot.c')) softmmu_ss.add(when: 'CONFIG_LED', if_true: files('led.c')) diff --git a/hw/misc/sga.c b/hw/misc/sga.c deleted file mode 100644 index 1d04672b01..0000000000 --- a/hw/misc/sga.c +++ /dev/null @@ -1,71 +0,0 @@ -/* - * QEMU dummy ISA device for loading sgabios option rom. - * - * Copyright (c) 2011 Glauber Costa, Red Hat 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. - * - * sgabios code originally available at code.google.com/p/sgabios - * - */ - -#include "qemu/osdep.h" -#include "hw/isa/isa.h" -#include "hw/loader.h" -#include "qemu/module.h" -#include "qom/object.h" -#include "qemu/error-report.h" - -#define SGABIOS_FILENAME "sgabios.bin" - -#define TYPE_SGA "sga" -OBJECT_DECLARE_SIMPLE_TYPE(ISASGAState, SGA) - -struct ISASGAState { - ISADevice parent_obj; -}; - -static void sga_realizefn(DeviceState *dev, Error **errp) -{ - warn_report("-device sga is deprecated, use -machine graphics=off"); - rom_add_vga(SGABIOS_FILENAME); -} - -static void sga_class_initfn(ObjectClass *klass, void *data) -{ - DeviceClass *dc = DEVICE_CLASS(klass); - - set_bit(DEVICE_CATEGORY_DISPLAY, dc->categories); - dc->realize = sga_realizefn; - dc->desc = "Serial Graphics Adapter"; -} - -static const TypeInfo sga_info = { - .name = TYPE_SGA, - .parent = TYPE_ISA_DEVICE, - .instance_size = sizeof(ISASGAState), - .class_init = sga_class_initfn, -}; - -static void sga_register_types(void) -{ - type_register_static(&sga_info); -} - -type_init(sga_register_types) diff --git a/pc-bios/README b/pc-bios/README index b94f3fb081..3702ed485c 100644 --- a/pc-bios/README +++ b/pc-bios/README @@ -20,12 +20,6 @@ -machine pseries,x-vof=on. When enabled, the firmware acts as a slim shim and QEMU implements parts of the IEEE 1275 Open Firmware interface. -- sgabios (the Serial Graphics Adapter option ROM) provides a means for - legacy x86 software to communicate with an attached serial console as - if a video card were attached. The master sources reside in a subversion - repository at http://sgabios.googlecode.com/svn/trunk. A git mirror is - available at https://gitlab.com/qemu-project/sgabios.git. - - The PXE roms come from the iPXE project. Built with BANNER_TIME 0. Sources available at http://ipxe.org. Vendor:Device ID -> ROM mapping: diff --git a/pc-bios/meson.build b/pc-bios/meson.build index 388e0db6e4..a7224ef469 100644 --- a/pc-bios/meson.build +++ b/pc-bios/meson.build @@ -28,7 +28,6 @@ blobs = [ 'bios-256k.bin', 'bios-microvm.bin', 'qboot.rom', - 'sgabios.bin', 'vgabios.bin', 'vgabios-cirrus.bin', 'vgabios-stdvga.bin', diff --git a/pc-bios/sgabios.bin b/pc-bios/sgabios.bin deleted file mode 100644 index 6308f2e2d7064b52ff3c2e207b71018710866c05..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4096 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 diff --git a/roms/Makefile b/roms/Makefile index 5e44d97890..955f92286d 100644 --- a/roms/Makefile +++ b/roms/Makefile @@ -57,7 +57,6 @@ default help: @echo "available build targets:" @echo " bios -- update bios.bin (seabios)" @echo " vgabios -- update vgabios binaries (seabios)" - @echo " sgabios -- update sgabios binaries" @echo " pxerom -- update nic roms (bios only)" @echo " efirom -- update nic roms (bios+efi)" @echo " slof -- update slof.bin" @@ -102,11 +101,7 @@ build-seabios-config-%: config.% OUT=$(CURDIR)/seabios/builds/$*/ all -.PHONY: sgabios skiboot qboot -sgabios: - $(MAKE) -C sgabios - cp sgabios/sgabios.bin ../pc-bios - +.PHONY: skiboot qboot pxerom: $(patsubst %,pxe-rom-%,$(pxerom_variants)) @@ -199,8 +194,6 @@ npcm7xx_bootrom: clean: rm -rf seabios/.config seabios/out seabios/builds - $(MAKE) -C sgabios clean - rm -f sgabios/.depend $(MAKE) -C ipxe/src veryclean $(MAKE) -C edk2/BaseTools clean $(MAKE) -C SLOF clean diff --git a/roms/sgabios b/roms/sgabios deleted file mode 160000 index cbaee52287..0000000000 --- a/roms/sgabios +++ /dev/null @@ -1 +0,0 @@ -Subproject commit cbaee52287e5f32373181cff50a00b6c4ac9015a diff --git a/tests/migration/guestperf/engine.py b/tests/migration/guestperf/engine.py index cc06fac592..e69d16a62c 100644 --- a/tests/migration/guestperf/engine.py +++ b/tests/migration/guestperf/engine.py @@ -337,7 +337,7 @@ class Engine(object): argv.extend(self._get_qemu_serial_args()) if self._debug: - argv.extend(["-device", "sga"]) + argv.extend(["-machine", "graphics=off"]) if hardware._prealloc_pages: argv_source += ["-mem-path", "/dev/shm",