summaryrefslogtreecommitdiff
path: root/src/acpi
diff options
context:
space:
mode:
authorPatrick Rudolph <siro@das-labor.org>2017-04-28 16:34:26 +0200
committerPatrick Rudolph <siro@das-labor.org>2018-01-31 08:36:42 +0000
commit6be6df00144402cdc5ace0489d7255186609537c (patch)
tree019426c1469c3c084d56b2ff7ce0d806a073f436 /src/acpi
parenta8733e381d587e51266275f3b96aec2059a3e03c (diff)
downloadcoreboot-6be6df00144402cdc5ace0489d7255186609537c.tar.xz
arch/x86/acpigen: Add generator for _ROM
Generate ACPI AML code for _ROM method. This function takes as input ROM data and ROM length. Arguments passed into _DSM method: Arg0 = Offset in Bytes Arg1 = Bytes to return Example: acpigen_write_rom(0xdeadbeef, 0x10000) AML code generated would look like: Method (_ROM, 2, NotSerialized) // _ROM: Read-Only Memory { OperationRegion (ROMS, SystemMemory, 0xdeadbeef, 0x00010000) Field (ROMS, AnyAcc, NoLock, Preserve) { Offset (0x00), RBF0, 524288 } Local0 = Arg0 Local1 = Arg1 If (Local1 > 0x1000) { Local1 = 0x1000 } If (Local0 > 0x00010000) { Return (Buffer (Local1) { 0x00 }) } If (Local0 > 0x0f000) { Local2 = 0x10000 - Local0 If (Local1 > Local2) { Local1 = Local2 } } Name (ROM1, Buffer (Local1) { 0x00 }) Local1 *= 0x08 Local0 *= 0x08 CreateField (RBF0, Local0, Local1, TMPB) ROM1 = TMPB /* \_SB_.PCI0.GFX0._ROM.TMPB */ Return (ROM1) /* \_SB_.PCI0.GFX0._ROM.ROM1 */ } Change-Id: Ie118b15257295b7133c8e585c0fd5218249dec8d Signed-off-by: Patrick Rudolph <siro@das-labor.org> Reviewed-on: https://review.coreboot.org/20547 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Duncan Laurie <dlaurie@chromium.org>
Diffstat (limited to 'src/acpi')
0 files changed, 0 insertions, 0 deletions