blob: c65d0ed69597b38a1f91c2f5e51706234b5cf8c4 [file] [log] [blame]
Vishal Bhoj82c80712015-12-15 21:13:33 +05301/** @file
2 Main file for NULL named library for Profile1 shell command functions.
3
4 Copyright (c) 2010 - 2014, 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
9
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.
12
13**/
14
15#ifndef _UEFI_SHELL_DRIVER1_COMMANDS_LIB_H_
16#define _UEFI_SHELL_DRIVER1_COMMANDS_LIB_H_
17
18#include <Uefi.h>
19#include <ShellBase.h>
20
21#include <Guid/GlobalVariable.h>
22#include <Guid/ConsoleInDevice.h>
23#include <Guid/ConsoleOutDevice.h>
24#include <Guid/ShellLibHiiGuid.h>
25
26#include <IndustryStandard/Pci.h>
27
28#include <Protocol/EfiShell.h>
29#include <Protocol/EfiShellParameters.h>
30#include <Protocol/DevicePath.h>
31#include <Protocol/LoadedImage.h>
32#include <Protocol/UnicodeCollation.h>
33#include <Protocol/DriverDiagnostics2.h>
34#include <Protocol/DriverDiagnostics.h>
35#include <Protocol/PlatformDriverOverride.h>
36#include <Protocol/BusSpecificDriverOverride.h>
37#include <Protocol/PlatformToDriverConfiguration.h>
38#include <Protocol/DriverSupportedEfiVersion.h>
39#include <Protocol/DriverFamilyOverride.h>
40#include <Protocol/DriverHealth.h>
41#include <Protocol/PciIo.h>
42#include <Protocol/PciRootBridgeIo.h>
43
44#include <Library/BaseLib.h>
45#include <Library/BaseMemoryLib.h>
46#include <Library/DebugLib.h>
47#include <Library/MemoryAllocationLib.h>
48#include <Library/PcdLib.h>
49#include <Library/ShellCommandLib.h>
50#include <Library/ShellLib.h>
51#include <Library/SortLib.h>
52#include <Library/UefiLib.h>
53#include <Library/UefiRuntimeServicesTableLib.h>
54#include <Library/UefiBootServicesTableLib.h>
55#include <Library/HiiLib.h>
56#include <Library/FileHandleLib.h>
57#include <Library/DevicePathLib.h>
58#include <Library/PrintLib.h>
59#include <Library/HandleParsingLib.h>
60#include <Library/PeCoffGetEntryPointLib.h>
61#include <Library/HandleParsingLib.h>
62
63
64extern EFI_HANDLE gShellDriver1HiiHandle;
65extern BOOLEAN gInReconnect;
66
67/**
68 Function for 'connect' command.
69
70 @param[in] ImageHandle Handle to the Image (NULL if Internal).
71 @param[in] SystemTable Pointer to the System Table (NULL if Internal).
72**/
73SHELL_STATUS
74EFIAPI
75ShellCommandRunConnect (
76 IN EFI_HANDLE ImageHandle,
77 IN EFI_SYSTEM_TABLE *SystemTable
78 );
79
80/**
81 Function for 'devices' command.
82
83 @param[in] ImageHandle Handle to the Image (NULL if Internal).
84 @param[in] SystemTable Pointer to the System Table (NULL if Internal).
85**/
86SHELL_STATUS
87EFIAPI
88ShellCommandRunDevices (
89 IN EFI_HANDLE ImageHandle,
90 IN EFI_SYSTEM_TABLE *SystemTable
91 );
92
93/**
94 Function for 'openinfo' command.
95
96 @param[in] ImageHandle Handle to the Image (NULL if Internal).
97 @param[in] SystemTable Pointer to the System Table (NULL if Internal).
98**/
99SHELL_STATUS
100EFIAPI
101ShellCommandRunOpenInfo (
102 IN EFI_HANDLE ImageHandle,
103 IN EFI_SYSTEM_TABLE *SystemTable
104 );
105
106/**
107 Function for 'devtree' command.
108
109 @param[in] ImageHandle Handle to the Image (NULL if Internal).
110 @param[in] SystemTable Pointer to the System Table (NULL if Internal).
111**/
112SHELL_STATUS
113EFIAPI
114ShellCommandRunDevTree (
115 IN EFI_HANDLE ImageHandle,
116 IN EFI_SYSTEM_TABLE *SystemTable
117 );
118
119/**
120 Function for 'dh' command.
121
122 @param[in] ImageHandle Handle to the Image (NULL if Internal).
123 @param[in] SystemTable Pointer to the System Table (NULL if Internal).
124**/
125SHELL_STATUS
126EFIAPI
127ShellCommandRunDh (
128 IN EFI_HANDLE ImageHandle,
129 IN EFI_SYSTEM_TABLE *SystemTable
130 );
131
132/**
133 Function for 'disconnect' command.
134
135 @param[in] ImageHandle Handle to the Image (NULL if Internal).
136 @param[in] SystemTable Pointer to the System Table (NULL if Internal).
137**/
138SHELL_STATUS
139EFIAPI
140ShellCommandRunDisconnect (
141 IN EFI_HANDLE ImageHandle,
142 IN EFI_SYSTEM_TABLE *SystemTable
143 );
144
145/**
146 Function for 'drivers' command.
147
148 @param[in] ImageHandle Handle to the Image (NULL if Internal).
149 @param[in] SystemTable Pointer to the System Table (NULL if Internal).
150**/
151SHELL_STATUS
152EFIAPI
153ShellCommandRunDrivers (
154 IN EFI_HANDLE ImageHandle,
155 IN EFI_SYSTEM_TABLE *SystemTable
156 );
157
158/**
159 Function for 'drvcfg' command.
160
161 @param[in] ImageHandle Handle to the Image (NULL if Internal).
162 @param[in] SystemTable Pointer to the System Table (NULL if Internal).
163**/
164SHELL_STATUS
165EFIAPI
166ShellCommandRunDrvCfg (
167 IN EFI_HANDLE ImageHandle,
168 IN EFI_SYSTEM_TABLE *SystemTable
169 );
170
171/**
172 Function for 'drvdiag' command.
173
174 @param[in] ImageHandle Handle to the Image (NULL if Internal).
175 @param[in] SystemTable Pointer to the System Table (NULL if Internal).
176**/
177SHELL_STATUS
178EFIAPI
179ShellCommandRunDrvDiag (
180 IN EFI_HANDLE ImageHandle,
181 IN EFI_SYSTEM_TABLE *SystemTable
182 );
183
184/**
185 Function for 'reconnect' command.
186
187 @param[in] ImageHandle Handle to the Image (NULL if Internal).
188 @param[in] SystemTable Pointer to the System Table (NULL if Internal).
189**/
190SHELL_STATUS
191EFIAPI
192ShellCommandRunReconnect (
193 IN EFI_HANDLE ImageHandle,
194 IN EFI_SYSTEM_TABLE *SystemTable
195 );
196
197/**
198 Function for 'unload' command.
199
200 @param[in] ImageHandle Handle to the Image (NULL if Internal).
201 @param[in] SystemTable Pointer to the System Table (NULL if Internal).
202**/
203SHELL_STATUS
204EFIAPI
205ShellCommandRunUnload (
206 IN EFI_HANDLE ImageHandle,
207 IN EFI_SYSTEM_TABLE *SystemTable
208 );
209
210/**
211 Do a connect from an EFI variable via it's key name.
212
213 @param[in] Key The name of the EFI Variable.
214
215 @retval EFI_SUCCESS The operation was successful.
216**/
217EFI_STATUS
218EFIAPI
219ShellConnectFromDevPaths (
220 IN CONST CHAR16 *Key
221 );
222
223
224
225#endif
226