Skip to content

Ivrs parser

ivrs_parser

Module for converting a raw IVRS table into a struct.

IVRS_TABLE

Object representing a IVRS Table.

ACPI_TABLE_HEADER

Object representing a ACPI Table Header.

__init__
__init__(
    data: Optional[bytes] = None,
) -> IVRS_TABLE.ACPI_TABLE_HEADER

Inits an empty object.

Decode
Decode(header_byte_array: bytes) -> None

Loads data into the object from the header_byte_array.

Encode
Encode() -> bytes

Serializes the object.

Returns:

Type Description
str

string representing packed data as bytes (i.e. b'\x01\x00\x03')

DumpInfo
DumpInfo() -> None

Prints internal information to the console.

ToXmlElementTree
ToXmlElementTree() -> ET.Element

Transforms the object into an xml item and returns it.

REMAPPING_STRUCT_HEADER

Generic ReMapping Struct Header.

__init__
__init__(
    header_byte_array: bytes,
) -> IVRS_TABLE.REMAPPING_STRUCT_HEADER

Inits an empty object.

IVHD_STRUCT

Object representing a IVHD Struct.

IVHD_TYPE

IVMD_STRUCT type enum.

__init__
__init__(
    data: Optional[bytes] = None,
) -> IVRS_TABLE.IVHD_STRUCT.IVHD_TYPE

Inits an empty object.

Decode
Decode(header_byte_array: bytes) -> None

Loads data into the object from the header_byte_array.

Encode
Encode() -> bytes

Serializes the object.

Returns:

Type Description
str

string representing packed data as bytes (i.e. b'\x01\x00\x03')

addDTEEntry
addDTEEntry(dte: IVRS_TABLE.DEVICE_TABLE_ENTRY) -> None

Append raw data, update length. checksum will be left untouched.

ToXmlElementTree
ToXmlElementTree() -> ET.Element

Transforms the object into an xml item and returns it.

DumpInfo
DumpInfo() -> None

Prints internal information to the console.

IVMD_STRUCT

Object representing an IVMD Struct.

IVMD_TYPE

IVMD_STRUCT type enum.

__init__
__init__(
    data: Optional[bytes] = None,
) -> IVRS_TABLE.IVMD_STRUCT

Inits an empty object.

Decode
Decode(header_byte_array: bytes) -> None

Loads data into the object from the header_byte_array.

Encode
Encode() -> bytes

Serializes the object.

Returns:

Type Description
str

string representing packed data as bytes (i.e. b'\x01\x00\x03')

ToXmlElementTree
ToXmlElementTree() -> ET.Element

Transforms the object into an xml item and returns it.

DumpInfo
DumpInfo() -> None

Prints internal information to the console.

DEVICE_TABLE_ENTRY

A Generic Device Table Entry.

DTE_TYPE

Enum for Device Table Entry Types.

Factory staticmethod
Factory(
    data: bytes,
) -> Optional[IVRS_TABLE.DEVICE_TABLE_ENTRY_SPECIAL]

Factory method to generate a specific table entry type.

DEVICE_TABLE_ENTRY_RESERVED

Object representing a Device Table Entry RESERVED.

__init__
__init__(
    data: Optional[bytes] = None,
) -> IVRS_TABLE.DEVICE_TABLE_ENTRY

Inits an empty object.

Decode
Decode(header_byte_array: bytes) -> None

Loads data into the object from the header_byte_array.

Encode
Encode() -> bytes

Serializes the object.

Returns:

Type Description
str

string representing packed data as bytes (i.e. b'\x01\x00\x03')

ToXmlElementTree
ToXmlElementTree() -> ET.Element

Transforms the object into an xml item and returns it.

DumpInfo
DumpInfo() -> None

Prints internal information to the console.

DEVICE_TABLE_ENTRY_ALL

Object representing a Device Table Entry ALL.

__init__
__init__(
    data: Optional[bytes] = None,
) -> IVRS_TABLE.DEVICE_TABLE_ENTRY_ALL

Inits an empty object.

Decode
Decode(header_byte_array: bytes) -> None

Loads data into the object from the header_byte_array.

Encode
Encode() -> bytes

Serializes the object.

Returns:

Type Description
str

string representing packed data as bytes (i.e. b'\x01\x00\x03')

ToXmlElementTree
ToXmlElementTree() -> ET.Element

Transforms the object into an xml item and returns it.

DumpInfo
DumpInfo() -> None

Prints internal information to the console.

DEVICE_TABLE_ENTRY_SELECT

Object representing a Device Table Entry SELECT.

__init__
__init__(
    data: Optional[bytes] = None,
) -> IVRS_TABLE.DEVICE_TABLE_ENTRY_SELECT

Inits an empty object.

Decode
Decode(header_byte_array: bytes) -> None

Loads data into the object from the header_byte_array.

Encode
Encode() -> bytes

Serializes the object.

Returns:

Type Description
str

string representing packed data as bytes (i.e. b'\x01\x00\x03')

ToXmlElementTree
ToXmlElementTree() -> ET.Element

Transforms the object into an xml item and returns it.

DumpInfo
DumpInfo() -> None

Prints internal information to the console.

DEVICE_TABLE_ENTRY_RANGE_START

Object representing a Device Table Entry RANGE_START.

__init__
__init__(
    data: Optional[bytes] = None,
) -> IVRS_TABLE.DEVICE_TABLE_ENTRY_RANGE_START

Inits an empty object.

Decode
Decode(header_byte_array: bytes) -> None

Loads data into the object from the header_byte_array.

Encode
Encode() -> bytes

Serializes the object.

Returns:

Type Description
str

string representing packed data as bytes (i.e. b'\x01\x00\x03')

ToXmlElementTree
ToXmlElementTree() -> ET.Element

Transforms the object into an xml item and returns it.

DumpInfo
DumpInfo() -> None

Prints internal information to the console.

DEVICE_TABLE_ENTRY_ALIAS_SELECT

Object representing a Device Table Entry ALIAS_SELECT.

__init__
__init__(
    data: Optional[bytes] = None,
) -> IVRS_TABLE.DEVICE_TABLE_ENTRY_ALIAS_SELECT

Inits an empty object.

Decode
Decode(header_byte_array: bytes) -> None

Loads data into the object from the header_byte_array.

Encode
Encode() -> bytes

Serializes the object.

Returns:

Type Description
str

string representing packed data as bytes (i.e. b'\x01\x00\x03')

ToXmlElementTree
ToXmlElementTree() -> ET.Element

Transforms the object into an xml item and returns it.

DumpInfo
DumpInfo() -> None

Prints internal information to the console.

DEVICE_TABLE_ENTRY_ALIAS_RANGE_START

Object representing a Device Table Range Start.

__init__
__init__(
    data: Optional[bytes] = None,
) -> IVRS_TABLE.DEVICE_TABLE_ENTRY_ALIAS_RANGE_START

Inits an empty object.

Decode
Decode(header_byte_array: bytes) -> None

Loads data into the object from the header_byte_array.

Encode
Encode() -> bytes

Serializes the object.

Returns:

Type Description
str

string representing packed data as bytes (i.e. b'\x01\x00\x03')

ToXmlElementTree
ToXmlElementTree() -> ET.Element

Transforms the object into an xml item and returns it.

DumpInfo
DumpInfo() -> None

Prints internal information to the console.

DEVICE_TABLE_ENTRY_EX_SELECT

Object representing a Device Table Entry EX_SELECT.

__init__
__init__(
    data: Optional[bytes] = None,
) -> IVRS_TABLE.DEVICE_TABLE_ENTRY_EX_SELECT

Inits an empty object.

Decode
Decode(header_byte_array: bytes) -> None

Loads data into the object from the header_byte_array.

Encode
Encode() -> bytes

Serializes the object.

Returns:

Type Description
str

string representing packed data as bytes (i.e. b'\x01\x00\x03')

ToXmlElementTree
ToXmlElementTree() -> ET.Element

Transforms the object into an xml item and returns it.

DumpInfo
DumpInfo() -> None

Prints internal information to the console.

DEVICE_TABLE_ENTRY_EX_RANGE_START

Object representing a Device Table Entry EX_RANGE_START.

__init__
__init__(
    data: Optional[bytes] = None,
) -> IVRS_TABLE.DEVICE_TABLE_ENTRY_EX_RANGE_START

Inits an empty object.

Decode
Decode(header_byte_array: bytes) -> None

Loads data into the object from the header_byte_array.

Encode
Encode() -> bytes

Serializes the object.

Returns:

Type Description
str

string representing packed data as bytes (i.e. b'\x01\x00\x03')

ToXmlElementTree
ToXmlElementTree() -> ET.Element

Transforms the object into an xml item and returns it.

DumpInfo
DumpInfo() -> None

Prints internal information to the console.

DEVICE_TABLE_ENTRY_SPECIAL

Object representing a Device Table Entry Special.

__init__
__init__(
    data: Optional[bytes] = None,
) -> IVRS_TABLE.DEVICE_TABLE_ENTRY_SPECIAL

Inits an empty object.

Decode
Decode(header_byte_array: bytes) -> None

Loads data into the object from the header_byte_array.

Encode
Encode() -> bytes

Serializes the object.

Returns:

Type Description
str

string representing packed data as bytes (i.e. b'\x01\x00\x03')

ToXmlElementTree
ToXmlElementTree() -> ET.Element

Transforms the object into an xml item and returns it.

DumpInfo
DumpInfo() -> None

Prints internal information to the console.

DEVICE_TABLE_ENTRY_ACPI

Object representing a Device Table Entry ACPI.

__init__
__init__(
    data: Optional[bytes] = None,
) -> IVRS_TABLE.DEVICE_TABLE_ENTRY_ACPI

Inits an empty object.

Decode
Decode(header_byte_array: bytes) -> None

Loads data into the object from the header_byte_array.

Encode
Encode() -> bytes

Serializes the object.

Returns:

Type Description
str

string representing packed data as bytes (i.e. b'\x01\x00\x03')

ToXmlElementTree
ToXmlElementTree() -> ET.Element

Transforms the object into an xml item and returns it.

DumpInfo
DumpInfo() -> None

Prints internal information to the console.

__init__

__init__(data: Optional[bytes] = None) -> IVRS_TABLE

Inits an empty object.

Decode

Decode(data: bytes) -> None

Loads data into the object from the header_byte_array.

Encode

Encode() -> bytes

Serializes the object.

Returns:

Type Description
str

string representing packed data as bytes (i.e. b'\x01\x00\x03')

ToXmlElementTree

ToXmlElementTree() -> ET.Element

Transforms the object into an xml item and returns it.

DumpInfo

DumpInfo() -> None

Prints internal information to the console.

validateChecksum8 staticmethod

validateChecksum8(data: bytes) -> bool

Validate the Checksum.

updateACPISum

updateACPISum() -> None

Update the ACPI Checksum.

addIVHDEntry

addIVHDEntry(ivhd: IVRS_TABLE.IVHD_STRUCT) -> None

Append entry to the list, update length and checksum.

addIVMDEntry

addIVMDEntry(ivmd: IVRS_TABLE.IVMD_STRUCT) -> None

Append entry to the list, update length and checksum.

IVRSBitEnabled

IVRSBitEnabled() -> bool

Returns the IVRSBit Value.