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/ShellPkg/Include/Protocol/EfiShellParameters.h b/uefi/linaro-edk2/ShellPkg/Include/Protocol/EfiShellParameters.h
new file mode 100644
index 0000000..e52328b
--- /dev/null
+++ b/uefi/linaro-edk2/ShellPkg/Include/Protocol/EfiShellParameters.h
@@ -0,0 +1,60 @@
+/** @file

+  EFI Shell protocol as defined in the UEFI Shell 2.0 specification.

+

+  Copyright (c) 2006 - 2011, 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 __EFI_SHELL_PARAMETERS_PROTOCOL__

+#define __EFI_SHELL_PARAMETERS_PROTOCOL__

+

+#include <ShellBase.h>

+

+#define EFI_SHELL_PARAMETERS_PROTOCOL_GUID \

+  { \

+  0x752f3136, 0x4e16, 0x4fdc, { 0xa2, 0x2a, 0xe5, 0xf4, 0x68, 0x12, 0xf4, 0xca } \

+  }

+

+typedef struct _EFI_SHELL_PARAMETERS_PROTOCOL {

+  ///

+  /// Points to an Argc-element array of points to NULL-terminated strings containing

+  /// the command-line parameters. The first entry in the array is always the full file

+  /// path of the executable. Any quotation marks that were used to preserve

+  /// whitespace have been removed.

+  ///

+  CHAR16 **Argv;

+

+  ///

+  /// The number of elements in the Argv array.

+  ///

+  UINTN Argc;

+

+  ///

+  /// The file handle for the standard input for this executable. This may be different

+  /// from the ConInHandle in EFI_SYSTEM_TABLE.

+  ///

+  SHELL_FILE_HANDLE StdIn;

+

+  ///

+  /// The file handle for the standard output for this executable. This may be different

+  /// from the ConOutHandle in EFI_SYSTEM_TABLE.

+  ///

+  SHELL_FILE_HANDLE StdOut;

+

+  ///

+  /// The file handle for the standard error output for this executable. This may be

+  /// different from the StdErrHandle in EFI_SYSTEM_TABLE.

+  ///

+  SHELL_FILE_HANDLE StdErr;

+} EFI_SHELL_PARAMETERS_PROTOCOL;

+

+extern EFI_GUID gEfiShellParametersProtocolGuid;

+

+#endif