public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: brucex.wang@intel.com
To: devel@edk2.groups.io
Cc: brucex.wang@intel.com, Benny Lin <benny.lin@intel.com>,
	Gua Guo <gua.guo@intel.com>, Chasel Chiu <chasel.chiu@intel.com>,
	James Lu <james.lu@intel.com>
Subject: [edk2-devel] [PATCH v4 3/4] MdePkg/BaseFdtLib: Add Fdt function.
Date: Mon, 18 Sep 2023 14:37:18 +0800	[thread overview]
Message-ID: <20230918063719.1395-4-brucex.wang@intel.com> (raw)
In-Reply-To: <20230918063719.1395-1-brucex.wang@intel.com>

From: "Brucex.Wang" <brucex.wang@intel.com>

Add FdtGetName() and FdtNodeDepth() function.

Cc: Benny Lin <benny.lin@intel.com>
Cc: Gua Guo <gua.guo@intel.com>
Cc: Chasel Chiu <chasel.chiu@intel.com>
Cc: James Lu <james.lu@intel.com>

Signed-off-by: BruceX Wang <brucex.wang@intel.com>
---
 MdePkg/Include/Library/FdtLib.h    | 34 +++++++++++++++++++++++++
 MdePkg/Library/BaseFdtLib/FdtLib.c | 40 ++++++++++++++++++++++++++++++
 2 files changed, 74 insertions(+)

diff --git a/MdePkg/Include/Library/FdtLib.h b/MdePkg/Include/Library/FdtLib.h
index cf5ceba9e9..d9300a18e3 100644
--- a/MdePkg/Include/Library/FdtLib.h
+++ b/MdePkg/Include/Library/FdtLib.h
@@ -398,4 +398,38 @@ FdtSetProp (
   IN UINT32       Length
   );
 
+/**
+  Returns the name of a given node.
+
+  @param[in] Fdt            The pointer to FDT blob.
+  @param[in] NodeOffse      Offset of node to check.
+  @param[in] Length         The pointer to an integer variable (will be overwritten) or NULL.
+
+  @return The pointer to the node's name.
+
+**/
+CONST CHAR8 *
+EFIAPI
+FdtGetName (
+  IN VOID    *Fdt,
+  IN INT32   NodeOffset,
+  IN UINT32  *Length
+  );
+
+/**
+  FdtNodeDepth() finds the depth of a given node.  The root node
+  has depth 0, its immediate subnodes depth 1 and so forth.
+
+  @param[in] Fdt            The pointer to FDT blob.
+  @param[in] NodeOffset     Offset of node to check.
+
+  @return Depth of the node at NodeOffset.
+**/
+INT32
+EFIAPI
+FdtNodeDepth (
+  IN CONST VOID  *Fdt,
+  IN INT32       NodeOffset
+  );
+
 #endif /* FDT_LIB_H_ */
diff --git a/MdePkg/Library/BaseFdtLib/FdtLib.c b/MdePkg/Library/BaseFdtLib/FdtLib.c
index 090b0b3fd4..1ef99ea882 100644
--- a/MdePkg/Library/BaseFdtLib/FdtLib.c
+++ b/MdePkg/Library/BaseFdtLib/FdtLib.c
@@ -402,3 +402,43 @@ FdtSetProp (
 {
   return fdt_setprop (Fdt, NodeOffset, Name, Value, (int)Length);
 }
+
+/**
+  Returns the name of a given node.
+
+  @param[in] Fdt            The pointer to FDT blob.
+  @param[in] NodeOffset     Offset of node to check.
+  @param[in] Length         The pointer to an integer variable (will be overwritten) or NULL.
+
+  @return The pointer to the node's name.
+
+**/
+CONST CHAR8 *
+EFIAPI
+FdtGetName (
+  IN VOID    *Fdt,
+  IN INT32   NodeOffset,
+  IN UINT32  *Length
+  )
+{
+  return fdt_get_name (Fdt, NodeOffset, (int *)Length);
+}
+
+/**
+  FdtNodeDepth() finds the depth of a given node.  The root node
+  has depth 0, its immediate subnodes depth 1 and so forth.
+
+  @param[in] Fdt            The pointer to FDT blob.
+  @param[in] NodeOffset     Offset of node to check.
+
+  @returns Depth of the node at NodeOffset.
+**/
+INT32
+EFIAPI
+FdtNodeDepth (
+  IN CONST VOID  *Fdt,
+  IN INT32       NodeOffset
+  )
+{
+  return fdt_node_depth (Fdt, NodeOffset);
+}
-- 
2.39.1.windows.1



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#108786): https://edk2.groups.io/g/devel/message/108786
Mute This Topic: https://groups.io/mt/101435615/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-



  parent reply	other threads:[~2023-09-18 15:17 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-09-18  6:37 [edk2-devel] [PATCH v4 0/4] UefiPayloadPkg: Add FIT support brucex.wang
2023-09-18  6:37 ` [edk2-devel] [PATCH v4 1/4] OvmfPkg: Remove applicationProcessorEntryPoint brucex.wang
2023-09-18  6:37 ` [edk2-devel] [PATCH v4 2/4] UefiCpuPkg/ResetVector: Remove AP waking vector from ResetVector brucex.wang
2023-09-18  6:37 ` brucex.wang [this message]
2023-09-18  6:37 ` [edk2-devel] [PATCH v4 4/4] UefiPayloadPkg: Add FIT support brucex.wang
  -- strict thread matches above, loose matches on Subject: below --
2023-09-18  6:42 [edk2-devel] [PATCH v4 0/4] " brucex.wang
2023-09-18  6:42 ` [edk2-devel] [PATCH v4 3/4] MdePkg/BaseFdtLib: Add Fdt function brucex.wang

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-list from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20230918063719.1395-4-brucex.wang@intel.com \
    --to=devel@edk2.groups.io \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox