hikey: Add UEFI sources for reference

UEFI needs to be built outside Android build system.
Please follow the instructions in README.

The sources correspond to:
https://github.com/96boards/edk2/commit/14eae0c12e71fd33c4c0fc51e4475e8db02566cf
https://github.com/96boards/arm-trusted-firmware/commit/e9b4909dcd75fc4ae7041cfb83d28ab9adb7afdf
https://github.com/96boards/l-loader/commit/6b784ad5c4ab00e2b1c6f53cd5f74054e5d00a78
https://git.linaro.org/uefi/uefi-tools.git/commit/abe618f8ab72034fff1ce46c9c006a2c6bd40a7e

Change-Id: Ieeefdb63e673e0c8e64e0a1f02c7bddc63b2c7fb
Signed-off-by: Vishal Bhoj <vishal.bhoj@linaro.org>
diff --git a/uefi/linaro-edk2/MdeModulePkg/Universal/ResetSystemRuntimeDxe/ResetSystem.h b/uefi/linaro-edk2/MdeModulePkg/Universal/ResetSystemRuntimeDxe/ResetSystem.h
new file mode 100644
index 0000000..c3a2a7f
--- /dev/null
+++ b/uefi/linaro-edk2/MdeModulePkg/Universal/ResetSystemRuntimeDxe/ResetSystem.h
@@ -0,0 +1,74 @@
+/** @file

+

+  Copyright (c) 2006 - 2012, Intel Corporation. All rights reserved.<BR>

+

+  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 _RESET_SYSTEM_H_

+#define _RESET_SYSTEM_H_

+

+

+#include <PiDxe.h>

+

+#include <Protocol/Reset.h>

+#include <Guid/CapsuleVendor.h>

+

+#include <Library/BaseLib.h>

+#include <Library/DebugLib.h>

+#include <Library/UefiLib.h>

+#include <Library/IoLib.h>

+#include <Library/UefiDriverEntryPoint.h>

+#include <Library/UefiBootServicesTableLib.h>

+#include <Library/UefiRuntimeLib.h>

+#include <Library/UefiRuntimeServicesTableLib.h>

+#include <Library/ResetSystemLib.h>

+#include <Library/ReportStatusCodeLib.h>

+

+/**

+  The driver's entry point.

+

+  It initializes the Reset Architectural Protocol.

+

+  @param[in] ImageHandle  The firmware allocated handle for the EFI image.  

+  @param[in] SystemTable  A pointer to the EFI System Table.

+  

+  @retval EFI_SUCCESS     The entry point is executed successfully.

+  @retval other           Cannot install ResetArch protocol.

+

+**/

+EFI_STATUS

+EFIAPI

+InitializeResetSystem (

+  IN EFI_HANDLE        ImageHandle,

+  IN EFI_SYSTEM_TABLE  *SystemTable

+  );

+

+/**

+  Resets the entire platform.

+

+  @param[in] ResetType          The type of reset to perform.

+  @param[in] ResetStatus        The status code for the reset.

+  @param[in] DataSize           The size, in bytes, of WatchdogData.

+  @param[in] ResetData          For a ResetType of EfiResetCold, EfiResetWarm, or

+                                EfiResetShutdown the data buffer starts with a Null-terminated

+                                string, optionally followed by additional binary data.

+

+**/

+VOID

+EFIAPI

+ResetSystem (

+  IN EFI_RESET_TYPE   ResetType,

+  IN EFI_STATUS       ResetStatus,

+  IN UINTN            DataSize,

+  IN VOID             *ResetData OPTIONAL

+  );

+

+#endif