From 5bad56093534d943e4fa6e00a068dbe20c39ef81 Mon Sep 17 00:00:00 2001 From: Leif Lindholm Date: Tue, 1 Oct 2024 15:51:26 +0100 Subject: MdePkg: export FdtAddressCells/FdtSizeCells from BaseFdtLib Signed-off-by: Leif Lindholm --- MdePkg/Include/Library/FdtLib.h | 30 ++++++++++++++++++++++++++++++ MdePkg/Library/BaseFdtLib/FdtLib.c | 36 ++++++++++++++++++++++++++++++++++++ 2 files changed, 66 insertions(+) (limited to 'MdePkg') diff --git a/MdePkg/Include/Library/FdtLib.h b/MdePkg/Include/Library/FdtLib.h index 9e085b0b60..e4471fc2ab 100644 --- a/MdePkg/Include/Library/FdtLib.h +++ b/MdePkg/Include/Library/FdtLib.h @@ -639,6 +639,36 @@ FdtNodeOffsetByCompatible ( IN CONST CHAR8 *Compatible ); +/** + Retrieve address size for a bus represented in the tree + + @param[in] Fdt The pointer to FDT blob. + @param[in] NodeOffset Offset of node to check. + + @return Number of cells in the bus address, or negative error. +**/ +INT32 +EFIAPI +FdtAddressCells ( + IN CONST VOID *Fdt, + IN INT32 NodeOffset + ); + +/** + Retrieve address range size for a bus represented in the tree + + @param[in] Fdt The pointer to FDT blob. + @param[in] NodeOffset Offset of node to check. + + @return Number of cells in the bus size, or negative error. +**/ +INT32 +EFIAPI +FdtSizeCells ( + IN CONST VOID *Fdt, + IN INT32 NodeOffset + ); + /* Debug functions. */ CONST CHAR8 diff --git a/MdePkg/Library/BaseFdtLib/FdtLib.c b/MdePkg/Library/BaseFdtLib/FdtLib.c index ca25a292cd..530549ba75 100644 --- a/MdePkg/Library/BaseFdtLib/FdtLib.c +++ b/MdePkg/Library/BaseFdtLib/FdtLib.c @@ -542,6 +542,42 @@ FdtNodeOffsetByCompatible ( return fdt_node_offset_by_compatible (Fdt, StartOffset, Compatible); } +/** + Retrieve address size for a bus represented in the tree + + @param[in] Fdt The pointer to FDT blob. + @param[in] NodeOffset Offset of node to check. + + @return Number of cells in the bus address, or negative error. +**/ +INT32 +EFIAPI +FdtAddressCells ( + IN CONST VOID *Fdt, + IN INT32 NodeOffset + ) +{ + return fdt_address_cells (Fdt, NodeOffset); +} + +/** + Retrieve address range size for a bus represented in the tree + + @param[in] Fdt The pointer to FDT blob. + @param[in] NodeOffset Offset of node to check. + + @return Number of cells in the bus size, or negative error. +**/ +INT32 +EFIAPI +FdtSizeCells ( + IN CONST VOID *Fdt, + IN INT32 NodeOffset + ) +{ + return fdt_size_cells (Fdt, NodeOffset); +} + /* Debug functions. */ CONST CHAR8 -- cgit v1.2.3