├── Tools
└── PackageDocumentationTool
│ ├── src
│ ├── log.txt
│ ├── freeze_steps.txt
│ ├── __init__.py
│ ├── plugins
│ │ ├── __init__.py
│ │ └── EDkPlugins
│ │ │ ├── __init__.py
│ │ │ ├── edk2
│ │ │ ├── __init__.py
│ │ │ └── model
│ │ │ │ ├── __init__.py
│ │ │ │ └── dsc.py
│ │ │ └── basemodel
│ │ │ ├── __init__.py
│ │ │ ├── inidocview.py
│ │ │ └── message.py
│ └── freeze.bat
│ └── Installation_and_User_manual.pdf
└── DriverDeveloper
└── UefiDriverWizard
├── Logo.ico
├── Logo.png
├── Templates
├── UefiDriver.uni
├── UefiDriverExtra.uni
├── UefiDriverModStrs.uni
├── Guid.dec
├── Protocol.dec
├── LibraryClass.dec
├── Package.dec
├── UefiDriver.vfr
├── Guid.h
├── LibraryClass.h
├── NiiUndi.c
├── DriverFamilyOverride.h
├── EdidOverride.h
├── BusSpecificDriverOverride.h
├── DriverFamilyOverride.c
├── Protocol.h
├── EdidOverride.c
├── BusSpecificDriverOverride.c
├── LoadFile.h
├── Package.dsc
├── SimplePointer.h
├── LoadFile.c
├── SimplePointer.c
├── AbsolutePointer.h
├── AbsolutePointer.c
├── GraphicsOutput.h
├── DriverDiagnostics.h
├── ComponentName.h
├── GraphicsOutput.c
├── SerialIo.h
├── SerialIo.c
├── UefiDriver.h
├── ComponentName.c
├── SimpleTextOutput.h
├── SimpleTextInput.h
├── HiiConfigAccess.h
└── DriverBinding.h
├── UefiDriverWizard.spec
├── Config.py
├── GenerateMsi.cmd
├── UefiDriverWizardNewLibraryClass.py
├── UefiDriverWizardNewGuid.py
├── UefiDriverWizardNewProtocol.py
├── UefiDriverWizardUefiDriverModelConsumedProtocols.py
├── UefiDriverWizardUefiDriverModelProducedProtocols.py
├── UefiDriverWizardNewPackage.py
├── README
├── UefiDriverWizardUefiDriverModelOptionalFeatures.py
├── UefiDriverWizard.wxs
├── UefiDriverWizardUefiDriverWizard.py
├── TemplateString.py
└── UefiDriverWizardNewUefiDriver.py
/Tools/PackageDocumentationTool/src/log.txt:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/DriverDeveloper/UefiDriverWizard/Logo.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tianocore/edk2-share/HEAD/DriverDeveloper/UefiDriverWizard/Logo.ico
--------------------------------------------------------------------------------
/DriverDeveloper/UefiDriverWizard/Logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tianocore/edk2-share/HEAD/DriverDeveloper/UefiDriverWizard/Logo.png
--------------------------------------------------------------------------------
/Tools/PackageDocumentationTool/src/freeze_steps.txt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tianocore/edk2-share/HEAD/Tools/PackageDocumentationTool/src/freeze_steps.txt
--------------------------------------------------------------------------------
/DriverDeveloper/UefiDriverWizard/Templates/UefiDriver.uni:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tianocore/edk2-share/HEAD/DriverDeveloper/UefiDriverWizard/Templates/UefiDriver.uni
--------------------------------------------------------------------------------
/DriverDeveloper/UefiDriverWizard/Templates/UefiDriverExtra.uni:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tianocore/edk2-share/HEAD/DriverDeveloper/UefiDriverWizard/Templates/UefiDriverExtra.uni
--------------------------------------------------------------------------------
/Tools/PackageDocumentationTool/Installation_and_User_manual.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tianocore/edk2-share/HEAD/Tools/PackageDocumentationTool/Installation_and_User_manual.pdf
--------------------------------------------------------------------------------
/DriverDeveloper/UefiDriverWizard/Templates/UefiDriverModStrs.uni:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tianocore/edk2-share/HEAD/DriverDeveloper/UefiDriverWizard/Templates/UefiDriverModStrs.uni
--------------------------------------------------------------------------------
/Tools/PackageDocumentationTool/src/__init__.py:
--------------------------------------------------------------------------------
1 | ## @file
2 | #
3 | # Copyright (c) 2011, Intel Corporation. All rights reserved.
4 | #
5 | # This program and the accompanying materials are licensed and made available
6 | # under the terms and conditions of the BSD License which accompanies this
7 | # 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 | #
--------------------------------------------------------------------------------
/Tools/PackageDocumentationTool/src/plugins/__init__.py:
--------------------------------------------------------------------------------
1 | ## @file
2 | #
3 | # Copyright (c) 2011, Intel Corporation. All rights reserved.
4 | #
5 | # This program and the accompanying materials are licensed and made available
6 | # under the terms and conditions of the BSD License which accompanies this
7 | # 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 | #
--------------------------------------------------------------------------------
/Tools/PackageDocumentationTool/src/plugins/EDkPlugins/__init__.py:
--------------------------------------------------------------------------------
1 | ## @file
2 | #
3 | # Copyright (c) 2011, Intel Corporation. All rights reserved.
4 | #
5 | # This program and the accompanying materials are licensed and made available
6 | # under the terms and conditions of the BSD License which accompanies this
7 | # 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 | #
--------------------------------------------------------------------------------
/Tools/PackageDocumentationTool/src/plugins/EDkPlugins/edk2/__init__.py:
--------------------------------------------------------------------------------
1 | ## @file
2 | #
3 | # Copyright (c) 2011, Intel Corporation. All rights reserved.
4 | #
5 | # This program and the accompanying materials are licensed and made available
6 | # under the terms and conditions of the BSD License which accompanies this
7 | # 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 | #
--------------------------------------------------------------------------------
/Tools/PackageDocumentationTool/src/plugins/EDkPlugins/basemodel/__init__.py:
--------------------------------------------------------------------------------
1 | ## @file
2 | #
3 | # Copyright (c) 2011, Intel Corporation. All rights reserved.
4 | #
5 | # This program and the accompanying materials are licensed and made available
6 | # under the terms and conditions of the BSD License which accompanies this
7 | # 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 | #
--------------------------------------------------------------------------------
/Tools/PackageDocumentationTool/src/plugins/EDkPlugins/edk2/model/__init__.py:
--------------------------------------------------------------------------------
1 | ## @file
2 | #
3 | # Copyright (c) 2011, Intel Corporation. All rights reserved.
4 | #
5 | # This program and the accompanying materials are licensed and made available
6 | # under the terms and conditions of the BSD License which accompanies this
7 | # 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 | #
--------------------------------------------------------------------------------
/Tools/PackageDocumentationTool/src/freeze.bat:
--------------------------------------------------------------------------------
1 | @REM
2 | @REM CX_Freeze 4.0.1 has been integrated into python as a script.
3 | @REM After Cx_Freeze 4.0.1 installed, cxfreeze.bat is put into \scripts\
4 | @REM
5 |
6 | @echo off
7 | pushd .
8 | cd %~dp0
9 |
10 | if not defined PYTHONFREEZE_PATH (
11 | echo !!!ERROR!!! Please set PYTHONFREEZE_PATH macro for path of cxfreeze.bat. For example: set PYTHONFREEZE_PATH=c:\Python25\scripts\
12 | @goto end
13 | )
14 |
15 | %PYTHONFREEZE_PATH%\cxfreeze.bat --include-modules=encodings.utf_16 --base=Win32GUI --install-dir ..\bin_win32\ packagedocapp.pyw
16 |
17 | :end
--------------------------------------------------------------------------------
/DriverDeveloper/UefiDriverWizard/Templates/Guid.dec:
--------------------------------------------------------------------------------
1 | <><>
2 | ## @file
3 | #
4 | # UEFI Driver Wizard template file
5 | #
6 | # Copyright (c) 2012, Intel Corporation. All rights reserved.
7 | #
8 | # This program and the accompanying materials are licensed and made
9 | # available under the terms and conditions of the BSD License which
10 | # accompanies this distribution. The full text of the license may
11 | # be found at http://opensource.org/licenses/bsd-license.php.
12 | #
13 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS"
14 | # BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER
15 | # EXPRESS OR IMPLIED.
16 | #
17 | ##
18 | <>
19 |
20 | [Guids]
21 | ## Include/Guid/<>.h
22 | gEfi<>Guid = <>
23 |
--------------------------------------------------------------------------------
/DriverDeveloper/UefiDriverWizard/Templates/Protocol.dec:
--------------------------------------------------------------------------------
1 | <><>
2 | ## @file
3 | #
4 | # UEFI Driver Wizard template file
5 | #
6 | # Copyright (c) 2012, Intel Corporation. All rights reserved.
7 | #
8 | # This program and the accompanying materials are licensed and made
9 | # available under the terms and conditions of the BSD License which
10 | # accompanies this distribution. The full text of the license may
11 | # be found at http://opensource.org/licenses/bsd-license.php.
12 | #
13 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS"
14 | # BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER
15 | # EXPRESS OR IMPLIED.
16 | #
17 | ##
18 | <>
19 |
20 | [Protocols]
21 | ## Include/Protocol/<>.h
22 | gEfi<>ProtocolGuid = <>
23 |
--------------------------------------------------------------------------------
/DriverDeveloper/UefiDriverWizard/Templates/LibraryClass.dec:
--------------------------------------------------------------------------------
1 | <><>
2 | ## @file
3 | #
4 | # UEFI Driver Wizard template file
5 | #
6 | # Copyright (c) 2012, Intel Corporation. All rights reserved.
7 | #
8 | # This program and the accompanying materials are licensed and made
9 | # available under the terms and conditions of the BSD License which
10 | # accompanies this distribution. The full text of the license may
11 | # be found at http://opensource.org/licenses/bsd-license.php.
12 | #
13 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS"
14 | # BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER
15 | # EXPRESS OR IMPLIED.
16 | #
17 | ##
18 | <>
19 |
20 | [LibraryClasses]
21 | ## @libraryclass <>
22 | ##
23 | <>|Include/Library/<>.h
24 |
--------------------------------------------------------------------------------
/Tools/PackageDocumentationTool/src/plugins/EDkPlugins/basemodel/inidocview.py:
--------------------------------------------------------------------------------
1 | ## @file
2 | #
3 | # Copyright (c) 2011, Intel Corporation. All rights reserved.
4 | #
5 | # This program and the accompanying materials are licensed and made available
6 | # under the terms and conditions of the BSD License which accompanies this
7 | # 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 | import core.editor
15 |
16 | class INIDoc(core.editor.EditorDocument):
17 | def __init__(self):
18 | core.editor.EditorDocument.__init__(self)
19 | self._iniobj = None
20 |
21 |
22 | class INIView(core.editor.EditorView):
23 | pass
--------------------------------------------------------------------------------
/DriverDeveloper/UefiDriverWizard/Templates/Package.dec:
--------------------------------------------------------------------------------
1 | <><>
2 | ## @file
3 | #
4 | # UEFI Driver Wizard template file
5 | #
6 | # Copyright (c) 2012, Intel Corporation. All rights reserved.
7 | #
8 | # This program and the accompanying materials are licensed and made
9 | # available under the terms and conditions of the BSD License which
10 | # accompanies this distribution. The full text of the license may
11 | # be found at http://opensource.org/licenses/bsd-license.php.
12 | #
13 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS"
14 | # BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER
15 | # EXPRESS OR IMPLIED.
16 | #
17 | ##
18 | <>
19 | ## @file
20 | # <>
21 | #
22 | # <>
23 | #
24 | # <>
25 | #
26 | # <>
27 | #
28 | ##
29 |
30 | [Defines]
31 | DEC_SPECIFICATION = 0x00010005
32 | PACKAGE_NAME = <>
33 | PACKAGE_GUID = <>
34 | PACKAGE_VERSION = <>
35 |
36 | [Includes]
37 | Include
38 |
39 | [LibraryClasses]
40 |
41 | [Protocols]
42 |
43 | [Guids]
44 |
--------------------------------------------------------------------------------
/DriverDeveloper/UefiDriverWizard/Templates/UefiDriver.vfr:
--------------------------------------------------------------------------------
1 | <><>
2 | //// @file
3 | //
4 | // UEFI Driver Wizard template file
5 | //
6 | // Copyright (c) 2012, Intel Corporation. All rights reserved.
7 | //
8 | // This program and the accompanying materials are licensed and made
9 | // available under the terms and conditions of the BSD License which
10 | // accompanies this distribution. The full text of the license may
11 | // be found at http://opensource.org/licenses/bsd-license.php.
12 | //
13 | // THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS"
14 | // BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER
15 | // EXPRESS OR IMPLIED.
16 | //
17 | ////
18 | <>
19 | //// @file
20 | //
21 | // <>
22 | //
23 | // <>
24 | //
25 | // <>
26 | //
27 | // <>
28 | //
29 | ////
30 |
31 | formset
32 | guid = <>,
33 | title = STRING_TOKEN(STR_SAMPLE_FORM_SET_TITLE),
34 | help = STRING_TOKEN(STR_SAMPLE_FORM_SET_HELP),
35 |
36 | form formid = 1, title = STRING_TOKEN(STR_SAMPLE_FORM1_TITLE);
37 | endform;
38 |
39 | endformset;
40 |
--------------------------------------------------------------------------------
/DriverDeveloper/UefiDriverWizard/Templates/Guid.h:
--------------------------------------------------------------------------------
1 | <><>
2 | /** @file
3 | UEFI Driver Wizard template file
4 |
5 | Copyright (c) 2012, Intel Corporation. All rights reserved.
6 |
7 | This program and the accompanying materials are licensed and made
8 | available under the terms and conditions of the BSD License which
9 | accompanies this distribution. The full text of the license may
10 | be found at http://opensource.org/licenses/bsd-license.php.
11 |
12 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS"
13 | BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER
14 | EXPRESS OR IMPLIED.
15 |
16 | **/
17 | <>
18 | /** @file
19 | <>
20 |
21 | <>
22 |
23 | <>
24 |
25 | <>
26 |
27 | **/
28 |
29 | #ifndef __<>_H__
30 | #define __<>_H__
31 |
32 | #define EFI_<>_GUID \
33 | <>
34 |
35 | ///
36 | /// GUID specific defines
37 | ///
38 |
39 | ///
40 | /// GUID specific structures
41 | ///
42 | typedef struct {
43 | //
44 | // Place GUID specific data fields here
45 | //
46 | } EFI_<>_GUID;
47 |
48 | extern EFI_GUID gEfi<>Guid;
49 |
50 | #endif
51 |
--------------------------------------------------------------------------------
/DriverDeveloper/UefiDriverWizard/UefiDriverWizard.spec:
--------------------------------------------------------------------------------
1 | ## @file
2 | # PyInstaller SPEC file used to generate Windows EXE for UEFI Driver Wizard
3 | #
4 | # Copyright (c) 2012, Intel Corporation. All rights reserved.
5 | #
6 | # This program and the accompanying materials are licensed and made available
7 | # under the terms and conditions of the BSD License which accompanies this
8 | # 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 | # -*- mode: python -*-
17 | a = Analysis([os.path.join(HOMEPATH,'support\\_mountzlib.py'), os.path.join(HOMEPATH,'support\\useUnicode.py'), 'launch.py'])
18 | pyz = PYZ(a.pure)
19 | exe = EXE( pyz,
20 | a.scripts,
21 | a.binaries + [('Logo.png', 'Logo.png', 'DATA')] + Tree('Templates', 'Templates'),
22 | a.zipfiles,
23 | a.datas,
24 | name='UefiDriverWizard.exe',
25 | debug=False,
26 | strip=False,
27 | upx=True,
28 | console=False ,
29 | icon='Logo.ico'
30 | )
31 | app = BUNDLE(exe, name='UefiDriverWizard.exe.app')
32 |
--------------------------------------------------------------------------------
/DriverDeveloper/UefiDriverWizard/Templates/LibraryClass.h:
--------------------------------------------------------------------------------
1 | <><>
2 | /** @file
3 | UEFI Driver Wizard template file
4 |
5 | Copyright (c) 2012, Intel Corporation. All rights reserved.
6 |
7 | This program and the accompanying materials are licensed and made
8 | available under the terms and conditions of the BSD License which
9 | accompanies this distribution. The full text of the license may
10 | be found at http://opensource.org/licenses/bsd-license.php.
11 |
12 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS"
13 | BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER
14 | EXPRESS OR IMPLIED.
15 |
16 | **/
17 | <>
18 | /** @file
19 | <>
20 |
21 | <>
22 |
23 | <>
24 |
25 | <>
26 |
27 | **/
28 |
29 | #ifndef __<>_H__
30 | #define __<>_H__
31 |
32 | ///
33 | /// Library class public defines
34 | ///
35 |
36 | ///
37 | /// Library class public structures/unions
38 | ///
39 |
40 | ///
41 | /// Library class public functions
42 | ///
43 | EFI_STATUS
44 | EFIAPI
45 | LibraryFunction1 (
46 | //
47 | // Additional function arguments here.
48 | //
49 | );
50 |
51 | VOID
52 | EFIAPI
53 | LibraryFunction2 (
54 | //
55 | // Additional function arguments here.
56 | //
57 | );
58 |
59 | UINT8
60 | EFIAPI
61 | LibraryFunction3 (
62 | //
63 | // Additional function arguments here.
64 | //
65 | );
66 |
67 | #endif
68 |
--------------------------------------------------------------------------------
/DriverDeveloper/UefiDriverWizard/Templates/NiiUndi.c:
--------------------------------------------------------------------------------
1 | <><>
2 | /** @file
3 | UEFI Driver Wizard template file
4 |
5 | Copyright (c) 2012, Intel Corporation. All rights reserved.
6 |
7 | This program and the accompanying materials are licensed and made
8 | available under the terms and conditions of the BSD License which
9 | accompanies this distribution. The full text of the license may
10 | be found at http://opensource.org/licenses/bsd-license.php.
11 |
12 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS"
13 | BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER
14 | EXPRESS OR IMPLIED.
15 |
16 | **/
17 | <>
18 | /** @file
19 | <>
20 |
21 | <>
22 |
23 | <>
24 |
25 | <>
26 |
27 | **/
28 |
29 | #include "<>.h"
30 |
31 | ///
32 | /// Network Interface Identifier Protocol instance
33 | ///
34 | GLOBAL_REMOVE_IF_UNREFERENCED
35 | EFI_NETWORK_INTERFACE_IDENTIFIER_PROTOCOL g<>Nii = {
36 | EFI_NETWORK_INTERFACE_IDENTIFIER_PROTOCOL_REVISION, // Revision
37 | 0, // Id
38 | 0, // ImageAddr
39 | 0, // ImageSize
40 | { 'U', 'N', 'D', 'I' }, // StringId
41 | EfiNetworkInterfaceUndi, // Type
42 | PXE_ROMID_MAJORVER, // MajorVer
43 | PXE_ROMID_MINORVER, // MinorVer
44 | FALSE, // Ipv6Supported
45 | 0 // IfNum
46 | };
47 |
--------------------------------------------------------------------------------
/DriverDeveloper/UefiDriverWizard/Config.py:
--------------------------------------------------------------------------------
1 | ## @file
2 | # Global data for UEFI Driver Wizard
3 | #
4 | # Copyright (c) 2012, Intel Corporation. All rights reserved.
5 | #
6 | # This program and the accompanying materials are licensed and made available
7 | # under the terms and conditions of the BSD License which accompanies this
8 | # 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 | WorkspacePath = ''
17 | UefiDriverPath = ''
18 | UefiDriverName = ''
19 | UefiDriverVersion = ''
20 | UefiDriverGuid = ''
21 | UefiDriverType = u''
22 | DriverBindingVersion = ''
23 | UefiDriverCommonFeatures = ()
24 | UefiSpecificationVersion = ''
25 | UefiDriverCpuArchitecture = ()
26 | UefiDriverDriverModelFeatures = ()
27 | Rfc4646LanguageCodes = ''
28 | Iso639LanguageCodes = ''
29 | UefiDriverConsumedProtocols = ()
30 | UefiDriverProducedProtocols = ()
31 | UsbMajorVersion = ''
32 | UsbMinorVersion = ''
33 | PackageFile = ''
34 | PackagePath = ''
35 | PackageName = ''
36 | PackageGuidValue = ''
37 | PackageVersion = ''
38 | PlatformGuidValue = ''
39 | ProtocolGuidValue = ''
40 | ProtocolIncludeName = ''
41 | GuidValue = ''
42 | GuidIncludeName = ''
43 | LibraryClassIncludeName = ''
44 | App = None
45 |
--------------------------------------------------------------------------------
/Tools/PackageDocumentationTool/src/plugins/EDkPlugins/basemodel/message.py:
--------------------------------------------------------------------------------
1 | ## @file
2 | #
3 | # Copyright (c) 2011, Intel Corporation. All rights reserved.
4 | #
5 | # This program and the accompanying materials are licensed and made available
6 | # under the terms and conditions of the BSD License which accompanies this
7 | # 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 | def GetEdkLogger():
15 | import logging
16 | return logging.getLogger('edk')
17 |
18 | class EdkException(Exception):
19 | def __init__(self, message, fName=None, fNo=None):
20 | self._message = message
21 | ErrorMsg(message, fName, fNo)
22 |
23 | def GetMessage(self):
24 | return '[EDK Failure]: %s' %self._message
25 |
26 | def ErrorMsg(mess, fName=None, fNo=None):
27 | GetEdkLogger().error(NormalMessage('#ERR#', mess, fName, fNo))
28 |
29 | def LogMsg(mess, fName=None, fNo=None):
30 | GetEdkLogger().info(NormalMessage('@LOG@', mess, fName, fNo))
31 |
32 | def WarnMsg(mess, fName=None, fNo=None):
33 | GetEdkLogger().warning(NormalMessage('!WAR!', mess, fName, fNo))
34 |
35 | def NormalMessage(type, mess, fName=None, fNo=None):
36 | strMsg = type
37 |
38 | if fName != None:
39 | strMsg += ' %s' % fName.replace('/', '\\')
40 | if fNo != None:
41 | strMsg += '(%d):' % fNo
42 | else:
43 | strMsg += ' :'
44 |
45 | if fName == None and fNo == None:
46 | strMsg += ' '
47 | strMsg += mess
48 |
49 | return strMsg
50 |
51 |
52 |
--------------------------------------------------------------------------------
/DriverDeveloper/UefiDriverWizard/Templates/DriverFamilyOverride.h:
--------------------------------------------------------------------------------
1 | <><>
2 | /** @file
3 | UEFI Driver Wizard template file
4 |
5 | Copyright (c) 2012, Intel Corporation. All rights reserved.
6 |
7 | This program and the accompanying materials are licensed and made
8 | available under the terms and conditions of the BSD License which
9 | accompanies this distribution. The full text of the license may
10 | be found at http://opensource.org/licenses/bsd-license.php.
11 |
12 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS"
13 | BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER
14 | EXPRESS OR IMPLIED.
15 |
16 | **/
17 | <>
18 | /** @file
19 | <>
20 |
21 | <>
22 |
23 | <>
24 |
25 | <>
26 |
27 | **/
28 |
29 | /**
30 | This function returns the version value associated with the driver specified by This.
31 |
32 | Retrieves the version of the driver that is used by the EFI Boot Service ConnectController()
33 | to sort the set of Driver Binding Protocols in order from highest priority to lowest priority.
34 | For drivers that support the Driver Family Override Protocol, those drivers are sorted so that
35 | the drivers with higher values returned by GetVersion() are higher priority than drivers that
36 | return lower values from GetVersion().
37 |
38 | @param This A pointer to the EFI_DRIVER_FAMILY_OVERRIDE_PROTOCOL instance.
39 |
40 | @return The version value associated with the driver specified by This.
41 |
42 | **/
43 | UINT32
44 | EFIAPI
45 | <>DriverFamilyOverrideGetVersion (
46 | IN EFI_DRIVER_FAMILY_OVERRIDE_PROTOCOL *This
47 | );
48 |
--------------------------------------------------------------------------------
/DriverDeveloper/UefiDriverWizard/Templates/EdidOverride.h:
--------------------------------------------------------------------------------
1 | <><>
2 | /** @file
3 | UEFI Driver Wizard template file
4 |
5 | Copyright (c) 2012, Intel Corporation. All rights reserved.
6 |
7 | This program and the accompanying materials are licensed and made
8 | available under the terms and conditions of the BSD License which
9 | accompanies this distribution. The full text of the license may
10 | be found at http://opensource.org/licenses/bsd-license.php.
11 |
12 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS"
13 | BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER
14 | EXPRESS OR IMPLIED.
15 |
16 | **/
17 | <>
18 | /** @file
19 | <>
20 |
21 | <>
22 |
23 | <>
24 |
25 | <>
26 |
27 | **/
28 |
29 | /**
30 | Returns policy information and potentially a replacement EDID for the specified video output device.
31 |
32 | @param This The EFI_EDID_OVERRIDE_PROTOCOL instance.
33 | @param ChildHandle A child handle produced by the Graphics Output EFI
34 | driver that represents a video output device.
35 | @param Attributes The attributes associated with ChildHandle video output device.
36 | @param EdidSize A pointer to the size, in bytes, of the Edid buffer.
37 | @param Edid A pointer to callee allocated buffer that contains the EDID that
38 | should be used for ChildHandle. A value of NULL
39 | represents no EDID override for ChildHandle.
40 |
41 | @retval EFI_SUCCESS Valid overrides returned for ChildHandle.
42 | @retval EFI_UNSUPPORTED ChildHandle has no overrides.
43 |
44 | **/
45 | EFI_STATUS
46 | EFIAPI
47 | <>EdidOverrideGetEdid (
48 | IN EFI_EDID_OVERRIDE_PROTOCOL *This,
49 | IN EFI_HANDLE *ChildHandle,
50 | OUT UINT32 *Attributes,
51 | IN OUT UINTN *EdidSize,
52 | IN OUT UINT8 **Edid
53 | );
54 |
--------------------------------------------------------------------------------
/DriverDeveloper/UefiDriverWizard/GenerateMsi.cmd:
--------------------------------------------------------------------------------
1 | @REM @file
2 | @REM Batch file to convert UEFI Driver Wizard to EXE and MSI
3 | @REM
4 | @REM Copyright (c) 2012, Intel Corporation. All rights reserved.
5 | @REM This program and the accompanying materials
6 | @REM are licensed and made available under the terms and conditions of the BSD License
7 | @REM which accompanies this distribution. The full text of the license may be found at
8 | @REM http://opensource.org/licenses/bsd-license.php
9 | @REM
10 | @REM THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
11 | @REM WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
12 | @REM
13 |
14 | @echo off
15 |
16 | SETLOCAL
17 |
18 | @REM
19 | @REM Set locals for paths to PyInstaller and Windows Installer XML
20 | @REM
21 | SET PYINSTALLER_PATH=c:/pyinstaller-1.5.1
22 | SET WIX_PATH="c:\Program Files (x86)\Windows Installer XML v3.5\bin"
23 |
24 | @REM
25 | @REM Verify path PyInstaller
26 | @REM
27 | if exist %PYINSTALLER_PATH%/Configure.py goto continue1
28 | echo ERROR: PyInstaller path is not valid. Set PYINSTALLER_PATH in this script
29 | goto errorexit
30 | :continue1
31 |
32 | @REM
33 | @REM Verify path to Windows Installer XML
34 | @REM
35 | if exist %WIX_PATH%\candle.exe if exist %WIX_PATH%\light.exe goto continue2
36 | echo ERROR: Windows Installer XML path is not valid. Set WIX_PATH in this script
37 | goto errorexit
38 | :continue2
39 |
40 | @REM
41 | @REM Use PyInstaller to Convert UEFI Driver Wizard Python application to an EXE
42 | @REM
43 | python %PYINSTALLER_PATH%/Configure.py
44 | if not errorlevel 1 goto continue3
45 | echo ERROR: Python is not in PATH
46 | goto errorexit
47 | :continue3
48 | python %PYINSTALLER_PATH%/Makespec.py --onefile --icon Logo.ico --windowed -n UefiDriverWizard.Generated launch.py
49 | python %PYINSTALLER_PATH%/Build.py UefiDriverWizard.spec
50 |
51 | @REM
52 | @REM Use Windows Installer XML 3.5 to Convert UEFI Driver Wizard Python application to an EXE
53 | @REM
54 | %WIX_PATH%\candle UefiDriverWizard.wxs
55 | %WIX_PATH%\light UefiDriverWizard.wixobj -cultures:en-US -ext WixUIExtension.dll
56 |
57 | :errorexit
58 |
59 | ENDLOCAL
60 |
61 | @echo on
--------------------------------------------------------------------------------
/DriverDeveloper/UefiDriverWizard/Templates/BusSpecificDriverOverride.h:
--------------------------------------------------------------------------------
1 | <><>
2 | /** @file
3 | UEFI Driver Wizard template file
4 |
5 | Copyright (c) 2012, Intel Corporation. All rights reserved.
6 |
7 | This program and the accompanying materials are licensed and made
8 | available under the terms and conditions of the BSD License which
9 | accompanies this distribution. The full text of the license may
10 | be found at http://opensource.org/licenses/bsd-license.php.
11 |
12 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS"
13 | BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER
14 | EXPRESS OR IMPLIED.
15 |
16 | **/
17 | <>
18 | /** @file
19 | <>
20 |
21 | <>
22 |
23 | <>
24 |
25 | <>
26 |
27 | **/
28 |
29 | /**
30 | Uses a bus specific algorithm to retrieve a driver image handle for a controller.
31 |
32 | @param This A pointer to the EFI_BUS_SPECIFIC_DRIVER_
33 | OVERRIDE_PROTOCOL instance.
34 | @param DriverImageHandle On input, a pointer to the previous driver image handle returned
35 | by GetDriver(). On output, a pointer to the next driver
36 | image handle. Passing in a NULL, will return the first driver
37 | image handle.
38 |
39 | @retval EFI_SUCCESS A bus specific override driver is returned in DriverImageHandle.
40 | @retval EFI_NOT_FOUND The end of the list of override drivers was reached.
41 | A bus specific override driver is not returned in DriverImageHandle.
42 | @retval EFI_INVALID_PARAMETER DriverImageHandle is not a handle that was returned on a
43 | previous call to GetDriver().
44 |
45 | **/
46 | EFI_STATUS
47 | EFIAPI
48 | <>BusSpecificDriverOverrideGetDriver (
49 | IN EFI_BUS_SPECIFIC_DRIVER_OVERRIDE_PROTOCOL *This,
50 | IN OUT EFI_HANDLE *DriverImageHandle
51 | );
52 |
--------------------------------------------------------------------------------
/DriverDeveloper/UefiDriverWizard/Templates/DriverFamilyOverride.c:
--------------------------------------------------------------------------------
1 | <><>
2 | /** @file
3 | UEFI Driver Wizard template file
4 |
5 | Copyright (c) 2012, Intel Corporation. All rights reserved.
6 |
7 | This program and the accompanying materials are licensed and made
8 | available under the terms and conditions of the BSD License which
9 | accompanies this distribution. The full text of the license may
10 | be found at http://opensource.org/licenses/bsd-license.php.
11 |
12 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS"
13 | BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER
14 | EXPRESS OR IMPLIED.
15 |
16 | **/
17 | <>
18 | /** @file
19 | <>
20 |
21 | <>
22 |
23 | <>
24 |
25 | <>
26 |
27 | **/
28 |
29 | #include "<>.h"
30 |
31 | ///
32 | /// Driver Family Override Protocol instance
33 | ///
34 | GLOBAL_REMOVE_IF_UNREFERENCED
35 | EFI_DRIVER_FAMILY_OVERRIDE_PROTOCOL g<>DriverFamilyOverride = {
36 | <>DriverFamilyOverrideGetVersion
37 | };
38 |
39 | /**
40 | This function returns the version value associated with the driver specified by This.
41 |
42 | Retrieves the version of the driver that is used by the EFI Boot Service ConnectController()
43 | to sort the set of Driver Binding Protocols in order from highest priority to lowest priority.
44 | For drivers that support the Driver Family Override Protocol, those drivers are sorted so that
45 | the drivers with higher values returned by GetVersion() are higher priority than drivers that
46 | return lower values from GetVersion().
47 |
48 | @param This A pointer to the EFI_DRIVER_FAMILY_OVERRIDE_PROTOCOL instance.
49 |
50 | @return The version value associated with the driver specified by This.
51 |
52 | **/
53 | UINT32
54 | EFIAPI
55 | <>DriverFamilyOverrideGetVersion (
56 | IN EFI_DRIVER_FAMILY_OVERRIDE_PROTOCOL *This
57 | )
58 | {
59 | return 0;
60 | }
61 |
--------------------------------------------------------------------------------
/DriverDeveloper/UefiDriverWizard/Templates/Protocol.h:
--------------------------------------------------------------------------------
1 | <><>
2 | /** @file
3 | UEFI Driver Wizard template file
4 |
5 | Copyright (c) 2012, Intel Corporation. All rights reserved.
6 |
7 | This program and the accompanying materials are licensed and made
8 | available under the terms and conditions of the BSD License which
9 | accompanies this distribution. The full text of the license may
10 | be found at http://opensource.org/licenses/bsd-license.php.
11 |
12 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS"
13 | BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER
14 | EXPRESS OR IMPLIED.
15 |
16 | **/
17 | <>
18 | /** @file
19 | <>
20 |
21 | <>
22 |
23 | <>
24 |
25 | <>
26 |
27 | **/
28 |
29 | #ifndef __<>_H__
30 | #define __<>_H__
31 |
32 | #define EFI_<>_PROTOCOL_GUID \
33 | <>
34 |
35 | ///
36 | /// Forward declaration
37 | ///
38 | typedef struct _EFI_<>_PROTOCOL EFI_<>_PROTOCOL;
39 |
40 | ///
41 | /// Function prototypes
42 | ///
43 | typedef
44 | EFI_STATUS
45 | (EFIAPI *EFI_<>_<>)(
46 | IN EFI_<>_PROTOCOL *This
47 | //
48 | // Place additional function arguments here
49 | //
50 | );
51 |
52 | typedef
53 | EFI_STATUS
54 | (EFIAPI *EFI_<>_<>)(
55 | IN EFI_<>_PROTOCOL *This
56 | //
57 | // Place additional function arguments here
58 | //
59 | );
60 |
61 | typedef
62 | EFI_STATUS
63 | (EFIAPI *EFI_<>_<>)(
64 | IN EFI_<>_PROTOCOL *This
65 | //
66 | // Place additional function arguments here
67 | //
68 | );
69 |
70 | ///
71 | /// Protocol structure
72 | ///
73 | typedef struct _EFI_<>_PROTOCOL {
74 | EFI_<>_<> <>;
75 | EFI_<>_<> <>;
76 | // . . .
77 | EFI_<>_<> <>;
78 | //
79 | // Place protocol data fields here
80 | //
81 | }
82 |
83 | extern EFI_GUID gEfi<>ProtocolGuid;
84 |
85 | #endif
86 |
--------------------------------------------------------------------------------
/DriverDeveloper/UefiDriverWizard/Templates/EdidOverride.c:
--------------------------------------------------------------------------------
1 | <><>
2 | /** @file
3 | UEFI Driver Wizard template file
4 |
5 | Copyright (c) 2012, Intel Corporation. All rights reserved.
6 |
7 | This program and the accompanying materials are licensed and made
8 | available under the terms and conditions of the BSD License which
9 | accompanies this distribution. The full text of the license may
10 | be found at http://opensource.org/licenses/bsd-license.php.
11 |
12 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS"
13 | BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER
14 | EXPRESS OR IMPLIED.
15 |
16 | **/
17 | <>
18 | /** @file
19 | <>
20 |
21 | <>
22 |
23 | <>
24 |
25 | <>
26 |
27 | **/
28 |
29 | #include "<>.h"
30 |
31 | ///
32 | /// EDID Override Protocol instance
33 | ///
34 | GLOBAL_REMOVE_IF_UNREFERENCED
35 | EFI_EDID_OVERRIDE_PROTOCOL g<>EdidOverride = {
36 | <>EdidOverrideGetEdid
37 | };
38 |
39 | /**
40 | Returns policy information and potentially a replacement EDID for the specified video output device.
41 |
42 | @param This The EFI_EDID_OVERRIDE_PROTOCOL instance.
43 | @param ChildHandle A child handle produced by the Graphics Output EFI
44 | driver that represents a video output device.
45 | @param Attributes The attributes associated with ChildHandle video output device.
46 | @param EdidSize A pointer to the size, in bytes, of the Edid buffer.
47 | @param Edid A pointer to callee allocated buffer that contains the EDID that
48 | should be used for ChildHandle. A value of NULL
49 | represents no EDID override for ChildHandle.
50 |
51 | @retval EFI_SUCCESS Valid overrides returned for ChildHandle.
52 | @retval EFI_UNSUPPORTED ChildHandle has no overrides.
53 |
54 | **/
55 | EFI_STATUS
56 | EFIAPI
57 | <>EdidOverrideGetEdid (
58 | IN EFI_EDID_OVERRIDE_PROTOCOL *This,
59 | IN EFI_HANDLE *ChildHandle,
60 | OUT UINT32 *Attributes,
61 | IN OUT UINTN *EdidSize,
62 | IN OUT UINT8 **Edid
63 | )
64 | {
65 | return EFI_UNSUPPORTED;
66 | }
67 |
--------------------------------------------------------------------------------
/DriverDeveloper/UefiDriverWizard/Templates/BusSpecificDriverOverride.c:
--------------------------------------------------------------------------------
1 | <><>
2 | /** @file
3 | UEFI Driver Wizard template file
4 |
5 | Copyright (c) 2012, Intel Corporation. All rights reserved.
6 |
7 | This program and the accompanying materials are licensed and made
8 | available under the terms and conditions of the BSD License which
9 | accompanies this distribution. The full text of the license may
10 | be found at http://opensource.org/licenses/bsd-license.php.
11 |
12 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS"
13 | BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER
14 | EXPRESS OR IMPLIED.
15 |
16 | **/
17 | <>
18 | /** @file
19 | <>
20 |
21 | <>
22 |
23 | <>
24 |
25 | <>
26 |
27 | **/
28 |
29 | #include "<>.h"
30 |
31 | ///
32 | /// Bus Specific Driver Override Protocol instance
33 | ///
34 | GLOBAL_REMOVE_IF_UNREFERENCED
35 | EFI_BUS_SPECIFIC_DRIVER_OVERRIDE_PROTOCOL g<>BusSpecificDriverOverride = {
36 | <>BusSpecificDriverOverrideGetDriver
37 | };
38 |
39 | /**
40 | Uses a bus specific algorithm to retrieve a driver image handle for a controller.
41 |
42 | @param This A pointer to the EFI_BUS_SPECIFIC_DRIVER_
43 | OVERRIDE_PROTOCOL instance.
44 | @param DriverImageHandle On input, a pointer to the previous driver image handle returned
45 | by GetDriver(). On output, a pointer to the next driver
46 | image handle. Passing in a NULL, will return the first driver
47 | image handle.
48 |
49 | @retval EFI_SUCCESS A bus specific override driver is returned in DriverImageHandle.
50 | @retval EFI_NOT_FOUND The end of the list of override drivers was reached.
51 | A bus specific override driver is not returned in DriverImageHandle.
52 | @retval EFI_INVALID_PARAMETER DriverImageHandle is not a handle that was returned on a
53 | previous call to GetDriver().
54 |
55 | **/
56 | EFI_STATUS
57 | EFIAPI
58 | <>BusSpecificDriverOverrideGetDriver (
59 | IN EFI_BUS_SPECIFIC_DRIVER_OVERRIDE_PROTOCOL *This,
60 | IN OUT EFI_HANDLE *DriverImageHandle
61 | )
62 | {
63 | return EFI_NOT_FOUND;
64 | }
65 |
--------------------------------------------------------------------------------
/DriverDeveloper/UefiDriverWizard/Templates/LoadFile.h:
--------------------------------------------------------------------------------
1 | <><>
2 | /** @file
3 | UEFI Driver Wizard template file
4 |
5 | Copyright (c) 2012, Intel Corporation. All rights reserved.
6 |
7 | This program and the accompanying materials are licensed and made
8 | available under the terms and conditions of the BSD License which
9 | accompanies this distribution. The full text of the license may
10 | be found at http://opensource.org/licenses/bsd-license.php.
11 |
12 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS"
13 | BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER
14 | EXPRESS OR IMPLIED.
15 |
16 | **/
17 | <>
18 | /** @file
19 | <>
20 |
21 | <>
22 |
23 | <>
24 |
25 | <>
26 |
27 | **/
28 |
29 | /**
30 | Causes the driver to load a specified file.
31 |
32 | @param This Protocol instance pointer.
33 | @param FilePath The device specific path of the file to load.
34 | @param BootPolicy If TRUE, indicates that the request originates from the
35 | boot manager is attempting to load FilePath as a boot
36 | selection. If FALSE, then FilePath must match as exact file
37 | to be loaded.
38 | @param BufferSize On input the size of Buffer in bytes. On output with a return
39 | code of EFI_SUCCESS, the amount of data transferred to
40 | Buffer. On output with a return code of EFI_BUFFER_TOO_SMALL,
41 | the size of Buffer required to retrieve the requested file.
42 | @param Buffer The memory buffer to transfer the file to. IF Buffer is NULL,
43 | then the size of the requested file is returned in
44 | BufferSize.
45 |
46 | @retval EFI_SUCCESS The file was loaded.
47 | @retval EFI_UNSUPPORTED The device does not support the provided BootPolicy
48 | @retval EFI_INVALID_PARAMETER FilePath is not a valid device path, or
49 | BufferSize is NULL.
50 | @retval EFI_NO_MEDIA No medium was present to load the file.
51 | @retval EFI_DEVICE_ERROR The file was not loaded due to a device error.
52 | @retval EFI_NO_RESPONSE The remote system did not respond.
53 | @retval EFI_NOT_FOUND The file was not found.
54 | @retval EFI_ABORTED The file load process was manually cancelled.
55 |
56 | **/
57 | EFI_STATUS
58 | EFIAPI
59 | <>LoadFileLoadFile (
60 | IN EFI_LOAD_FILE_PROTOCOL *This,
61 | IN EFI_DEVICE_PATH_PROTOCOL *FilePath,
62 | IN BOOLEAN BootPolicy,
63 | IN OUT UINTN *BufferSize,
64 | IN VOID *Buffer OPTIONAL
65 | );
66 |
--------------------------------------------------------------------------------
/DriverDeveloper/UefiDriverWizard/Templates/Package.dsc:
--------------------------------------------------------------------------------
1 | <><>
2 | ## @file
3 | #
4 | # UEFI Driver Wizard template file
5 | #
6 | # Copyright (c) 2012, Intel Corporation. All rights reserved.
7 | #
8 | # This program and the accompanying materials are licensed and made
9 | # available under the terms and conditions of the BSD License which
10 | # accompanies this distribution. The full text of the license may
11 | # be found at http://opensource.org/licenses/bsd-license.php.
12 | #
13 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS"
14 | # BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER
15 | # EXPRESS OR IMPLIED.
16 | #
17 | ##
18 | <>
19 | ## @file
20 | # <>
21 | #
22 | # <>
23 | #
24 | # <>
25 | #
26 | # <>
27 | #
28 | ##
29 |
30 | [Defines]
31 | PLATFORM_NAME = <>
32 | PLATFORM_GUID = <>
33 | PLATFORM_VERSION = <>
34 | DSC_SPECIFICATION = 0x00010005
35 | OUTPUT_DIRECTORY = Build/<>
36 | SUPPORTED_ARCHITECTURES = IA32|IPF|X64|EBC|ARM
37 | BUILD_TARGETS = DEBUG|RELEASE
38 | SKUID_IDENTIFIER = DEFAULT
39 |
40 | [LibraryClasses]
41 | UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
42 | UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf
43 | UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
44 | UefiLib|MdePkg/Library/UefiLib/UefiLib.inf
45 | UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
46 | UefiRuntimeLib|MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf
47 | MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
48 | DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
49 | UefiUsbLib|MdePkg/Library/UefiUsbLib/UefiUsbLib.inf
50 | UefiScsiLib|MdePkg/Library/UefiScsiLib/UefiScsiLib.inf
51 | BaseLib|MdePkg/Library/BaseLib/BaseLib.inf
52 | BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf
53 | SynchronizationLib|MdePkg/Library/BaseSynchronizationLib/BaseSynchronizationLib.inf
54 | PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
55 | DebugLib|MdePkg/Library/UefiDebugLibStdErr/UefiDebugLibStdErr.inf
56 | DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf
57 | PostCodeLib|MdePkg/Library/BasePostCodeLibPort80/BasePostCodeLibPort80.inf
58 | PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
59 |
60 | [Components]
61 |
62 | [Components.IA32]
63 |
64 | [Components.X64]
65 |
66 | [Components.IPF]
67 |
68 | [Components.EBC]
69 |
70 | [Components.ARM]
71 |
--------------------------------------------------------------------------------
/DriverDeveloper/UefiDriverWizard/Templates/SimplePointer.h:
--------------------------------------------------------------------------------
1 | <><>
2 | /** @file
3 | UEFI Driver Wizard template file
4 |
5 | Copyright (c) 2012, Intel Corporation. All rights reserved.
6 |
7 | This program and the accompanying materials are licensed and made
8 | available under the terms and conditions of the BSD License which
9 | accompanies this distribution. The full text of the license may
10 | be found at http://opensource.org/licenses/bsd-license.php.
11 |
12 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS"
13 | BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER
14 | EXPRESS OR IMPLIED.
15 |
16 | **/
17 | <>
18 | /** @file
19 | <>
20 |
21 | <>
22 |
23 | <>
24 |
25 | <>
26 |
27 | **/
28 |
29 | /**
30 | Resets the pointer device hardware.
31 |
32 | @param This A pointer to the EFI_SIMPLE_POINTER_PROTOCOL
33 | instance.
34 | @param ExtendedVerification Indicates that the driver may perform a more exhaustive
35 | verification operation of the device during reset.
36 |
37 | @retval EFI_SUCCESS The device was reset.
38 | @retval EFI_DEVICE_ERROR The device is not functioning correctly and could not be reset.
39 |
40 | **/
41 | EFI_STATUS
42 | EFIAPI
43 | <>SimplePointerReset (
44 | IN EFI_SIMPLE_POINTER_PROTOCOL *This,
45 | IN BOOLEAN ExtendedVerification
46 | );
47 |
48 | /**
49 | Retrieves the current state of a pointer device.
50 |
51 | @param This A pointer to the EFI_SIMPLE_POINTER_PROTOCOL
52 | instance.
53 | @param State A pointer to the state information on the pointer device.
54 |
55 | @retval EFI_SUCCESS The state of the pointer device was returned in State.
56 | @retval EFI_NOT_READY The state of the pointer device has not changed since the last call to
57 | GetState().
58 | @retval EFI_DEVICE_ERROR A device error occurred while attempting to retrieve the pointer device's
59 | current state.
60 |
61 | **/
62 | EFI_STATUS
63 | EFIAPI
64 | <>SimplePointerGetState (
65 | IN EFI_SIMPLE_POINTER_PROTOCOL *This,
66 | IN OUT EFI_SIMPLE_POINTER_STATE *State
67 | );
68 |
--------------------------------------------------------------------------------
/DriverDeveloper/UefiDriverWizard/UefiDriverWizardNewLibraryClass.py:
--------------------------------------------------------------------------------
1 | ## @file
2 | # Subclass of NewLibraryClass, which is generated by wxFormBuilder.
3 | #
4 | # Copyright (c) 2012, Intel Corporation. All rights reserved.
5 | #
6 | # This program and the accompanying materials are licensed and made available
7 | # under the terms and conditions of the BSD License which accompanies this
8 | # 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 | """Subclass of NewLibraryClass, which is generated by wxFormBuilder."""
17 |
18 | ##
19 | # Import Modules
20 | #
21 | import Config
22 | import wx
23 | import os
24 | import sys
25 | import uuid
26 | import string
27 | import TemplateString
28 | import UefiDriverWizard
29 | import UefiDriverWizardNewPackage
30 | import UefiDriverWizardNewUefiDriver
31 | import UefiDriverWizardNewProtocol
32 | import UefiDriverWizardNewGuid
33 | import UefiDriverWizardNewLibraryClass
34 | import UefiDriverWizardUefiDriverWizard
35 | import UefiDriverWizardUefiDriverModelOptionalFeatures
36 | import UefiDriverWizardUefiDriverModelConsumedProtocols
37 | import UefiDriverWizardUefiDriverModelProducedProtocols
38 |
39 | # Implementing NewLibraryClass
40 | class UefiDriverWizardNewLibraryClass( UefiDriverWizard.NewLibraryClass ):
41 | def __init__( self, parent ):
42 | UefiDriverWizard.NewLibraryClass.__init__( self, parent )
43 | if Config.PackageFile <> '':
44 | self.PackageFile.SetPath(Config.PackageFile)
45 | else:
46 | if Config.PackagePath <> '':
47 | self.PackageFile.SetPath(Config.PackagePath + os.path.sep)
48 | else:
49 | self.PackageFile.SetPath(Config.WorkspacePath + os.path.sep)
50 | self.LibraryClassIncludeName.SetValue(Config.LibraryClassIncludeName)
51 |
52 | # Handlers for NewLibraryClass events.
53 | def PackageFileOnFileChanged( self, event ):
54 | Config.PackageFile = self.PackageFile.GetPath()
55 |
56 | def LibraryClassIncludeNameOnText( self, event ):
57 | Config.LibraryClassIncludeName = Config.App.TextFieldNameValid (self.LibraryClassIncludeName, event)
58 |
59 | def FinishOnButtonClick( self, event ):
60 | Result, Message = Config.App.CreateLibraryClass()
61 | if not Result:
62 | dlg = wx.MessageDialog(
63 | self,
64 | Message,
65 | 'ERROR',
66 | wx.OK | wx.ICON_ERROR
67 | )
68 | dlg.ShowModal()
69 | dlg.Destroy()
70 | return
71 | dlg = wx.MessageDialog(
72 | self,
73 | Message,
74 | 'New Library Class',
75 | wx.OK | wx.ICON_INFORMATION
76 | )
77 | dlg.ShowModal()
78 | dlg.Destroy()
79 | Config.LibraryClassIncludeName = ''
80 | self.Destroy()
81 |
82 | def CancelOnButtonClick( self, event ):
83 | Config.LibraryClassIncludeName = ''
84 | self.Destroy()
85 |
--------------------------------------------------------------------------------
/DriverDeveloper/UefiDriverWizard/Templates/LoadFile.c:
--------------------------------------------------------------------------------
1 | <><>
2 | /** @file
3 | UEFI Driver Wizard template file
4 |
5 | Copyright (c) 2012, Intel Corporation. All rights reserved.
6 |
7 | This program and the accompanying materials are licensed and made
8 | available under the terms and conditions of the BSD License which
9 | accompanies this distribution. The full text of the license may
10 | be found at http://opensource.org/licenses/bsd-license.php.
11 |
12 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS"
13 | BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER
14 | EXPRESS OR IMPLIED.
15 |
16 | **/
17 | <>
18 | /** @file
19 | <>
20 |
21 | <>
22 |
23 | <>
24 |
25 | <>
26 |
27 | **/
28 |
29 | #include "<>.h"
30 |
31 | ///
32 | /// Load File Protocol instance
33 | ///
34 | GLOBAL_REMOVE_IF_UNREFERENCED
35 | EFI_LOAD_FILE_PROTOCOL g<>LoadFile = {
36 | <>LoadFileLoadFile
37 | };
38 |
39 | /**
40 | Causes the driver to load a specified file.
41 |
42 | @param This Protocol instance pointer.
43 | @param FilePath The device specific path of the file to load.
44 | @param BootPolicy If TRUE, indicates that the request originates from the
45 | boot manager is attempting to load FilePath as a boot
46 | selection. If FALSE, then FilePath must match as exact file
47 | to be loaded.
48 | @param BufferSize On input the size of Buffer in bytes. On output with a return
49 | code of EFI_SUCCESS, the amount of data transferred to
50 | Buffer. On output with a return code of EFI_BUFFER_TOO_SMALL,
51 | the size of Buffer required to retrieve the requested file.
52 | @param Buffer The memory buffer to transfer the file to. IF Buffer is NULL,
53 | then the size of the requested file is returned in
54 | BufferSize.
55 |
56 | @retval EFI_SUCCESS The file was loaded.
57 | @retval EFI_UNSUPPORTED The device does not support the provided BootPolicy
58 | @retval EFI_INVALID_PARAMETER FilePath is not a valid device path, or
59 | BufferSize is NULL.
60 | @retval EFI_NO_MEDIA No medium was present to load the file.
61 | @retval EFI_DEVICE_ERROR The file was not loaded due to a device error.
62 | @retval EFI_NO_RESPONSE The remote system did not respond.
63 | @retval EFI_NOT_FOUND The file was not found.
64 | @retval EFI_ABORTED The file load process was manually cancelled.
65 |
66 | **/
67 | EFI_STATUS
68 | EFIAPI
69 | <>LoadFileLoadFile (
70 | IN EFI_LOAD_FILE_PROTOCOL *This,
71 | IN EFI_DEVICE_PATH_PROTOCOL *FilePath,
72 | IN BOOLEAN BootPolicy,
73 | IN OUT UINTN *BufferSize,
74 | IN VOID *Buffer OPTIONAL
75 | )
76 | {
77 | return EFI_UNSUPPORTED;
78 | }
79 |
--------------------------------------------------------------------------------
/DriverDeveloper/UefiDriverWizard/Templates/SimplePointer.c:
--------------------------------------------------------------------------------
1 | <><>
2 | /** @file
3 | UEFI Driver Wizard template file
4 |
5 | Copyright (c) 2012, Intel Corporation. All rights reserved.
6 |
7 | This program and the accompanying materials are licensed and made
8 | available under the terms and conditions of the BSD License which
9 | accompanies this distribution. The full text of the license may
10 | be found at http://opensource.org/licenses/bsd-license.php.
11 |
12 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS"
13 | BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER
14 | EXPRESS OR IMPLIED.
15 |
16 | **/
17 | <>
18 | /** @file
19 | <>
20 |
21 | <>
22 |
23 | <>
24 |
25 | <>
26 |
27 | **/
28 |
29 | #include "<>.h"
30 |
31 | GLOBAL_REMOVE_IF_UNREFERENCED
32 | EFI_SIMPLE_POINTER_PROTOCOL g<>SimplePointer = {
33 | <>SimplePointerReset,
34 | <>SimplePointerGetState,
35 | NULL,
36 | NULL
37 | };
38 |
39 | /**
40 | Resets the pointer device hardware.
41 |
42 | @param This A pointer to the EFI_SIMPLE_POINTER_PROTOCOL
43 | instance.
44 | @param ExtendedVerification Indicates that the driver may perform a more exhaustive
45 | verification operation of the device during reset.
46 |
47 | @retval EFI_SUCCESS The device was reset.
48 | @retval EFI_DEVICE_ERROR The device is not functioning correctly and could not be reset.
49 |
50 | **/
51 | EFI_STATUS
52 | EFIAPI
53 | <>SimplePointerReset (
54 | IN EFI_SIMPLE_POINTER_PROTOCOL *This,
55 | IN BOOLEAN ExtendedVerification
56 | )
57 | {
58 | return EFI_DEVICE_ERROR;
59 | }
60 |
61 | /**
62 | Retrieves the current state of a pointer device.
63 |
64 | @param This A pointer to the EFI_SIMPLE_POINTER_PROTOCOL
65 | instance.
66 | @param State A pointer to the state information on the pointer device.
67 |
68 | @retval EFI_SUCCESS The state of the pointer device was returned in State.
69 | @retval EFI_NOT_READY The state of the pointer device has not changed since the last call to
70 | GetState().
71 | @retval EFI_DEVICE_ERROR A device error occurred while attempting to retrieve the pointer device's
72 | current state.
73 |
74 | **/
75 | EFI_STATUS
76 | EFIAPI
77 | <>SimplePointerGetState (
78 | IN EFI_SIMPLE_POINTER_PROTOCOL *This,
79 | IN OUT EFI_SIMPLE_POINTER_STATE *State
80 | )
81 | {
82 | return EFI_NOT_READY;
83 | }
84 |
--------------------------------------------------------------------------------
/DriverDeveloper/UefiDriverWizard/UefiDriverWizardNewGuid.py:
--------------------------------------------------------------------------------
1 | ## @file
2 | # Subclass of NewGuid, which is generated by wxFormBuilder.
3 | #
4 | # Copyright (c) 2012, Intel Corporation. All rights reserved.
5 | #
6 | # This program and the accompanying materials are licensed and made available
7 | # under the terms and conditions of the BSD License which accompanies this
8 | # 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 | """Subclass of NewGuid, which is generated by wxFormBuilder."""
17 |
18 | ##
19 | # Import Modules
20 | #
21 | import Config
22 | import wx
23 | import os
24 | import sys
25 | import uuid
26 | import string
27 | import TemplateString
28 | import UefiDriverWizard
29 | import UefiDriverWizardNewPackage
30 | import UefiDriverWizardNewUefiDriver
31 | import UefiDriverWizardNewProtocol
32 | import UefiDriverWizardNewGuid
33 | import UefiDriverWizardNewLibraryClass
34 | import UefiDriverWizardUefiDriverWizard
35 | import UefiDriverWizardUefiDriverModelOptionalFeatures
36 | import UefiDriverWizardUefiDriverModelConsumedProtocols
37 | import UefiDriverWizardUefiDriverModelProducedProtocols
38 |
39 | # Implementing NewGuid
40 | class UefiDriverWizardNewGuid( UefiDriverWizard.NewGuid ):
41 | def __init__( self, parent ):
42 | UefiDriverWizard.NewGuid.__init__( self, parent )
43 | if Config.PackageFile <> '':
44 | self.PackageFile.SetPath(Config.PackageFile)
45 | else:
46 | if Config.PackagePath <> '':
47 | self.PackageFile.SetPath(Config.PackagePath + os.path.sep)
48 | else:
49 | self.PackageFile.SetPath(Config.WorkspacePath + os.path.sep)
50 | if Config.GuidValue == '':
51 | Config.GuidValue = uuid.uuid1().get_urn().split(':')[2]
52 | self.GuidValue.SetValue(Config.GuidValue)
53 | self.GuidIncludeName.SetValue(Config.GuidIncludeName)
54 |
55 | # Handlers for NewGuid events.
56 | def PackageFileOnFileChanged( self, event ):
57 | Config.PackageFile = self.PackageFile.GetPath()
58 |
59 | def GuidValueOnText( self, event ):
60 | Config.GuidValue = event.GetString()
61 |
62 | def GenerateGuidOnButtonClick( self, event ):
63 | Config.GuidValue = uuid.uuid1().get_urn().split(':')[2]
64 | self.GuidValue.SetValue(Config.GuidValue)
65 |
66 | def GuidIncludeNameOnText( self, event ):
67 | Config.GuidIncludeName = Config.App.TextFieldNameValid (self.GuidIncludeName, event)
68 |
69 | def FinishOnButtonClick( self, event ):
70 | Result, Message = Config.App.CreateGuid()
71 | if not Result:
72 | dlg = wx.MessageDialog(
73 | self,
74 | Message,
75 | 'ERROR',
76 | wx.OK | wx.ICON_ERROR
77 | )
78 | dlg.ShowModal()
79 | dlg.Destroy()
80 | return
81 | dlg = wx.MessageDialog(
82 | self,
83 | Message,
84 | 'New GUID',
85 | wx.OK | wx.ICON_INFORMATION
86 | )
87 | dlg.ShowModal()
88 | dlg.Destroy()
89 | Config.GuidValue = ''
90 | Config.GuidIncludeName = ''
91 | self.Destroy()
92 |
93 | def CancelOnButtonClick( self, event ):
94 | Config.GuidValue = ''
95 | Config.GuidIncludeName = ''
96 | self.Destroy()
97 |
--------------------------------------------------------------------------------
/DriverDeveloper/UefiDriverWizard/UefiDriverWizardNewProtocol.py:
--------------------------------------------------------------------------------
1 | ## @file
2 | # Subclass of NewProtocol, which is generated by wxFormBuilder.
3 | #
4 | # Copyright (c) 2012, Intel Corporation. All rights reserved.
5 | #
6 | # This program and the accompanying materials are licensed and made available
7 | # under the terms and conditions of the BSD License which accompanies this
8 | # 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 | """Subclass of NewProtocol, which is generated by wxFormBuilder."""
17 |
18 | ##
19 | # Import Modules
20 | #
21 | import Config
22 | import wx
23 | import os
24 | import sys
25 | import uuid
26 | import string
27 | import TemplateString
28 | import UefiDriverWizard
29 | import UefiDriverWizardNewPackage
30 | import UefiDriverWizardNewUefiDriver
31 | import UefiDriverWizardNewProtocol
32 | import UefiDriverWizardNewGuid
33 | import UefiDriverWizardNewLibraryClass
34 | import UefiDriverWizardUefiDriverWizard
35 | import UefiDriverWizardUefiDriverModelOptionalFeatures
36 | import UefiDriverWizardUefiDriverModelConsumedProtocols
37 | import UefiDriverWizardUefiDriverModelProducedProtocols
38 |
39 | # Implementing NewProtocol
40 | class UefiDriverWizardNewProtocol( UefiDriverWizard.NewProtocol ):
41 | def __init__( self, parent ):
42 | UefiDriverWizard.NewProtocol.__init__( self, parent )
43 | if Config.PackageFile <> '':
44 | self.PackageFile.SetPath(Config.PackageFile)
45 | else:
46 | if Config.PackagePath <> '':
47 | self.PackageFile.SetPath(Config.PackagePath + os.path.sep)
48 | else:
49 | self.PackageFile.SetPath(Config.WorkspacePath + os.path.sep)
50 | if Config.ProtocolGuidValue == '':
51 | Config.ProtocolGuidValue = uuid.uuid1().get_urn().split(':')[2]
52 | self.ProtocolGuidValue.SetValue(Config.ProtocolGuidValue)
53 | self.ProtocolIncludeName.SetValue(Config.ProtocolIncludeName)
54 |
55 | # Handlers for NewProtocol events.
56 | def PackageFileOnFileChanged( self, event ):
57 | Config.PackageFile = self.PackageFile.GetPath()
58 |
59 | def ProtocolGuidValueOnText( self, event ):
60 | Config.ProtocolGuidValue = event.GetString()
61 |
62 | def GenerateGuidOnButtonClick( self, event ):
63 | Config.ProtocolGuidValue = uuid.uuid1().get_urn().split(':')[2]
64 | self.ProtocolGuidValue.SetValue(Config.ProtocolGuidValue)
65 |
66 | def ProtocolIncludeNameOnText( self, event ):
67 | Config.ProtocolIncludeName = Config.App.TextFieldNameValid (self.ProtocolIncludeName, event)
68 |
69 | def FinishOnButtonClick( self, event ):
70 | Result, Message = Config.App.CreateProtocol()
71 | if not Result:
72 | dlg = wx.MessageDialog(
73 | self,
74 | Message,
75 | 'ERROR',
76 | wx.OK | wx.ICON_ERROR
77 | )
78 | dlg.ShowModal()
79 | dlg.Destroy()
80 | return
81 | dlg = wx.MessageDialog(
82 | self,
83 | Message,
84 | 'New Protocol',
85 | wx.OK | wx.ICON_INFORMATION
86 | )
87 | dlg.ShowModal()
88 | dlg.Destroy()
89 | Config.ProtocolGuidValue = ''
90 | Config.ProtocolIncludeName = ''
91 | self.Destroy()
92 |
93 | def CancelOnButtonClick( self, event ):
94 | Config.ProtocolGuidValue = ''
95 | Config.ProtocolIncludeName = ''
96 | self.Destroy()
97 |
--------------------------------------------------------------------------------
/DriverDeveloper/UefiDriverWizard/Templates/AbsolutePointer.h:
--------------------------------------------------------------------------------
1 | <><>
2 | /** @file
3 | UEFI Driver Wizard template file
4 |
5 | Copyright (c) 2012, Intel Corporation. All rights reserved.
6 |
7 | This program and the accompanying materials are licensed and made
8 | available under the terms and conditions of the BSD License which
9 | accompanies this distribution. The full text of the license may
10 | be found at http://opensource.org/licenses/bsd-license.php.
11 |
12 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS"
13 | BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER
14 | EXPRESS OR IMPLIED.
15 |
16 | **/
17 | <>
18 | /** @file
19 | <>
20 |
21 | <>
22 |
23 | <>
24 |
25 | <>
26 |
27 | **/
28 |
29 | /**
30 | This function resets the pointer device hardware. As part of
31 | initialization process, the firmware/device will make a quick
32 | but reasonable attempt to verify that the device is
33 | functioning. If the ExtendedVerification flag is TRUE the
34 | firmware may take an extended amount of time to verify the
35 | device is operating on reset. Otherwise the reset operation is
36 | to occur as quickly as possible. The hardware verification
37 | process is not defined by this specification and is left up to
38 | the platform firmware or driver to implement.
39 |
40 | @param This A pointer to the EFI_ABSOLUTE_POINTER_PROTOCOL
41 | instance.
42 |
43 | @param ExtendedVerification Indicates that the driver may
44 | perform a more exhaustive
45 | verification operation of the
46 | device during reset.
47 |
48 | @retval EFI_SUCCESS The device was reset.
49 |
50 | @retval EFI_DEVICE_ERROR The device is not functioning
51 | correctly and could not be reset.
52 |
53 | **/
54 | EFI_STATUS
55 | EFIAPI
56 | <>AbsolutePointerReset (
57 | IN EFI_ABSOLUTE_POINTER_PROTOCOL *This,
58 | IN BOOLEAN ExtendedVerification
59 | );
60 |
61 | /**
62 | The GetState() function retrieves the current state of a pointer
63 | device. This includes information on the active state associated
64 | with the pointer device and the current position of the axes
65 | associated with the pointer device. If the state of the pointer
66 | device has not changed since the last call to GetState(), then
67 | EFI_NOT_READY is returned. If the state of the pointer device
68 | has changed since the last call to GetState(), then the state
69 | information is placed in State, and EFI_SUCCESS is returned. If
70 | a device error occurs while attempting to retrieve the state
71 | information, then EFI_DEVICE_ERROR is returned.
72 |
73 |
74 | @param This A pointer to the EFI_ABSOLUTE_POINTER_PROTOCOL
75 | instance.
76 |
77 | @param State A pointer to the state information on the
78 | pointer device.
79 |
80 | @retval EFI_SUCCESS The state of the pointer device was
81 | returned in State.
82 |
83 | @retval EFI_NOT_READY The state of the pointer device has not
84 | changed since the last call to GetState().
85 |
86 | @retval EFI_DEVICE_ERROR A device error occurred while
87 | attempting to retrieve the pointer
88 | device's current state.
89 |
90 | **/
91 | EFI_STATUS
92 | EFIAPI
93 | <>AbsolutePointerGetState (
94 | IN EFI_ABSOLUTE_POINTER_PROTOCOL *This,
95 | IN OUT EFI_ABSOLUTE_POINTER_STATE *State
96 | );
97 |
--------------------------------------------------------------------------------
/DriverDeveloper/UefiDriverWizard/UefiDriverWizardUefiDriverModelConsumedProtocols.py:
--------------------------------------------------------------------------------
1 | ## @file
2 | # Subclass of UefiDriverModelConsumedProtocols, which is generated by wxFormBuilder.
3 | #
4 | # Copyright (c) 2012, Intel Corporation. All rights reserved.
5 | #
6 | # This program and the accompanying materials are licensed and made available
7 | # under the terms and conditions of the BSD License which accompanies this
8 | # 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 | """Subclass of UefiDriverModelConsumedProtocols, which is generated by wxFormBuilder."""
17 |
18 | ##
19 | # Import Modules
20 | #
21 | import Config
22 | import wx
23 | import os
24 | import sys
25 | import uuid
26 | import string
27 | import TemplateString
28 | import UefiDriverWizard
29 | import UefiDriverWizardNewPackage
30 | import UefiDriverWizardNewUefiDriver
31 | import UefiDriverWizardNewProtocol
32 | import UefiDriverWizardNewGuid
33 | import UefiDriverWizardNewLibraryClass
34 | import UefiDriverWizardUefiDriverWizard
35 | import UefiDriverWizardUefiDriverModelOptionalFeatures
36 | import UefiDriverWizardUefiDriverModelConsumedProtocols
37 | import UefiDriverWizardUefiDriverModelProducedProtocols
38 |
39 | # Implementing UefiDriverModelConsumedProtocols
40 | class UefiDriverWizardUefiDriverModelConsumedProtocols( UefiDriverWizard.UefiDriverModelConsumedProtocols ):
41 | def __init__( self, parent ):
42 | UefiDriverWizard.UefiDriverModelConsumedProtocols.__init__( self, parent )
43 | self.UefiDriverConsumedProtocols.SetCheckedStrings(Config.UefiDriverConsumedProtocols)
44 |
45 | # Handlers for UefiDriverModelConsumedProtocols events.
46 | def UefiDriverConsumedProtocolsOnCheckListBoxToggled( self, event ):
47 | if self.UefiDriverConsumedProtocols.GetCheckedStrings() == ():
48 | self.UefiDriverConsumedProtocols.SetCheckedStrings(Config.UefiDriverConsumedProtocols)
49 | return
50 | Config.UefiDriverConsumedProtocols = tuple(set(self.UefiDriverConsumedProtocols.GetCheckedStrings()) - set(Config.UefiDriverConsumedProtocols))
51 | self.UefiDriverConsumedProtocols.SetCheckedStrings(Config.UefiDriverConsumedProtocols)
52 |
53 | def PrevOnButtonClick( self, event ):
54 | self.Destroy()
55 | frame = UefiDriverWizardUefiDriverModelOptionalFeatures.UefiDriverWizardUefiDriverModelOptionalFeatures (None)
56 | frame.Show()
57 |
58 | def NextOnButtonClick( self, event ):
59 | self.Destroy()
60 | frame = UefiDriverWizardUefiDriverModelProducedProtocols.UefiDriverWizardUefiDriverModelProducedProtocols (None)
61 | frame.Show()
62 |
63 | def FinishOnButtonClick( self, event ):
64 | if Config.UefiDriverName == '':
65 | Config.UefiDriverName = os.path.split(Config.UefiDriverPath)[-1]
66 | Result, Message = Config.App.CreateUefiDriver()
67 | if not Result:
68 | dlg = wx.MessageDialog(
69 | self,
70 | Message,
71 | 'ERROR',
72 | wx.OK | wx.ICON_ERROR
73 | )
74 | dlg.ShowModal()
75 | dlg.Destroy()
76 | return
77 | dlg = wx.MessageDialog(
78 | self,
79 | Message,
80 | 'New UEFI Driver',
81 | wx.OK | wx.ICON_INFORMATION
82 | )
83 | dlg.ShowModal()
84 | dlg.Destroy()
85 | Config.UefiDriverName = ''
86 | Config.UefiDriverVersion = ''
87 | Config.UefiDriverGuid = ''
88 | self.Destroy()
89 |
90 | def CancelOnButtonClick( self, event ):
91 | Config.UefiDriverName = ''
92 | Config.UefiDriverVersion = ''
93 | Config.UefiDriverGuid = ''
94 | self.Destroy()
95 |
--------------------------------------------------------------------------------
/DriverDeveloper/UefiDriverWizard/Templates/AbsolutePointer.c:
--------------------------------------------------------------------------------
1 | <><>
2 | /** @file
3 | UEFI Driver Wizard template file
4 |
5 | Copyright (c) 2012, Intel Corporation. All rights reserved.
6 |
7 | This program and the accompanying materials are licensed and made
8 | available under the terms and conditions of the BSD License which
9 | accompanies this distribution. The full text of the license may
10 | be found at http://opensource.org/licenses/bsd-license.php.
11 |
12 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS"
13 | BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER
14 | EXPRESS OR IMPLIED.
15 |
16 | **/
17 | <>
18 | /** @file
19 | <>
20 |
21 | <>
22 |
23 | <>
24 |
25 | <>
26 |
27 | **/
28 |
29 | #include "<>.h"
30 |
31 | GLOBAL_REMOVE_IF_UNREFERENCED
32 | EFI_ABSOLUTE_POINTER_PROTOCOL g<>AbsolutePointer = {
33 | <>AbsolutePointerReset,
34 | <>AbsolutePointerGetState,
35 | NULL,
36 | NULL
37 | };
38 |
39 | /**
40 | This function resets the pointer device hardware. As part of
41 | initialization process, the firmware/device will make a quick
42 | but reasonable attempt to verify that the device is
43 | functioning. If the ExtendedVerification flag is TRUE the
44 | firmware may take an extended amount of time to verify the
45 | device is operating on reset. Otherwise the reset operation is
46 | to occur as quickly as possible. The hardware verification
47 | process is not defined by this specification and is left up to
48 | the platform firmware or driver to implement.
49 |
50 | @param This A pointer to the EFI_ABSOLUTE_POINTER_PROTOCOL
51 | instance.
52 |
53 | @param ExtendedVerification Indicates that the driver may
54 | perform a more exhaustive
55 | verification operation of the
56 | device during reset.
57 |
58 | @retval EFI_SUCCESS The device was reset.
59 |
60 | @retval EFI_DEVICE_ERROR The device is not functioning
61 | correctly and could not be reset.
62 |
63 | **/
64 | EFI_STATUS
65 | EFIAPI
66 | <>AbsolutePointerReset (
67 | IN EFI_ABSOLUTE_POINTER_PROTOCOL *This,
68 | IN BOOLEAN ExtendedVerification
69 | )
70 | {
71 | return EFI_DEVICE_ERROR;
72 | }
73 |
74 | /**
75 | The GetState() function retrieves the current state of a pointer
76 | device. This includes information on the active state associated
77 | with the pointer device and the current position of the axes
78 | associated with the pointer device. If the state of the pointer
79 | device has not changed since the last call to GetState(), then
80 | EFI_NOT_READY is returned. If the state of the pointer device
81 | has changed since the last call to GetState(), then the state
82 | information is placed in State, and EFI_SUCCESS is returned. If
83 | a device error occurs while attempting to retrieve the state
84 | information, then EFI_DEVICE_ERROR is returned.
85 |
86 |
87 | @param This A pointer to the EFI_ABSOLUTE_POINTER_PROTOCOL
88 | instance.
89 |
90 | @param State A pointer to the state information on the
91 | pointer device.
92 |
93 | @retval EFI_SUCCESS The state of the pointer device was
94 | returned in State.
95 |
96 | @retval EFI_NOT_READY The state of the pointer device has not
97 | changed since the last call to GetState().
98 |
99 | @retval EFI_DEVICE_ERROR A device error occurred while
100 | attempting to retrieve the pointer
101 | device's current state.
102 |
103 | **/
104 | EFI_STATUS
105 | EFIAPI
106 | <>AbsolutePointerGetState (
107 | IN EFI_ABSOLUTE_POINTER_PROTOCOL *This,
108 | IN OUT EFI_ABSOLUTE_POINTER_STATE *State
109 | )
110 | {
111 | return EFI_NOT_READY;
112 | }
113 |
--------------------------------------------------------------------------------
/DriverDeveloper/UefiDriverWizard/UefiDriverWizardUefiDriverModelProducedProtocols.py:
--------------------------------------------------------------------------------
1 | ## @file
2 | # Subclass of UefiDriverModelProducedProtocols, which is generated by wxFormBuilder.
3 | #
4 | # Copyright (c) 2012, Intel Corporation. All rights reserved.
5 | #
6 | # This program and the accompanying materials are licensed and made available
7 | # under the terms and conditions of the BSD License which accompanies this
8 | # 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 | """Subclass of UefiDriverModelProducedProtocols, which is generated by wxFormBuilder."""
17 |
18 | ##
19 | # Import Modules
20 | #
21 | import Config
22 | import wx
23 | import os
24 | import sys
25 | import uuid
26 | import string
27 | import TemplateString
28 | import UefiDriverWizard
29 | import UefiDriverWizardNewPackage
30 | import UefiDriverWizardNewUefiDriver
31 | import UefiDriverWizardNewProtocol
32 | import UefiDriverWizardNewGuid
33 | import UefiDriverWizardNewLibraryClass
34 | import UefiDriverWizardUefiDriverWizard
35 | import UefiDriverWizardUefiDriverModelOptionalFeatures
36 | import UefiDriverWizardUefiDriverModelConsumedProtocols
37 | import UefiDriverWizardUefiDriverModelProducedProtocols
38 |
39 | # Implementing UefiDriverModelProducedProtocols
40 | class UefiDriverWizardUefiDriverModelProducedProtocols( UefiDriverWizard.UefiDriverModelProducedProtocols ):
41 | def __init__( self, parent ):
42 | UefiDriverWizard.UefiDriverModelProducedProtocols.__init__( self, parent )
43 | self.UefiDriverProducedProtocols.SetCheckedStrings(Config.UefiDriverProducedProtocols)
44 | self.UsbMajorVersion.SetValue (Config.UsbMajorVersion)
45 | self.UsbMinorVersion.SetValue (Config.UsbMinorVersion)
46 | if u"USB Host Controller producing the USB Host Controller 2 Protocol" in Config.UefiDriverProducedProtocols:
47 | self.UsbMajorVersion.Enable()
48 | self.UsbMinorVersion.Enable()
49 | else:
50 | self.UsbMajorVersion.Disable()
51 | self.UsbMinorVersion.Disable()
52 |
53 | # Handlers for UefiDriverModelProducedProtocols events.
54 | def UefiDriverProducedProtocolsOnCheckListBoxToggled( self, event ):
55 | Config.UefiDriverProducedProtocols = self.UefiDriverProducedProtocols.GetCheckedStrings()
56 | if u"USB Host Controller producing the USB Host Controller 2 Protocol" in Config.UefiDriverProducedProtocols:
57 | self.UsbMajorVersion.Enable()
58 | self.UsbMinorVersion.Enable()
59 | else:
60 | self.UsbMajorVersion.Disable()
61 | self.UsbMinorVersion.Disable()
62 |
63 | def UsbMajorVersionOnText( self, event ):
64 | Config.UsbMajorVersion = event.GetString()
65 |
66 | def UsbMinorVersionOnText( self, event ):
67 | Config.UsbMinorVersion = event.GetString()
68 |
69 | def PrevOnButtonClick( self, event ):
70 | self.Destroy()
71 | frame = UefiDriverWizardUefiDriverModelConsumedProtocols.UefiDriverWizardUefiDriverModelConsumedProtocols (None)
72 | frame.Show()
73 |
74 | def FinishOnButtonClick( self, event ):
75 | if Config.UefiDriverName == '':
76 | Config.UefiDriverName = os.path.split(Config.UefiDriverPath)[-1]
77 | Result, Message = Config.App.CreateUefiDriver()
78 | if not Result:
79 | dlg = wx.MessageDialog(
80 | self,
81 | Message,
82 | 'ERROR',
83 | wx.OK | wx.ICON_ERROR
84 | )
85 | dlg.ShowModal()
86 | dlg.Destroy()
87 | return
88 | dlg = wx.MessageDialog(
89 | self,
90 | Message,
91 | 'New UEFI Driver',
92 | wx.OK | wx.ICON_INFORMATION
93 | )
94 | dlg.ShowModal()
95 | dlg.Destroy()
96 | Config.UefiDriverName = ''
97 | Config.UefiDriverVersion = ''
98 | Config.UefiDriverGuid = ''
99 | self.Destroy()
100 |
101 | def CancelOnButtonClick( self, event ):
102 | Config.UefiDriverName = ''
103 | Config.UefiDriverVersion = ''
104 | Config.UefiDriverGuid = ''
105 | self.Destroy()
106 |
--------------------------------------------------------------------------------
/DriverDeveloper/UefiDriverWizard/Templates/GraphicsOutput.h:
--------------------------------------------------------------------------------
1 | <><>
2 | /** @file
3 | UEFI Driver Wizard template file
4 |
5 | Copyright (c) 2012, Intel Corporation. All rights reserved.
6 |
7 | This program and the accompanying materials are licensed and made
8 | available under the terms and conditions of the BSD License which
9 | accompanies this distribution. The full text of the license may
10 | be found at http://opensource.org/licenses/bsd-license.php.
11 |
12 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS"
13 | BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER
14 | EXPRESS OR IMPLIED.
15 |
16 | **/
17 | <>
18 | /** @file
19 | <>
20 |
21 | <>
22 |
23 | <>
24 |
25 | <>
26 |
27 | **/
28 |
29 | /**
30 | Returns information for an available graphics mode that the graphics device
31 | and the set of active video output devices supports.
32 |
33 | @param This The EFI_GRAPHICS_OUTPUT_PROTOCOL instance.
34 | @param ModeNumber The mode number to return information on.
35 | @param SizeOfInfo A pointer to the size, in bytes, of the Info buffer.
36 | @param Info A pointer to callee allocated buffer that returns information about ModeNumber.
37 |
38 | @retval EFI_SUCCESS Mode information returned.
39 | @retval EFI_BUFFER_TOO_SMALL The Info buffer was too small.
40 | @retval EFI_DEVICE_ERROR A hardware error occurred trying to retrieve the video mode.
41 | @retval EFI_NOT_STARTED Video display is not initialized. Call SetMode ()
42 | @retval EFI_INVALID_PARAMETER One of the input args was NULL.
43 |
44 | **/
45 | EFI_STATUS
46 | EFIAPI
47 | <>GraphicsOutputQueryMode (
48 | IN EFI_GRAPHICS_OUTPUT_PROTOCOL *This,
49 | IN UINT32 ModeNumber,
50 | OUT UINTN *SizeOfInfo,
51 | OUT EFI_GRAPHICS_OUTPUT_MODE_INFORMATION **Info
52 | );
53 |
54 | /**
55 | Set the video device into the specified mode and clears the visible portions of
56 | the output display to black.
57 |
58 | @param This The EFI_GRAPHICS_OUTPUT_PROTOCOL instance.
59 | @param ModeNumber Abstraction that defines the current video mode.
60 |
61 | @retval EFI_SUCCESS The graphics mode specified by ModeNumber was selected.
62 | @retval EFI_DEVICE_ERROR The device had an error and could not complete the request.
63 | @retval EFI_UNSUPPORTED ModeNumber is not supported by this device.
64 |
65 | **/
66 | EFI_STATUS
67 | EFIAPI
68 | <>GraphicsOutputSetMode (
69 | IN EFI_GRAPHICS_OUTPUT_PROTOCOL *This,
70 | IN UINT32 ModeNumber
71 | );
72 |
73 | /**
74 | Blt a rectangle of pixels on the graphics screen. Blt stands for BLock Transfer.
75 |
76 | @param This Protocol instance pointer.
77 | @param BltBuffer Buffer containing data to blit into video buffer. This
78 | buffer has a size of Width*Height*sizeof(EFI_GRAPHICS_OUTPUT_BLT_PIXEL)
79 | @param BltOperation Operation to perform on BlitBuffer and video memory
80 | @param SourceX X coordinate of source for the BltBuffer.
81 | @param SourceY Y coordinate of source for the BltBuffer.
82 | @param DestinationX X coordinate of destination for the BltBuffer.
83 | @param DestinationY Y coordinate of destination for the BltBuffer.
84 | @param Width Width of rectangle in BltBuffer in pixels.
85 | @param Height Hight of rectangle in BltBuffer in pixels.
86 | @param Delta OPTIONAL
87 |
88 | @retval EFI_SUCCESS The Blt operation completed.
89 | @retval EFI_INVALID_PARAMETER BltOperation is not valid.
90 | @retval EFI_DEVICE_ERROR A hardware error occured writting to the video buffer.
91 |
92 | **/
93 | EFI_STATUS
94 | EFIAPI
95 | <>GraphicsOutputBlt (
96 | IN EFI_GRAPHICS_OUTPUT_PROTOCOL *This,
97 | IN EFI_GRAPHICS_OUTPUT_BLT_PIXEL *BltBuffer, OPTIONAL
98 | IN EFI_GRAPHICS_OUTPUT_BLT_OPERATION BltOperation,
99 | IN UINTN SourceX,
100 | IN UINTN SourceY,
101 | IN UINTN DestinationX,
102 | IN UINTN DestinationY,
103 | IN UINTN Width,
104 | IN UINTN Height,
105 | IN UINTN Delta OPTIONAL
106 | );
107 |
--------------------------------------------------------------------------------
/DriverDeveloper/UefiDriverWizard/UefiDriverWizardNewPackage.py:
--------------------------------------------------------------------------------
1 | ## @file
2 | # Subclass of NewPackage, which is generated by wxFormBuilder.
3 | #
4 | # Copyright (c) 2012, Intel Corporation. All rights reserved.
5 | #
6 | # This program and the accompanying materials are licensed and made available
7 | # under the terms and conditions of the BSD License which accompanies this
8 | # 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 | """Subclass of NewPackage, which is generated by wxFormBuilder."""
17 |
18 | ##
19 | # Import Modules
20 | #
21 | import Config
22 | import wx
23 | import os
24 | import sys
25 | import uuid
26 | import string
27 | import TemplateString
28 | import UefiDriverWizard
29 | import UefiDriverWizardNewPackage
30 | import UefiDriverWizardNewUefiDriver
31 | import UefiDriverWizardNewProtocol
32 | import UefiDriverWizardNewGuid
33 | import UefiDriverWizardNewLibraryClass
34 | import UefiDriverWizardUefiDriverWizard
35 | import UefiDriverWizardUefiDriverModelOptionalFeatures
36 | import UefiDriverWizardUefiDriverModelConsumedProtocols
37 | import UefiDriverWizardUefiDriverModelProducedProtocols
38 |
39 | # Implementing NewPackage
40 | class UefiDriverWizardNewPackage( UefiDriverWizard.NewPackage ):
41 | def __init__( self, parent ):
42 | UefiDriverWizard.NewPackage.__init__( self, parent )
43 | if (Config.PackagePath <> ''):
44 | self.PackagePath.SetPath(Config.PackagePath + os.path.sep)
45 | else:
46 | self.PackagePath.SetPath(Config.WorkspacePath + os.path.sep)
47 | if Config.PackageName == '':
48 | Config.PackageName = os.path.split(Config.PackagePath)[-1]
49 | self.PackageName.SetValue(Config.PackageName)
50 | if Config.PackageGuidValue == '':
51 | Config.PackageGuidValue = uuid.uuid1().get_urn().split(':')[2]
52 | self.PackageGuidValue.SetValue(Config.PackageGuidValue)
53 | self.PackageVersion.SetValue(Config.PackageVersion)
54 | if Config.PlatformGuidValue == '':
55 | Config.PlatformGuidValue = uuid.uuid1().get_urn().split(':')[2]
56 | self.PlatformGuidValue.SetValue(Config.PlatformGuidValue)
57 |
58 | # Handlers for NewPackage events.
59 | def PackagePathOnDirChanged( self, event ):
60 | if Config.PackageName == '' or Config.PackageName == os.path.split(Config.PackagePath)[1]:
61 | Config.PackagePath = self.PackagePath.GetPath()
62 | self.PackageName.SetValue(os.path.split(Config.PackagePath)[1])
63 | else:
64 | Config.PackagePath = self.PackagePath.GetPath()
65 |
66 | def PackageNameOnText( self, event ):
67 | Config.PackageName = Config.App.TextFieldNameValid (self.PackageName, event)
68 |
69 | def PackageGuidValueOnText( self, event ):
70 | Config.PackageGuidValue = event.GetString()
71 |
72 | def GenerateGuidOnButtonClick( self, event ):
73 | Config.PackageGuidValue = uuid.uuid1().get_urn().split(':')[2]
74 | self.PackageGuidValue.SetValue(Config.PackageGuidValue)
75 |
76 | def PackageVersionOnText( self, event ):
77 | Config.PackageVersion = Config.App.TextFieldVersionValid (self.PackageVersion, event)
78 |
79 | def PlatformGuidValueOnText( self, event ):
80 | Config.PlatformGuidValue = event.GetString()
81 |
82 | def GeneratePlatformGuidOnButtonClick( self, event ):
83 | Config.PlatformGuidValue = uuid.uuid1().get_urn().split(':')[2]
84 | self.PlatformGuidValue.SetValue(Config.PlatformGuidValue)
85 |
86 | def FinishOnButtonClick( self, event ):
87 | if Config.PackageName == '':
88 | Config.PackageName = os.path.split(Config.PackagePath)[-1]
89 | Result, Message = Config.App.CreatePackage()
90 | if not Result:
91 | dlg = wx.MessageDialog(
92 | self,
93 | Message,
94 | 'ERROR',
95 | wx.OK | wx.ICON_ERROR
96 | )
97 | dlg.ShowModal()
98 | dlg.Destroy()
99 | return
100 | dlg = wx.MessageDialog(
101 | self,
102 | Message,
103 | 'New Package',
104 | wx.OK | wx.ICON_INFORMATION
105 | )
106 | dlg.ShowModal()
107 | dlg.Destroy()
108 | Config.PackageName = ''
109 | Config.PackageGuidValue = ''
110 | Config.PackageVersion = ''
111 | Config.PlatformGuidValue = ''
112 | self.Destroy()
113 |
114 | def CancelOnButtonClick( self, event ):
115 | Config.PackageName = ''
116 | Config.PackageGuidValue = ''
117 | Config.PackageVersion = ''
118 | Config.PlatformGuidValue = ''
119 | self.Destroy()
120 |
--------------------------------------------------------------------------------
/DriverDeveloper/UefiDriverWizard/README:
--------------------------------------------------------------------------------
1 | === UEFI DRIVER WIZARD README ===
2 | Version : 0.11
3 | Date : 03/03/2012
4 |
5 | === UEFI DRIVBER WIZARD OVERVIEW ===
6 |
7 | The UEFI Driver Wizard is designed to aid in the development of
8 | UEFI Drivers using the EDK II open source project as a development
9 | environment. The EDK II provides a cross-platform firmware
10 | development environment for UEFI. UEFI Drivers are described in
11 | the Unified Extensible Firmware Interface Specification, Version
12 | 2.3.1. There are different categories of UEFI Drivers, and many
13 | variations of each category. This wizard provides basic support
14 | for the most common categories of UEFI drivers. Many other driver
15 | designs are possible. In addition, this wizard provides a
16 | templates for the various driver-related UEFI Protocols including
17 | Consoles, Serial Ports, Graphics, Mass Storage, Network Interfaces,
18 | and User Credentials.
19 |
20 | * Information about the UEFI Driver Wizard can be found at:
21 |
22 | http://www.tianocore.org
23 |
24 | * Information about the EDK II code base can be found at:
25 |
26 | http://www.tianocore.org
27 |
28 | * Information about the UEFI Specification can be found at:
29 |
30 | http://www.uefi.org
31 |
32 | === UEFI DRIVER WIZARD STATUS ===
33 |
34 | Current status: Alpha "as is"
35 |
36 | Current capabilities:
37 | * Create new EDK II packages with DEC/DSC files for building UEFI Drivers
38 | * Create new UEFI Driver
39 | - Generated C code compiles/links using EDK II development environment.
40 | - Compiled UEFI Driver is loadable with no modifications.
41 | * Create new Protocol template in an existing EDK II package
42 | * Create new GUID template in an existing EDK II package
43 | * Create new Library Class template in an existing EDK II package
44 |
45 | === RUNNING UEFI DRIVER WIZARD ===
46 |
47 | Windows Executable:
48 | * Download and install UefiDriverWizard.msi
49 | * Run installed UefiDriverWizard.exe
50 |
51 | Python Script under Windows, Linux, UNIX, OS/X:
52 | * Install Python 2.7.2
53 | http://www.python.org
54 | * Install wxPython 2.8.12.1
55 | http://www.wxpython.org
56 | * Download UEFI Driver Wizard sources into a new directory
57 | * Run Python script "launch.py"
58 |
59 | === GENERATE UefiDriverWizard.msi ===
60 |
61 | The following is the set of steps required to generate
62 | UefiDriverWizard.msi from the Python scripts:
63 |
64 | * Install Python 2.7.2
65 | http://www.python.org
66 | * Install wxPython 2.8.12.1
67 | http://www.wxpython.org
68 | * Install pyInstaller 1.5.1
69 | http://www.pyinstaller.org
70 | * Install Windows Installer XML 3.5
71 | http://wix.sourceforge.net
72 | * Download UEFI Driver Wizard sources into a new directory
73 | * Update PYINSTALLER_PATH in GenerateMsi.cmd
74 | * Update WIX_PATH in GenerateMsi.cmd
75 | * Run GenerateMsi.cmd
76 |
77 | Note: Only generation of a 32-bit MSI has been tested.
78 |
79 | === UEFI Driver Wizard Development ===
80 |
81 | If you are interested in updating or extending the capabilities of the
82 | UEFI Driver Wizard, then the following tools are required.
83 |
84 | * Install Python 2.7.2
85 | http://www.python.org
86 | * Install wxPython 2.8.12.1
87 | http://www.wxpython.org
88 | * Install wxFormBuilder 3.1
89 | http://wxformbuilder.org
90 |
91 | GUI Design Changes
92 | ------------------
93 | 1) Use wxFormBuilder to open the file UefiDriverWizard.fbp.
94 | 2) Make UI changes using wxFormBuilder.
95 | 3) Generate wxPython code and generate code for all the inherited classes.
96 | 4) All generated code goes into a subdirectory called InheritedClasses.
97 | 5) Merge code changes from InheritedClasses into main directory.
98 | Note: wxFormBuilder generates files with TABs. These must be converted
99 | to spaces to mach EDK II coding style.
100 |
101 | UEFI Driver Wizard Template Updates
102 | -----------------------------------
103 | All template files are in the subdirectory called Templates. Updates to
104 | these files are used the next time the UEFI Driver Wizard is executed.
105 | Most of the content is plain text that can be easily modified. Strings
106 | that are replaced during code generation are placed between << >>.
107 |
108 | <> and <> are special keywords that mark a region of the
109 | template that can produce 0 or more repeats of the enclosed content.
110 | The use of 0 repeats is valuable for sections of code that are optional
111 | based in the set of features selected.
112 |
113 | All of the code generation logic is in the file launch.py. For each
114 | code generation task, launch.py initializes a dictionary of replacement
115 | strings whose values are set by the GUI forms. Once the dictionary
116 | initialization is completed, an internal method applies the dictionary
117 | to files in the Templates directory and writes the result to the proper
118 | destination directory.
119 |
--------------------------------------------------------------------------------
/DriverDeveloper/UefiDriverWizard/Templates/DriverDiagnostics.h:
--------------------------------------------------------------------------------
1 | <><>
2 | /** @file
3 | UEFI Driver Wizard template file
4 |
5 | Copyright (c) 2012, Intel Corporation. All rights reserved.
6 |
7 | This program and the accompanying materials are licensed and made
8 | available under the terms and conditions of the BSD License which
9 | accompanies this distribution. The full text of the license may
10 | be found at http://opensource.org/licenses/bsd-license.php.
11 |
12 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS"
13 | BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER
14 | EXPRESS OR IMPLIED.
15 |
16 | **/
17 | <>
18 | /** @file
19 | <>
20 |
21 | <>
22 |
23 | <>
24 |
25 | <>
26 |
27 | **/
28 |
29 | /**
30 | Runs diagnostics on a controller.
31 |
32 | @param This A pointer to the EFI_DRIVER_DIAGNOSTICS2_PROTOCOL instance.
33 | @param ControllerHandle The handle of the controller to run diagnostics on.
34 | @param ChildHandle The handle of the child controller to run diagnostics on
35 | This is an optional parameter that may be NULL. It will
36 | be NULL for device drivers. It will also be NULL for
37 | bus drivers that wish to run diagnostics on the bus
38 | controller. It will not be NULL for a bus driver that
39 | wishes to run diagnostics on one of its child controllers.
40 | @param DiagnosticType Indicates the type of diagnostics to perform on the controller
41 | specified by ControllerHandle and ChildHandle. See
42 | "Related Definitions" for the list of supported types.
43 | @param Language A pointer to a Null-terminated ASCII string
44 | array indicating the language. This is the
45 | language of the driver name that the caller
46 | is requesting, and it must match one of the
47 | languages specified in SupportedLanguages.
48 | The number of languages supported by a
49 | driver is up to the driver writer. Language
50 | is specified in RFC 4646 language code format.
51 | @param ErrorType A GUID that defines the format of the data returned in Buffer.
52 | @param BufferSize The size, in bytes, of the data returned in Buffer.
53 | @param Buffer A buffer that contains a Null-terminated Unicode string
54 | plus some additional data whose format is defined by
55 | ErrorType. Buffer is allocated by this function with
56 | AllocatePool(), and it is the caller's responsibility
57 | to free it with a call to FreePool().
58 |
59 | @retval EFI_SUCCESS The controller specified by ControllerHandle and
60 | ChildHandle passed the diagnostic.
61 | @retval EFI_ACCESS_DENIED The request for initiating diagnostics was unable
62 | to be complete due to some underlying hardware or
63 | software state.
64 | @retval EFI_INVALID_PARAMETER ControllerHandle is NULL.
65 | @retval EFI_INVALID_PARAMETER ChildHandle is not NULL and it is not a valid EFI_HANDLE.
66 | @retval EFI_INVALID_PARAMETER Language is NULL.
67 | @retval EFI_INVALID_PARAMETER ErrorType is NULL.
68 | @retval EFI_INVALID_PARAMETER BufferType is NULL.
69 | @retval EFI_INVALID_PARAMETER Buffer is NULL.
70 | @retval EFI_UNSUPPORTED The driver specified by This does not support
71 | running diagnostics for the controller specified
72 | by ControllerHandle and ChildHandle.
73 | @retval EFI_UNSUPPORTED The driver specified by This does not support the
74 | type of diagnostic specified by DiagnosticType.
75 | @retval EFI_UNSUPPORTED The driver specified by This does not support the
76 | language specified by Language.
77 | @retval EFI_OUT_OF_RESOURCES There are not enough resources available to complete
78 | the diagnostics.
79 | @retval EFI_OUT_OF_RESOURCES There are not enough resources available to return
80 | the status information in ErrorType, BufferSize,
81 | and Buffer.
82 | @retval EFI_DEVICE_ERROR The controller specified by ControllerHandle and
83 | ChildHandle did not pass the diagnostic.
84 |
85 | **/
86 | EFI_STATUS
87 | EFIAPI
88 | <>DriverDiagnosticsRunDiagnostics (
89 | IN EFI_DRIVER_DIAGNOSTICS2_PROTOCOL *This,
90 | IN EFI_HANDLE ControllerHandle,
91 | IN EFI_HANDLE ChildHandle OPTIONAL,
92 | IN EFI_DRIVER_DIAGNOSTIC_TYPE DiagnosticType,
93 | IN CHAR8 *Language,
94 | OUT EFI_GUID **ErrorType,
95 | OUT UINTN *BufferSize,
96 | OUT CHAR16 **Buffer
97 | );
98 |
--------------------------------------------------------------------------------
/DriverDeveloper/UefiDriverWizard/Templates/ComponentName.h:
--------------------------------------------------------------------------------
1 | <><>
2 | /** @file
3 | UEFI Driver Wizard template file
4 |
5 | Copyright (c) 2012, Intel Corporation. All rights reserved.