2 Main file for NULL named library for level 1 shell command functions.
4 Copyright (c) 2010 - 2011, Intel Corporation. All rights reserved.<BR>
5 This program and the accompanying materials
6 are licensed and made available under the terms and conditions of the BSD License
7 which accompanies this distribution. The full text of the license may be found at
8 http://opensource.org/licenses/bsd-license.php
10 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
11 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
15 #include "UefiShellDriver1CommandsLib.h"
17 STATIC CONST CHAR16 mFileName
[] = L
"Driver1Commands";
18 EFI_HANDLE gShellDriver1HiiHandle
= NULL
;
19 BOOLEAN gInReconnect
= FALSE
;
21 CONST EFI_GUID gShellDriver1HiiGuid
= \
23 0xaf0b742, 0x63ec, 0x45bd, {0x8d, 0xb6, 0x71, 0xad, 0x7f, 0x2f, 0xe8, 0xe8} \
27 Function to return the name of the file containing help if HII will not be used.
33 ShellCommandGetManFileNameDriver1 (
41 Constructor for the Shell Driver1 Commands library.
43 @param ImageHandle the image handle of the process
44 @param SystemTable the EFI System Table pointer
46 @retval EFI_SUCCESS the shell command handlers were installed sucessfully
47 @retval EFI_UNSUPPORTED the shell level required was not found.
51 UefiShellDriver1CommandsLibConstructor (
52 IN EFI_HANDLE ImageHandle
,
53 IN EFI_SYSTEM_TABLE
*SystemTable
57 // check our bit of the profiles mask
59 if ((PcdGet8(PcdShellProfileMask
) & BIT0
) == 0) {
64 // install the HII stuff.
66 gShellDriver1HiiHandle
= HiiAddPackages (&gShellDriver1HiiGuid
, gImageHandle
, UefiShellDriver1CommandsLibStrings
, NULL
);
67 if (gShellDriver1HiiHandle
== NULL
) {
68 return (EFI_DEVICE_ERROR
);
72 // install our shell command handlers that are always installed
74 ShellCommandRegisterCommandName(L
"connect", ShellCommandRunConnect
, ShellCommandGetManFileNameDriver1
, 0, L
"Driver1", TRUE
, gShellDriver1HiiHandle
, STRING_TOKEN(STR_GET_HELP_CONNECT
) );
75 ShellCommandRegisterCommandName(L
"devices", ShellCommandRunDevices
, ShellCommandGetManFileNameDriver1
, 0, L
"Driver1", TRUE
, gShellDriver1HiiHandle
, STRING_TOKEN(STR_GET_HELP_DEVICES
) );
76 ShellCommandRegisterCommandName(L
"openinfo", ShellCommandRunOpenInfo
, ShellCommandGetManFileNameDriver1
, 0, L
"Driver1", TRUE
, gShellDriver1HiiHandle
, STRING_TOKEN(STR_GET_HELP_OPENINFO
) );
77 ShellCommandRegisterCommandName(L
"disconnect", ShellCommandRunDisconnect
, ShellCommandGetManFileNameDriver1
, 0, L
"Driver1", TRUE
, gShellDriver1HiiHandle
, STRING_TOKEN(STR_GET_HELP_DISCONNECT
));
78 ShellCommandRegisterCommandName(L
"reconnect", ShellCommandRunReconnect
, ShellCommandGetManFileNameDriver1
, 0, L
"Driver1", TRUE
, gShellDriver1HiiHandle
, STRING_TOKEN(STR_GET_HELP_RECONNECT
) );
79 ShellCommandRegisterCommandName(L
"unload", ShellCommandRunUnload
, ShellCommandGetManFileNameDriver1
, 0, L
"Driver1", TRUE
, gShellDriver1HiiHandle
, STRING_TOKEN(STR_GET_HELP_UNLOAD
) );
80 ShellCommandRegisterCommandName(L
"drvdiag", ShellCommandRunDrvDiag
, ShellCommandGetManFileNameDriver1
, 0, L
"Driver1", TRUE
, gShellDriver1HiiHandle
, STRING_TOKEN(STR_GET_HELP_DRVDIAG
) );
81 ShellCommandRegisterCommandName(L
"dh", ShellCommandRunDh
, ShellCommandGetManFileNameDriver1
, 0, L
"Driver1", TRUE
, gShellDriver1HiiHandle
, STRING_TOKEN(STR_GET_HELP_DH
) );
82 ShellCommandRegisterCommandName(L
"drivers", ShellCommandRunDrivers
, ShellCommandGetManFileNameDriver1
, 0, L
"Driver1", TRUE
, gShellDriver1HiiHandle
, STRING_TOKEN(STR_GET_HELP_DRIVERS
) );
83 ShellCommandRegisterCommandName(L
"devtree", ShellCommandRunDevTree
, ShellCommandGetManFileNameDriver1
, 0, L
"Driver1", TRUE
, gShellDriver1HiiHandle
, STRING_TOKEN(STR_GET_HELP_DEVTREE
) );
84 ShellCommandRegisterCommandName(L
"drvcfg", ShellCommandRunDrvCfg
, ShellCommandGetManFileNameDriver1
, 0, L
"Driver1", TRUE
, gShellDriver1HiiHandle
, STRING_TOKEN(STR_GET_HELP_DRVCFG
) );
90 Destructor for the library. free any resources.
92 @param ImageHandle The image handle of the process.
93 @param SystemTable The EFI System Table pointer.
97 UefiShellDriver1CommandsLibDestructor (
98 IN EFI_HANDLE ImageHandle
,
99 IN EFI_SYSTEM_TABLE
*SystemTable
102 if (gShellDriver1HiiHandle
!= NULL
) {
103 HiiRemovePackages(gShellDriver1HiiHandle
);
105 return (EFI_SUCCESS
);