Hi Rudolf, I'm for this change. I don't think it would be too invasive and should be easy to test with the compiler.
Marc On Mon, Sep 19, 2016 at 2:49 PM Rudolf Marek <[email protected]> wrote: > Hi all, > > Just FYI [1], maybe you already know. > > There is an alternate syntax available for ACPI ASL sources. > It just converts Polish notation of ASL to something less geeky like C > operators. It says that the tool to convert the sources is in development > (to > ratain comments). I think it would make ACPI more readable if coreboot > would > switch to ASL 2.0. Note that the change is only on syntax side! Latest > ACPICA > iasl already decompiles to this syntax by default! > > Example before: > > Method (SRDY, 0, Serialized) > { > Store (200, Local0) // Timeout 200ms > While (Local0) { > If (And(HSTS, 0x40)) { // IN_USE? > Sleep(1) // Wait 1ms > Decrement(Local0) // timeout-- > If (LEqual(Local0, 0)) { > Return (1) > } > } Else { > Store (0, Local0) // We're ready > } > } > > Store (4000, Local0) // Timeout 200ms (50us * 4000) > While (Local0) { > If (And (HSTS, 0x01)) { // Host Busy? > Stall(50) // Wait 50us > Decrement(Local0) // timeout-- > If (LEqual(Local0, 0)) { > KILL() > } > } Else { > Return (0) // Success > } > } > > Return (1) // Failure > } > > > After: > > Method (SRDY, 0, Serialized) > { > Local0 = 0xC8 > While (Local0) > { > If (HSTS & 0x40) > { > Sleep (0x01) > Local0-- > If (Local0 == 0x00) > { > Return (0x01) > } > } > Else > { > Local0 = 0x00 > } > } > > Local0 = 0x0FA0 > While (Local0) > { > If (HSTS & 0x01) > { > Stall (0x32) > Local0-- > If (Local0 == 0x00) > { > KILL () > } > } > Else > { > Return (0x00) > } > } > > Return (0x01) > } > > > Thanks > Rudolf > > > [1] https://acpica.org/sites/acpica/files/ASL2.0Overview.pdf > > > -- > coreboot mailing list: [email protected] > https://www.coreboot.org/mailman/listinfo/coreboot > -- http://marcjonesconsulting.com
-- coreboot mailing list: [email protected] https://www.coreboot.org/mailman/listinfo/coreboot

