Integrate uACPI

This commit is contained in:
2025-12-21 22:24:23 +01:00
parent c3123192d8
commit 8794a61073
167 changed files with 42535 additions and 4 deletions

View File

@@ -0,0 +1,60 @@
// Name: Increment And Decrement Fields & Indices
// Expect: int => 150
DefinitionBlock ("", "DSDT", 2, "uTEST", "TESTTABL", 0xF0F0F0F0)
{
Method (BROK, 2) {
Printf ("%o increment is broken", Arg0)
Return (Arg1)
}
Method (MAIN, 0, Serialized)
{
Local0 = Buffer { 1 }
Local1 = Package {
123, 22
}
Debug = Increment(Local0[0])
Debug = Decrement(Local1[0])
Local2 = Local1[1]
Debug = Increment(Local2)
OperationRegion(NVSM, SystemMemory, 0x100000, 128)
Field (NVSM, AnyAcc, NoLock, WriteAsZeros) {
FILD, 1,
}
FILD = 0
Debug = Increment(FILD)
// We get a 2 here but write back 0 because field is one bit
Local3 = Increment(FILD)
If (FILD != 0) {
Return (BROK("Field unit", 0xDEADBEEF))
}
Local4 = Increment(FILD)
If (FILD != 1) {
Return (BROK("Field unit", 0xBEEFDEAD))
}
If (DerefOf(Local2) != DerefOf(Local1[1])) {
Return (BROK("Buffer index", 0xCAFEBABE))
}
Return (
// 2
DerefOf(Local0[0]) +
// 122
DerefOf(Local1[0]) +
// 23
DerefOf(Local2) +
// 2
Local3 +
// 1
Local4
)
}
}