TianoCore EDK2 master
|
Functions | |
EFI_STATUS EFIAPI | AmlFindNode (IN AML_NODE_HANDLE ReferenceNode, IN CONST CHAR8 *AslPath, OUT AML_NODE_HANDLE *OutNode) |
EFI_STATUS EFIAPI | AmlGetAslPathName (IN AML_NODE_HANDLE Node, OUT CHAR8 *Buffer, IN OUT UINT32 *BufferSize) |
NameSpace APIs allow to find a node from an AML path, and reciprocally get the AML path of a node.
These APIs only operate on "NameSpace nodes", i.e. nodes that are part of the AML namespace. These are the root node and object nodes acknowledged by AmlGetObjectNodeInfo in Node Interface APIs.
EFI_STATUS EFIAPI AmlFindNode | ( | IN AML_NODE_HANDLE | ReferenceNode, |
IN CONST CHAR8 * | AslPath, | ||
OUT AML_NODE_HANDLE * | OutNode | ||
) |
Find a node in the AML namespace, given an ASL path and a reference Node.
E.g.: For the following AML namespace, with the ReferenceNode being the node with the name "AAAA":
[out] | OutNode | Pointer to the found node. Contains NULL if not found. |
EFI_SUCCESS | The function completed successfully. |
EFI_BUFFER_TOO_SMALL | No space left in the buffer. |
EFI_INVALID_PARAMETER | Invalid parameter. |
EFI_OUT_OF_RESOURCES | Out of memory. |
EFI_STATUS EFIAPI AmlGetAslPathName | ( | IN AML_NODE_HANDLE | Node, |
OUT CHAR8 * | Buffer, | ||
IN OUT UINT32 * | BufferSize | ||
) |
Build the absolute ASL pathname to Node.
BufferSize is always updated to the size of the pathname.
If:
[in] | Node | Node to build the absolute path to. Must be a root node, or a namespace node. |
[out] | Buffer | Buffer to write the path to. If NULL, only update *BufferSize. |
[in,out] | BufferSize | Pointer holding:
|
EFI_SUCCESS | The function completed successfully. |
EFI_BUFFER_TOO_SMALL | No space left in the buffer. |
EFI_INVALID_PARAMETER | Invalid parameter. |
EFI_OUT_OF_RESOURCES | Out of memory. |