Commit Graph

74 Commits

Author SHA1 Message Date
klu2 8ec8bed439 1, For Pcd_PPI, UnregistedCallBack should return EFI_INVALID_PARAMETER if Callback function can not be found.
2, PCD_PPI/PROTOCOL should return EFI_INVALID_PARAMETER if size is unmatched

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10276 6f19259b-4bc3-4df7-8a09-765794883524
2010-03-18 06:24:53 +00:00
niruiyu 6a429dfa5f Change back the TPL of PCD from TPL_CALLBACK to TPL_NOTIFY because the following issue is found:
When we manually connect a device path mapping to the serial terminal with non-default band rate, the SerialIo driver would Reinstall its device path protocol eventually causing ConSplitter::DriverBindingStart() to run and finally would call PcdGet32 (PcdConOutColumn) in ConsplitterSetConsoleOutMode().
Since SerialIo driver raises TPL to TPL_NOTIFY initially, the call to PcdGet32 would cause TPL assertion if TPL of PCD is TPL_CALLBACK.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10188 6f19259b-4bc3-4df7-8a09-765794883524
2010-03-04 09:38:02 +00:00
jljusten b05ad4a765 Cleanup: Remove PcdDxePcdDatabaseTraverseEnabled
gEfiEdkModulePkgTokenSpaceGuid.PcdDxePcdDatabaseTraverseEnabled does not
exist.  Remove references to it in .dsc files and within the comments of
the DXE PCD driver.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10092 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-25 21:53:22 +00:00
lgao4 6bfbb5f0e0 1. Correct File header to ## @file
2. Remove unnecessary .common] postfix on section.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10052 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-24 00:21:16 +00:00
niruiyu 1a395747fd TPL of Pcd Dxe driver was changed to TPL_CALLBACK from TPL_NOTIFY to follow UEFI spec that caller of variable interface should run at TPL <= TPL_CALLBACK.
The change is to enable PcdsDynamicHii in Duet platform. Duet's variable driver should run at TPL <= TPL_CALLBACK so Pcd Dxe driver should run at TPL <= TPL_CALLBACK. 

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10040 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-22 06:05:11 +00:00
klu2 6ac15f7c8a Support HII VOID* dynamic/dynamicEx type PCD.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9990 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-11 08:19:29 +00:00
mdkinney b07a5b68ad Pass the correct TokenNumber into a CallbackOnSet notification function. The value being passed in was off by 1.
This would not normally cause an issue because the correct notification function was being called.  There is only an issue if the same notification function is being used for multiple tokens, and the notification function needs to use the TokenNumber parameter to determine which token setting caused the callback function to be called.

Update the logic so the CallbackOnSet notification functions are not called with the internal PCD database lock in the acquired state.  This allows other PCD Get/Set operations to be performed from within a CallbackOnSet notification.

Update logic so the PCD database lock is not left in the acquired state when SetWorker() returns EFI_INVALID_PARAMETER.  


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9981 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-11 03:51:17 +00:00
mdkinney 736c5dd580 Pass the correct TokenNumber into a CallbackOnSet notification function. The value being passed in was off by 1.
This would not normally cause an issue because the correct notification function was being called.  There is only an issue if the same notification function is being used for multiple tokens, and the notification function needs to use the TokenNumber parameter to determine which token setting caused the callback function to be called.


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9980 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-11 03:47:40 +00:00
rsun3 4140a6635b Coding style fix and minor improvements.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9977 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-11 02:33:16 +00:00
mdkinney 188e4e8444 Remove unnecessary use of FixedPcdxxx() functions and [FixedPcd] INF sections. These should only be used for PCDs that are used to pre-init global variables, pre-init global structures, or size arrays.
Do some minor clean ups to INF files
 


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9868 6f19259b-4bc3-4df7-8a09-765794883524
2010-01-29 23:39:48 +00:00
klu2 149fb6d680 According to PI 1.2 spec Vol 3 chapter 8 PCD, if the PCD service determined that the size of the data being set was
incompatible with a call to this function, PCD_PPI/PROTOCOL's SetXEx interfaces should be return EFI_INVALID_PARAEMTER instead of ASSERT().

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9753 6f19259b-4bc3-4df7-8a09-765794883524
2010-01-14 16:29:29 +00:00
klu2 86714ccd8e According to PI specification, if token number can not be found for dynamic-ex type PCD, return EFI_NOT_FOUND but not ASSERT().
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9511 6f19259b-4bc3-4df7-8a09-765794883524
2009-12-03 05:59:57 +00:00
klu2 6c74c5383a Refine comments for PCD PEIM/driver.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9472 6f19259b-4bc3-4df7-8a09-765794883524
2009-11-24 03:00:41 +00:00
klu2 17e7fa8fb1 Clean up code.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9471 6f19259b-4bc3-4df7-8a09-765794883524
2009-11-24 02:28:06 +00:00
klu2 8a541f0a71 1, Correct the PCD PEIM to produce gEfiPcdPpi and gPcdPpi at same time;
2, Combine two action of InstallProtocolInstance for gEfiPcdProtocol and gPcdProtocol into InstallMultipleProtocolInstances.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9468 6f19259b-4bc3-4df7-8a09-765794883524
2009-11-23 07:52:09 +00:00
klu2 c896d68257 Make PcdPeim/PcdDxe driver also produce EFI_PCD_PPI/EFI_PCD_PROTOCOL defined in PI 1.2 vol3. The EFI_PCD_PPI/EFI_PCD_PROTOCOL only support dynamic-ex type PCD, but original PCD_PPI/PCD_PROTOCOL in MdePkg support dynamic and dynamic-ex type PCDs.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9401 6f19259b-4bc3-4df7-8a09-765794883524
2009-11-10 08:45:07 +00:00
lgao4 b13151ffb6 Update PCD driver to correctly set the HII type PCDs.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9078 6f19259b-4bc3-4df7-8a09-765794883524
2009-08-17 02:05:32 +00:00
klu2 7076244ef4 The StringIndex should be casted to UINT16* but not UINT8*.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8466 6f19259b-4bc3-4df7-8a09-765794883524
2009-06-04 14:56:45 +00:00
klu2 2ef9435a77 Fix the bug that PCD driver treat StringTableIndex as UINT8 value but in fact it is UINT16 value.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8412 6f19259b-4bc3-4df7-8a09-765794883524
2009-05-31 05:44:48 +00:00
klu2 d09651693b Fix the bug that build tool and PCD driver can not deal with byte array or ANSIC type value for dynamic PCD.
This patch including following change:
1) Build tools:
   a) StringTable in generated PCD database is changed to UINT8 array but not original UINT16, because it can also stored the ANSIC and byte array.
   b) The layout of string table in PCD database is changed. To make sure unicode string is in double byte aligned, the item in string table which hold unicode string value will be put ahead than other items. After unicode string item, the HII variable name item is immediate. The byte array item and ANSIC string array item will be put at tail of whole string table.
   c) Fix bug that build tools does not handle the size of unicode string, byte array and ANSIC string.
2) PCD PEI/DXE driver:
   The pointer of StringTable is changed to UINT8* but not original UINT16*.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8392 6f19259b-4bc3-4df7-8a09-765794883524
2009-05-27 11:34:11 +00:00
klu2 90e0655656 Synchronize PCD_Infrastructure 0.55 with source code.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8249 6f19259b-4bc3-4df7-8a09-765794883524
2009-05-06 06:18:49 +00:00
klu2 b6b3dc4410 1, Move introduction from header file to INF file header; 2, Refine dynamic PCD introduction according to review comments
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7997 6f19259b-4bc3-4df7-8a09-765794883524
2009-04-01 06:43:16 +00:00
klu2 9e40e4bd0a Refine comments
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7975 6f19259b-4bc3-4df7-8a09-765794883524
2009-03-29 11:20:47 +00:00
klu2 cf84d2671a Add introduction of PCD database in PCD Database.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7974 6f19259b-4bc3-4df7-8a09-765794883524
2009-03-29 11:20:12 +00:00
klu2 a5eca427cb Add introduction of PCD database in PCD PEIM.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7973 6f19259b-4bc3-4df7-8a09-765794883524
2009-03-29 07:43:05 +00:00
lgao4 4941d8817d Retire TCG platform protocol, which will be replaced by PI Security Architecture protocol.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7848 6f19259b-4bc3-4df7-8a09-765794883524
2009-03-10 07:57:15 +00:00
klu2 746be876f1 If variable does not exist for a HII PCD, a new NV variable need to be created.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7705 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-26 06:39:56 +00:00
qhuang8 37226e89c7 Add a work around to set the PCD protocol lock to TPL_NOTIFY to relax the restriction on caller of PCD protocol.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7695 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-25 14:00:54 +00:00
klu2 c7a6f87dc1 Fix GCC building broken, GCC does not allow \ character at end of line in comments
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7693 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-25 12:49:02 +00:00
lgao4 f806dd277e Use single one PcdFrameworkCompatibilitySupport PCD to support framework HII and FvHob.
Remove patchable type Flash related PCD.
Simplify single one PcdPeiFullPcdDatabaseEnable to produce full or minimal Pei PCD services.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7678 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-25 09:04:47 +00:00
klu2 3d53ba8b45 Merge GetSizeTableIndexA to GetSizeTableIndex function because it only be invoked by GetSizeTableIndex.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7675 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-25 08:11:42 +00:00
klu2 599a55a5f7 Add sample for auto-generated PCD
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7670 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-25 07:43:53 +00:00
lgao4 96cb78a1e3 Use gEfiCallerIdGuid as the private guid for PcdPeim module.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7653 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-24 15:24:53 +00:00
lgao4 5c52673637 Move MdeModuleHii.h into Include\Guid directory
Move Capsule.h into MdePkg\Include\Protocol directory because Capsule is defined in PI1.0a.
Merge WorkingBlockHeader.h into SystemNvDataGuid.h
Remove unused NvDataFvHob.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7606 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-23 15:18:48 +00:00
hchen30 309e31222f update code to pass K8.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7536 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-17 09:13:35 +00:00
klu2 c948a51548 Fix EBC build broken.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7534 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-17 05:39:12 +00:00
klu2 acd3b0e62d Fix EBC build broken.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7533 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-17 05:36:10 +00:00
vanjeff 7174e04c2b 1.enhanced security check.
2.remove un-necessary ASSERT.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7522 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-13 06:39:44 +00:00
vanjeff 89c18a1e9e enhanced security check.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7520 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-13 06:07:36 +00:00
lgao4 1fef733cc7 Fix security check.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7519 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-13 05:20:55 +00:00
lgao4 98b15cf156 Include the missing Guid header file to refer the global Guid
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7498 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-11 04:57:42 +00:00
lgao4 b998288321 Correct typo in comments, clean IfrSupportLib.h
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7494 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-10 13:32:19 +00:00
klu2 7459a41ec0 Fix typo in meta data.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7423 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-03 13:34:10 +00:00
qwang12 e4a3922f03 Update the protocol function to return EFI_INVALID_PARAMETER if CallBackFunction == NULL. The PCD library function will do ASSERT if CallBackFunction is NULL.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7385 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-01 10:04:40 +00:00
lgao4 e561879137 Add INF extension Information
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7228 6f19259b-4bc3-4df7-8a09-765794883524
2009-01-09 06:26:42 +00:00
gikidy 3fd8027ee5 Fix some typo.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7160 6f19259b-4bc3-4df7-8a09-765794883524
2008-12-31 06:06:57 +00:00
lgao4 68dbca6c14 Code Clean for Driver PlatformDriOverrideDxe and PlatOverMngr application. And Clean PlatDriOver library class.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7121 6f19259b-4bc3-4df7-8a09-765794883524
2008-12-25 09:13:53 +00:00
lgao4 5944a83bac Code clean for Ftw driver, remove the obsolete logic for boot block. Correct some comments in Pei Pcd driver.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7108 6f19259b-4bc3-4df7-8a09-765794883524
2008-12-24 01:24:17 +00:00
klu2 2621e6ca7a Update module description for PCD Dxe driver.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7060 6f19259b-4bc3-4df7-8a09-765794883524
2008-12-17 03:29:16 +00:00
lgao4 cebc8d486e Code Scrub for Pcd, PlatformDriOverride and PlatOverMngr driver.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6998 6f19259b-4bc3-4df7-8a09-765794883524
2008-12-11 09:30:13 +00:00