1/** @file
2  This file contains the boot script defintions that are shared between the
3  Boot Script Executor PPI and the Boot Script Save Protocol.
4
5  Copyright (c) 2009, Intel Corporation. All rights reserved.<BR>
6  This program and the accompanying materials
7  are licensed and made available under the terms and conditions of the BSD License
8  which accompanies this distribution.  The full text of the license may be found at
9  http://opensource.org/licenses/bsd-license.php
10
11  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
12  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
13
14**/
15
16#ifndef _PI_S3_BOOT_SCRIPT_H_
17#define _PI_S3_BOOT_SCRIPT_H_
18
19//*******************************************
20// EFI Boot Script Opcode definitions
21//*******************************************
22#define EFI_BOOT_SCRIPT_IO_WRITE_OPCODE                 0x00
23#define EFI_BOOT_SCRIPT_IO_READ_WRITE_OPCODE            0x01
24#define EFI_BOOT_SCRIPT_MEM_WRITE_OPCODE                0x02
25#define EFI_BOOT_SCRIPT_MEM_READ_WRITE_OPCODE           0x03
26#define EFI_BOOT_SCRIPT_PCI_CONFIG_WRITE_OPCODE         0x04
27#define EFI_BOOT_SCRIPT_PCI_CONFIG_READ_WRITE_OPCODE    0x05
28#define EFI_BOOT_SCRIPT_SMBUS_EXECUTE_OPCODE            0x06
29#define EFI_BOOT_SCRIPT_STALL_OPCODE                    0x07
30#define EFI_BOOT_SCRIPT_DISPATCH_OPCODE                 0x08
31#define EFI_BOOT_SCRIPT_DISPATCH_2_OPCODE               0x09
32#define EFI_BOOT_SCRIPT_INFORMATION_OPCODE              0x0A
33#define EFI_BOOT_SCRIPT_PCI_CONFIG2_WRITE_OPCODE        0x0B
34#define EFI_BOOT_SCRIPT_PCI_CONFIG2_READ_WRITE_OPCODE   0x0C
35#define EFI_BOOT_SCRIPT_IO_POLL_OPCODE                  0x0D
36#define EFI_BOOT_SCRIPT_MEM_POLL_OPCODE                 0x0E
37#define EFI_BOOT_SCRIPT_PCI_CONFIG_POLL_OPCODE          0x0F
38#define EFI_BOOT_SCRIPT_PCI_CONFIG2_POLL_OPCODE         0x10
39
40//*******************************************
41// EFI_BOOT_SCRIPT_WIDTH
42//*******************************************
43typedef enum {
44  EfiBootScriptWidthUint8,
45  EfiBootScriptWidthUint16,
46  EfiBootScriptWidthUint32,
47  EfiBootScriptWidthUint64,
48  EfiBootScriptWidthFifoUint8,
49  EfiBootScriptWidthFifoUint16,
50  EfiBootScriptWidthFifoUint32,
51  EfiBootScriptWidthFifoUint64,
52  EfiBootScriptWidthFillUint8,
53  EfiBootScriptWidthFillUint16,
54  EfiBootScriptWidthFillUint32,
55  EfiBootScriptWidthFillUint64,
56  EfiBootScriptWidthMaximum
57} EFI_BOOT_SCRIPT_WIDTH;
58
59#endif
60