Hi Jonathan, On 7/3/25 5:02 PM, Jonathan Cameron wrote: > On Thu, 3 Jul 2025 14:35:35 +0200 > Eric Auger <eric.au...@redhat.com> wrote: > >> The disassembled DSDT table is given below > I'd suggest maybe a spot of cropping to bring this down to a reasonable > length. > See inline. Yup. I can do that. > > Otherwise LGTM > > Reviewed-by: Jonathan Cameron <jonathan.came...@huawei.com> many thanks!
Eric > >> * Original Table Header: >> * Signature "DSDT" >> * Length 0x000014E3 (5347) >> * Revision 0x02 >> * Checksum 0x92 >> * OEM ID "BOCHS " >> * OEM Table ID "BXPC " >> * OEM Revision 0x00000001 (1) >> * Compiler ID "BXPC" >> * Compiler Version 0x00000001 (1) >> */ >> DefinitionBlock ("", "DSDT", 2, "BOCHS ", "BXPC ", 0x00000001) >> { >> Scope (\_SB) >> { >> Device (C000) >> { >> Name (_HID, "ACPI0007" /* Processor Device */) // _HID: >> Hardware ID >> Name (_UID, Zero) // _UID: Unique ID >> } >> >> Device (COM0) >> { >> Name (_HID, "ARMH0011") // _HID: Hardware ID >> Name (_UID, Zero) // _UID: Unique ID >> Name (_CRS, ResourceTemplate () // _CRS: Current Resource >> Settings >> { >> Memory32Fixed (ReadWrite, >> 0x09000000, // Address Base >> 0x00001000, // Address Length >> ) >> Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, >> ,, ) >> { >> 0x00000021, >> } >> }) >> } >> >> Device (FWCF) >> { >> Name (_HID, "QEMU0002") // _HID: Hardware ID >> Name (_STA, 0x0B) // _STA: Status >> Name (_CCA, One) // _CCA: Cache Coherency Attribute >> Name (_CRS, ResourceTemplate () // _CRS: Current Resource >> Settings >> { >> Memory32Fixed (ReadWrite, >> 0x09020000, // Address Base >> 0x00000018, // Address Length >> ) >> }) >> } >> >> Device (VR00) >> { >> Name (_HID, "LNRO0005") // _HID: Hardware ID >> Name (_UID, Zero) // _UID: Unique ID >> Name (_CCA, One) // _CCA: Cache Coherency Attribute >> Name (_CRS, ResourceTemplate () // _CRS: Current Resource >> Settings >> { >> Memory32Fixed (ReadWrite, >> 0x0A000000, // Address Base >> 0x00000200, // Address Length >> ) >> Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, >> ,, ) >> { >> 0x00000030, >> } >> }) >> } > If you want to keep these, maybe a single representative LNRO0005 only. > >> Device (PCI0) >> { >> Name (_HID, "PNP0A08" /* PCI Express Bus */) // _HID: Hardware >> ID >> Name (_CID, "PNP0A03" /* PCI Bus */) // _CID: Compatible ID >> Name (_SEG, Zero) // _SEG: PCI Segment >> Name (_BBN, Zero) // _BBN: BIOS Bus Number >> Name (_UID, Zero) // _UID: Unique ID >> Name (_STR, Unicode ("PCIe 0 Device")) // _STR: Description >> String >> Name (_CCA, One) // _CCA: Cache Coherency Attribute >> Name (_PRT, Package (0x80) // _PRT: PCI Routing Table >> { >> Package (0x04) >> { >> 0xFFFF, >> Zero, >> L000, >> Zero >> }, >> > Could probably crop this to just leave a representative chunk. > >> }) >> Method (_CBA, 0, NotSerialized) // _CBA: Configuration Base >> Address >> { >> Return (0x0000004010000000) >> } >> >> Name (_CRS, ResourceTemplate () // _CRS: Current Resource >> Settings >> { >> WordBusNumber (ResourceProducer, MinFixed, MaxFixed, >> PosDecode, >> 0x0000, // Granularity >> 0x0000, // Range Minimum >> 0x00FF, // Range Maximum >> 0x0000, // Translation Offset >> 0x0100, // Length >> ,, ) >> DWordMemory (ResourceProducer, PosDecode, MinFixed, >> MaxFixed, NonCacheable, ReadWrite, >> 0x00000000, // Granularity >> 0x10000000, // Range Minimum >> 0x3EFEFFFF, // Range Maximum >> 0x00000000, // Translation Offset >> 0x2EFF0000, // Length >> ,, , AddressRangeMemory, TypeStatic) >> DWordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, >> EntireRange, >> 0x00000000, // Granularity >> 0x00000000, // Range Minimum >> 0x0000FFFF, // Range Maximum >> 0x3EFF0000, // Translation Offset >> 0x00010000, // Length >> ,, , TypeStatic, DenseTranslation) >> QWordMemory (ResourceProducer, PosDecode, MinFixed, >> MaxFixed, NonCacheable, ReadWrite, >> 0x0000000000000000, // Granularity >> 0x0000008000000000, // Range Minimum >> 0x000000FFFFFFFFFF, // Range Maximum >> 0x0000000000000000, // Translation Offset >> 0x0000008000000000, // Length >> ,, , AddressRangeMemory, TypeStatic) >> }) >> Method (_OSC, 4, NotSerialized) // _OSC: Operating System >> Capabilities >> { >> CreateDWordField (Arg3, Zero, CDW1) >> If ((Arg0 == ToUUID ("33db4d5b-1ff7-401c-9657-7441c03dd766") >> /* PCI Host Bridge Device */)) >> { >> CreateDWordField (Arg3, 0x04, CDW2) >> CreateDWordField (Arg3, 0x08, CDW3) >> Local0 = CDW3 /* \_SB_.PCI0._OSC.CDW3 */ >> Local0 &= 0x1F >> If ((Arg1 != One)) >> { >> CDW1 |= 0x08 >> } >> >> If ((CDW3 != Local0)) >> { >> CDW1 |= 0x10 >> } >> >> CDW3 = Local0 >> } >> Else >> { >> CDW1 |= 0x04 >> } >> >> Return (Arg3) >> } >> >> Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method >> { >> If ((Arg0 == ToUUID ("e5c937d0-3553-4d7a-9117-ea4d19c3434d") >> /* Device Labeling Interface */)) >> { >> If ((Arg2 == Zero)) >> { >> Return (Buffer (One) >> { >> 0x01 >> // . >> }) >> } >> } >> >> Return (Buffer (One) >> { >> 0x00 // . >> }) >> } >> >> Device (RES0) >> { >> Name (_HID, "PNP0C02" /* PNP Motherboard Resources */) // >> _HID: Hardware ID >> Name (_CRS, ResourceTemplate () // _CRS: Current Resource >> Settings >> { >> QWordMemory (ResourceProducer, PosDecode, MinFixed, >> MaxFixed, NonCacheable, ReadWrite, >> 0x0000000000000000, // Granularity >> 0x0000004010000000, // Range Minimum >> 0x000000401FFFFFFF, // Range Maximum >> 0x0000000000000000, // Translation Offset >> 0x0000000010000000, // Length >> ,, , AddressRangeMemory, TypeStatic) >> }) >> } >> } >> >> Device (\_SB.GED) >> { >> Name (_HID, "ACPI0013" /* Generic Event Device */) // _HID: >> Hardware ID >> Name (_UID, "GED") // _UID: Unique ID >> Name (_CRS, ResourceTemplate () // _CRS: Current Resource >> Settings >> { >> Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, >> ) >> { >> 0x00000029, >> } >> }) >> OperationRegion (EREG, SystemMemory, 0x09080000, 0x04) >> Field (EREG, DWordAcc, NoLock, WriteAsZeros) >> { >> ESEL, 32 >> } >> >> Method (_EVT, 1, Serialized) // _EVT: Event >> { >> Local0 = ESEL /* \_SB_.GED_.ESEL */ >> If (((Local0 & 0x02) == 0x02)) >> { >> Notify (PWRB, 0x80) // Status Change >> } >> } >> } >> >> Device (PWRB) >> { >> Name (_HID, "PNP0C0C" /* Power Button Device */) // _HID: >> Hardware ID >> Name (_UID, Zero) // _UID: Unique ID >> } >> } >> >> Scope (\_SB.PCI0) >> { >> Method (EDSM, 5, Serialized) >> { >> If ((Arg2 == Zero)) >> { >> Local0 = Buffer (One) >> { >> 0x00 // >> . >> } >> If ((Arg0 != ToUUID ("e5c937d0-3553-4d7a-9117-ea4d19c3434d") >> /* Device Labeling Interface */)) >> { >> Return (Local0) >> } >> >> If ((Arg1 < 0x02)) >> { >> Return (Local0) >> } >> >> Local0 [Zero] = 0x81 >> Return (Local0) >> } >> >> If ((Arg2 == 0x07)) >> { >> Local0 = Package (0x02) >> { >> Zero, >> "" >> } >> Local1 = DerefOf (Arg4 [Zero]) >> Local0 [Zero] = Local1 >> Return (Local0) >> } >> } >> >> Device (S00) >> { >> Name (_ADR, Zero) // _ADR: Address >> } >> >> Device (S08) >> { >> Name (_ADR, 0x00010000) // _ADR: Address >> } >> >> Device (S38) >> { >> Name (_ADR, 0x00070000) // _ADR: Address >> Device (S00) >> { >> Name (_ADR, Zero) // _ADR: Address >> Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method >> { >> Local0 = Package (0x01) >> { >> 0x0C >> } >> Return (EDSM (Arg0, Arg1, Arg2, Arg3, Local0)) >> } >> } >> } >> } >> } >> >> Signed-off-by: Eric Auger <eric.au...@redhat.com> >> --- >> tests/qtest/bios-tables-test-allowed-diff.h | 1 - >> tests/data/acpi/aarch64/virt/DSDT.hpoffacpiindex | Bin 0 -> 5347 bytes >> 2 files changed, 1 deletion(-) >> >> diff --git a/tests/qtest/bios-tables-test-allowed-diff.h >> b/tests/qtest/bios-tables-test-allowed-diff.h >> index 02f4f0b29f..dc3ab24d05 100644 >> --- a/tests/qtest/bios-tables-test-allowed-diff.h >> +++ b/tests/qtest/bios-tables-test-allowed-diff.h >> @@ -1,3 +1,2 @@ >> /* List of comma-separated changed AML files to ignore */ >> "tests/data/acpi/aarch64/virt/DSDT.acpipcihp", >> -"tests/data/acpi/aarch64/virt/DSDT.hpoffacpiindex", >> diff --git a/tests/data/acpi/aarch64/virt/DSDT.hpoffacpiindex >> b/tests/data/acpi/aarch64/virt/DSDT.hpoffacpiindex >> index >> e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..970d43f68bca060361105f70dbb00b3a25646db4 >> 100644 >> GIT binary patch >> literal 5347 >> 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 >> >> literal 0 >> HcmV?d00001 >>