def res.small
bend-osdev-acpi@0.1.1.0 · aml_resource.bend:83
import bend-osdev-acpi@0.1.1.0/aml_resource.bend as AmlResource
import Base
import bend-osdev-bytes@0.1.1.0/bytes.bend as B
import bend-osdev-acpi@0.1.1.0/fields.bend as F
83def res.small(+t: Nat, +d: B.Octets) -> AmlResource:
84 match t:
85 case 4n:
86 AmlRIrq{F.AcpiF.u16(d, 0n), res.irq.flags(d)}
87 case 5n:
88 AmlRDma{F.AcpiF.u8(d, 0n), F.AcpiF.u8(d, 1n)}
89 case 8n:
90 AmlRIo{F.AcpiF.u8(d, 0n), F.AcpiF.u16(d, 1n), F.AcpiF.u16(d, 3n), F.AcpiF.u8(d, 5n), F.AcpiF.u8(d, 6n)}
91 case 9n:
92 AmlRFixedIo{F.AcpiF.u16(d, 0n), F.AcpiF.u8(d, 2n)}
93 case _:
94 AmlROther{U32.shln(U32.from_nat(t), 3n), d}