[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[qemu-xen staging] tests/acpi/bios-tables-test: update DSDT blob for multifunction bridge test



commit bbbdedb38692dc1005a17b465f6b92474356c1c0
Author:     Ani Sinha <ani@xxxxxxxxxxx>
AuthorDate: Thu Oct 7 19:27:50 2021 +0530
Commit:     Michael Roth <michael.roth@xxxxxxx>
CommitDate: Tue Dec 14 14:05:24 2021 -0600

    tests/acpi/bios-tables-test: update DSDT blob for multifunction bridge test
    
    We added a new unit test for testing acpi hotplug on multifunction bridges 
in
    q35 machines. Here, we update the DSDT table gloden master blob for this 
unit
    test.
    
    The test adds the following devices to qemu and then checks the changes
    introduced in the DSDT table due to the addition of the following devices:
    
    (a) a multifunction bridge device
    (b) a bridge device with function 1
    (c) a non-bridge device with function 2
    
    In the DSDT table, we should see AML hotplug descriptions for (a) and (b).
    For (a) we should find a hotplug AML description for function 0.
    
    Following is the ASL diff between the original DSDT table and the modified 
DSDT
    table due to the unit test. We see that multifunction bridge on bus 2 and 
single
    function bridge on bus 3 function 1 are described, not the non-bridge 
balloon
    device on bus 4, function 2.
    
    @@ -1,30 +1,30 @@
     /*
      * Intel ACPI Component Architecture
      * AML/ASL+ Disassembler version 20190509 (64-bit version)
      * Copyright (c) 2000 - 2019 Intel Corporation
      *
      * Disassembling to symbolic ASL+ operators
      *
    - * Disassembly of tests/data/acpi/q35/DSDT, Thu Oct  7 18:29:19 2021
    + * Disassembly of /tmp/aml-C7JCA1, Thu Oct  7 18:29:19 2021
      *
      * Original Table Header:
      *     Signature        "DSDT"
    - *     Length           0x00002061 (8289)
    + *     Length           0x00002187 (8583)
      *     Revision         0x01 **** 32-bit table (V1), no 64-bit math support
    - *     Checksum         0xF9
    + *     Checksum         0x8D
      *     OEM ID           "BOCHS "
      *     OEM Table ID     "BXPC    "
      *     OEM Revision     0x00000001 (1)
      *     Compiler ID      "BXPC"
      *     Compiler Version 0x00000001 (1)
      */
     DefinitionBlock ("", "DSDT", 1, "BOCHS ", "BXPC    ", 0x00000001)
     {
         Scope (\)
         {
             OperationRegion (DBG, SystemIO, 0x0402, One)
             Field (DBG, ByteAcc, NoLock, Preserve)
             {
                 DBGB,   8
             }
    
    @@ -3265,23 +3265,95 @@
                     Method (_S1D, 0, NotSerialized)  // _S1D: S1 Device State
                     {
                         Return (Zero)
                     }
    
                     Method (_S2D, 0, NotSerialized)  // _S2D: S2 Device State
                     {
                         Return (Zero)
                     }
    
                     Method (_S3D, 0, NotSerialized)  // _S3D: S3 Device State
                     {
                         Return (Zero)
                     }
                 }
    
    +            Device (S10)
    +            {
    +                Name (_ADR, 0x00020000)  // _ADR: Address
    +                Name (BSEL, One)
    +                Device (S00)
    +                {
    +                    Name (_SUN, Zero)  // _SUN: Slot User Number
    +                    Name (_ADR, Zero)  // _ADR: Address
    +                    Method (_EJ0, 1, NotSerialized)  // _EJx: Eject 
Device, x=0-9
    +                    {
    +                        PCEJ (BSEL, _SUN)
    +                    }
    +
    +                    Method (_DSM, 4, Serialized)  // _DSM: Device-Specific 
Method
    +                    {
    +                        Return (PDSM (Arg0, Arg1, Arg2, Arg3, BSEL, _SUN))
    +                    }
    +                }
    +
    +                Method (DVNT, 2, NotSerialized)
    +                {
    +                    If ((Arg0 & One))
    +                    {
    +                        Notify (S00, Arg1)
    +                    }
    +                }
    +
    +                Method (PCNT, 0, NotSerialized)
    +                {
    +                    BNUM = One
    +                    DVNT (PCIU, One)
    +                    DVNT (PCID, 0x03)
    +                }
    +            }
    +
    +            Device (S19)
    +            {
    +                Name (_ADR, 0x00030001)  // _ADR: Address
    +                Name (BSEL, Zero)
    +                Device (S00)
    +                {
    +                    Name (_SUN, Zero)  // _SUN: Slot User Number
    +                    Name (_ADR, Zero)  // _ADR: Address
    +                    Method (_EJ0, 1, NotSerialized)  // _EJx: Eject 
Device, x=0-9
    +                    {
    +                        PCEJ (BSEL, _SUN)
    +                    }
    +
    +                    Method (_DSM, 4, Serialized)  // _DSM: Device-Specific 
Method
    +                    {
    +                        Return (PDSM (Arg0, Arg1, Arg2, Arg3, BSEL, _SUN))
    +                    }
    +                }
    +
    +                Method (DVNT, 2, NotSerialized)
    +                {
    +                    If ((Arg0 & One))
    +                    {
    +                        Notify (S00, Arg1)
    +                    }
    +                }
    +
    +                Method (PCNT, 0, NotSerialized)
    +                {
    +                    BNUM = Zero
    +                    DVNT (PCIU, One)
    +                    DVNT (PCID, 0x03)
    +                }
    +            }
    +
                 Method (PCNT, 0, NotSerialized)
                 {
    +                ^S19.PCNT ()
    +                ^S10.PCNT ()
                 }
             }
         }
     }
    
    Signed-off-by: Ani Sinha <ani@xxxxxxxxxxx>
    Message-Id: <20211007135750.1277213-4-ani@xxxxxxxxxxx>
    Reviewed-by: Michael S. Tsirkin <mst@xxxxxxxxxx>
    Signed-off-by: Michael S. Tsirkin <mst@xxxxxxxxxx>
    Acked-by: Igor Mammedov <imammedo@xxxxxxxxxx>
    (cherry picked from commit a8339e07f94a47f99560baef59d65a9e039aaf45)
    Signed-off-by: Michael Roth <michael.roth@xxxxxxx>
---
 tests/data/acpi/q35/DSDT.multi-bridge       | Bin 0 -> 8583 bytes
 tests/qtest/bios-tables-test-allowed-diff.h |   1 -
 2 files changed, 1 deletion(-)

diff --git a/tests/data/acpi/q35/DSDT.multi-bridge 
b/tests/data/acpi/q35/DSDT.multi-bridge
index e69de29bb2..a24c713d22 100644
Binary files a/tests/data/acpi/q35/DSDT.multi-bridge and 
b/tests/data/acpi/q35/DSDT.multi-bridge differ
diff --git a/tests/qtest/bios-tables-test-allowed-diff.h 
b/tests/qtest/bios-tables-test-allowed-diff.h
index dabc024f53..dfb8523c8b 100644
--- a/tests/qtest/bios-tables-test-allowed-diff.h
+++ b/tests/qtest/bios-tables-test-allowed-diff.h
@@ -1,2 +1 @@
 /* List of comma-separated changed AML files to ignore */
-"tests/data/acpi/q35/DSDT.multi-bridge",
--
generated by git-patchbot for /home/xen/git/qemu-xen.git#staging



 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.