]> git.proxmox.com Git - mirror_edk2.git/blob - BaseTools/UserManuals/EfiRom_Utility_Man_Page.rtf
Sync EDKII BaseTools to BaseTools project r1971
[mirror_edk2.git] / BaseTools / UserManuals / EfiRom_Utility_Man_Page.rtf
1 {\rtf1\ansi\ansicpg1252\deff0\deflang1033\deflangfe2052\deftab360{\fonttbl{\f0\fswiss\fprq2\fcharset0 Verdana;}{\f1\froman\fprq2\fcharset0 Times New Roman;}}
2 {\colortbl ;\red8\green96\blue168;\red0\green0\blue0;}
3 {\stylesheet{ Normal;}{\s1 heading 1;}{\s2 heading 2;}}
4 {\*\generator Msftedit 5.41.15.1515;}\viewkind4\uc1\pard\keep\keepn\nowidctlpar\s2\li-1440\sb400\sa60\sl-340\slmult0\tx1440\cf1\b\f0\fs28 Name\par
5 \pard\nowidctlpar\sb200\cf2\b0\fs18 EfiRom.exe - build an Option ROM image\par
6 \pard\keep\keepn\nowidctlpar\s2\li-1440\sb400\sa60\sl-340\slmult0\tx1440\cf1\b\fs28 Synopsis\par
7 \pard\nowidctlpar\sb200\cf2\fs18 EfiRom.exe [options] Filename [Filename]\'85\par
8 \pard\keep\keepn\nowidctlpar\s2\li-1440\sb400\sa60\sl-340\slmult0\cf1\fs28 Description\par
9 \pard\nowidctlpar\sb200\cf2\b0\fs18 EfiRom is used to build an Option ROM image from UEFI PE32 file(s) and/or legacy option ROM images that conform to PCI 2.3 or PCI 3.0 specifications for Option ROM layout. The EfiRom utility performs some rudimentary checking on the input Portable Executable (PE) PE32 files to verify they are indeed PE32 images. These checks include:\par
10 \pard\nowidctlpar\li360\sb200 Verification that the DOS stub magic value is 0x5A4D\par
11 Verification that the PE signature is \ldblquote PE\\0\\0\rdblquote\par
12 \pard\nowidctlpar\sb200 If either of these checks fails then the utility will abort without creating the output ROM image file.\par
13 This utility performs some rudimentary checking of the input binary files to verify they are indeed valid option ROM images. These checks include:\par
14 \pard\nowidctlpar\li360\sb200 Verification that the signature of the option ROM header is 0xAA55\par
15 Verification that the offset to the PCI data structure is within the range of the file size.\par
16 Verification that the signature of the PCI data structure is \ldblquote PCIR\rdblquote .\par
17 \pard\keep\keepn\nowidctlpar\s2\li-1440\sb400\sa60\sl-340\slmult0\cf1\b\fs28 Options\par
18 \pard\nowidctlpar\sb200\cf2\fs18 Filename1 [FilenameN]\par
19 \pard\nowidctlpar\li360\sb200\b0 Input PE/PE32+/COFF or legacy option ROM image file(s).\par
20 \pard\nowidctlpar\sb200\b -o, --output RomFilename\par
21 \pard\nowidctlpar\li360\sb200\b0 The ROM filename being created. If not specified, use the first input filename as name and *.rom as the output filename extension.\par
22 \pard\nowidctlpar\sb200\b -e, --efi\par
23 \pard\nowidctlpar\li360\sb200\b0 Input PE/PE32+/COFF file(s)\par
24 \pard\nowidctlpar\sb200\b -b, --binary\par
25 \pard\nowidctlpar\li360\sb200\b0 Input legacy option ROM image files.\par
26 \pard\nowidctlpar\sb200\b -ec, --compress\par
27 \pard\nowidctlpar\li360\sb200\b0 Compress input PE/PE32+/COFF file.\par
28 \pard\nowidctlpar\sb200\b -n, --no-last-bit\par
29 \pard\nowidctlpar\li360\sb200\b0 Do not set the LAST bit on the last file.\par
30 \pard\nowidctlpar\sb200\lang1036\b -l ClassCode, --class-code=ClassCode\par
31 \pard\nowidctlpar\li360\sb200\lang1033\b0 Use ClassCode in the PCI data structure header in the input file.\par
32 \pard\nowidctlpar\sb200\b -r Rev, --Revision=Rev\par
33 \pard\nowidctlpar\li360\sb200\b0 Use Rev in the PCI data structure header in the input file.\par
34 \pard\nowidctlpar\sb200\b -p, --pci23\par
35 \pard\nowidctlpar\li360\sb200\b0 Default layout meets PCI 3.0 specifications, specifying this flag will for a PCI 2.3 layout.\par
36 \pard\nowidctlpar\sb200\b -d, --dump\par
37 \pard\nowidctlpar\li360\sb200\b0 Dump the header of input option ROM image\par
38 \pard\nowidctlpar\sb200\b -i, --device-id\par
39 \pard\nowidctlpar\li360\sb200\b0 Device ID \par
40 \pard\nowidctlpar\sb200\b -f, --vendor-id\par
41 \pard\nowidctlpar\li360\sb200\b0 Vendor ID\par
42 \pard\nowidctlpar\sb200\b --version\par
43 \pard\nowidctlpar\li360\sb200\b0 Print version and copyright of this program then exit.\par
44 \pard\nowidctlpar\sb200\b -v, --verbose\par
45 \pard\nowidctlpar\li360\sb200\b0 Turn on verbose output with informational messages printed. This is a count value, so specifying \endash vv can be used to increase the verbosity level.\par
46 \pard\nowidctlpar\sb200\b -q, --quiet\par
47 \pard\nowidctlpar\li360\sb200\b0 Disable all messages except FATAL ERRORS.\par
48 \pard\nowidctlpar\sb200\b -d, --debug [#]\par
49 \pard\nowidctlpar\li360\sb200\b0 Enable debug messages, at level #.\par
50 \pard\nowidctlpar\sb200\b -h, --help\par
51 \pard\nowidctlpar\li360\sb200\b0 Print the copyright, version and usage of this program then exit.\par
52 \pard\keep\keepn\nowidctlpar\s2\li-1440\sb400\sa60\sl-340\slmult0\cf1\b\fs28 Examples\par
53 \pard\nowidctlpar\sb200\cf2\b0\fs18 Generate the Option ROM with two efi binary files and one legacy binary file. The output filename is not specified in command line, so the output filename will be \ldblquote File1.rom\rdblquote . The output filename is the same as the first input filename with the extension \ldblquote .rom\rdblquote\par
54 \b EfiRom \endash e File1.efi File2.efi \endash b Legacy.bin\par
55 \b0 Generate the Option ROM with two efi binary files and one legacy binary file with the output filename specified on the command line.\par
56 \b EfiRom \endash o file.rom \endash e File1.efi File2.efi \endash b Legacy.bin\par
57 \b0 Generate the Option ROM with two efi binary files and one legacy binary file. The output filename is not specified in command line, so the output filename will be \ldblquote File1.rom\rdblquote . The output filename is the same as the first input filename with the extension \ldblquote .rom\rdblquote . Vendor ID and Device ID are both specified in command line and the efi binary files will be compressed using the Tiano Compression algorithm.\par
58 \b EfiRom \endash i 0xABCD \endash f 0x1234 \endash ec File1.efi File2.efi \endash b Legacy.bin\par
59 \b0 Generate the Option ROM with two efi binary files and one legacy binary file with the output filename is specified in command line. Vendor ID and Device ID are both specified in command line and the efi binary files will be compressed using the Tiano Compression algorithm.\par
60 \b EfiRom \endash o file.rom \endash i 0xABCD \endash f 0x1234 \endash ec File1.efi File2.efi \endash b Legacy.bin\par
61 \pard\keep\keepn\nowidctlpar\s2\li-1440\sb400\sa60\sl-340\slmult0\cf1\fs28 Bugs\par
62 \pard\nowidctlpar\sb200\cf2\b0\fs18 No known bugs.\par
63 Report bugs to edk2-buildtools-devel@lists.sourceforge.net\f1\par
64 \pard\keep\keepn\nowidctlpar\s2\li-1440\sb400\sa60\sl-340\slmult0\cf1\b\f0\fs28 Files\par
65 \pard\nowidctlpar\sb200\cf2\b0\fs18 None\par
66 \pard\keep\keepn\nowidctlpar\s2\li-1440\sb400\sa60\sl-340\slmult0\cf1\b\fs28 See also\par
67 \pard\nowidctlpar\sb200\cf2\b0\fs18 None\par
68 \pard\keep\keepn\nowidctlpar\s2\li-1440\sb400\sa60\sl-340\slmult0\cf1\b\fs28 License\par
69 \pard\nowidctlpar\cf2\b0\fs18 Copyright (c) 1999 - 2009, Intel Corporation. All rights reserved.\par
70 This program and the accompanying materials are licensed and made available \par
71 under the terms and conditions of the BSD License which accompanies this \par
72 distribution. The full text of the license may be found at\par
73 http://opensource.org/licenses/bsd-license.php\par
74 \par
75 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\par
76 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\par
77 }
78