Files
mop3/kernel/uACPI/tests/test-cases/read-fields-on-deref.asl
2025-12-21 22:24:23 +01:00

37 lines
758 B
Plaintext

// Name: DerefOf reads field objects
// Expect: int => 255
DefinitionBlock ("", "DSDT", 2, "uTEST", "TESTTABL", 0xF0F0F0F0)
{
Name (MAIN, 0xFF)
OperationRegion(MYRE, SystemMemory, 0, 128)
Field (MYRE, AnyAcc, NoLock) {
FILD, 40
}
FILD = "Hello"
Name (RES, "XXXXX")
Method (CHEK, 1) {
if (RES != Arg0) {
Printf("Invalid value read: %o, expected %o", RES, Arg0)
MAIN = 0
}
}
// First try a simple one-level reference
Local0 = RefOf(FILD)
RES = DerefOf(Local0)
CHEK("Hello")
// Now try a nested three-level reference
RES = "XXXXX"
Local1 = RefOf(Local0)
Local2 = RefOf(Local1)
FILD = "World"
RES = DerefOf(Local2)
CHEK("World")
}