summaryrefslogtreecommitdiffstats
path: root/EmbeddedPkg/Include/Library
diff options
context:
space:
mode:
authorArd Biesheuvel <ard.biesheuvel@linaro.org>2014-09-09 17:59:19 +0000
committeroliviermartin <oliviermartin@6f19259b-4bc3-4df7-8a09-765794883524>2014-09-09 17:59:19 +0000
commit1e9b2bddff2217eb23bf9eb5d1052ecfebc39204 (patch)
treef902b343cf02e4acbe20919149219535928cc5db /EmbeddedPkg/Include/Library
parentf8d7d6e151e9377412bd368cf8901ac21d6edb36 (diff)
downloadedk2-1e9b2bddff2217eb23bf9eb5d1052ecfebc39204.tar.gz
edk2-1e9b2bddff2217eb23bf9eb5d1052ecfebc39204.tar.bz2
edk2-1e9b2bddff2217eb23bf9eb5d1052ecfebc39204.zip
EmbeddedPkg: Split off FDT loading functionality from FdtLib
Split off the recently added functionality to load device tree images and install them as configuration tables, as it introduces a dependency on UefiBootServicesTableLib, preventing FdtLib from being used during SEC and PEI phases. Contributed-under: TianoCore Contribution Agreement 1.0 Reviewed-by: Laszlo Ersek <lersek@redhat.com> Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Signed-off-by: Olivier Martin <olivier.martin@arm.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16080 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'EmbeddedPkg/Include/Library')
-rw-r--r--EmbeddedPkg/Include/Library/FdtLoadLib.h48
1 files changed, 48 insertions, 0 deletions
diff --git a/EmbeddedPkg/Include/Library/FdtLoadLib.h b/EmbeddedPkg/Include/Library/FdtLoadLib.h
new file mode 100644
index 0000000000..e08f499745
--- /dev/null
+++ b/EmbeddedPkg/Include/Library/FdtLoadLib.h
@@ -0,0 +1,48 @@
+/** @file
+*
+* Copyright (c) 2011-2014, ARM Limited. All rights reserved.
+*
+* This program and the accompanying materials
+* are licensed and made available under the terms and conditions of the BSD License
+* which accompanies this distribution. The full text of the license may be found at
+* http://opensource.org/licenses/bsd-license.php
+*
+* THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
+* WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
+*
+**/
+
+#ifndef _FDT_LOAD_LIB_H_
+#define _FDT_LOAD_LIB_H_
+
+/**
+ Load and Install FDT from Semihosting
+
+ @param Filename Name of the file to load from semihosting
+
+ @return EFI_SUCCESS Fdt Blob was successfully installed into the configuration table
+ from semihosting
+ @return EFI_NOT_FOUND Fail to locate the file in semihosting
+ @return EFI_OUT_OF_RESOURCES Fail to allocate memory to contain the blob
+**/
+EFI_STATUS
+InstallFdtFromSemihosting (
+ IN CONST CHAR16* FileName
+ );
+
+/**
+ Load and Install FDT from Firmware Volume
+
+ @param Filename Guid of the FDT blob to load from firmware volume
+
+ @return EFI_SUCCESS Fdt Blob was successfully installed into the configuration table
+ from firmware volume
+ @return EFI_NOT_FOUND Failed to locate the file in firmware volume
+ @return EFI_OUT_OF_RESOURCES Failed to allocate memory to contain the blob
+**/
+EFI_STATUS
+InstallFdtFromFv (
+ IN CONST EFI_GUID *FileName
+ );
+
+#endif