From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:33681) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aUtTK-0004Sz-Ug for qemu-devel@nongnu.org; Sun, 14 Feb 2016 05:00:07 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1aUtTH-0003pP-Mo for qemu-devel@nongnu.org; Sun, 14 Feb 2016 05:00:06 -0500 Received: from mail-wm0-x244.google.com ([2a00:1450:400c:c09::244]:34550) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aUtTH-0003pJ-D4 for qemu-devel@nongnu.org; Sun, 14 Feb 2016 05:00:03 -0500 Received: by mail-wm0-x244.google.com with SMTP id b205so3329711wmb.1 for ; Sun, 14 Feb 2016 02:00:03 -0800 (PST) References: <1453816225-139685-1-git-send-email-imammedo@redhat.com> <1453816225-139685-2-git-send-email-imammedo@redhat.com> From: Marcel Apfelbaum Message-ID: <56C05020.6020501@gmail.com> Date: Sun, 14 Feb 2016 12:00:00 +0200 MIME-Version: 1.0 In-Reply-To: <1453816225-139685-2-git-send-email-imammedo@redhat.com> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH v7 1/3] i386/acpi: make floppy controller object dynamic Reply-To: marcel@redhat.com List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Igor Mammedov , qemu-devel@nongnu.org Cc: jsnow@redhat.com, rkagan@virtuozzo.com, mst@redhat.com On 01/26/2016 03:50 PM, Igor Mammedov wrote: > From: Roman Kagan > > Instead of statically declaring the floppy controller in DSDT, with its > _STA method depending on some obscure bit in the parent ISA bridge, add > the object dynamically to DSDT via AML API only when the controller is > present. > > The _STA method is no longer necessary and is therefore dropped. So are > the declarations of the fields indicating whether the contoller is > enabled. > > Signed-off-by: Roman Kagan > Signed-off-by: Igor Mammedov > --- > hw/i386/acpi-build.c | 27 +++------------------------ > 1 file changed, 3 insertions(+), 24 deletions(-) > > diff --git a/hw/i386/acpi-build.c b/hw/i386/acpi-build.c > index 78758e2..2f685fb 100644 > --- a/hw/i386/acpi-build.c > +++ b/hw/i386/acpi-build.c > @@ -1231,29 +1231,10 @@ static Aml *build_fdc_device_aml(void) > { > Aml *dev; > Aml *crs; > - Aml *method; > - Aml *if_ctx; > - Aml *else_ctx; > - Aml *zero = aml_int(0); > - Aml *is_present = aml_local(0); > > dev = aml_device("FDC0"); > aml_append(dev, aml_name_decl("_HID", aml_eisaid("PNP0700"))); > > - method = aml_method("_STA", 0, AML_NOTSERIALIZED); > - aml_append(method, aml_store(aml_name("FDEN"), is_present)); > - if_ctx = aml_if(aml_equal(is_present, zero)); > - { > - aml_append(if_ctx, aml_return(aml_int(0x00))); > - } > - aml_append(method, if_ctx); > - else_ctx = aml_else(); > - { > - aml_append(else_ctx, aml_return(aml_int(0x0f))); > - } > - aml_append(method, else_ctx); > - aml_append(dev, method); > - > crs = aml_resource_template(); > aml_append(crs, aml_io(AML_DECODE16, 0x03F2, 0x03F2, 0x00, 0x04)); > aml_append(crs, aml_io(AML_DECODE16, 0x03F7, 0x03F7, 0x00, 0x01)); > @@ -1411,7 +1392,9 @@ static void build_isa_devices_aml(Aml *table) > aml_append(scope, build_rtc_device_aml()); > aml_append(scope, build_kbd_device_aml()); > aml_append(scope, build_mouse_device_aml()); > - aml_append(scope, build_fdc_device_aml()); > + if (!!pc_find_fdc0()) { You don't really need the double negation, right? Anyway, I agree with the patch. Reviewed-by: Marcel Apfelbaum Thanks, Marcel > + aml_append(scope, build_fdc_device_aml()); > + } > aml_append(scope, build_lpt_device_aml()); > aml_append(scope, build_com_device_aml(1)); > aml_append(scope, build_com_device_aml(2)); > @@ -1780,8 +1763,6 @@ static void build_q35_isa_bridge(Aml *table) > aml_append(field, aml_named_field("COMB", 3)); > aml_append(field, aml_reserved_field(1)); > aml_append(field, aml_named_field("LPTD", 2)); > - aml_append(field, aml_reserved_field(2)); > - aml_append(field, aml_named_field("FDCD", 2)); > aml_append(dev, field); > > aml_append(dev, aml_operation_region("LPCE", AML_PCI_CONFIG, > @@ -1791,7 +1772,6 @@ static void build_q35_isa_bridge(Aml *table) > aml_append(field, aml_named_field("CAEN", 1)); > aml_append(field, aml_named_field("CBEN", 1)); > aml_append(field, aml_named_field("LPEN", 1)); > - aml_append(field, aml_named_field("FDEN", 1)); > aml_append(dev, field); > > aml_append(scope, dev); > @@ -1839,7 +1819,6 @@ static void build_piix4_isa_bridge(Aml *table) > aml_append(field, aml_reserved_field(3)); > aml_append(field, aml_named_field("CBEN", 1)); > aml_append(dev, field); > - aml_append(dev, aml_name_decl("FDEN", aml_int(1))); > > aml_append(scope, dev); > aml_append(table, scope); >