VirtualBox

Changeset 108059 in vbox for trunk/include


Ignore:
Timestamp:
Feb 4, 2025 1:35:41 PM (3 months ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
167339
Message:

Runtime/RTAcpi*: Updates to the ACPI ASL -> AML compiler, bugref:10733

Location:
trunk/include/iprt
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/iprt/acpi.h

    r108029 r108059  
    725725
    726726
     727/**
     728 * Object type.
     729 */
     730typedef enum RTACPIOBJTYPE
     731{
     732    /** Invalid object type. */
     733    kAcpiObjType_Invalid = 0,
     734    /** Unknown object - UnknownObj */
     735    kAcpiObjType_Unknown,
     736    /** Integer object - IntObj */
     737    kAcpiObjType_Int,
     738    /** String object - StrObj */
     739    kAcpiObjType_Str,
     740    /** Buffer object - BuffObj */
     741    kAcpiObjType_Buff,
     742    /** Package object - PkgObj */
     743    kAcpiObjType_Pkg,
     744    /** Field unit object - FieldUnitObj */
     745    kAcpiObjType_FieldUnit,
     746    /** Device object - DeviceObj */
     747    kAcpiObjType_Device,
     748    /** Event object - EventObj */
     749    kAcpiObjType_Event,
     750    /** Method object - MethodObj */
     751    kAcpiObjType_Method,
     752    /** Mutex object - MutexObj */
     753    kAcpiObjType_MutexObj,
     754    /** OpRegion object - OpRegionObj */
     755    kAcpiObjType_OpRegion,
     756    /** Power resource object - PowerResObj */
     757    kAcpiObjType_PowerRes,
     758    /** Thermal zone object - ThermalZoneObj */
     759    kAcpiObjType_ThermalZone,
     760    /** Buffer field object - BuffFieldObj */
     761    kAcpiObjType_BuffField
     762} RTACPIOBJTYPE;
     763
     764
     765/**
     766 * Appends a new External declaration to the given ACPI table.
     767 *
     768 * @returns IPRT status code.
     769 * @param   hAcpiTbl            The ACPI table handle.
     770 * @param   pszName             The name stirng of the external object.
     771 * @param   enmObjType          The object type.
     772 * @param   cArgs               Number of arguments for the object (mostly method), valid is [0..7].
     773 */
     774RTDECL(int) RTAcpiTblExternalAppend(RTACPITBL hAcpiTbl, const char *pszName, RTACPIOBJTYPE enmObjType, uint8_t cArgs);
     775
    727776
    728777/** @name ACPI resource builder related API.
  • trunk/include/iprt/formats/acpi-aml.h

    r107952 r108059  
    296296
    297297
     298/** @name Object type values found in AML
     299 * @{ */
     300/** Object type is uninitialized. */
     301#define ACPI_AML_OBJECT_TYPE_UNINIT               0
     302/** Object is an integer. */
     303#define ACPI_AML_OBJECT_TYPE_INTEGER              1
     304/** Object is a string. */
     305#define ACPI_AML_OBJECT_TYPE_STRING               2
     306/** Object is a buffer. */
     307#define ACPI_AML_OBJECT_TYPE_BUFFER               3
     308/** Object is a package. */
     309#define ACPI_AML_OBJECT_TYPE_PACKAGE              4
     310/** Object is a field unit. */
     311#define ACPI_AML_OBJECT_TYPE_FIELD_UNIT           5
     312/** Object is a device. */
     313#define ACPI_AML_OBJECT_TYPE_DEVICE               6
     314/** Object is an event. */
     315#define ACPI_AML_OBJECT_TYPE_EVENT                7
     316/** Object is a method. */
     317#define ACPI_AML_OBJECT_TYPE_METHOD               8
     318/** Object is a mutex. */
     319#define ACPI_AML_OBJECT_TYPE_MUTEX                9
     320/** Object is an operation region. */
     321#define ACPI_AML_OBJECT_TYPE_OPERATION_REGION    10
     322/** Object is a power resource. */
     323#define ACPI_AML_OBJECT_TYPE_POWER_RESOURCE      11
     324/** Object is a processor. */
     325#define ACPI_AML_OBJECT_TYPE_PROCESSOR           12
     326/** Object is a thermal zone. */
     327#define ACPI_AML_OBJECT_TYPE_THERMAL_ZONE        13
     328/** Object is a buffer field. */
     329#define ACPI_AML_OBJECT_TYPE_BUFFER_FIELD        14
     330/** Object is a DDB handle. */
     331#define ACPI_AML_OBJECT_TYPE_DDB_HANDLE          15
     332/** Object is the debug object. */
     333#define ACPI_AML_OBJECT_TYPE_DEBUG               16
     334/** @} */
     335
     336
    298337/** @name Some helpers for classifying AML bytecode.
    299338 * @{ */
  • trunk/include/iprt/mangling.h

    r108029 r108059  
    404404# define RTAcpiTblElseFinalize                          RT_MANGLER(RTAcpiTblElseFinalize)
    405405# define RTAcpiTblElseStart                             RT_MANGLER(RTAcpiTblElseStart)
     406# define RTAcpiTblExternalAppend                        RT_MANGLER(RTAcpiTblExternalAppend)
    406407# define RTAcpiTblFieldAppend                           RT_MANGLER(RTAcpiTblFieldAppend)
    407408# define RTAcpiTblFinalize                              RT_MANGLER(RTAcpiTblFinalize)
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette