On Mon, Dec 14, 2015 at 11:22:39AM +0300, Denis V. Lunev wrote:
From: Roman Kagan <address@hidden>
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.
Windows doesn't; instead, it requests this information from BIOS via int
0x13/0x08 or through ACPI objects _FDE (Floppy Drive Enumerate) and _FDI
(Floppy Drive Information). On UEFI systems only ACPI-based detection
is supported.
QEMU used not to provide those objects in its DSDT; as a result floppy
drives were invisible to Windows on UEFI/OVMF.
This patch implements those objects in ASL, making the ACPI interpreter
query the CMOS field and populate the objects. The data values used for
_FDI (which, per ACPI spec, is supposed to be equivalent to BIOS int
0x13/0x08) are taken from SeaBIOS.
Signed-off-by: Roman Kagan <address@hidden>
Signed-off-by: Denis V. Lunev <address@hidden>
CC: Michael S. Tsirkin <address@hidden>
CC: Igor Mammedov <address@hidden>
CC: Paolo Bonzini <address@hidden>
CC: Richard Henderson <address@hidden>
CC: Eduardo Habkost <address@hidden>
This is not a regression, so I'm inclined not to merge this for 2.5.
Pls correct me if I'm wrong.