diff options
author | Kyösti Mälkki <kyosti.malkki@gmail.com> | 2016-04-18 14:42:12 +0300 |
---|---|---|
committer | Kyösti Mälkki <kyosti.malkki@gmail.com> | 2016-05-12 11:38:18 +0200 |
commit | d867b7d87c5bd86244966ed93881a1b71128dd1c (patch) | |
tree | 5b49fe5b8f92a7469ebdf0e98069e62ece003d8e /src/vendorcode/amd/agesa/f16kb/Lib/amdlib.c | |
parent | 898c47c5dc21d220a00adf4ad88b6c64b6e2e2fa (diff) | |
download | coreboot-d867b7d87c5bd86244966ed93881a1b71128dd1c.tar.xz |
AGESA vendorcode: Drop alternate image dispatcher
Not used as we link AGESA into same romstage and ramstage ELF.
Change-Id: Ia427b9c0cc88b870de75df14bba4ca337a28adff
Signed-off-by: Kyösti Mälkki <kyosti.malkki@gmail.com>
Reviewed-on: https://review.coreboot.org/14395
Tested-by: build bot (Jenkins)
Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
Diffstat (limited to 'src/vendorcode/amd/agesa/f16kb/Lib/amdlib.c')
-rw-r--r-- | src/vendorcode/amd/agesa/f16kb/Lib/amdlib.c | 86 |
1 files changed, 0 insertions, 86 deletions
diff --git a/src/vendorcode/amd/agesa/f16kb/Lib/amdlib.c b/src/vendorcode/amd/agesa/f16kb/Lib/amdlib.c index 75354f9cf1..5243f23b0b 100644 --- a/src/vendorcode/amd/agesa/f16kb/Lib/amdlib.c +++ b/src/vendorcode/amd/agesa/f16kb/Lib/amdlib.c @@ -1164,92 +1164,6 @@ LibAmdMemCopy ( /*---------------------------------------------------------------------------------------*/ /** - * Verify checksum of binary image (B1/B2/B3) - * - * - * @param[in] ImagePtr Pointer to image start - * @retval TRUE Checksum valid - * @retval FALSE Checksum invalid - */ -BOOLEAN -LibAmdVerifyImageChecksum ( - IN CONST VOID *ImagePtr - ) -{ - // Assume ImagePtr points to the binary start ($AMD) - // Checksum is on an even boundary in AMD_IMAGE_HEADER - - UINT16 Sum; - UINT32 i; - - Sum = 0; - - i = ((AMD_IMAGE_HEADER*) ImagePtr)->ImageSize; - - while (i > 1) { - Sum = Sum + *((UINT16 *)ImagePtr); - ImagePtr = (VOID *) ((UINT8 *)ImagePtr + 2); - i = i - 2; - } - if (i > 0) { - Sum = Sum + *((UINT8 *) ImagePtr); - } - - return (Sum == 0)?TRUE:FALSE; -} - -/*---------------------------------------------------------------------------------------*/ -/** - * Locate AMD binary image that contain specific module - * - * - * @param[in] StartAddress Pointer to start range - * @param[in] EndAddress Pointer to end range - * @param[in] Alignment Image address alignment - * @param[in] ModuleSignature Module signature. - * @retval NULL if image not found - * @retval pointer to image header - */ -CONST VOID * -LibAmdLocateImage ( - IN CONST VOID *StartAddress, - IN CONST VOID *EndAddress, - IN UINT32 Alignment, - IN CONST CHAR8 ModuleSignature[8] - ) - -{ - CONST UINT8 *CurrentPtr; - AMD_MODULE_HEADER *ModuleHeaderPtr; - CONST UINT64 *SearchStr; - CONST UINT64 *InputStr; - - CurrentPtr = StartAddress; - InputStr = (UINT64 *)ModuleSignature; - - // Search from start to end incrementing by alignment - while ((CurrentPtr >= (UINT8 *) StartAddress) && (CurrentPtr < (UINT8 *) EndAddress)) { - // First find a binary image - if (*((UINT32 *) CurrentPtr) == IMAGE_SIGNATURE) { - if (LibAmdVerifyImageChecksum (CurrentPtr)) { - // If we have a valid image, search module linked list for a match - ModuleHeaderPtr = (AMD_MODULE_HEADER*) ((UINT8 *)CurrentPtr + ((AMD_IMAGE_HEADER *) CurrentPtr)->ModuleInfoOffset); - while (ModuleHeaderPtr != NULL) { - SearchStr = (UINT64 *)&ModuleHeaderPtr->ModuleIdentifier; - if (*InputStr == *SearchStr) { - return CurrentPtr; - } - ModuleHeaderPtr = (AMD_MODULE_HEADER *)ModuleHeaderPtr->NextBlock; - } - } - } - CurrentPtr += Alignment; - } - return NULL; -} - -/*---------------------------------------------------------------------------------------*/ -/** * Returns the package type mask for the processor * * |