diff options
author | Harry Liebel <Harry.Liebel@arm.com> | 2014-10-27 10:52:11 +0000 |
---|---|---|
committer | oliviermartin <oliviermartin@Edk2> | 2014-10-27 10:52:11 +0000 |
commit | ced216f8b994bbc5a9a7a377668bf8f5a0d782e2 (patch) | |
tree | 769cf4bd43347e451ae208864f5845b505cf3c24 /ArmPlatformPkg/Include | |
parent | 53ae06f50dea91865edfacde1edc70c9e76b90d2 (diff) | |
download | edk2-ced216f8b994bbc5a9a7a377668bf8f5a0d782e2.tar.gz edk2-ced216f8b994bbc5a9a7a377668bf8f5a0d782e2.tar.bz2 edk2-ced216f8b994bbc5a9a7a377668bf8f5a0d782e2.zip |
ArmPlatformPkg/ArmShellCmdRunAxf: Added 'runaxf' cmd to shell
Use the command to load and start a ARM Executable File from mass storage.
This is basically just an ELF file. The program is copied to memory and
the Entrypoint is called. Control is not expected to return back to the
Shell. This has only been tested on AArch64 with a limited set of AXF
binaries.
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Harry Liebel <Harry.Liebel@arm.com>
Reviewed-By: Olivier Martin <olivier.martin@arm.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16247 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'ArmPlatformPkg/Include')
-rw-r--r-- | ArmPlatformPkg/Include/Library/ArmShellCmdLib.h | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/ArmPlatformPkg/Include/Library/ArmShellCmdLib.h b/ArmPlatformPkg/Include/Library/ArmShellCmdLib.h new file mode 100644 index 0000000000..eb31cd4053 --- /dev/null +++ b/ArmPlatformPkg/Include/Library/ArmShellCmdLib.h @@ -0,0 +1,57 @@ +/** @file
+*
+* Definitions for the Dynamic Shell command library
+*
+* Copyright (C) 2014, ARM Ltd
+*
+* 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 _ARM_SHELL_CMD_LIB_H_
+#define _ARM_SHELL_CMD_LIB_H_
+
+/**
+
+ Initialize and Install EFI_SHELL_DYNAMIC_COMMAND_PROTOCOL for RunAxf command.
+
+ @param[in] ImageHandle Handle the protocol should be attached to.
+
+ @retval EFI_SUCCESS The command has been installed successfully.
+
+ @retval EFI_UNSUPPORTED Help for the command failed to initialise.
+
+ @return Status code returned by InstallProtocolInterface
+ Boot Service function.
+
+**/
+EFI_STATUS
+ShellDynCmdRunAxfInstall (
+ IN EFI_HANDLE ImageHandle
+ );
+
+/**
+
+ Uninstall the RunAxf Command
+
+ @param[in] ImageHandle Handle of the device where the protocol should have
+ been installed.
+
+ @retval EFI_SUCCESS The device has been un-initialized successfully.
+
+ @return Status code returned by UninstallProtocolInterface
+ Boot Service function.
+
+**/
+EFI_STATUS
+ShellDynCmdRunAxfUninstall (
+ IN EFI_HANDLE ImageHandle
+ );
+
+#endif // _ARM_SHELL_CMD_LIB_H_
|