summaryrefslogtreecommitdiff
path: root/MdeModulePkg/Universal
diff options
context:
space:
mode:
Diffstat (limited to 'MdeModulePkg/Universal')
-rw-r--r--MdeModulePkg/Universal/PCD/Pei/Pcd.c5
-rw-r--r--MdeModulePkg/Universal/PCD/Pei/Pcd.inf5
-rw-r--r--MdeModulePkg/Universal/PCD/Pei/Service.c5
-rw-r--r--MdeModulePkg/Universal/PCD/Pei/Service.h9
-rw-r--r--MdeModulePkg/Universal/PcatSingleSegmentPciCfg2Pei/PciCfg2.c20
-rw-r--r--MdeModulePkg/Universal/PlatformDriverOverride/PlatOverMngr/PlatOverMngr.c24
-rw-r--r--MdeModulePkg/Universal/PlatformDriverOverride/PlatOverMngr/PlatOverMngr.h83
-rw-r--r--MdeModulePkg/Universal/PlatformDriverOverride/PlatformDriOverrideDxe/PlatformDriOverride.c53
-rw-r--r--MdeModulePkg/Universal/PlatformDriverOverride/PlatformDriOverrideDxe/PlatformDriOverride.h56
9 files changed, 201 insertions, 59 deletions
diff --git a/MdeModulePkg/Universal/PCD/Pei/Pcd.c b/MdeModulePkg/Universal/PCD/Pei/Pcd.c
index b6fff54..ddf3a64 100644
--- a/MdeModulePkg/Universal/PCD/Pei/Pcd.c
+++ b/MdeModulePkg/Universal/PCD/Pei/Pcd.c
@@ -1,8 +1,7 @@
/** @file
- PCD PEIM manage PCD database to manage all dynamic PCD in PEI phase. PCD PEIM
- also produce PCD_PPI.
+PCD PEIM produces PCD database to manage all dynamic PCD in PEI phase and install Pcd Ppi.
-Copyright (c) 2006, Intel Corporation
+Copyright (c) 2006 - 2008, Intel Corporation
All rights reserved. This program and the accompanying materials
are licensed and made available under the terms and conditions of the BSD License
which accompanies this distribution. The full text of the license may be found at
diff --git a/MdeModulePkg/Universal/PCD/Pei/Pcd.inf b/MdeModulePkg/Universal/PCD/Pei/Pcd.inf
index 8f43b11..bb85ab9 100644
--- a/MdeModulePkg/Universal/PCD/Pei/Pcd.inf
+++ b/MdeModulePkg/Universal/PCD/Pei/Pcd.inf
@@ -1,8 +1,7 @@
#/** @file
-# Component description file for Pcd Database PEIM module
+# PCD PEIM produces PCD database to manage all dynamic PCD in PEI phase and install Pcd Ppi.
#
-# This PEIM driver implement and produce PCD PPI.
-# Copyright (c) 2006 - 2007, Intel Corporation
+# Copyright (c) 2006 - 2008, Intel Corporation
#
# All rights reserved. This program and the accompanying materials
# are licensed and made available under the terms and conditions of the BSD License
diff --git a/MdeModulePkg/Universal/PCD/Pei/Service.c b/MdeModulePkg/Universal/PCD/Pei/Service.c
index fddab6b..65e7e92 100644
--- a/MdeModulePkg/Universal/PCD/Pei/Service.c
+++ b/MdeModulePkg/Universal/PCD/Pei/Service.c
@@ -1,7 +1,7 @@
/** @file
Private functions used by PCD PEIM.
-Copyright (c) 2006, Intel Corporation
+Copyright (c) 2006 - 2008, Intel Corporation
All rights reserved. This program and the accompanying materials
are licensed and made available under the terms and conditions of the BSD License
which accompanies this distribution. The full text of the license may be found at
@@ -10,9 +10,6 @@ http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
-
-Module Name: Service.c
-
**/
#include "Service.h"
diff --git a/MdeModulePkg/Universal/PCD/Pei/Service.h b/MdeModulePkg/Universal/PCD/Pei/Service.h
index e163a9a..06cb247 100644
--- a/MdeModulePkg/Universal/PCD/Pei/Service.h
+++ b/MdeModulePkg/Universal/PCD/Pei/Service.h
@@ -1,7 +1,7 @@
/** @file
Private functions used by PCD PEIM.
-Copyright (c) 2006, Intel Corporation
+Copyright (c) 2006 - 2008, Intel Corporation
All rights reserved. This program and the accompanying materials
are licensed and made available under the terms and conditions of the BSD License
which accompanies this distribution. The full text of the license may be found at
@@ -10,9 +10,6 @@ http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
-
-Module Name: Service.h
-
**/
#ifndef _PEI_PCD_SERVICE_H_
@@ -1007,11 +1004,13 @@ SetPtrTypeSize (
IN PEI_PCD_DATABASE *Database
);
-
extern EFI_GUID gPcdDataBaseHobGuid;
extern EFI_GUID gPcdPeiCallbackFnTableHobGuid;
+//
+// The init Database created by PCD Database generation tool
+//
extern PEI_PCD_DATABASE_INIT gPEIPcdDbInit;
#endif
diff --git a/MdeModulePkg/Universal/PcatSingleSegmentPciCfg2Pei/PciCfg2.c b/MdeModulePkg/Universal/PcatSingleSegmentPciCfg2Pei/PciCfg2.c
index 0d899c9..6ea2cfb 100644
--- a/MdeModulePkg/Universal/PcatSingleSegmentPciCfg2Pei/PciCfg2.c
+++ b/MdeModulePkg/Universal/PcatSingleSegmentPciCfg2Pei/PciCfg2.c
@@ -55,7 +55,7 @@ PciCfg2Read (
IN EFI_PEI_PCI_CFG_PPI_WIDTH Width,
IN UINT64 Address,
IN OUT VOID *Buffer
-);
+ );
/**
Write to a given location in the PCI configuration space.
@@ -89,7 +89,7 @@ PciCfg2Write (
IN EFI_PEI_PCI_CFG_PPI_WIDTH Width,
IN UINT64 Address,
IN OUT VOID *Buffer
-);
+ );
/**
@@ -130,7 +130,7 @@ PciCfg2Modify (
IN UINT64 Address,
IN VOID *SetBits,
IN VOID *ClearBits
-);
+ );
@@ -218,7 +218,7 @@ PciCfg2Read (
IN EFI_PEI_PCI_CFG_PPI_WIDTH Width,
IN UINT64 Address,
IN OUT VOID *Buffer
-)
+ )
{
UINTN PciLibAddress;
@@ -269,7 +269,7 @@ PciCfg2Write (
IN EFI_PEI_PCI_CFG_PPI_WIDTH Width,
IN UINT64 Address,
IN OUT VOID *Buffer
-)
+ )
{
UINTN PciLibAddress;
@@ -327,7 +327,7 @@ PciCfg2Modify (
IN UINT64 Address,
IN VOID *SetBits,
IN VOID *ClearBits
-)
+ )
{
UINTN PciLibAddress;
UINT16 ClearValue16;
@@ -353,7 +353,15 @@ PciCfg2Modify (
return EFI_SUCCESS;
}
+/**
+ Module's entry function.
+ This routine will install EFI_PEI_PCI_CFG2_PPI.
+
+ @param FileHandle Handle of the file being invoked.
+ @param PeiServices Describes the list of possible PEI Services.
+ @return Whether success to install service.
+**/
EFI_STATUS
EFIAPI
PeimInitializePciCfg (
diff --git a/MdeModulePkg/Universal/PlatformDriverOverride/PlatOverMngr/PlatOverMngr.c b/MdeModulePkg/Universal/PlatformDriverOverride/PlatOverMngr/PlatOverMngr.c
index 5d9bfe1..5f49a5b 100644
--- a/MdeModulePkg/Universal/PlatformDriverOverride/PlatOverMngr/PlatOverMngr.c
+++ b/MdeModulePkg/Universal/PlatformDriverOverride/PlatOverMngr/PlatOverMngr.c
@@ -336,7 +336,7 @@ GetComponentName (
**/
CHAR16 *
GetImageName (
- EFI_LOADED_IMAGE_PROTOCOL *Image
+ IN EFI_LOADED_IMAGE_PROTOCOL *Image
)
{
EFI_STATUS Status;
@@ -347,9 +347,9 @@ GetImageName (
UINTN BufferSize;
UINT32 AuthenticationStatus;
EFI_GUID *NameGuid;
- EFI_FIRMWARE_VOLUME2_PROTOCOL *FV2;
+ EFI_FIRMWARE_VOLUME2_PROTOCOL *Fv2;
- FV2 = NULL;
+ Fv2 = NULL;
Buffer = NULL;
BufferSize = 0;
@@ -378,11 +378,11 @@ GetImageName (
Status = gBS->HandleProtocol (
Image->DeviceHandle,
&gEfiFirmwareVolume2ProtocolGuid,
- (VOID **) &FV2
+ (VOID **) &Fv2
);
if (!EFI_ERROR (Status)) {
- Status = FV2->ReadSection (
- FV2,
+ Status = Fv2->ReadSection (
+ Fv2,
&FvFilePath->FvFileName,
EFI_SECTION_USER_INTERFACE,
0,
@@ -1158,12 +1158,12 @@ PlatOverMngrExtractConfig (
/**
This function processes the results of changes in configuration.
- @param This Points to the EFI_HII_CONFIG_ACCESS_PROTOCOL.
- @param Request A null-terminated Unicode string in <ConfigRequest> format.
- @param Progress A pointer to a string filled in with the offset of the most
- recent '&' before the first failing name/value pair (or the
- beginning of the string if the failure is in the first
- name/value pair) or the terminating NULL if all was successful.
+ @param This Points to the EFI_HII_CONFIG_ACCESS_PROTOCOL.
+ @param Configuration A null-terminated Unicode string in <ConfigRequest> format.
+ @param Progress A pointer to a string filled in with the offset of the most
+ recent '&' before the first failing name/value pair (or the
+ beginning of the string if the failure is in the first
+ name/value pair) or the terminating NULL if all was successful.
@retval EFI_SUCCESS The Results is processed successfully.
@retval EFI_INVALID_PARAMETER Configuration is NULL.
diff --git a/MdeModulePkg/Universal/PlatformDriverOverride/PlatOverMngr/PlatOverMngr.h b/MdeModulePkg/Universal/PlatformDriverOverride/PlatOverMngr/PlatOverMngr.h
index f1f4e1c..a7ce6db 100644
--- a/MdeModulePkg/Universal/PlatformDriverOverride/PlatOverMngr/PlatOverMngr.h
+++ b/MdeModulePkg/Universal/PlatformDriverOverride/PlatOverMngr/PlatOverMngr.h
@@ -134,15 +134,51 @@ typedef struct {
EFI_STRING_ID DescriptionToken;
} CFG_PROTOCOL_INVOKER_CHOICE;
+/**
+ This function allows a caller to extract the current configuration for one
+ or more named elements from the target driver.
+
+ @param This Points to the EFI_HII_CONFIG_ACCESS_PROTOCOL.
+ @param Request A null-terminated Unicode string in <ConfigRequest> format.
+ @param Progress On return, points to a character in the Request string.
+ Points to the string's null terminator if request was successful.
+ Points to the most recent '&' before the first failing name/value
+ pair (or the beginning of the string if the failure is in the
+ first name/value pair) if the request was not successful.
+ @param Results A null-terminated Unicode string in <ConfigAltResp> format which
+ has all values filled in for the names in the Request string.
+ String to be allocated by the called function.
+
+ @retval EFI_SUCCESS The Results is filled with the requested values.
+ @retval EFI_OUT_OF_RESOURCES Not enough memory to store the results.
+ @retval EFI_INVALID_PARAMETER Request is NULL, illegal syntax, or unknown name.
+ @retval EFI_NOT_FOUND Routing data doesn't match any storage in this driver.
+
+**/
EFI_STATUS
EFIAPI
PlatOverMngrExtractConfig (
- IN CONST EFI_HII_CONFIG_ACCESS_PROTOCOL *This,
+ IN CONST EFI_HII_CONFIG_ACCESS_PROTOCOL *This,
IN CONST EFI_STRING Request,
OUT EFI_STRING *Progress,
OUT EFI_STRING *Results
);
+/**
+ This function processes the results of changes in configuration.
+
+ @param This Points to the EFI_HII_CONFIG_ACCESS_PROTOCOL.
+ @param Configuration A null-terminated Unicode string in <ConfigRequest> format.
+ @param Progress A pointer to a string filled in with the offset of the most
+ recent '&' before the first failing name/value pair (or the
+ beginning of the string if the failure is in the first
+ name/value pair) or the terminating NULL if all was successful.
+
+ @retval EFI_SUCCESS The Results is processed successfully.
+ @retval EFI_INVALID_PARAMETER Configuration is NULL.
+ @retval EFI_NOT_FOUND Routing data doesn't match any storage in this driver.
+
+**/
EFI_STATUS
EFIAPI
PlatOverMngrRouteConfig (
@@ -151,6 +187,27 @@ PlatOverMngrRouteConfig (
OUT EFI_STRING *Progress
);
+/**
+ This is the function that is called to provide results data to the driver. This data
+ consists of a unique key which is used to identify what data is either being passed back
+ or being asked for.
+
+ @param This Points to the EFI_HII_CONFIG_ACCESS_PROTOCOL.
+ @param Action A null-terminated Unicode string in <ConfigRequest> format.
+ @param KeyValue A unique Goto OpCode callback value which record user's selection.
+ 0x100 <= KeyValue <0x500 : user select a controller item in the first page;
+ KeyValue == 0x1234 : user select 'Refresh' in first page, or user select 'Go to Previous Menu' in second page
+ KeyValue == 0x1235 : user select 'Pci device filter' in first page
+ KeyValue == 0x1500 : user select 'order ... priority' item in second page
+ KeyValue == 0x1800 : user select 'commint changes' in third page
+ KeyValue == 0x2000 : user select 'Go to Previous Menu' in third page
+ @param Type The type of value for the question.
+ @param Value A pointer to the data being sent to the original exporting driver.
+ @param ActionRequest On return, points to the action requested by the callback function.
+
+ @retval EFI_SUCCESS Always returned.
+
+**/
EFI_STATUS
EFIAPI
PlatOverMngrCallback (
@@ -162,14 +219,32 @@ PlatOverMngrCallback (
OUT EFI_BROWSER_ACTION_REQUEST *ActionRequest
);
+/**
+ Get the image name
+
+ @param Image Image to search.
+
+ @retval !NULL Pointer into the image name if the image name is found,
+ @retval NULL Pointer to NULL if the image name is not found.
+
+**/
CHAR16 *
GetImageName (
- IN EFI_LOADED_IMAGE_PROTOCOL *Image
+ IN EFI_LOADED_IMAGE_PROTOCOL *Image
);
-CHAR16 *
+/**
+ Get the description string by device path.
+
+ @param DevPath The input device path.
+
+ @retval !NULL The description string retured.
+ @retval NULL The description string cannot be found.
+
+**/
+CHAR16 *
DevicePathToStr (
- EFI_DEVICE_PATH_PROTOCOL *DevPath
+ IN EFI_DEVICE_PATH_PROTOCOL *DevPath
);
#endif
diff --git a/MdeModulePkg/Universal/PlatformDriverOverride/PlatformDriOverrideDxe/PlatformDriOverride.c b/MdeModulePkg/Universal/PlatformDriverOverride/PlatformDriOverrideDxe/PlatformDriOverride.c
index 7503272..fd3aee9 100644
--- a/MdeModulePkg/Universal/PlatformDriverOverride/PlatformDriOverrideDxe/PlatformDriOverride.c
+++ b/MdeModulePkg/Universal/PlatformDriverOverride/PlatformDriOverrideDxe/PlatformDriOverride.c
@@ -31,25 +31,23 @@ LIST_ENTRY mMappingDataBase = INITIALIZE_LIST_HEAD_VARIABLE (mMappingDataBa
BOOLEAN mEnvironmentVariableRead = FALSE;
EFI_HANDLE mCallerImageHandle;
+/**
+ Platform Driver Override driver entry point, install the Platform Driver Override Protocol
+
+ @param ImageHandle ImageHandle of the loaded driver.
+ @param SystemTable Pointer to the EFI System Table.
+ @retval EFI_SUCCESS The DXE Driver, DXE Runtime Driver, DXE SMM Driver,
+ or UEFI Driver exited normally.
+ @retval EFI_INCOMPATIBLE_VERSION _gUefiDriverRevision is greater than SystemTable->Hdr.Revision.
+ @retval Other Return value from ProcessModuleEntryPointList().
+**/
EFI_STATUS
EFIAPI
PlatformDriverOverrideEntry (
IN EFI_HANDLE ImageHandle,
IN EFI_SYSTEM_TABLE *SystemTable
)
-/*++
-
-Routine Description:
- Platform Driver Override driver entry point, install the Platform Driver Override Protocol
-
-Arguments:
- (Standard EFI Image entry - EFI_IMAGE_ENTRY_POINT)
-
-Returns:
- EFI_STATUS
-
---*/
{
mEnvironmentVariableRead = FALSE;
mCallerImageHandle = ImageHandle;
@@ -145,11 +143,16 @@ GetDriver (
/**
- For the use of the ControllerHandle parameter in the GetDriverPath() and DriverLoaded() APIs
- makes those APIs very difficult to use, so not support.
-
-
+ For the use of the ControllerHandle parameter in the GetDriverPath()
+ But this API is very difficult to use, so not support.
+ @param This A pointer to the
+ EFI_PLATFORM_DRIVER_OVERRIDE_PROTOCOL instance.
+ @param ControllerHandle The device handle of the controller to check if a
+ driver override exists.
+ @param DriverImagePath The device path for this Image.
+
+ @retval EFI_UNSUPPORTED
**/
EFI_STATUS
EFIAPI
@@ -164,11 +167,21 @@ GetDriverPath (
/**
- For the use of the ControllerHandle parameter in the GetDriverPath() and DriverLoaded() APIs
- makes those APIs very difficult to use, so not support.
-
-
+ For the use of the ControllerHandle parameter in the DriverLoaded()
+ But this API is very difficult to use, so not support.
+ @param This A pointer to the
+ EFI_PLATFORM_DRIVER_OVERRIDE_PROTOCOL instance.
+ @param ControllerHandle The device handle of the controller to check if a
+ driver override exists.
+ @param DriverImagePath The device path for this Image.
+ @param DriverImageHandle On input, a pointer to the previous driver image
+ handle returned by GetDriver(). On output, a
+ pointer to the next driver image handle. Passing
+ in a NULL, will return the first driver image
+ handle for ControllerHandle.
+
+ @retval EFI_UNSUPPORTED
**/
EFI_STATUS
EFIAPI
diff --git a/MdeModulePkg/Universal/PlatformDriverOverride/PlatformDriOverrideDxe/PlatformDriOverride.h b/MdeModulePkg/Universal/PlatformDriverOverride/PlatformDriOverrideDxe/PlatformDriOverride.h
index 2fa2ae8..31f2077 100644
--- a/MdeModulePkg/Universal/PlatformDriverOverride/PlatformDriOverrideDxe/PlatformDriOverride.h
+++ b/MdeModulePkg/Universal/PlatformDriverOverride/PlatformDriOverrideDxe/PlatformDriOverride.h
@@ -18,8 +18,8 @@ Abstract:
**/
-#ifndef PLATFORM_DRI_OVERRIDE_H_
-#define PLATFORM_DRI_OVERRIDE_H_
+#ifndef _PLATFORM_DRI_OVERRIDE_H_
+#define _PLATFORM_DRI_OVERRIDE_H_
#include <Uefi.h>
@@ -28,6 +28,29 @@ Abstract:
#include <Library/BaseLib.h>
#include <Library/PlatDriOverLib.h>
+/**
+ Retrieves the image handle of the platform override driver for a controller in the system.
+
+ @param This A pointer to the
+ EFI_PLATFORM_DRIVER_OVERRIDE_PROTOCOL instance.
+ @param ControllerHandle The device handle of the controller to check if a
+ driver override exists.
+ @param DriverImageHandle On input, a pointer to the previous driver image
+ handle returned by GetDriver(). On output, a
+ pointer to the next driver image handle. Passing
+ in a NULL, will return the first driver image
+ handle for ControllerHandle.
+
+ @retval EFI_SUCCESS The driver override for ControllerHandle was
+ returned in DriverImageHandle.
+ @retval EFI_NOT_FOUND A driver override for ControllerHandle was not
+ found.
+ @retval EFI_INVALID_PARAMETER The handle specified by ControllerHandle is not a
+ valid handle. DriverImageHandle is not a handle
+ that was returned on a previous call to
+ GetDriver().
+
+**/
EFI_STATUS
EFIAPI
GetDriver (
@@ -36,6 +59,18 @@ GetDriver (
IN OUT EFI_HANDLE * DriverImageHandle
);
+/**
+ For the use of the ControllerHandle parameter in the GetDriverPath()
+ But this API is very difficult to use, so not support.
+
+ @param This A pointer to the
+ EFI_PLATFORM_DRIVER_OVERRIDE_PROTOCOL instance.
+ @param ControllerHandle The device handle of the controller to check if a
+ driver override exists.
+ @param DriverImagePath The device path for this Image.
+
+ @retval EFI_UNSUPPORTED
+**/
EFI_STATUS
EFIAPI
GetDriverPath (
@@ -44,6 +79,23 @@ GetDriverPath (
IN OUT EFI_DEVICE_PATH_PROTOCOL **DriverImagePath
);
+/**
+ For the use of the ControllerHandle parameter in the DriverLoaded()
+ But this API is very difficult to use, so not support.
+
+ @param This A pointer to the
+ EFI_PLATFORM_DRIVER_OVERRIDE_PROTOCOL instance.
+ @param ControllerHandle The device handle of the controller to check if a
+ driver override exists.
+ @param DriverImagePath The device path for this Image.
+ @param DriverImageHandle On input, a pointer to the previous driver image
+ handle returned by GetDriver(). On output, a
+ pointer to the next driver image handle. Passing
+ in a NULL, will return the first driver image
+ handle for ControllerHandle.
+
+ @retval EFI_UNSUPPORTED
+**/
EFI_STATUS
EFIAPI
DriverLoaded (