qwang12 [Tue, 13 Feb 2007 01:47:44 +0000 (01:47 +0000)]
Update all String related functions in BaseLib for this change introduced in Mde Library Spec 0.60e:
"Updated all functions that take pointers to Unicode strings as parameters to ASSERT() if the pointer is not aligned in a 16-bit boundary."
qwang12 [Mon, 12 Feb 2007 02:53:23 +0000 (02:53 +0000)]
1) Added BIT0, BIT1, …, BIT63 to the Base Defines
2) Added MIN() and MAX() macros to the Base Macros
3) Added StrStr(), StrDecimalToUnitn(), StrDecimalToUint64(), StrHexToUintn(), StrHexToUintn64(), UnicodeToAscii(), AsciiStrStr(), AsciiStrDecimalToUnitn(), AsciiStrDecimalToUint64(), AsciiStrHexToUintn(), AsciiStrHexToUintn64(), and AsciiToUnicode() to the Base Library String Functions
4) Added the Base Library Checksum Functions which include CalculateSum8(), CaclculateCheckSum8(), CalculateSum16(), CalculateChecksum16(), CalculateSum32(), CalculateCheckSum32(), CalculateSum64(), CalculateChecksum64().
5) Added MMIO Buffer functions to the I/O Library including MmioReadBuffer8(), MmioReadBuffer16(), MmioReadBuffer32(), MmioReadBuffer64(), MmioWriteBuffer8(), MmioWriteBuffer16(), MmioWriteBuffer32(), MmioWriteBuffer64().
6) Changed the parameter name from SizeOfValue to SizeOfBuffer in PcdSetPtr(), PcdSetPtrEx(), PatchPcdSetPtr(), LibPcdSetPtr(), LibPcdSetPtrEx(), LibPatchPcdSetPtr()
7) Added RADIX_HEX flag to the Print Library to support the conversion of values to hexadecimal strings in UnicodeValueToString() and AsciiValueToString()
jwang36 [Mon, 5 Feb 2007 06:25:58 +0000 (06:25 +0000)]
Add genDigest() method to class FfsProcess to generate MD5 digest value for the FFS layout. This is intended to solve re-generation issue of FFS when its layout has been changed but no related section files have been changed.
qhuang8 [Mon, 5 Feb 2007 05:54:16 +0000 (05:54 +0000)]
1.Drop the support of UEFI_APPLICATION for UefiDriverLib
2.Change the module type of BaseUefiDecompressLib to BASE
3.Remove the IoLib dependency for PeiReportStatusCodeLib & DxeReportStatusCodeLib
4.Change the module type of UefiApplicationEntryPointLib to UEFI_APPLICATION
5.Change the module type of EdkDxeRuntimeSalLib to DXE_RUNTIMe
6.Change HelloWorld application to depend on UefiApplicationEntryPointLib and modify the EdkModule.fpd, Nt32.fpd & Unix.fpd accordingly
jlin16 [Fri, 2 Feb 2007 10:11:03 +0000 (10:11 +0000)]
1. Refresh applicable library instances after one illegal library instance is removed.
2.Remove library instances that is only consumed by one library instance when deleting this library instance from a module in platform.
vanjeff [Fri, 2 Feb 2007 05:36:42 +0000 (05:36 +0000)]
1. removed BaseTimerLibLocalApic from MdePkg and Nt32TimerLib from EdkNt32Pkg.
2. added BaseTimerlibNullTemplate in MdePkg and SecPeiDxeTimerLibCpu in MdePkg.
3. modified the related spd and fpd files
klu2 [Thu, 1 Feb 2007 08:42:59 +0000 (08:42 +0000)]
EFI_CONSOLE_CONTROL_PROTOCOL provide the SetMode interface to switch mode between EfiConsoleControlScreenText and EfiConsoleControlScreenGraphics. And implementation of this interface is in EdkModlePkg\Universal\Console\ConSplitter\Dxe\ConSplitterGraphices.c ConSpliterConsoleControlSetMode().
In this function, it is better to judge current mode with wanted mode at first, if current mode is equal to wanted mode, then return and do nothing. Why need add judging:
1) Missing judge will lead an issue that screen splash when pressing key in front page. It is caused by ui.c will switch to textmode when first in, but current mode has been in text mode.
2) If switching to text mode, there are many works want to be done such as EnableCursor, ClearScreen. If original has been in text mode, judging will improve the performance of UI.
klu2 [Thu, 1 Feb 2007 03:05:49 +0000 (03:05 +0000)]
There is a bug in original EdkModulePkg\Library\EdkUefiRuntimeLib\Common\RuntimeLib.c. Originally, if a driver did not produce a <SetVirtualAddressMapCallBack>'s function, EFI_EVENT_SIGNAL_VIRTUAL_ADDRESS_CHANGE notify event will not be created in RuntimeDriverLibConstruct(), This is a bug, because at least, mRT pointer need to be converted for runtime service.
This bug will lead runtime interface GetMonoCount() failure because EdkModulePkg\Universal\MonotonicCounter\RuntimeDxe driver does not produce any <SetVirtualAddressMapCallBack>'s function.
xgu3 [Wed, 31 Jan 2007 07:18:41 +0000 (07:18 +0000)]
1. PEI core needs to check image machine type
2. In BDS, Legacy free may make BdsLibConnectAllDefaultConsoles fail.
3. Pci22.h, we need to add more definition in that
4. EBC: EBC Exception Subclass should add EFI_SUBCLASS_SPECIFIC
5. PciEnumeratorSupport Null Pointer Error
qhuang8 [Wed, 31 Jan 2007 06:54:47 +0000 (06:54 +0000)]
1. Remove the dead code of DxeSalVirtualNotifyEvent() in DxeSalLib so that the dependency of UefiRuntimeLib can be removed.
2. Remove the support of DXE_DRIVER in EdkUefiRuntimeLib
jlin16 [Fri, 26 Jan 2007 16:40:37 +0000 (16:40 +0000)]
Fix EDKT174, auto-select library instance if only one candidate available for a library class. Note that if you remove one single instance, it will NOT be auto-selected back at once.
jwang36 [Fri, 26 Jan 2007 06:28:27 +0000 (06:28 +0000)]
- Remove the TOOL without NAME defined and its definition in ARCH_build.opt
- Prefix the tool path to its name in ARCH_build.opt
- Support the same library class in different package
qhuang8 [Fri, 26 Jan 2007 04:08:57 +0000 (04:08 +0000)]
1. Add NULL QH to set as QH header;
2. Do ping for high speed OUT pipe;
3. Bug fix for QTD size detection;
4. Bug fix for short package detection;
5. Bug fix get next QTD in ExcutionTransfer;
6. BOT module modify to follow spec;
7. Massstorage error hanling enhancement
qwang12 [Thu, 25 Jan 2007 10:25:16 +0000 (10:25 +0000)]
Remove USER_DEFINED in IncludePkgHeader in spd files as it does not make sense to specify package include header file for a custom build type module. Package creator has no a priori knowledge about what header file will be needed by the USER_DEFINED module customers created in dependent package.
jwang36 [Thu, 25 Jan 2007 05:03:12 +0000 (05:03 +0000)]
- Merged the local copy of XmlRoutines.py in buildgen into upper directory's XmlRoutines.py
- Removed the local copy of XmlRoutines.py in buildgen/AntTasks.pyc
- Used the XmlNode to replace XmlElement in SurfaceAreaElement.py
jwang36 [Thu, 25 Jan 2007 01:25:02 +0000 (01:25 +0000)]
- Fixed EDKT240. Now the Blank.pad file for alignment purpose will no longer be needed.
- Fixed EDKT366. For NT32, using "build run" to launch the NT32 emulator. The run.cmd is still be generated in the ${TARGET_DIR}
lhauch [Thu, 25 Jan 2007 01:03:02 +0000 (01:03 +0000)]
Added optional whitespace characters in before and/or after the content within <element> tags
Added Alignment optional attribute to the <Section> tag
Changed the UserExtension Identifier from int to string
jwang36 [Wed, 24 Jan 2007 09:05:56 +0000 (09:05 +0000)]
- Fixed EDKT513 by adding existing section files into the dependency check of genffsfile tool;
- Fixed EDKT514 by removing the generation and build of AutoGen.c for library
vanjeff [Wed, 24 Jan 2007 08:04:04 +0000 (08:04 +0000)]
add <SupModuleList> in <LibraryClass> item for TimerLib. Inform build tool this timer instance cannot support DXE_SMM_DRIVER drivers, DXE_RUNTIME_DRIVER and DXE_SAL_DRIVER drivers
jwang36 [Wed, 24 Jan 2007 06:37:21 +0000 (06:37 +0000)]
Changed the way of determining how to call customized build file. Now we check if there's XXX_build.xml existing in the source file list to determine the customized build other than the USER_DEFINED module type.
yshang1 [Tue, 23 Jan 2007 10:28:32 +0000 (10:28 +0000)]
Fixed bug in partition driver:
When Block I/O detects the media changed, block driver will reinstall block I/O protocol. If it happened during start() of partition driver, the reinstall protocol would results in the reentrant of the start(). In the patch, we check status of child detection to see whether need clean up the opened block I/O protocol in Start().
Besides, some checking of return status added in usbbus driver to improve robusticiy of the driver.