Windows on UEFI systems is only capable of detecting the presence and the type of floppy drives via corresponding ACPI objects.
Those objects are added in the last patch of the series; the three preceding ones pave the way to it, by making the necessary data public and by moving the whole floppy drive controller description into runtime-generated SSDT. Note that the series conflicts with Igor's patchset for dynamic DSDT, in particular, with "[PATCH 50/74] pc: acpi: move FDC0 device from DSDT to SSDT"; I haven't managed to avoid that while trying to meet maintainer's comments. Roman Kagan (4): i386/pc: expose identifying the floppy controller i386/acpi: make floppy controller object dynamic expose floppy drive geometry and CMOS type i386: populate floppy drive information in SSDT Signed-off-by: Roman Kagan <[email protected]> Cc: "Michael S. Tsirkin" <[email protected]> Cc: Eduardo Habkost <[email protected]> Cc: Igor Mammedov <[email protected]> Cc: John Snow <[email protected]> Cc: Kevin Wolf <[email protected]> Cc: Paolo Bonzini <[email protected]> Cc: Richard Henderson <[email protected]> Cc: [email protected] Cc: [email protected] --- changes since v3: - make FDC object fully dynamic in a separate patch - split out support patches - include test data updates with the respective patches to maintain bisectability changes since v2: - explicit endianness for buffer data - reorder code to reduce conflicts with dynamic DSDT patchset - update test data hw/block/fdc.c | 11 +++++ hw/i386/acpi-build.c | 92 ++++++++++++++++++++++++++++++++++++ hw/i386/acpi-dsdt-isa.dsl | 18 ------- hw/i386/acpi-dsdt.dsl | 1 - hw/i386/pc.c | 46 ++++++++++-------- hw/i386/q35-acpi-dsdt.dsl | 7 +-- include/hw/block/fdc.h | 2 + include/hw/i386/pc.h | 3 ++ tests/acpi-test-data/pc/DSDT | Bin 3028 -> 2946 bytes tests/acpi-test-data/pc/SSDT | Bin 2486 -> 2635 bytes tests/acpi-test-data/pc/SSDT.bridge | Bin 4345 -> 4494 bytes tests/acpi-test-data/q35/DSDT | Bin 7666 -> 7578 bytes 12 files changed, 137 insertions(+), 43 deletions(-) -- 2.5.0
