Bruce Griffith (Bruce.Griffith@se-eng.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/3837
-gerrit
commit 7e1b725b161b59a2e0bffe30b97031af75bd287a Author: Bruce Griffith bruce.griffith@se-eng.com Date: Mon Jul 29 02:34:26 2013 -0600
AMD Kabini: Add "const" modifier to AGESA function parameters
Add CONST modifiers to read-only pass-by-reference function parameters in AGESA. This allows the use of "const" modifiers on the declaration of lookup tables that are pass-by-reference. These will be used to identify tables that are copied onto the HEAP but don't need to be.
This same change was made for AMD Trinity APUs (Family15tn) [1].
[1] 283ba78 AGESA: Add "const" modifier to function parameters
Change-Id: I2bdd9fc5e027e938de9df0f923b95da934bb48dc Signed-off-by: Bruce Griffith Bruce.Griffith@se-eng.com Reviewed-by: Dave Frodin dave.frodin@se-eng.com Tested-by: Bruce Griffith bruce.griffith@se-eng.com --- src/vendorcode/amd/agesa/f16kb/AGESA.h | 4 +- .../amd/agesa/f16kb/Legacy/Proc/Dispatcher.c | 2 +- src/vendorcode/amd/agesa/f16kb/Lib/amdlib.c | 60 +++++++++++----------- src/vendorcode/amd/agesa/f16kb/Lib/amdlib.h | 44 ++++++++-------- .../GNB/Modules/GnbPcieConfig/PcieInputParser.c | 18 +++---- .../GNB/Modules/GnbPcieConfig/PcieInputParser.h | 6 +-- 6 files changed, 67 insertions(+), 67 deletions(-)
diff --git a/src/vendorcode/amd/agesa/f16kb/AGESA.h b/src/vendorcode/amd/agesa/f16kb/AGESA.h index 5c40110..34dc3b6 100644 --- a/src/vendorcode/amd/agesa/f16kb/AGESA.h +++ b/src/vendorcode/amd/agesa/f16kb/AGESA.h @@ -948,8 +948,8 @@ typedef struct { * @li @b Bit31 - last descriptor in topology */ IN UINT32 SocketId; ///< Socket Id - IN PCIe_PORT_DESCRIPTOR *PciePortList; ///< Pointer to array of PCIe port descriptors or NULL (Last element of array must be terminated with DESCRIPTOR_TERMINATE_LIST). - IN PCIe_DDI_DESCRIPTOR *DdiLinkList; ///< Pointer to array DDI link descriptors (Last element of array must be terminated with DESCRIPTOR_TERMINATE_LIST). + IN CONST PCIe_PORT_DESCRIPTOR *PciePortList; ///< Pointer to array of PCIe port descriptors or NULL (Last element of array must be terminated with DESCRIPTOR_TERMINATE_LIST). + IN CONST PCIe_DDI_DESCRIPTOR *DdiLinkList; ///< Pointer to array DDI link descriptors (Last element of array must be terminated with DESCRIPTOR_TERMINATE_LIST). IN VOID *Reserved; ///< Reserved for future use } PCIe_COMPLEX_DESCRIPTOR;
diff --git a/src/vendorcode/amd/agesa/f16kb/Legacy/Proc/Dispatcher.c b/src/vendorcode/amd/agesa/f16kb/Legacy/Proc/Dispatcher.c index 6cb789e..782a523 100644 --- a/src/vendorcode/amd/agesa/f16kb/Legacy/Proc/Dispatcher.c +++ b/src/vendorcode/amd/agesa/f16kb/Legacy/Proc/Dispatcher.c @@ -84,7 +84,7 @@ AmdAgesaDispatcher ( DISPATCH_TABLE *Entry; UINT32 ImageStart; UINT32 ImageEnd; - AMD_IMAGE_HEADER* AltImagePtr; + CONST AMD_IMAGE_HEADER* AltImagePtr;
Status = AGESA_UNSUPPORTED; ImageEntry = NULL; diff --git a/src/vendorcode/amd/agesa/f16kb/Lib/amdlib.c b/src/vendorcode/amd/agesa/f16kb/Lib/amdlib.c index 515f999..67078a3 100644 --- a/src/vendorcode/amd/agesa/f16kb/Lib/amdlib.c +++ b/src/vendorcode/amd/agesa/f16kb/Lib/amdlib.c @@ -84,8 +84,8 @@ VOID STATIC LibAmdGetDataFromPtr ( IN ACCESS_WIDTH AccessWidth, - IN VOID *Data, - IN VOID *DataMask, + IN CONST VOID *Data, + IN CONST VOID *DataMask, OUT UINT32 *TemData, OUT UINT32 *TempDataMask ); @@ -522,7 +522,7 @@ VOID LibAmdIoWrite ( IN ACCESS_WIDTH AccessWidth, IN UINT16 IoAddress, - IN VOID *Value, + IN CONST VOID *Value, IN OUT AMD_CONFIG_PARAMS *StdHeader ) { @@ -560,8 +560,8 @@ VOID LibAmdIoRMW ( IN ACCESS_WIDTH AccessWidth, IN UINT16 IoAddress, - IN VOID *Data, - IN VOID *DataMask, + IN CONST VOID *Data, + IN CONST VOID *DataMask, IN OUT AMD_CONFIG_PARAMS *StdHeader ) { @@ -592,8 +592,8 @@ VOID LibAmdIoPoll ( IN ACCESS_WIDTH AccessWidth, IN UINT16 IoAddress, - IN VOID *Data, - IN VOID *DataMask, + IN CONST VOID *Data, + IN CONST VOID *DataMask, IN UINT64 Delay, IN OUT AMD_CONFIG_PARAMS *StdHeader ) @@ -659,7 +659,7 @@ VOID LibAmdMemWrite ( IN ACCESS_WIDTH AccessWidth, IN UINT64 MemAddress, - IN VOID *Value, + IN CONST VOID *Value, IN OUT AMD_CONFIG_PARAMS *StdHeader ) { @@ -697,8 +697,8 @@ VOID LibAmdMemRMW ( IN ACCESS_WIDTH AccessWidth, IN UINT64 MemAddress, - IN VOID *Data, - IN VOID *DataMask, + IN CONST VOID *Data, + IN CONST VOID *DataMask, IN OUT AMD_CONFIG_PARAMS *StdHeader ) { @@ -729,8 +729,8 @@ VOID LibAmdMemPoll ( IN ACCESS_WIDTH AccessWidth, IN UINT64 MemAddress, - IN VOID *Data, - IN VOID *DataMask, + IN CONST VOID *Data, + IN CONST VOID *DataMask, IN UINT64 Delay, IN OUT AMD_CONFIG_PARAMS *StdHeader ) @@ -810,7 +810,7 @@ VOID LibAmdPciWrite ( IN ACCESS_WIDTH AccessWidth, IN PCI_ADDR PciAddress, - IN VOID *Value, + IN CONST VOID *Value, IN OUT AMD_CONFIG_PARAMS *StdHeader ) { @@ -866,8 +866,8 @@ VOID LibAmdPciRMW ( IN ACCESS_WIDTH AccessWidth, IN PCI_ADDR PciAddress, - IN VOID *Data, - IN VOID *DataMask, + IN CONST VOID *Data, + IN CONST VOID *DataMask, IN OUT AMD_CONFIG_PARAMS *StdHeader ) { @@ -898,8 +898,8 @@ VOID LibAmdPciPoll ( IN ACCESS_WIDTH AccessWidth, IN PCI_ADDR PciAddress, - IN VOID *Data, - IN VOID *DataMask, + IN CONST VOID *Data, + IN CONST VOID *DataMask, IN UINT64 Delay, IN OUT AMD_CONFIG_PARAMS *StdHeader ) @@ -998,7 +998,7 @@ LibAmdPciWriteBits ( IN PCI_ADDR Address, IN UINT8 Highbit, IN UINT8 Lowbit, - IN UINT32 *Value, + IN CONST UINT32 *Value, IN AMD_CONFIG_PARAMS *StdHeader ) { @@ -1134,13 +1134,13 @@ LibAmdMemFill ( VOID LibAmdMemCopy ( IN VOID *Destination, - IN VOID *Source, + IN CONST VOID *Source, IN UINTN CopyLength, IN OUT AMD_CONFIG_PARAMS *StdHeader ) { UINT8 *Dest; - UINT8 *SourcePtr; + CONST UINT8 *SourcePtr; ASSERT (StdHeader != NULL); Dest = Destination; SourcePtr = Source; @@ -1160,7 +1160,7 @@ LibAmdMemCopy ( */ BOOLEAN LibAmdVerifyImageChecksum ( - IN VOID *ImagePtr + IN CONST VOID *ImagePtr ) { // Assume ImagePtr points to the binary start ($AMD) @@ -1197,19 +1197,19 @@ LibAmdVerifyImageChecksum ( * @retval NULL if image not found * @retval pointer to image header */ -VOID * +CONST VOID * LibAmdLocateImage ( - IN VOID *StartAddress, - IN VOID *EndAddress, + IN CONST VOID *StartAddress, + IN CONST VOID *EndAddress, IN UINT32 Alignment, - IN CHAR8 ModuleSignature[8] + IN CONST CHAR8 ModuleSignature[8] )
{ - UINT8 *CurrentPtr; + CONST UINT8 *CurrentPtr; AMD_MODULE_HEADER *ModuleHeaderPtr; - UINT64 *SearchStr; - UINT64 *InputStr; + CONST UINT64 *SearchStr; + CONST UINT64 *InputStr;
CurrentPtr = StartAddress; InputStr = (UINT64 *)ModuleSignature; @@ -1273,8 +1273,8 @@ VOID STATIC LibAmdGetDataFromPtr ( IN ACCESS_WIDTH AccessWidth, - IN VOID *Data, - IN VOID *DataMask, + IN CONST VOID *Data, + IN CONST VOID *DataMask, OUT UINT32 *TemData, OUT UINT32 *TempDataMask ) diff --git a/src/vendorcode/amd/agesa/f16kb/Lib/amdlib.h b/src/vendorcode/amd/agesa/f16kb/Lib/amdlib.h index 7ddcbd0..2da1532 100644 --- a/src/vendorcode/amd/agesa/f16kb/Lib/amdlib.h +++ b/src/vendorcode/amd/agesa/f16kb/Lib/amdlib.h @@ -155,7 +155,7 @@ VOID LibAmdIoWrite ( IN ACCESS_WIDTH AccessWidth, IN UINT16 IoAddress, - IN VOID *Value, + IN CONST VOID *Value, IN OUT AMD_CONFIG_PARAMS *StdHeader );
@@ -163,8 +163,8 @@ VOID LibAmdIoRMW ( IN ACCESS_WIDTH AccessWidth, IN UINT16 IoAddress, - IN VOID *Data, - IN VOID *DataMask, + IN CONST VOID *Data, + IN CONST VOID *DataMask, IN OUT AMD_CONFIG_PARAMS *StdHeader );
@@ -172,8 +172,8 @@ VOID LibAmdIoPoll ( IN ACCESS_WIDTH AccessWidth, IN UINT16 IoAddress, - IN VOID *Data, - IN VOID *DataMask, + IN CONST VOID *Data, + IN CONST VOID *DataMask, IN UINT64 Delay, IN OUT AMD_CONFIG_PARAMS *StdHeader ); @@ -191,7 +191,7 @@ VOID LibAmdMemWrite ( IN ACCESS_WIDTH AccessWidth, IN UINT64 MemAddress, - IN VOID *Value, + IN CONST VOID *Value, IN OUT AMD_CONFIG_PARAMS *StdHeader );
@@ -199,8 +199,8 @@ VOID LibAmdMemRMW ( IN ACCESS_WIDTH AccessWidth, IN UINT64 MemAddress, - IN VOID *Data, - IN VOID *DataMask, + IN CONST VOID *Data, + IN CONST VOID *DataMask, IN OUT AMD_CONFIG_PARAMS *StdHeader );
@@ -208,8 +208,8 @@ VOID LibAmdMemPoll ( IN ACCESS_WIDTH AccessWidth, IN UINT64 MemAddress, - IN VOID *Data, - IN VOID *DataMask, + IN CONST VOID *Data, + IN CONST VOID *DataMask, IN UINT64 Delay, IN OUT AMD_CONFIG_PARAMS *StdHeader ); @@ -227,7 +227,7 @@ VOID LibAmdPciWrite ( IN ACCESS_WIDTH AccessWidth, IN PCI_ADDR PciAddress, - IN VOID *Value, + IN CONST VOID *Value, IN OUT AMD_CONFIG_PARAMS *StdHeader );
@@ -235,8 +235,8 @@ VOID LibAmdPciRMW ( IN ACCESS_WIDTH AccessWidth, IN PCI_ADDR PciAddress, - IN VOID *Data, - IN VOID *DataMask, + IN CONST VOID *Data, + IN CONST VOID *DataMask, IN OUT AMD_CONFIG_PARAMS *StdHeader );
@@ -244,8 +244,8 @@ VOID LibAmdPciPoll ( IN ACCESS_WIDTH AccessWidth, IN PCI_ADDR PciAddress, - IN VOID *Data, - IN VOID *DataMask, + IN CONST VOID *Data, + IN CONST VOID *DataMask, IN UINT64 Delay, IN OUT AMD_CONFIG_PARAMS *StdHeader ); @@ -264,7 +264,7 @@ LibAmdPciWriteBits ( IN PCI_ADDR Address, IN UINT8 Highbit, IN UINT8 Lowbit, - IN UINT32 *Value, + IN CONST UINT32 *Value, IN AMD_CONFIG_PARAMS *StdHeader );
@@ -294,17 +294,17 @@ LibAmdMemFill ( VOID LibAmdMemCopy ( IN VOID *Destination, - IN VOID *Source, + IN CONST VOID *Source, IN UINTN CopyLength, IN OUT AMD_CONFIG_PARAMS *StdHeader );
-VOID * +CONST VOID * LibAmdLocateImage ( - IN VOID *StartAddress, - IN VOID *EndAddress, + IN CONST VOID *StartAddress, + IN CONST VOID *EndAddress, IN UINT32 Alignment, - IN CHAR8 ModuleSignature[8] + IN CONST CHAR8 ModuleSignature[8] );
UINT32 @@ -314,7 +314,7 @@ LibAmdGetPackageType (
BOOLEAN LibAmdVerifyImageChecksum ( - IN VOID *ImagePtr + IN CONST VOID *ImagePtr );
UINT8 diff --git a/src/vendorcode/amd/agesa/f16kb/Proc/GNB/Modules/GnbPcieConfig/PcieInputParser.c b/src/vendorcode/amd/agesa/f16kb/Proc/GNB/Modules/GnbPcieConfig/PcieInputParser.c index 8a174b5..274dabb 100644 --- a/src/vendorcode/amd/agesa/f16kb/Proc/GNB/Modules/GnbPcieConfig/PcieInputParser.c +++ b/src/vendorcode/amd/agesa/f16kb/Proc/GNB/Modules/GnbPcieConfig/PcieInputParser.c @@ -90,17 +90,17 @@ PcieInputParserGetEngineDescriptor (
UINTN PcieInputParserGetNumberOfEngines ( - IN PCIe_COMPLEX_DESCRIPTOR *Complex + IN CONST PCIe_COMPLEX_DESCRIPTOR *Complex );
UINTN PcieInputParserGetNumberOfComplexes ( - IN PCIe_COMPLEX_DESCRIPTOR *ComplexList + IN CONST PCIe_COMPLEX_DESCRIPTOR *ComplexList );
UINTN PcieInputParserGetLengthOfPcieEnginesList ( - IN PCIe_COMPLEX_DESCRIPTOR *Complex + IN CONST PCIe_COMPLEX_DESCRIPTOR *Complex );
/*----------------------------------------------------------------------------------------*/ @@ -115,7 +115,7 @@ PcieInputParserGetLengthOfPcieEnginesList ( */ UINTN PcieInputParserGetNumberOfComplexes ( - IN PCIe_COMPLEX_DESCRIPTOR *ComplexList + IN CONST PCIe_COMPLEX_DESCRIPTOR *ComplexList ) { UINTN Result; @@ -138,11 +138,11 @@ PcieInputParserGetNumberOfComplexes ( */ UINTN PcieInputParserGetLengthOfPcieEnginesList ( - IN PCIe_COMPLEX_DESCRIPTOR *Complex + IN CONST PCIe_COMPLEX_DESCRIPTOR *Complex ) { UINTN Result; - PCIe_PORT_DESCRIPTOR *PciePortList; + CONST PCIe_PORT_DESCRIPTOR *PciePortList; Result = 0; PciePortList = Complex->PciePortList; while (PciePortList != NULL) { @@ -163,11 +163,11 @@ PcieInputParserGetLengthOfPcieEnginesList ( */ STATIC UINTN PcieInputParserGetLengthOfDdiEnginesList ( - IN PCIe_COMPLEX_DESCRIPTOR *Complex + IN CONST PCIe_COMPLEX_DESCRIPTOR *Complex ) { UINTN Result; - PCIe_DDI_DESCRIPTOR *DdiLinkList; + CONST PCIe_DDI_DESCRIPTOR *DdiLinkList; Result = 0; DdiLinkList = Complex->DdiLinkList; while (DdiLinkList != NULL) { @@ -189,7 +189,7 @@ PcieInputParserGetLengthOfDdiEnginesList ( */ UINTN PcieInputParserGetNumberOfEngines ( - IN PCIe_COMPLEX_DESCRIPTOR *Complex + IN CONST PCIe_COMPLEX_DESCRIPTOR *Complex ) { UINTN Result; diff --git a/src/vendorcode/amd/agesa/f16kb/Proc/GNB/Modules/GnbPcieConfig/PcieInputParser.h b/src/vendorcode/amd/agesa/f16kb/Proc/GNB/Modules/GnbPcieConfig/PcieInputParser.h index 488c514..c050ec5 100644 --- a/src/vendorcode/amd/agesa/f16kb/Proc/GNB/Modules/GnbPcieConfig/PcieInputParser.h +++ b/src/vendorcode/amd/agesa/f16kb/Proc/GNB/Modules/GnbPcieConfig/PcieInputParser.h @@ -48,12 +48,12 @@
UINTN PcieInputParserGetNumberOfComplexes ( - IN PCIe_COMPLEX_DESCRIPTOR *ComplexList + IN CONST PCIe_COMPLEX_DESCRIPTOR *ComplexList );
UINTN PcieInputParserGetNumberOfEngines ( - IN PCIe_COMPLEX_DESCRIPTOR *Complex + IN CONST PCIe_COMPLEX_DESCRIPTOR *Complex );
@@ -77,7 +77,7 @@ PcieInputParserGetComplexDescriptorOfSocket (
UINTN PcieInputParserGetLengthOfPcieEnginesList ( - IN PCIe_COMPLEX_DESCRIPTOR *Complex + IN CONST PCIe_COMPLEX_DESCRIPTOR *Complex ); #endif