-/** @file
- Include flie for basic command line parser for EBL (Embedded Boot Loader)
-
- Copyright (c) 2007, Intel Corporation. All rights reserved.<BR>
- Portions copyright (c) 2008 - 2009, Apple Inc. 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 __EBL_H__
-#define __EBL_H__
-
-#include <PiDxe.h>
-#include <Protocol/BlockIo.h>
-#include <Protocol/SimpleFileSystem.h>
-#include <Protocol/FirmwareVolume2.h>
-#include <Protocol/LoadFile.h>
-#include <Protocol/FirmwareVolumeBlock.h>
-#include <Protocol/PxeBaseCode.h>
-#include <Protocol/LoadedImage.h>
-#include <Protocol/EblAddCommand.h>
-#include <Protocol/PciIo.h>
-#include <Protocol/DevicePath.h>
-
-#include <Guid/FileInfo.h>
-#include <Guid/DxeServices.h>
-#include <Guid/MemoryTypeInformation.h>
-#include <Guid/MemoryAllocationHob.h>
-#include <Library/BaseLib.h>
-#include <Library/MemoryAllocationLib.h>
-#include <Library/DevicePathLib.h>
-#include <Library/PrintLib.h>
-#include <Library/BaseMemoryLib.h>
-#include <Library/UefiLib.h>
-#include <Library/UefiBootServicesTableLib.h>
-#include <Library/UefiRuntimeServicesTableLib.h>
-#include <Library/DebugLib.h>
-#include <Library/EfiFileLib.h>
-#include <Library/HobLib.h>
-#include <Library/DebugLib.h>
-#include <Library/IoLib.h>
-#include <Library/PcdLib.h>
-#include <Library/EblCmdLib.h>
-#include <Library/DevicePathLib.h>
-#include <Library/UefiLib.h>
-#include <Library/EblNetworkLib.h>
-#include <Library/TimerLib.h>
-
-#include <IndustryStandard/Pci.h>
-
-//
-// Prompt for the command line
-//
-#define CMD_SEPERATOR ';'
-#define EBL_MAX_COMMAND_COUNT 0x100
-#define MAX_CMD_HISTORY 16
-#define MAX_CMD_LINE 256
-#define MAX_ARGS 32
-
-#define EBL_CR 0x0a
-#define EBL_LF 0x0d
-
-#define EFI_SET_TIMER_TO_SECOND 10000000
-
-
-
-EBL_COMMAND_TABLE *
-EblGetCommand (
- IN CHAR8 *CommandName
- );
-
-
-EFI_STATUS
-EblPathToDevice (
- IN CHAR8 *Path,
- OUT EFI_HANDLE *DeviceHandle,
- OUT EFI_DEVICE_PATH_PROTOCOL **PathDevicePath,
- OUT VOID **Buffer,
- OUT UINTN *BufferSize
- );
-
-BOOLEAN
-EblAnyKeyToContinueQtoQuit (
- IN UINTN *CurrentRow,
- IN BOOLEAN PrefixNewline
- );
-
-VOID
-EblUpdateDeviceLists (
- VOID
- );
-
-VOID
-EblInitializeCmdTable (
- VOID
- );
-
-VOID
-EblShutdownExternalCmdTable (
- VOID
- );
-
-VOID
-EblSetTextColor (
- UINTN Attribute
- );
-
-
-EFI_STATUS
-EblGetCharKey (
- IN OUT EFI_INPUT_KEY *Key,
- IN UINTN TimoutInSec,
- IN EBL_GET_CHAR_CALL_BACK CallBack OPTIONAL
- );
-
-// BugBug: Move me to a library
-INTN
-EFIAPI
-AsciiStrniCmp (
- IN CONST CHAR8 *FirstString,
- IN CONST CHAR8 *SecondString,
- IN UINTN Length
- );
-
-
-VOID
-EblInitializeDeviceCmd (
- VOID
- );
-
-VOID
-EblInitializemdHwDebugCmds (
- VOID
- );
-
-VOID
-EblInitializeDirCmd (
- VOID
- );
-
-VOID
-EblInitializeHobCmd (
- VOID
- );
-
-VOID
-EblInitializemdHwIoDebugCmds (
- VOID
- );
-
-VOID
-EblInitializeScriptCmd (
- VOID
- );
-
-VOID
-EblInitializeNetworkCmd (
- VOID
- );
-
-VOID
-EblInitializeVariableCmds (
- VOID
- );
-
-CHAR8 *
-ParseArguments (
- IN CHAR8 *CmdLine,
- OUT UINTN *Argc,
- OUT CHAR8 **Argv
- );
-
-EFI_STATUS
-ProcessCmdLine (
- IN CHAR8 *CmdLine,
- IN UINTN MaxCmdLineSize
- );
-
-EFI_STATUS
-OutputData (
- IN UINT8 *Address,
- IN UINTN Length,
- IN UINTN Width,
- IN UINTN Offset
- );
-
-UINTN
-WidthFromCommandName (
- IN CHAR8 *Argv,
- IN UINTN Default
- );
-
-
-extern UINTN gScreenColumns;
-extern UINTN gScreenRows;
-extern BOOLEAN gPageBreak;
-extern CHAR8 *gMemMapType[];
-
-#endif
-
+/** @file\r
+ Include file for basic command line parser for EBL (Embedded Boot Loader)\r
+\r
+ Copyright (c) 2007, Intel Corporation. All rights reserved.<BR>\r
+ Portions copyright (c) 2008 - 2009, Apple Inc. All rights reserved.<BR>\r
+ (C) Copyright 2015 Hewlett Packard Enterprise Development LP<BR>\r
+\r
+ This program and the accompanying materials\r
+ are licensed and made available under the terms and conditions of the BSD License\r
+ which accompanies this distribution. The full text of the license may be found at\r
+ http://opensource.org/licenses/bsd-license.php\r
+\r
+ THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
+ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
+\r
+**/\r
+\r
+#ifndef __EBL_H__\r
+#define __EBL_H__\r
+\r
+#include <PiDxe.h>\r
+#include <Protocol/BlockIo.h>\r
+#include <Protocol/SimpleFileSystem.h>\r
+#include <Protocol/FirmwareVolume2.h>\r
+#include <Protocol/LoadFile.h>\r
+#include <Protocol/FirmwareVolumeBlock.h>\r
+#include <Protocol/PxeBaseCode.h>\r
+#include <Protocol/LoadedImage.h>\r
+#include <Protocol/EblAddCommand.h>\r
+#include <Protocol/PciIo.h>\r
+#include <Protocol/DevicePath.h>\r
+\r
+#include <Guid/FileInfo.h>\r
+#include <Guid/DxeServices.h>\r
+#include <Guid/MemoryTypeInformation.h>\r
+#include <Guid/MemoryAllocationHob.h>\r
+#include <Library/BaseLib.h>\r
+#include <Library/MemoryAllocationLib.h>\r
+#include <Library/DevicePathLib.h>\r
+#include <Library/PrintLib.h>\r
+#include <Library/BaseMemoryLib.h>\r
+#include <Library/UefiLib.h>\r
+#include <Library/UefiBootServicesTableLib.h>\r
+#include <Library/UefiRuntimeServicesTableLib.h>\r
+#include <Library/DebugLib.h>\r
+#include <Library/EfiFileLib.h>\r
+#include <Library/HobLib.h>\r
+#include <Library/DebugLib.h>\r
+#include <Library/IoLib.h>\r
+#include <Library/PcdLib.h>\r
+#include <Library/EblCmdLib.h>\r
+#include <Library/DevicePathLib.h>\r
+#include <Library/UefiLib.h>\r
+#include <Library/EblNetworkLib.h>\r
+#include <Library/TimerLib.h>\r
+\r
+#include <IndustryStandard/Pci.h>\r
+\r
+//\r
+// Prompt for the command line\r
+//\r
+#define CMD_SEPARATOR ';'\r
+#define EBL_MAX_COMMAND_COUNT 0x100\r
+#define MAX_CMD_HISTORY 16\r
+#define MAX_CMD_LINE 256\r
+#define MAX_ARGS 32\r
+\r
+#define EBL_CR 0x0a\r
+#define EBL_LF 0x0d\r
+\r
+#define EFI_SET_TIMER_TO_SECOND 10000000\r
+\r
+\r
+\r
+EBL_COMMAND_TABLE *\r
+EblGetCommand (\r
+ IN CHAR8 *CommandName\r
+ );\r
+\r
+\r
+EFI_STATUS\r
+EblPathToDevice (\r
+ IN CHAR8 *Path,\r
+ OUT EFI_HANDLE *DeviceHandle,\r
+ OUT EFI_DEVICE_PATH_PROTOCOL **PathDevicePath,\r
+ OUT VOID **Buffer,\r
+ OUT UINTN *BufferSize\r
+ );\r
+\r
+BOOLEAN\r
+EFIAPI\r
+EblAnyKeyToContinueQtoQuit (\r
+ IN UINTN *CurrentRow,\r
+ IN BOOLEAN PrefixNewline\r
+ );\r
+\r
+VOID\r
+EblUpdateDeviceLists (\r
+ VOID\r
+ );\r
+\r
+VOID\r
+EblInitializeCmdTable (\r
+ VOID\r
+ );\r
+\r
+VOID\r
+EblShutdownExternalCmdTable (\r
+ VOID\r
+ );\r
+\r
+VOID\r
+EblSetTextColor (\r
+ UINTN Attribute\r
+ );\r
+\r
+\r
+EFI_STATUS\r
+EFIAPI\r
+EblGetCharKey (\r
+ IN OUT EFI_INPUT_KEY *Key,\r
+ IN UINTN TimoutInSec,\r
+ IN EBL_GET_CHAR_CALL_BACK CallBack OPTIONAL\r
+ );\r
+\r
+// BugBug: Move me to a library\r
+INTN\r
+EFIAPI\r
+AsciiStrniCmp (\r
+ IN CONST CHAR8 *FirstString,\r
+ IN CONST CHAR8 *SecondString,\r
+ IN UINTN Length\r
+ );\r
+\r
+\r
+VOID\r
+EblInitializeDeviceCmd (\r
+ VOID\r
+ );\r
+\r
+VOID\r
+EblInitializemdHwDebugCmds (\r
+ VOID\r
+ );\r
+\r
+VOID\r
+EblInitializeDirCmd (\r
+ VOID\r
+ );\r
+\r
+VOID\r
+EblInitializeHobCmd (\r
+ VOID\r
+ );\r
+\r
+VOID\r
+EblInitializemdHwIoDebugCmds (\r
+ VOID\r
+ );\r
+\r
+VOID\r
+EblInitializeScriptCmd (\r
+ VOID\r
+ );\r
+\r
+VOID\r
+EblInitializeNetworkCmd (\r
+ VOID\r
+ );\r
+\r
+VOID\r
+EblInitializeVariableCmds (\r
+ VOID\r
+ );\r
+\r
+CHAR8 *\r
+ParseArguments (\r
+ IN CHAR8 *CmdLine,\r
+ OUT UINTN *Argc,\r
+ OUT CHAR8 **Argv\r
+ );\r
+\r
+EFI_STATUS\r
+ProcessCmdLine (\r
+ IN CHAR8 *CmdLine,\r
+ IN UINTN MaxCmdLineSize\r
+ );\r
+\r
+EFI_STATUS\r
+OutputData (\r
+ IN UINT8 *Address,\r
+ IN UINTN Length,\r
+ IN UINTN Width,\r
+ IN UINTN Offset\r
+ );\r
+\r
+UINTN\r
+WidthFromCommandName (\r
+ IN CHAR8 *Argv,\r
+ IN UINTN Default\r
+ );\r
+\r
+\r
+extern UINTN gScreenColumns;\r
+extern UINTN gScreenRows;\r
+extern BOOLEAN gPageBreak;\r
+extern CHAR8 *gMemMapType[];\r
+\r
+#endif\r
+\r