Commit Graph

250 Commits

Author SHA1 Message Date
qwang12 bc22641609 Framework code may call PreparePacckage with NULL GUID and both IFR and String Packages.
PackageList = PreparePackages (2, NULL, IfrPack, StringPack);

    mHii->NewPack( mHii, PackageList, &HiiHandle );

Framework HII database make use of the formset GUID as ID to retrieve String using 

EFI_STATUS
GetStringFromToken (
  IN  EFI_GUID                  *ProducerGuid,
  IN  STRING_REF                Token,
  OUT CHAR16                    **String
  )

Update the code to cache the Formset GUID too.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5896 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-16 06:47:08 +00:00
qhuang8 33629bba69 Fix the bug in GlueLib that we should depend on the gRT revision to use the proper report status code function.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5889 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-12 07:54:40 +00:00
qwang12 bc3fc71a37 Change the status code to EFI_NOT_FOUND for Framework Hii's GetGlyph if EFI_WARN_UNKNOWN_GLYPH is return from GetGlyph i.e. no matching font found and UNKNOWN glyph is returned.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5886 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-12 03:01:01 +00:00
qwang12 1e52ce5da8 Delete the unused PEIMs. EDK 2 PEI core now support this feature by gEfiMdeModulePkgTokenSpaceGuid.PcdFrameworkFvHobCompatibilitySupport.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5884 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-12 01:56:56 +00:00
qwang12 36e90351bd Pass GCC build.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5875 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-11 06:54:24 +00:00
qwang12 2b589f71a7 // EFI_FORM_BROWSER_PROTOCOL_GUID has been changed from the one defined in Framework HII 0.92 as the
// Setup Browser protocol produced by HII Thunk Layer support the UEFI IFR and UEF String Package format.


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5874 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-11 02:25:52 +00:00
qwang12 775bebc372 GCC clean.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5873 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-11 02:25:30 +00:00
qwang12 d4589db67b // EFI_HII_PROTOCOL_GUID has been changed from the one defined in Framework HII 0.92 as the
// Framework HII protocol produced by HII Thunk Layer support the UEF IFR and UEFI String Package
// format.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5872 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-11 02:23:31 +00:00
qhuang8 af1b10362d 1. Rename gRT in GlueLib to avoid collision with EfiDriverLib
2. Add the extra parameter of PciCfg in the new PeiLibPciCfgModify() to keep the parameter list the same as the PciCfg->Modify(). PciCfg is just a place holder.
3. Allow platform develop to set EDKII_GLUE_PciExpressBaseAddress value in build option.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5868 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-10 12:53:36 +00:00
qwang12 f38360fbf0 Add in a temp fix to make UEFI HII SCT can pass with platform built with FrameworkHiiToUefiHiiThunk module.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5829 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-05 07:01:47 +00:00
qwang12 2755d4dd44 Fix a bug.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5827 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-05 01:53:53 +00:00
qwang12 fed39e580e 1) Fix a bug in ASSERT condition.
2) Quit the browser when formset displayed is EFI_FRONT_PAGE_SUBCLASS or EFI_SINGLE_USE_SUBCLASS to comply with the Framework Browser behavior.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5826 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-05 01:19:01 +00:00
qwang12 8ea58c0707 1) Add a stringent check to make sure the package list for UpdateForm call must have IFR packages.
2) Fix a bug for Numeric Opcode creation.
3) Add AssignQuestionId to assign QuestionId to be a non-zero value always.
4) Add in Check in UefiRegisterPackageList to same package list to be registered for more than once. (Framework BDS has this behavior).
5) Fix a bug in HiiNewString


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5822 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-04 10:15:50 +00:00
vanjeff e00e1d4694 clean up the un-suitable ';' location when declaring the functions. The regular is ")[ ]++^p;"
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5821 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-04 09:44:58 +00:00
vanjeff 0e667e82c0 Remove unnecessary CONST.
.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5808 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-04 03:17:26 +00:00
qwang12 962045a2ab Update FrameworkHiiToUefiHiiThunk to produce Framework HII Protocol and Framework Setup Browser in new GUIDs. This is because the interfaces produced only handle IFR and String packages in UEFI format.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5801 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-03 10:47:00 +00:00
qwang12 59e87364cc Save the type of OneOf question.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5769 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-02 01:25:55 +00:00
qwang12 286f0de74c 1) Remove the hard-code length before building FRAMEWORK_EFI_IFR_DATA_ARRAY.
2) Support data type of EFI_IFR_TYPE_STRING when building FRAMEWORK_EFI_IFR_DATA_ARRAY.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5760 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-01 06:15:02 +00:00
lgao4 64bdb454f0 Fix build warning by replace CompareGuid by CompareMem
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5756 6f19259b-4bc3-4df7-8a09-765794883524
2008-08-29 08:49:57 +00:00
qwang12 4406efb42b OptionMap->Guid may not align on UINT32 baundary.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5755 6f19259b-4bc3-4df7-8a09-765794883524
2008-08-29 06:47:11 +00:00
qwang12 138f2f82d8 GetNextMonotonicCount may not be available when GenerateRandomGuid is called. Add a static variable as a seed.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5752 6f19259b-4bc3-4df7-8a09-765794883524
2008-08-29 01:53:37 +00:00
qwang12 21a54a4d0b Add .S file for X64 GCC tool-chain for Thunk16.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5751 6f19259b-4bc3-4df7-8a09-765794883524
2008-08-28 15:08:59 +00:00
qwang12 b59923ae17 Add .S file for GCC tool-chain for EfiRuntimeLib.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5750 6f19259b-4bc3-4df7-8a09-765794883524
2008-08-28 09:00:06 +00:00
qwang12 17b36c32d4 Add .S file for GCC tool-chain for PeiLib.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5749 6f19259b-4bc3-4df7-8a09-765794883524
2008-08-28 08:44:32 +00:00
qwang12 f1694d2768 Add .S file for GCC tool-chain for EfiCommonLib.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5748 6f19259b-4bc3-4df7-8a09-765794883524
2008-08-28 08:21:26 +00:00
qwang12 9a1ed79890 Add Cpu.S for X64 GCC tool-chain.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5739 6f19259b-4bc3-4df7-8a09-765794883524
2008-08-27 13:49:54 +00:00
qwang12 7100c9d36f Add in Thunk16.S.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5732 6f19259b-4bc3-4df7-8a09-765794883524
2008-08-26 10:22:08 +00:00
qwang12 7fd9ac0efb Add Fx.s
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5724 6f19259b-4bc3-4df7-8a09-765794883524
2008-08-25 02:03:47 +00:00
qwang12 41d80e816a Add in SupportItpDebug.S.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5723 6f19259b-4bc3-4df7-8a09-765794883524
2008-08-25 01:51:20 +00:00
qwang12 822a6944bc Add .S (for GCC) file for Pei/PeiLib/PeiLib_Edk2.inf.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5721 6f19259b-4bc3-4df7-8a09-765794883524
2008-08-23 11:25:00 +00:00
qwang12 78d41186a5 Make EfiRuntimeLib pass GCC.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5720 6f19259b-4bc3-4df7-8a09-765794883524
2008-08-23 09:55:39 +00:00
qwang12 1e22d0b02c Fix a bug in UefiDefaultsToFwDefaults NULL should be returned if no Variable pack is found.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5719 6f19259b-4bc3-4df7-8a09-765794883524
2008-08-23 09:37:32 +00:00
qwang12 4b79797eea 1) Cleanup for GCC and ICC tool-chain.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5718 6f19259b-4bc3-4df7-8a09-765794883524
2008-08-23 09:31:51 +00:00
qwang12 8e35b68162 1) Make EfiCpuVersion.c pass ICC and GCC tool-chain
2) Add in CpuIA32Lib_Edk2.inf.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5717 6f19259b-4bc3-4df7-8a09-765794883524
2008-08-23 08:38:20 +00:00
qwang12 a926396d18 1) add in CpuIA32Lib_Edk2.inf to allow CpuIa32 to be built under GCC tool-chain.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5716 6f19259b-4bc3-4df7-8a09-765794883524
2008-08-23 07:36:54 +00:00
qwang12 4d145a2a3b Add in _Edk2.inf so that library can be build by GCC and ICC tool-chain.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5715 6f19259b-4bc3-4df7-8a09-765794883524
2008-08-23 07:09:04 +00:00
qwang12 c1ea912c6c 1) add in EfiCommonLib_Edk2.inf which will allow EfiCommonLib to build understand GCC and ICC tool-chain.
2) Add in 3 .asm files for ICC tool-chain.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5714 6f19259b-4bc3-4df7-8a09-765794883524
2008-08-23 06:48:07 +00:00
qwang12 b074cb3927 Use correct link list traverse functions.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5713 6f19259b-4bc3-4df7-8a09-765794883524
2008-08-22 14:54:26 +00:00
qwang12 a3318eaf7a 1) Add in support to get only VarStoreId = 1 from Multiple VarStores.
2) Remove ThunkIfrSupportLib.h
3) Update some comments.
4) Add GetAttributesOfFirstFormSet to scan form package to read formset title, class info.
5) Clean up function related to package registration code.
6) Clean up RemovePackNotify

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5705 6f19259b-4bc3-4df7-8a09-765794883524
2008-08-21 07:56:01 +00:00
qwang12 5993016597 1) Add GetAttributesOfFirstFormSet to scan form package to read formset title, class info.
2) Clean up function related to package registration code.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5702 6f19259b-4bc3-4df7-8a09-765794883524
2008-08-21 02:33:00 +00:00
qwang12 d4775f2a4c 1) Add in fix to handle the case when a form is not related to a buffer storage.
2) Allocate Hii Handle from a bitfield array so Framework Hii Handle can be recycled.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5700 6f19259b-4bc3-4df7-8a09-765794883524
2008-08-20 14:17:24 +00:00
qwang12 133a9dfb54 1) Add in code to sync Browser Data with the NvMapOverride that may be updated by Framework Callback.
2) Convert lang code to RFC3066 format in Framework HII's GetSring and NewString 
3) Make sure the default ThunkExtractConfig is able to save the data even if it is not present initially.
4) Enable Framework HII's HiiGetGlyph and HiiGlyphToBlt.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5689 6f19259b-4bc3-4df7-8a09-765794883524
2008-08-19 10:44:50 +00:00
qwang12 0368663fd6 Bug fixes for FrameworkHiiToUefiHiiThunk;
1) Update variable name to better names.
2) Change List Entry in all data structure to "Link".
3) Update to use proper list manipulation functions in BaseLib.
4) Add in more comments and clean up HiiNewString.
5) Clean up for HiiNewPack, HiiRemovePack and the notify functions.
6) Create better name such as GetPackageCount and AssignFrameworkHiiHandle
7) Clean up the InitializeHiiDatabase entry point.
8) Remove the confusing data field in the HII_THUNK_ENTRY HiiDatabase.h.
9) Add in cleanup code for DestoryThunkContext
10) Add in code to handle the save of browser data after invoke callback 
11) Map the UEFI One Of Option code to Framework One Of Option code before calling Framework Callback.
12) Add in CreatePopUp support.
13) Add in SendForm support.
14) HiiGetPrimaryLanguages and HiiGetSecondaryLanguages should support language code in RFC639 format from Caller. Then, they should conver them to 3066 format before calling UEFI HII interfaces.
15) Make ResetStrings a NOP.
16) Remove the unnecessary dependency.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5659 6f19259b-4bc3-4df7-8a09-765794883524
2008-08-18 05:56:23 +00:00
qwang12 0f77dfb622 Enhance the string formatting function to take "%p" to print pointer.
'p' - arugment is VOID *; printed as hex number

Example is :

  ASPrint (Buffer, 1024, "This is a %p\n", SystemTable);

  ASPrint (Buffer, 1024, "This is a %10p\n", SystemTable);


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5554 6f19259b-4bc3-4df7-8a09-765794883524
2008-07-23 07:07:07 +00:00
qwang12 c69a09d928 Add in .S file for GCC tool-chain.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5542 6f19259b-4bc3-4df7-8a09-765794883524
2008-07-22 01:55:31 +00:00
qwang12 34a6b78805 Inline ASM in .c file is specific to MS tool-chain. Other tool-chain (such as Intel compiler) may not support it. Add in .asm files to make these function to be built by Assembler so that they are avaliable too for other tool-chain.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5540 6f19259b-4bc3-4df7-8a09-765794883524
2008-07-21 14:01:55 +00:00
qwang12 b962b6b54d Add in .S file for GCC tool-chain.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5537 6f19259b-4bc3-4df7-8a09-765794883524
2008-07-21 10:03:20 +00:00
qwang12 a1cb16bd83 clean up for GCC tool-chain.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5536 6f19259b-4bc3-4df7-8a09-765794883524
2008-07-21 09:57:43 +00:00
qwang12 0fb90682e7 Use ebp as frame buffer in DivU64x32. Fix a typo in GetPowerOfTwo.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5532 6f19259b-4bc3-4df7-8a09-765794883524
2008-07-21 05:57:04 +00:00
qwang12 478db76bbe Inline ASM in .c file is specific to MS tool-chain. Other tool-chain (such as Intel compiler) may not support it. Add in .asm files to make these function to be built by Assembler so that they are avaliable too for other tool-chain.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5529 6f19259b-4bc3-4df7-8a09-765794883524
2008-07-21 01:49:04 +00:00