Thanks for the nice feedback Pedro, Gerd and Andrei! Yeah it seems like a valid concern here as Mik mentioned on edk2-libc, and it seems to fits edk2 long term interest on this.
Can we file this as an issue in Bugzilla for tracking or something? Since this will take some time to work on this as it involves a bigger discussion, personally I think we could get this FDT patch in first meanwhile, and also remove the FDT from Embedded Pkg as next step, per discussion with Leif?
What do you think?




On Sat, 1 Apr 2023 at 03:30, Andrei Warkentin <andrei.warkentin@intel.com> wrote:
How does this relate to the existing EmbeddedPkg/Library/FdtLib code? Is there a specific plan to move away from this in existing components?

I did look in the BZ (https://bugzilla.tianocore.org/show_bug.cgi?id=4392) but this doesn't seem to acknowledge that there is existing Fdt support in EmbeddedPkg.

A

> -----Original Message-----
> From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of Benny
> Lin
> Sent: Thursday, March 30, 2023 11:52 AM
> To: devel@edk2.groups.io
> Cc: Lin, Benny <benny.lin@intel.com>; Kinney, Michael D
> <michael.d.kinney@intel.com>; Gao, Liming <gaoliming@byosoft.com.cn>;
> Liu, Zhiguang <zhiguang.liu@intel.com>; Sean Brogan
> <sean.brogan@microsoft.com>; Michael Kubacki
> <mikuback@linux.microsoft.com>
> Subject: [edk2-devel] [PATCH 0/2] Support FDT library.
>
> REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4392
> Add FDT support in EDK2 by submodule 3rd party libfdt
> (https://github.com/devicetree-org/pylibfdt/tree/main/libfdt)
>
> Cc: Michael D Kinney <michael.d.kinney@intel.com>
> Cc: Liming Gao <gaoliming@byosoft.com.cn>
> Cc: Zhiguang Liu <zhiguang.liu@intel.com>
> Cc: Sean Brogan <sean.brogan@microsoft.com>
> Cc: Michael Kubacki <mikuback@linux.microsoft.com>
> Signed-off-by: Benny Lin <benny.lin@intel.com>
>
> Benny Lin (2):
>   MdePkg: Support FDT library.
>   .pytool: Support FDT library.
>
>  .gitmodules                               |   3 +
>  .pytool/CISettings.py                     |   2 +
>  MdePkg/Include/Library/FdtLib.h           | 300 ++++++++++++++++++++++
>  MdePkg/Library/BaseFdtLib/BaseFdtLib.inf  |  62 +++++
> MdePkg/Library/BaseFdtLib/BaseFdtLib.uni  |  14 +
>  MdePkg/Library/BaseFdtLib/FdtLib.c        | 284 ++++++++++++++++++++
>  MdePkg/Library/BaseFdtLib/LibFdtSupport.h | 102 ++++++++
> MdePkg/Library/BaseFdtLib/LibFdtWrapper.c | 138 ++++++++++
>  MdePkg/Library/BaseFdtLib/libfdt          |   1 +
>  MdePkg/Library/BaseFdtLib/limits.h        |  10 +
>  MdePkg/Library/BaseFdtLib/stdbool.h       |  10 +
>  MdePkg/Library/BaseFdtLib/stddef.h        |  10 +
>  MdePkg/Library/BaseFdtLib/stdint.h        |  10 +
>  MdePkg/Library/BaseFdtLib/stdlib.h        |  10 +
>  MdePkg/Library/BaseFdtLib/string.h        |  10 +
>  MdePkg/MdePkg.ci.yaml                     |  17 +-
>  MdePkg/MdePkg.dec                         |   4 +
>  MdePkg/MdePkg.dsc                         |   2 +
>  ReadMe.rst                                |   1 +
>  19 files changed, 988 insertions(+), 2 deletions(-)  create mode 100644
> MdePkg/Include/Library/FdtLib.h  create mode 100644
> MdePkg/Library/BaseFdtLib/BaseFdtLib.inf
>  create mode 100644 MdePkg/Library/BaseFdtLib/BaseFdtLib.uni
>  create mode 100644 MdePkg/Library/BaseFdtLib/FdtLib.c
>  create mode 100644 MdePkg/Library/BaseFdtLib/LibFdtSupport.h
>  create mode 100644 MdePkg/Library/BaseFdtLib/LibFdtWrapper.c
>  create mode 160000 MdePkg/Library/BaseFdtLib/libfdt  create mode 100644
> MdePkg/Library/BaseFdtLib/limits.h
>  create mode 100644 MdePkg/Library/BaseFdtLib/stdbool.h
>  create mode 100644 MdePkg/Library/BaseFdtLib/stddef.h
>  create mode 100644 MdePkg/Library/BaseFdtLib/stdint.h
>  create mode 100644 MdePkg/Library/BaseFdtLib/stdlib.h
>  create mode 100644 MdePkg/Library/BaseFdtLib/string.h
>
> --
> 2.39.1.windows.1
>
>
>
>
>