def AcpiSlit.build

bend-osdev-acpi@0.1.1.0 · slit.bend:67

import bend-osdev-acpi@0.1.1.0/slit.bend as Slit
import Base
import bend-osdev-word64@0.1.1.0/word64.bend as W
import bend-osdev-bytes@0.1.1.0/bytes.bend as B
import bend-osdev-acpi@0.1.1.0/header.bend as H
import bend-osdev-acpi@0.1.1.0/fields.bend as F

67# the table, from N and the matrix (fitted to N x N bytes)
68def AcpiSlit.build(s: AcpiSlit) -> B.Octets:
69  match s:
70    case AcpiSlit{H.AcpiHeader{sg, l, r, c, o, t, orv, ci, cr}, +n, m}:
71      H.AcpiSdt.build(H.AcpiHeader{B.Octets.of_string("SLIT"), l, r, c, o, t, orv, ci, cr}, B.Octets.append(B.Octets.le64(W.W64.from_nat(n)), F.AcpiF.fit(Nat.mul(n, n), m)))

Uses (10)

Used by (2)