Commit Graph

10350 Commits

Author SHA1 Message Date
jljusten 4a8266f570 OvmfPkg: Work around issue seen with kvm + grub2 (efi)
When OVMF is run with kvm and grub2 (efi), an exception
occurs when mmx/sse registers are accessed.

As a work around, this change eliminates firmware usage
of these register types.

First, only the BaseMemoryLib implementation
MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf
is used.

Second, the GCC compiler is passes the additional
'-mno-mmx -mno-sse' parameters.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11218 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-31 07:55:51 +00:00
jljusten 689562cdb3 OvmfPkg: Add USB support
Add USB drivers to OVMF build

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11217 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-31 07:55:38 +00:00
jljusten aed8e2ec4e OvmfPkg README: Group network information together
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11216 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-31 07:55:23 +00:00
jljusten 5a9745b9b4 OvmfPkg: Add build32.sh and build64.sh scripts
These scripts are similar to those found under DuetPkg & UnixPkg.

The scripts simplify building and running OVMF under systems that
have the bash shell available.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11215 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-31 07:55:11 +00:00
qlong 4a567c9690 1. Add new API supports for PEM & X509 key retrieving & verification;
2. Add new MD4 hash supports;
3. Add corresponding test case in Cryptest utility;
4. Fix MACRO definition issue in OpensslLib.inf and parameter checking issues in some wrapper implementations.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11214 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-31 07:22:48 +00:00
lgao4 2a6433fef2 Use SmmStatusCode protocol in EfiInitializeSmmDriverLib() funciton.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11213 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-31 04:36:50 +00:00
gdong1 9ae0edbfa9 1. Invoke InstallConfigurationTable () in OnReadyToBoot() to avoid the new registered table may be NULL.
2. For SMM variable driver, it doesn’t need to mark the variable storage region of the FLASH as RUNTIME, so only keep it for non-SMM variable driver. 


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11212 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-31 04:31:42 +00:00
mdkinney 9969fde78d Update the Timeout used for Write() operations to consider the case where the Tx FIFO is full on entry to Write().
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11211 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-30 22:30:57 +00:00
mdkinney abef1c7a09 Prevent a NULL device path from being passed into REPORT_STATUS_CODE_WITH_DEVICE_PATH by building child device path before using any of the Serial I/O Protocol services.
This guarantees that child device path is valid even if an error is returned from one of Serial I/O Protocol services in Start().

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11210 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-30 22:29:54 +00:00
lgao4 c3522526f1 Show PEIM GUID in PERF log.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11209 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-30 09:38:38 +00:00
ydong10 e24adb18e3 Enable number input for numeric, date and time opcode
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11208 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-30 07:26:56 +00:00
mdkinney a06638eac2 Fix issue when BaseDebugLibSerialPort is combined with BaseSerialPortLibNull. It will ASSERT() due to the recent addition of a CONSTRUCTOR to BaseDebugLibSerialPort that calls SerialPortInitialize().
The fix is to change SerialPortInitialize() to always return RETURN_SUCCESS instead of RETURN_UNSUPPORTED.


 



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11207 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-30 01:07:39 +00:00
mdkinney 8e456a7794 Add mapping for PlatformHookLib to [LibraryClasses] section
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11206 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-29 18:28:38 +00:00
qianouyang 64b2d0e5c0 Update Ipsecconfig application.
1. add the support of "--tunnel-dest" and "tunnel-source" parameters.
2. transfer to EFI_IPSEC_SA_DATA2.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11205 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-29 10:44:12 +00:00
rsun3 e0ee9d9314 Clean ISA_IO/ISA_IO_16 and VGA_IO/VGA_IO_16 attribute usage in PCI bus driver/PCI host bridge drivers/LPC/VGA device drivers.
1. Fix the incorrect definition of EFI_PCI_IO_ATTRIBUTE_VGA_IO_16 (does not conform to the UEFI spec) in PciIo.h.
2. Add missing definitions of ISA and VGA IO attributes in PCI Root Bridge IO protocol.
3. Improve the algorithm in the PCI bus driver to get PCI platform policy from PCI Platform Protocol and PCI Override Protocol.
4. Update the PCI bus driver to use the PCI platform policy to determine the supported attributes that are returned by the EFI_PCI_IO_PROTOCOL.Attributes() function. This is required by the PI spec.
5. Add a backward compatibility workaround for PCI VGA drivers in Option ROM, which typically sets VGA_IO without checking supported attributes.
6. Update the PCI host bridge driver in PcAtChipsetPkg to report VGA_IO_16 and ISA_IO_16 instead of VGA_IO/ISA_IO attributes. Modern chipsets don’t have hardware capability to control 10-bit or 16-bit decoding for ISA/VGA aliases.
7. Update LPC/VGA device drivers to check supported attributes of VGA_IO/VGA_IO_16 or ISA_IO/ISA_IO_16.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11204 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-28 10:10:10 +00:00
mdkinney e25fb2c06c Add missing @param to function header comment.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11203 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-27 17:16:55 +00:00
jyao1 4eed2dbd89 Fix CYG GCC build fail on retf.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11202 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-26 07:25:12 +00:00
jyao1 ef291d07a1 Replace @@ symbol since GCC does not recognize it.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11201 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-25 12:52:52 +00:00
jyao1 6dd67b60c4 Fix GCC build failure.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11200 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-24 11:06:17 +00:00
gdong1 a81b1409f9 Remove ASSERT here for the zero attributes means deleting preexisting variable.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11199 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-24 07:03:25 +00:00
xdu2 7389fdd0b8 Add support for BootOption with USB Class or USB WWID device path node.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11198 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-24 05:33:08 +00:00
xdu2 84909ad446 1. update MatchUsbWwid() to check Vendor Id, Product Id and Interface Number.
2. update SerialNumber comparing logic to handle possible NULL-terminator in WWID device path
3. fix bug in UsbIo->UsbIoGetSupportedLanguages(): TableSize is size in bytes of LangIDTable instead of number of LangID.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11197 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-24 05:32:34 +00:00
ydong10 e2100bfa65 1. Support inconsistent if opcode used in string/password opcode.
2. Add sample code of using inconsistent if opcode in string opcode.


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11196 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-23 06:47:50 +00:00
ydong10 7b546f7480 1. support numeric item +/- action generate callback
2. when user change numeric opcode, call to refresh form.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11195 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-23 05:58:30 +00:00
jyao1 47cc0634ba Fix boot script thunk issue that we need dispatch in PEI mode for Framework dispatch function, not in DXE mode.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11194 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-23 02:20:13 +00:00
gdong1 95411933b5 Remove PcdSmmVariableEnable from MdeModulePkg since it is not used in core package currently.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11193 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-23 02:03:51 +00:00
ydong10 638dffa97f Revert patch 11146 about file guid.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11192 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-23 01:03:34 +00:00
ydong10 9c3d10b75d Update inappropriate comments.
fine code to make code run more safely.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11191 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-22 08:32:56 +00:00
gdong1 5456306fcf Fix a potential bug that SetVariable is invoked for NV variable prior to the installation of EFI_VARIABLE_WRITE_ARCH_PROTOCOL.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11190 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-22 07:33:13 +00:00
jyao1 d766b22843 Fix boot script thunk issue that we need dispatch in PEI mode for Framework dispatch function, not in DXE mode.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11189 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-22 04:26:08 +00:00
rsun3 23228db382 Document the inconsistency of EFI_SMM_CPU_SAVE_STATE between the EDK2 code base and the Framework SMM CIS 0.91 spec.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11188 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-22 03:15:24 +00:00
rsun3 6ac6f98708 Update definition of EFI_SMM_CPU_SAVE_STATE to exclude Itanium save state. Note this is an inconsistency with the Framework SMM CIS spec.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11187 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-22 02:34:45 +00:00
rsun3 36e8c95557 Change the modifiers of the RegisterContext parameter of EFI SMM SW Dispatch2 Protocol.Register() from IN, CONST to IN, OUT. This is for support for the case where SwSmiInputValue is set to -1, a unique value will be returned in the RegisterContext structure.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11186 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-21 06:34:32 +00:00
mdkinney f2ad949723 Fix ICC build issues
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11185 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-20 01:32:07 +00:00
mdkinney 467d15ae63 Add generic SerialPortLib instance for 16550 UARTs configured through PCDs. Depends on new library class called PlatformHookLib to perform platform specific initialization of the UART.
Add PlatformHookLib.h that defines the PlatformHookLib class
Add PlatformHookLibNull instance that is a Null implementation of the PlatformHookLib class





git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11184 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-18 01:02:59 +00:00
mdkinney ccc96db96e Add CONSTRUCTOR to BaseDebugLibSerialPort to call SerialPortInitialize() in the SerialPortLib to make sure the serial port hardware is in the proper state for use.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11183 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-18 00:24:34 +00:00
mdkinney b35a5f731c Remove CONSTRUCTOR from DxePcdLib aligning the DxePcdLib design with the PeiPcdLib and reduces the number of CONSTRUCTORs that have to be run for most DXE modules.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11182 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-18 00:22:08 +00:00
mdkinney 5bd2d2cb03 Add an empty CONSTRUCTOR to the UefiLib to resolve library dependency issues.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11181 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-18 00:10:30 +00:00
mdkinney 5b98704413 Fix DxeHobLib to also support a module type of SMM_CORE.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11180 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-17 23:04:57 +00:00
mdkinney e06752bb9b Remove UefiDriverEntryPoint from [LibraryClasses] section. Library implementations should never link against an entry point lib. Only modules implementation should link against an entry point lib.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11179 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-17 22:47:06 +00:00
niruiyu 12b7f509dc Removes the assumption in Supported() and Start() routine that the EFI_SIO_PROTOCOL is installed in the immediate child handle of the PCI controller. Multiple SIO platform could have an additional layer between the PCI controller and the EFI_SIO_PROTOCOL instance.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11178 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-17 05:55:47 +00:00
rsun3 304a39b746 Fix a bug that the size of a gate descriptor in the IDT is 8 bytes. The size is 8 bytes in 32-bit mode, while it is 16 bytes in 64-bit mode. Replace the hard-coded size with a sizeof.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11177 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-17 02:38:26 +00:00
andrewfish bcec20df61 Add support for ARM MOVW/MOVT instructions that were added in the latest PE/COFF specification. Currently they are not hooked in as we need to wait for the tools to get updated. Tools are needed to convert ELF to PE/COFF and to refixup FVs.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11176 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-16 21:44:49 +00:00
tye1 70b356a9ff Minor code update to make TcpIo unchanged when return EFI_DEVICE_ERROR.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11175 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-16 09:26:28 +00:00
niruiyu 0a13c99cf1 Remove wrongly added SuperIoInit protocol.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11174 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-16 08:28:51 +00:00
andrewfish 445404a846 Fix ARM link issue.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11173 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-15 21:06:24 +00:00
ydong10 20e7314028 Update inappropriate comments.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11172 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-15 07:39:28 +00:00
andrewfish 7d9524051e Fix semihosting on gcc. We need to save lr as svc instruction will change it.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11171 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-15 02:39:00 +00:00
gdong1 32732a333a Update inappropriate comments.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11170 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-15 01:51:46 +00:00
andrewfish 63ca740217 Update remaining ARM .S files with INTERWORK_FUNC macro. This is the 2nd half of check-in 11167.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11169 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-15 01:06:20 +00:00