Changeset 108215 in vbox for trunk/src/VBox/Runtime/include
- Timestamp:
- Feb 13, 2025 6:24:31 PM (2 months ago)
- svn:sync-xref-src-repo-rev:
- 167535
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Runtime/include/internal/acpi.h
r108184 r108215 237 237 238 238 239 /** 240 * External declaration. 241 */ 242 typedef struct RTACPIASLEXTERNAL 243 { 244 /** List node for the list of externals. */ 245 RTLISTNODE NdExternal; 246 /** The object type. */ 247 RTACPIOBJTYPE enmObjType; 248 /** For methods this will hold the argument count. */ 249 uint32_t cArgs; 250 /** The name as parsed from the source file. */ 251 const char *pszName; 252 /** Size of the full name path in characters excluding the terminating zero. */ 253 size_t cchNamePath; 254 /** The name path - variable in size. */ 255 char szNamePath[1]; 256 } RTACPIASLEXTERNAL; 257 /** Pointer to an external declaration. */ 258 typedef RTACPIASLEXTERNAL *PRTACPIASLEXTERNAL; 259 /** Pointer to a const external declaration. */ 260 typedef const RTACPIASLEXTERNAL *PCRTACPIASLEXTERNAL; 261 262 263 239 264 /** Pointer to an ACPI namespace entry. */ 240 265 typedef struct RTACPINSENTRY *PRTACPINSENTRY; … … 252 277 /** The name segment identifying the entry. */ 253 278 char achNameSeg[4]; 254 /** The AST node associated with this namespace entry. */ 255 PCRTACPIASTNODE pAstNd; 279 /** Flag whether this points to an AST node or an external. */ 280 bool fAstNd; 281 /** Type dependent data. */ 282 union 283 { 284 /** The AST node associated with this namespace entry. */ 285 PCRTACPIASTNODE pAstNd; 286 /** Pointer to the external declaration. */ 287 PCRTACPIASLEXTERNAL pExternal; 288 }; 256 289 /** Bit offset for resource fields. */ 257 290 uint32_t offBits; … … 358 391 359 392 /** 393 * Adds a new namespace entry to the given name space - resource field. 394 * 395 * @returns IPRT status code. 396 * @param pNsRoot The namespace root to add the entry to. 397 * @param pszNameString An ACPI NameString (either segment or path). 398 * @param offBits Bit offset from the beginning of the resource. 399 * @param cBits NUmber of bits this resource field has. 400 */ 401 DECLHIDDEN(int) rtAcpiNsAddEntryExternal(PRTACPINSROOT pNsRoot, const char *pszNameString, PCRTACPIASLEXTERNAL pExternal); 402 403 404 /** 405 * Queries the name path for the given name string based on the current scope. 406 * 407 * @returns IPRT status code. 408 * @retval VERR_NOT_FOUND if the name string can't be resolved to a name path with the given namespace. 409 * @retval VERR_BUFFER_OVERFLOW if the buffer for holding the name path is too small. pcchNamePath will 410 * hold the required number of characters, excluding the zero temrinator. 411 * @param pNsRoot The namespace root. 412 * @param pszNameString The name string to query the name path for. 413 * @param pachNamePath Where to store the name path (including zero terminator), or NULL if the size is queried. 414 * @param pcchNamePath Holds the size of the name path buffer on input, on successful return 415 * holds the actual length of the name path excluding the zero terminator. 416 */ 417 DECLHIDDEN(int) rtAcpiNsQueryNamePathForNameString(PRTACPINSROOT pNsRoot, const char *pszNameString, char *pachNamePath, size_t *pcchNamePath); 418 419 420 /** 360 421 * Pops the current name space entry from the stack and returns to the previous one. 361 422 *
Note:
See TracChangeset
for help on using the changeset viewer.