DynamicTablesPkg: Add AmlAttachNode()
This function allows to add a node as the last node of a parent node in an AML tree. For instance, ASL code corresponding to NewNode: Name (_UID, 0) ASL code corresponding to ParentNode: Device (PCI0) { Name(_HID, EISAID("PNP0A08")) } "AmlAttachNode (ParentNode, NewNode)" will result in: ASL code: Device (PCI0) { Name(_HID, EISAID("PNP0A08")) Name (_UID, 0) } To: Sami Mujawar <sami.mujawar@arm.com> To: Alexei Fedorov <Alexei.Fedorov@arm.com> Signed-off-by: Pierre Gondois <Pierre.Gondois@arm.com> Reviewed-by: Sami Mujawar <sami.mujawar@arm.com>
This commit is contained in:
parent
b2b8def4e3
commit
69ddfee1c3
|
@ -166,6 +166,39 @@ AmlDetachNode (
|
||||||
IN AML_NODE_HANDLE Node
|
IN AML_NODE_HANDLE Node
|
||||||
);
|
);
|
||||||
|
|
||||||
|
/** Attach a node in an AML tree.
|
||||||
|
|
||||||
|
The node will be added as the last statement of the ParentNode.
|
||||||
|
E.g.:
|
||||||
|
ASL code corresponding to NewNode:
|
||||||
|
Name (_UID, 0)
|
||||||
|
|
||||||
|
ASL code corresponding to ParentNode:
|
||||||
|
Device (PCI0) {
|
||||||
|
Name(_HID, EISAID("PNP0A08"))
|
||||||
|
}
|
||||||
|
|
||||||
|
"AmlAttachNode (ParentNode, NewNode)" will result in:
|
||||||
|
ASL code:
|
||||||
|
Device (PCI0) {
|
||||||
|
Name(_HID, EISAID("PNP0A08"))
|
||||||
|
Name (_UID, 0)
|
||||||
|
}
|
||||||
|
|
||||||
|
@param [in] ParentNode Pointer to the parent node.
|
||||||
|
Must be a root or an object node.
|
||||||
|
@param [in] NewNode Pointer to the node to add.
|
||||||
|
|
||||||
|
@retval EFI_SUCCESS The function completed successfully.
|
||||||
|
@retval EFI_INVALID_PARAMETER Invalid parameter.
|
||||||
|
**/
|
||||||
|
EFI_STATUS
|
||||||
|
EFIAPI
|
||||||
|
AmlAttachNode (
|
||||||
|
IN AML_NODE_HANDLE ParentNode,
|
||||||
|
IN AML_NODE_HANDLE NewNode
|
||||||
|
);
|
||||||
|
|
||||||
/** Find a node in the AML namespace, given an ASL path and a reference Node.
|
/** Find a node in the AML namespace, given an ASL path and a reference Node.
|
||||||
|
|
||||||
- The AslPath can be an absolute path, or a relative path from the
|
- The AslPath can be an absolute path, or a relative path from the
|
||||||
|
|
|
@ -394,6 +394,42 @@ AmlNameOpGetNextRdNode (
|
||||||
return EFI_SUCCESS;
|
return EFI_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/** Attach a node in an AML tree.
|
||||||
|
|
||||||
|
The node will be added as the last statement of the ParentNode.
|
||||||
|
E.g.:
|
||||||
|
ASL code corresponding to NewNode:
|
||||||
|
Name (_UID, 0)
|
||||||
|
|
||||||
|
ASL code corresponding to ParentNode:
|
||||||
|
Device (PCI0) {
|
||||||
|
Name(_HID, EISAID("PNP0A08"))
|
||||||
|
}
|
||||||
|
|
||||||
|
"AmlAttachNode (ParentNode, NewNode)" will result in:
|
||||||
|
ASL code:
|
||||||
|
Device (PCI0) {
|
||||||
|
Name(_HID, EISAID("PNP0A08"))
|
||||||
|
Name (_UID, 0)
|
||||||
|
}
|
||||||
|
|
||||||
|
@param [in] ParentNode Pointer to the parent node.
|
||||||
|
Must be a root or an object node.
|
||||||
|
@param [in] NewNode Pointer to the node to add.
|
||||||
|
|
||||||
|
@retval EFI_SUCCESS The function completed successfully.
|
||||||
|
@retval EFI_INVALID_PARAMETER Invalid parameter.
|
||||||
|
**/
|
||||||
|
EFI_STATUS
|
||||||
|
EFIAPI
|
||||||
|
AmlAttachNode (
|
||||||
|
IN AML_NODE_HANDLE ParentNode,
|
||||||
|
IN AML_NODE_HANDLE NewNode
|
||||||
|
)
|
||||||
|
{
|
||||||
|
return AmlVarListAddTail (ParentNode, NewNode);
|
||||||
|
}
|
||||||
|
|
||||||
// DEPRECATED APIS
|
// DEPRECATED APIS
|
||||||
#ifndef DISABLE_NEW_DEPRECATED_INTERFACES
|
#ifndef DISABLE_NEW_DEPRECATED_INTERFACES
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue