summaryrefslogtreecommitdiff
path: root/MdeModulePkg/Universal/PlatformDriverOverride/PlatOverMngr/Vfr.vfr
blob: f5514d84865e070db2515fe999d5eb6f02137d36 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
// *++
//
// Copyright (c) 2007, Intel Corporation
// All rights reserved. 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.
//
// Module Name:
//
//   Vfr.vfr
//
// Abstract:
//
//   Platform driver Override manager formset
//
//
// --*/

#define PLAT_OVER_MNGR_GUID \
  { \
    0x8614567d, 0x35be, 0x4415, 0x8d, 0x88, 0xbd, 0x7d, 0xc, 0x9c, 0x70, 0xc0 \
  }

typedef struct {
  UINT8   DriSelection[100];
  UINT8   DriOrder[100];
  UINT8   PciDeviceFilter;
} PLAT_OVER_MNGR_DATA;

#define FORM_ID_DEVICE                 0x1234
#define FORM_ID_DRIVER                 0x1200
#define FORM_ID_ORDER                  0x1500

#define KEY_VALUE_DEVICE_OFFSET        0x0100
#define KEY_VALUE_DEVICE_MAX           0x04ff

#define QUESTION_ID_OFFSET             0x0500

#define KEY_VALUE_DEVICE_REFRESH       0x1234
#define KEY_VALUE_DEVICE_FILTER        0x1235
#define KEY_VALUE_DEVICE_CLEAR         0x1236

#define KEY_VALUE_DRIVER_GOTO_PREVIOUS 0x1300
#define KEY_VALUE_DRIVER_GOTO_ORDER    0x1301

#define KEY_VALUE_ORDER_GOTO_PREVIOUS  0x2000
#define KEY_VALUE_ORDER_SAVE_AND_EXIT  0x1800

#define VARSTORE_ID_PLAT_OVER_MNGR     0x1000


#define EFI_DISK_DEVICE_CLASS          0x01
#define LABEL_END                      0xffff

formset
  guid     = PLAT_OVER_MNGR_GUID,
  title    = STRING_TOKEN(STR_ENTRY_TITLE),
  help     = STRING_TOKEN(STR_TITLE_HELP),
  class    = EFI_DISK_DEVICE_CLASS,
  subclass = 0xff,

  varstore PLAT_OVER_MNGR_DATA,
    varid = VARSTORE_ID_PLAT_OVER_MNGR,
    name  = Data,
    guid  = PLAT_OVER_MNGR_GUID;

  form formid = FORM_ID_DEVICE,
       title = STRING_TOKEN(STR_TITLE);

    text
      help   = STRING_TOKEN(STR_FIRST_REFRESH_HELP),
      text   = STRING_TOKEN(STR_FIRST_REFRESH),
      text   = STRING_TOKEN(STR_NULL_STRING),
      flags  = INTERACTIVE,
      key    = KEY_VALUE_DEVICE_REFRESH;

    checkbox varid = Data.PciDeviceFilter,
      prompt   = STRING_TOKEN(STR_PCI_DEVICE_FILTER_PROMPT),
      help     = STRING_TOKEN(STR_PCI_DEVICE_FILTER_HELP),
      flags    = INTERACTIVE,
      key      = KEY_VALUE_DEVICE_FILTER,
    endcheckbox;

    label FORM_ID_DEVICE;
    label LABEL_END;

    subtitle text = STRING_TOKEN(STR_NULL_STRING);

    goto FORM_ID_DEVICE,
      prompt  = STRING_TOKEN(STR_CLEAR_ALL),
      help    = STRING_TOKEN(STR_CLEAR_ALL_HELP),
      flags   = INTERACTIVE | RESET_REQUIRED,
      key     = KEY_VALUE_DEVICE_CLEAR;
  endform;

  form formid = FORM_ID_DRIVER,
       title = STRING_TOKEN(STR_TITLE);

    goto FORM_ID_DEVICE,
      prompt  = STRING_TOKEN(STR_GOTO_PREVIOUS),
      help    = STRING_TOKEN(STR_NULL_STRING),
      flags   = INTERACTIVE,
      key     = KEY_VALUE_DRIVER_GOTO_PREVIOUS;

    goto FORM_ID_ORDER,
      prompt  = STRING_TOKEN(STR_TITLE_ORDER),
      help    = STRING_TOKEN(STR_TITLE_ORDER_HELP),
      flags   = INTERACTIVE,
      key     = KEY_VALUE_DRIVER_GOTO_ORDER;

    label FORM_ID_DRIVER;
    label LABEL_END;

  endform;

  form formid = FORM_ID_ORDER,
       title = STRING_TOKEN(STR_TITLE);

    goto FORM_ID_DRIVER,
      prompt  = STRING_TOKEN(STR_GOTO_PREVIOUS),
      help    = STRING_TOKEN(STR_NULL_STRING),
      flags   = INTERACTIVE,
      key     = KEY_VALUE_ORDER_GOTO_PREVIOUS;

    label FORM_ID_ORDER;
    label LABEL_END;

    subtitle text = STRING_TOKEN(STR_NULL_STRING);

    goto FORM_ID_ORDER,
      prompt  = STRING_TOKEN(STR_SAVE_AND_EXIT),
      help    = STRING_TOKEN(STR_NULL_STRING),
      flags   = INTERACTIVE | RESET_REQUIRED,
      key     = KEY_VALUE_ORDER_SAVE_AND_EXIT;
  endform;

endformset;