3 Copyright (c) 2007, Intel Corporation. All rights reserved. <BR>
4 This software and associated documentation (if any) is furnished
5 under a license and may only be used or copied in accordance
6 with the terms of the license. Except as permitted by such
7 license, no part of this software or documentation may be
8 reproduced, stored in a retrieval system, or transmitted in any
9 form or by any means without the express written consent of
20 Support for EFI script.
25 // The package level header files this module uses
29 // The protocols, PPI and GUID defintions for this module
32 // The Library classes this module consumes
34 #include <Library/BootScriptLib.h>
38 BootScriptSaveIoWrite (
40 IN EFI_BOOT_SCRIPT_WIDTH Width
,
49 Save I/O write to boot script
53 TableName - Desired boot script table
55 (Standard EFI IO write script parameter)
59 EFI_NOT_FOUND - BootScriptSave Protocol not exist.
61 EFI_STATUS - BootScriptSave Protocol exist, always returns EFI_SUCCESS
64 // GC_TODO: Width - add argument and description to function comment
65 // GC_TODO: Address - add argument and description to function comment
66 // GC_TODO: Count - add argument and description to function comment
67 // GC_TODO: Buffer - add argument and description to function comment
74 BootScriptSaveIoReadWrite (
76 IN EFI_BOOT_SCRIPT_WIDTH Width
,
85 Save I/O write to boot script
89 TableName - Desired boot script table
91 (Standard EFI IO read write script parameter)
95 EFI_NOT_FOUND - BootScriptSave Protocol not exist.
97 EFI_STATUS - BootScriptSave Protocol exist, always returns EFI_SUCCESS
100 // GC_TODO: Width - add argument and description to function comment
101 // GC_TODO: Address - add argument and description to function comment
102 // GC_TODO: Data - add argument and description to function comment
103 // GC_TODO: DataMask - add argument and description to function comment
110 BootScriptSaveMemWrite (
112 IN EFI_BOOT_SCRIPT_WIDTH Width
,
121 Save I/O write to boot script
125 TableName - Desired boot script table
127 (Standard EFI MEM write script parameter)
131 EFI_NOT_FOUND - BootScriptSave Protocol not exist.
133 EFI_STATUS - BootScriptSave Protocol exist, always returns EFI_SUCCESS
136 // GC_TODO: Width - add argument and description to function comment
137 // GC_TODO: Address - add argument and description to function comment
138 // GC_TODO: Count - add argument and description to function comment
139 // GC_TODO: Buffer - add argument and description to function comment
146 BootScriptSaveMemReadWrite (
148 IN EFI_BOOT_SCRIPT_WIDTH Width
,
157 Save I/O write to boot script
161 TableName - Desired boot script table
163 (Standard EFI MEM read write script parameter)
167 EFI_NOT_FOUND - BootScriptSave Protocol not exist.
169 EFI_STATUS - BootScriptSave Protocol exist, always returns EFI_SUCCESS
172 // GC_TODO: Width - add argument and description to function comment
173 // GC_TODO: Address - add argument and description to function comment
174 // GC_TODO: Data - add argument and description to function comment
175 // GC_TODO: DataMask - add argument and description to function comment
182 BootScriptSavePciCfgWrite (
184 IN EFI_BOOT_SCRIPT_WIDTH Width
,
193 Save I/O write to boot script
197 TableName - Desired boot script table
199 (Standard EFI PCI write script parameter)
203 EFI_NOT_FOUND - BootScriptSave Protocol not exist.
205 EFI_STATUS - BootScriptSave Protocol exist, always returns EFI_SUCCESS
208 // GC_TODO: Width - add argument and description to function comment
209 // GC_TODO: Address - add argument and description to function comment
210 // GC_TODO: Count - add argument and description to function comment
211 // GC_TODO: Buffer - add argument and description to function comment
218 BootScriptSavePciCfgReadWrite (
220 IN EFI_BOOT_SCRIPT_WIDTH Width
,
229 Save I/O write to boot script
233 TableName - Desired boot script table
235 (Standard EFI PCI read write script parameter)
239 EFI_NOT_FOUND - BootScriptSave Protocol not exist.
241 EFI_STATUS - BootScriptSave Protocol exist, always returns EFI_SUCCESS
244 // GC_TODO: Width - add argument and description to function comment
245 // GC_TODO: Address - add argument and description to function comment
246 // GC_TODO: Data - add argument and description to function comment
247 // GC_TODO: DataMask - add argument and description to function comment
254 BootScriptSaveSmbusExecute (
256 IN EFI_SMBUS_DEVICE_ADDRESS SlaveAddress
,
257 IN EFI_SMBUS_DEVICE_COMMAND Command
,
258 IN EFI_SMBUS_OPERATION Operation
,
267 Save I/O write to boot script
271 TableName - Desired boot script table
273 (Standard EFI Smbus execute script parameter)
277 EFI_NOT_FOUND - BootScriptSave Protocol not exist.
279 EFI_STATUS - BootScriptSave Protocol exist, always returns EFI_SUCCESS
282 // GC_TODO: SlaveAddress - add argument and description to function comment
283 // GC_TODO: Command - add argument and description to function comment
284 // GC_TODO: Operation - add argument and description to function comment
285 // GC_TODO: PecCheck - add argument and description to function comment
286 // GC_TODO: Length - add argument and description to function comment
287 // GC_TODO: Buffer - add argument and description to function comment
294 BootScriptSaveStall (
302 Save I/O write to boot script
306 TableName - Desired boot script table
308 (Standard EFI stall script parameter)
312 EFI_NOT_FOUND - BootScriptSave Protocol not exist.
314 EFI_STATUS - BootScriptSave Protocol exist, always returns EFI_SUCCESS
317 // GC_TODO: Duration - add argument and description to function comment
324 BootScriptSaveDispatch2 (
326 IN EFI_PHYSICAL_ADDRESS EntryPoint
,
327 IN EFI_PHYSICAL_ADDRESS Context
333 GC_TODO: Add function description
337 TableName - GC_TODO: add argument description
338 EntryPoint - GC_TODO: add argument description
342 EFI_NOT_FOUND - GC_TODO: Add description for return value
343 EFI_SUCCESS - GC_TODO: Add description for return value
352 BootScriptSaveInformation (
355 IN EFI_PHYSICAL_ADDRESS Buffer
361 GC_TODO: Add function description
365 TableName - GC_TODO: add argument description
366 EntryPoint - GC_TODO: add argument description
370 EFI_NOT_FOUND - GC_TODO: Add description for return value
371 EFI_SUCCESS - GC_TODO: Add description for return value
380 BootScriptSaveInformationUnicodeString (
382 IN CONST CHAR16
*String
388 Save unicode string information specified by Buffer to
389 boot script with opcode EFI_BOOT_SCRIPT_INFORMATION_OPCODE
393 TableName - Desired boot script table
395 FfsName - The file name of the code to be dispatched.
397 Context - The data that will be passed into code.
399 ParentHandle - The caller's image handle.
403 EFI_NOT_FOUND - BootScriptSave Protocol not exist.
405 EFI_STATUS - BootScriptSave Protocol exist, always returns EFI_SUCCESS
414 BootScriptSaveInformationAsciiString (
416 IN CONST CHAR8
*String
422 Save ASCII string information specified by Buffer to
423 boot script with opcode EFI_BOOT_SCRIPT_INFORMATION_OPCODE
427 TableName - Desired boot script table
429 FfsName - The file name of the code to be dispatched.
431 Context - The data that will be passed into code.
433 ParentHandle - The caller's image handle.
437 EFI_NOT_FOUND - BootScriptSave Protocol not exist.
439 EFI_STATUS - BootScriptSave Protocol exist, always returns EFI_SUCCESS
449 BootScriptSaveDispatch (
451 IN EFI_PHYSICAL_ADDRESS EntryPoint
457 GC_TODO: Add function description
461 TableName - GC_TODO: add argument description
462 EntryPoint - GC_TODO: add argument description
466 EFI_NOT_FOUND - GC_TODO: Add description for return value
467 EFI_SUCCESS - GC_TODO: Add description for return value
476 BootScriptSaveDispatch2Image (
478 IN EFI_GUID
*FfsName
,
479 IN EFI_PHYSICAL_ADDRESS Context
,
480 IN EFI_HANDLE ParentHandle
486 Save dispatching specified arbitrary code to boot script with opcode
487 EFI_BOOT_SCRIPT_DISPATCH_OPCODE
491 TableName - Desired boot script table
493 FfsName - The file name of the code to be dispatched.
495 Context - The data that will be passed into code.
497 ParentHandle - The caller's image handle.
501 EFI_NOT_FOUND - BootScriptSave Protocol not exist.
503 EFI_STATUS - BootScriptSave Protocol exist, always returns EFI_SUCCESS