qemu-e2k/hw/i386
Roman Kagan 27b9fc54d2 i386: populate floppy drive information in DSDT
On x86-based systems Linux determines the presence and the type of
floppy drives via a query of a CMOS field.  So does SeaBIOS when
populating the return data for int 0x13 function 0x08.

However Windows doesn't do it. Instead, it requests this information
from BIOS via int 0x13/0x08 or through ACPI objects _FDE (Floppy Drive
Enumerate) and _FDI (Floppy Drive Information) of the floppy controller
object.  On UEFI systems only ACPI-based detection is supported.

QEMU doesn't provide those objects in its ACPI tables and as a result
floppy drives are invisible to Windows on UEFI/OVMF.

This patch adds those objects to the floppy controller in DSDT,
populating them with the information from respective QEMU objects.

Signed-off-by: Roman Kagan <rkagan@virtuozzo.com>
Cc: Igor Mammedov <imammedo@redhat.com>
Cc: "Michael S. Tsirkin" <mst@redhat.com>
Cc: Marcel Apfelbaum <marcel@redhat.com>
Cc: John Snow <jsnow@redhat.com>
Cc: Laszlo Ersek <lersek@redhat.com>
Cc: Kevin O'Connor <kevin@koconnor.net>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
2016-03-11 14:55:15 +02:00
..
kvm x86: Clean up includes 2016-01-29 15:07:22 +00:00
xen xen: drop support for Xen 4.1 and older. 2016-02-10 12:01:16 +00:00
acpi-build.c i386: populate floppy drive information in DSDT 2016-03-11 14:55:15 +02:00
acpi-build.h pc: Remove compat fields from PcGuestInfo 2016-02-06 20:44:09 +02:00
intel_iommu_internal.h intel_iommu: large page support 2016-02-06 20:44:10 +02:00
intel_iommu.c intel_iommu: large page support 2016-02-06 20:44:10 +02:00
kvmvapic.c x86: Clean up includes 2016-01-29 15:07:22 +00:00
Makefile.objs pc: acpi: remove unused ASL templates and related blobs/utils 2016-01-09 23:20:19 +02:00
multiboot.c loader: Add data swap option to load-elf 2016-03-04 11:30:21 +00:00
multiboot.h refer to FWCfgState explicitly 2013-06-02 18:14:02 +03:00
pc_piix.c pc: Remove PcGuestInfo.isapc_ram_fw field 2016-02-06 20:44:09 +02:00
pc_q35.c q35: No need to check gigabyte_align 2016-02-25 13:14:19 +02:00
pc_sysfw.c x86: Clean up includes 2016-01-29 15:07:22 +00:00
pc.c i386: expose floppy drive CMOS type 2016-03-11 14:55:15 +02:00
pci-assign-load-rom.c x86: Clean up includes 2016-01-29 15:07:22 +00:00