diff --git a/BeagleBoardPkg/Bds/Bds.inf b/BeagleBoardPkg/Bds/Bds.inf deleted file mode 100644 index 2b20a09549..0000000000 --- a/BeagleBoardPkg/Bds/Bds.inf +++ /dev/null @@ -1,65 +0,0 @@ - -#/** @file -# -# Component description file for Bds module -# -# Copyright (c) 2009, Apple Inc. 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 -# 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. -# -#**/ - -[Defines] - INF_VERSION = 0x00010005 - BASE_NAME = BeagleBoardBds - FILE_GUID = 934431fe-5745-402e-913d-17b4434eb0f3 - MODULE_TYPE = DXE_DRIVER - VERSION_STRING = 1.0 - - ENTRY_POINT = BdsInitialize - -[Sources.common] - BdsEntry.c - FirmwareVolume.c - -[Packages] - MdePkg/MdePkg.dec - EmbeddedPkg/EmbeddedPkg.dec - -[LibraryClasses] - DevicePathLib - BaseLib - HobLib - UefiRuntimeServicesTableLib - ReportStatusCodeLib - PerformanceLib - DxeServicesTableLib - MemoryAllocationLib - UefiLib - UefiBootServicesTableLib - BaseMemoryLib - DebugLib - PrintLib - UefiDriverEntryPoint - -[Guids] - - -[Protocols] - gEfiBdsArchProtocolGuid - gEfiSimpleTextInProtocolGuid - gEfiSimpleTextOutProtocolGuid - gEfiSerialIoProtocolGuid - gEfiDevicePathProtocolGuid - gEfiSimpleFileSystemProtocolGuid - gEfiUsbIoProtocolGuid - gEfiFirmwareVolume2ProtocolGuid - -[Depex] - TRUE diff --git a/BeagleBoardPkg/Bds/BdsEntry.c b/BeagleBoardPkg/Bds/BdsEntry.c deleted file mode 100644 index f2f1ae3983..0000000000 --- a/BeagleBoardPkg/Bds/BdsEntry.c +++ /dev/null @@ -1,242 +0,0 @@ -/** @file - The entry of the embedded BDS. This BDS does not follow the Boot Manager requirements - of the UEFI specification as it is designed to implement an embedded systmes - propriatary boot scheme. - - This template assume a DXE driver produces a SerialIo protocol not using the EFI - driver module and it will attempt to connect a console on top of this. - - Copyright (c) 2008 - 2009, Apple Inc. 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 - 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. - -**/ - -#include "BdsEntry.h" - - -BOOLEAN gConsolePresent = FALSE; - -EFI_BDS_ARCH_PROTOCOL gBdsProtocol = { - BdsEntry, -}; - - - - -/** - This function uses policy data from the platform to determine what operating - system or system utility should be loaded and invoked. This function call - also optionally make the use of user input to determine the operating system - or system utility to be loaded and invoked. When the DXE Core has dispatched - all the drivers on the dispatch queue, this function is called. This - function will attempt to connect the boot devices required to load and invoke - the selected operating system or system utility. During this process, - additional firmware volumes may be discovered that may contain addition DXE - drivers that can be dispatched by the DXE Core. If a boot device cannot be - fully connected, this function calls the DXE Service Dispatch() to allow the - DXE drivers from any newly discovered firmware volumes to be dispatched. - Then the boot device connection can be attempted again. If the same boot - device connection operation fails twice in a row, then that boot device has - failed, and should be skipped. This function should never return. - - @param This The EFI_BDS_ARCH_PROTOCOL instance. - - @return None. - -**/ -VOID -EFIAPI -BdsEntry ( - IN EFI_BDS_ARCH_PROTOCOL *This - ) -{ - EFI_STATUS Status; - UINTN NoHandles; - EFI_HANDLE *Buffer; - EFI_HANDLE FvHandle; - EFI_HANDLE ImageHandle; - EFI_HANDLE UsbDeviceHandle; - EFI_GUID NameGuid; - UINTN Size; - UINTN HandleCount; - UINTN OldHandleCount; - EFI_HANDLE *HandleBuffer; - UINTN Index; - EFI_DEVICE_PATH_PROTOCOL *LoadImageDevicePath; - EFI_DEVICE_PATH_PROTOCOL *FileSystemDevicePath; - - PERF_END (NULL, "DXE", NULL, 0); - PERF_START (NULL, "BDS", NULL, 0); - - - // - // Now do the EFI stuff - // - Size = 0x100; - gST->FirmwareVendor = AllocateRuntimePool (Size); - ASSERT (gST->FirmwareVendor != NULL); - - UnicodeSPrint (gST->FirmwareVendor, Size, L"BeagleBoard EFI %a %a", __DATE__, __TIME__); - - // - // Now we need to setup the EFI System Table with information about the console devices. - // This code is normally in the console spliter driver on platforms that support multiple - // consoles at the same time - // - Status = gBS->LocateHandleBuffer (ByProtocol, &gEfiSimpleTextOutProtocolGuid, NULL, &NoHandles, &Buffer); - if (!EFI_ERROR (Status)) { - // Use the first SimpleTextOut we find and update the EFI System Table - gST->ConsoleOutHandle = Buffer[0]; - gST->StandardErrorHandle = Buffer[0]; - Status = gBS->HandleProtocol (Buffer[0], &gEfiSimpleTextOutProtocolGuid, (VOID **)&gST->ConOut); - ASSERT_EFI_ERROR (Status); - - gST->StdErr = gST->ConOut; - - gST->ConOut->OutputString (gST->ConOut, L"BDS: Console Started!!!!\n\r"); - FreePool (Buffer); - - gConsolePresent = TRUE; - } - - - Status = gBS->LocateHandleBuffer (ByProtocol, &gEfiSimpleTextInProtocolGuid, NULL, &NoHandles, &Buffer); - if (!EFI_ERROR (Status)) { - // Use the first SimpleTextIn we find and update the EFI System Table - gST->ConsoleInHandle = Buffer[0]; - Status = gBS->HandleProtocol (Buffer[0], &gEfiSimpleTextInProtocolGuid, (VOID **)&gST->ConIn); - ASSERT_EFI_ERROR (Status); - - FreePool (Buffer); - } - - // - // We now have EFI Consoles up and running. Print () will work now. DEBUG () and ASSERT () worked - // prior to this point as they were configured to use a more primative output scheme. - // - - // - //Perform Connect - // - HandleCount = 0; - while (1) { - OldHandleCount = HandleCount; - Status = gBS->LocateHandleBuffer ( - AllHandles, - NULL, - NULL, - &HandleCount, - &HandleBuffer - ); - if (EFI_ERROR (Status)) { - break; - } - - if (HandleCount == OldHandleCount) { - break; - } - - for (Index = 0; Index < HandleCount; Index++) { - gBS->ConnectController (HandleBuffer[Index], NULL, NULL, TRUE); - } - } - - EfiSignalEventReadyToBoot (); - - //Locate handles for SimpleFileSystem protocol - Status = gBS->LocateHandleBuffer ( - ByProtocol, - &gEfiSimpleFileSystemProtocolGuid, - NULL, - &HandleCount, - &HandleBuffer - ); - if (!EFI_ERROR(Status)) { - for (Index = 0; Index < HandleCount; Index++) { - //Get the device path - FileSystemDevicePath = DevicePathFromHandle(HandleBuffer[Index]); - if (FileSystemDevicePath == NULL) { - continue; - } - - //Check if UsbIo is on any handles in the device path. - Status = gBS->LocateDevicePath(&gEfiUsbIoProtocolGuid, &FileSystemDevicePath, &UsbDeviceHandle); - if (EFI_ERROR(Status)) { - continue; - } - - //Check if Usb stick has a magic EBL file. - LoadImageDevicePath = FileDevicePath(HandleBuffer[Index], L"Ebl.efi"); - Status = gBS->LoadImage (TRUE, gImageHandle, LoadImageDevicePath, NULL, 0, &ImageHandle); - if (EFI_ERROR(Status)) { - continue; - } - - //Boot to Shell on USB stick. - Status = gBS->StartImage (ImageHandle, NULL, NULL); - if (EFI_ERROR(Status)) { - continue; - } - } - } - - // - // Normal UEFI behavior is to process Globally Defined Variables as defined in Chapter 3 - // (Boot Manager) of the UEFI specification. For this embedded system we don't do this. - // - - // - // Search all the FVs for an application with a UI Section of Ebl. A .FDF file can be used - // to control the names of UI sections in an FV. - // - Status = FindApplicationMatchingUiSection (L"Ebl", &FvHandle, &NameGuid); - if (!EFI_ERROR (Status)) { - - //Boot to Shell. - Status = LoadPeCoffSectionFromFv (FvHandle, &NameGuid); - - if (EFI_ERROR(Status)) { - DEBUG((EFI_D_ERROR, "Boot from Shell failed. Status: %r\n", Status)); - } - } - - // - // EFI does not define the behaviour if all boot attemps fail and the last one returns. - // So we make a policy choice to reset the system since this BDS does not have a UI. - // - gRT->ResetSystem (EfiResetShutdown, Status, 0, NULL); - - return ; -} - - -EFI_STATUS -EFIAPI -BdsInitialize ( - IN EFI_HANDLE ImageHandle, - IN EFI_SYSTEM_TABLE *SystemTable - ) -{ - EFI_STATUS Status; - - // - // Install protocol interface - // - Status = gBS->InstallMultipleProtocolInterfaces ( - &ImageHandle, - &gEfiBdsArchProtocolGuid, &gBdsProtocol, - NULL - ); - ASSERT_EFI_ERROR (Status); - - return Status; -} - - diff --git a/BeagleBoardPkg/Bds/BdsEntry.h b/BeagleBoardPkg/Bds/BdsEntry.h deleted file mode 100644 index 646f7b276d..0000000000 --- a/BeagleBoardPkg/Bds/BdsEntry.h +++ /dev/null @@ -1,66 +0,0 @@ -/** @file - - Copyright (c) 2008 - 2009, Apple Inc. 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 - 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. - -**/ - -#ifndef __BDS_ENTRY_H__ -#define __BDS_ENTRY_H__ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include -#include -#include -#include -#include -#include -#include - - -EFI_STATUS -LoadPeCoffSectionFromFv ( - IN EFI_HANDLE FvHandle, - IN EFI_GUID *NameGuid - ); - -EFI_STATUS -FindApplicationMatchingUiSection ( - IN CHAR16 *UiString, - OUT EFI_HANDLE *FvHandle, - OUT EFI_GUID *NameGuid - ); - -VOID -EFIAPI -BdsEntry ( - IN EFI_BDS_ARCH_PROTOCOL *This - ); - -#endif - diff --git a/BeagleBoardPkg/Bds/FirmwareVolume.c b/BeagleBoardPkg/Bds/FirmwareVolume.c deleted file mode 100644 index 31e1c5100e..0000000000 --- a/BeagleBoardPkg/Bds/FirmwareVolume.c +++ /dev/null @@ -1,150 +0,0 @@ -/** @file - The entry of the embedded BDS. This BDS does not follow the Boot Manager requirements - of the UEFI specification as it is designed to implement an embedded systmes - propriatary boot scheme. - - This template assume a DXE driver produces a SerialIo protocol not using the EFI - driver module and it will attempt to connect a console on top of this. - - - Copyright (c) 2009, Apple Inc. 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 - 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. - -**/ - -#include "BdsEntry.h" - - -EFI_STATUS -FindApplicationMatchingUiSection ( - IN CHAR16 *UiString, - OUT EFI_HANDLE *FvHandle, - OUT EFI_GUID *NameGuid - ) -{ - EFI_STATUS Status; - EFI_STATUS NextStatus; - UINTN NoHandles; - EFI_HANDLE *Buffer; - UINTN Index; - EFI_FV_FILETYPE FileType; - EFI_FIRMWARE_VOLUME2_PROTOCOL *Fv; - VOID *Key; - EFI_FV_FILE_ATTRIBUTES Attributes; - UINTN Size; - UINTN UiStringLen; - CHAR16 *UiSection; - UINT32 Authentication; - - - UiStringLen = 0; - if (UiString != NULL) { - DEBUG ((DEBUG_ERROR, "UiString %s\n", UiString)); - UiStringLen = StrLen (UiString); - } - - Status = gBS->LocateHandleBuffer (ByProtocol, &gEfiFirmwareVolume2ProtocolGuid, NULL, &NoHandles, &Buffer); - if (!EFI_ERROR (Status)) { - for (Index = 0; Index < NoHandles; Index++) { - Status = gBS->HandleProtocol (Buffer[Index], &gEfiFirmwareVolume2ProtocolGuid, (VOID **)&Fv); - if (!EFI_ERROR (Status)) { - Key = AllocatePool (Fv->KeySize); - ASSERT (Key != NULL); - ZeroMem (Key, Fv->KeySize); - - FileType = EFI_FV_FILETYPE_APPLICATION; - - do { - NextStatus = Fv->GetNextFile (Fv, Key, &FileType, NameGuid, &Attributes, &Size); - if (!EFI_ERROR (NextStatus)) { - if (UiString == NULL) { - // - // If UiString is NULL match first application we find. - // - *FvHandle = Buffer[Index]; - FreePool (Key); - return Status; - } - - UiSection = NULL; - Status = Fv->ReadSection ( - Fv, - NameGuid, - EFI_SECTION_USER_INTERFACE, - 0, - (VOID **)&UiSection, - &Size, - &Authentication - ); - if (!EFI_ERROR (Status)) { - if (StrnCmp (UiString, UiSection, UiStringLen) == 0) { - // - // We found a UiString match. - // - *FvHandle = Buffer[Index]; - FreePool (Key); - FreePool (UiSection); - return Status; - } - FreePool (UiSection); - } - } - } while (!EFI_ERROR (NextStatus)); - - FreePool (Key); - } - } - - FreePool (Buffer); - } - - return EFI_NOT_FOUND; -} - - -EFI_DEVICE_PATH * -FvFileDevicePath ( - IN EFI_HANDLE FvHandle, - IN EFI_GUID *NameGuid - ) -{ - EFI_DEVICE_PATH_PROTOCOL *DevicePath; - MEDIA_FW_VOL_FILEPATH_DEVICE_PATH NewNode; - - DevicePath = DevicePathFromHandle (FvHandle); - - EfiInitializeFwVolDevicepathNode (&NewNode, NameGuid); - - return AppendDevicePathNode (DevicePath, (EFI_DEVICE_PATH_PROTOCOL *)&NewNode); -} - - - -EFI_STATUS -LoadPeCoffSectionFromFv ( - IN EFI_HANDLE FvHandle, - IN EFI_GUID *NameGuid - ) -{ - EFI_STATUS Status; - EFI_DEVICE_PATH_PROTOCOL *DevicePath; - EFI_HANDLE ImageHandle; - - DevicePath = FvFileDevicePath (FvHandle, NameGuid); - - Status = gBS->LoadImage (TRUE, gImageHandle, DevicePath, NULL, 0, &ImageHandle); - if (!EFI_ERROR (Status)) { - PERF_END (NULL, "BDS", NULL, 0); - Status = gBS->StartImage (ImageHandle, NULL, NULL); - } - - return Status; -} - diff --git a/BeagleBoardPkg/Library/EblCmdLib/EblCmdLib.c b/BeagleBoardPkg/Library/EblCmdLib/EblCmdLib.c deleted file mode 100644 index 46204a4386..0000000000 --- a/BeagleBoardPkg/Library/EblCmdLib/EblCmdLib.c +++ /dev/null @@ -1,299 +0,0 @@ -/** @file - Add custom commands for BeagleBoard development. - - Copyright (c) 2008 - 2010, Apple Inc. 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 - 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. - -**/ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include - -#include -#include - -/** - Simple arm disassembler via a library - - Argv[0] - symboltable - Argv[1] - Optional quoted format string - Argv[2] - Optional flag - - @param Argc Number of command arguments in Argv - @param Argv Array of strings that represent the parsed command line. - Argv[0] is the command name - - @return EFI_SUCCESS - -**/ -EFI_STATUS -EblSymbolTable ( - IN UINTN Argc, - IN CHAR8 **Argv - ) -{ - EFI_STATUS Status; - EFI_DEBUG_IMAGE_INFO_TABLE_HEADER *DebugImageTableHeader = NULL; - EFI_DEBUG_IMAGE_INFO *DebugTable; - UINTN Entry; - CHAR8 *Format; - CHAR8 *Pdb; - UINT32 PeCoffSizeOfHeaders; - UINT32 ImageBase; - BOOLEAN Elf; - - // Need to add lots of error checking on the passed in string - // Default string is for RealView debugger or gdb depending on toolchain used. - if (Argc > 1) { - Format = Argv[1]; - } else { -#if __GNUC__ - // Assume gdb - Format = "add-symbol-file %a 0x%x"; -#else - // Default to RVCT - Format = "load /a /ni /np %a &0x%x"; -#endif - } - Elf = (Argc > 2) ? FALSE : TRUE; - - Status = EfiGetSystemConfigurationTable (&gEfiDebugImageInfoTableGuid, (VOID **)&DebugImageTableHeader); - if (EFI_ERROR (Status)) { - return Status; - } - - DebugTable = DebugImageTableHeader->EfiDebugImageInfoTable; - if (DebugTable == NULL) { - return EFI_SUCCESS; - } - - for (Entry = 0; Entry < DebugImageTableHeader->TableSize; Entry++, DebugTable++) { - if (DebugTable->NormalImage != NULL) { - if ((DebugTable->NormalImage->ImageInfoType == EFI_DEBUG_IMAGE_INFO_TYPE_NORMAL) && (DebugTable->NormalImage->LoadedImageProtocolInstance != NULL)) { - ImageBase = (UINT32)DebugTable->NormalImage->LoadedImageProtocolInstance->ImageBase; - PeCoffSizeOfHeaders = PeCoffGetSizeOfHeaders ((VOID *)(UINTN)ImageBase); - Pdb = PeCoffLoaderGetPdbPointer (DebugTable->NormalImage->LoadedImageProtocolInstance->ImageBase); - if (Pdb != NULL) { - if (Elf) { - // ELF and Mach-O images don't include the header so the linked address does not include header - ImageBase += PeCoffSizeOfHeaders; - } - AsciiPrint (Format, Pdb, ImageBase); - AsciiPrint ("\n"); - } else { - } - } - } - } - - return EFI_SUCCESS; -} - - -/** - Simple arm disassembler via a library - - Argv[0] - disasm - Argv[1] - Address to start disassembling from - ARgv[2] - Number of instructions to disassembly (optional) - - @param Argc Number of command arguments in Argv - @param Argv Array of strings that represent the parsed command line. - Argv[0] is the command name - - @return EFI_SUCCESS - -**/ -EFI_STATUS -EblDisassembler ( - IN UINTN Argc, - IN CHAR8 **Argv - ) -{ - UINT8 *Ptr, *CurrentAddress; - UINT32 Address; - UINT32 Count; - CHAR8 Buffer[80]; - UINT32 ItBlock; - - if (Argc < 2) { - return EFI_INVALID_PARAMETER; - } - - Address = AsciiStrHexToUintn (Argv[1]); - Count = (Argc > 2) ? (UINT32)AsciiStrHexToUintn (Argv[2]) : 20; - - Ptr = (UINT8 *)(UINTN)Address; - ItBlock = 0; - do { - CurrentAddress = Ptr; - DisassembleInstruction (&Ptr, TRUE, TRUE, &ItBlock, Buffer, sizeof (Buffer)); - AsciiPrint ("0x%08x: %a\n", CurrentAddress, Buffer); - } while (Count-- > 0); - - - return EFI_SUCCESS; -} - - -CHAR8 * -ImageHandleToPdbFileName ( - IN EFI_HANDLE Handle - ) -{ - EFI_STATUS Status; - EFI_LOADED_IMAGE_PROTOCOL *LoadedImage; - CHAR8 *Pdb; - CHAR8 *StripLeading; - - Status = gBS->HandleProtocol (Handle, &gEfiLoadedImageProtocolGuid, (VOID **)&LoadedImage); - if (EFI_ERROR (Status)) { - return ""; - } - - Pdb = PeCoffLoaderGetPdbPointer (LoadedImage->ImageBase); - StripLeading = AsciiStrStr (Pdb, "\\ARM\\"); - if (StripLeading == NULL) { - StripLeading = AsciiStrStr (Pdb, "/ARM/"); - if (StripLeading == NULL) { - return Pdb; - } - } - // Hopefully we hacked off the unneeded part - return (StripLeading + 5); -} - - -CHAR8 *mTokenList[] = { - "SEC", - "PEI", - "DXE", - "BDS", - NULL -}; - -/** - Simple arm disassembler via a library - - Argv[0] - disasm - Argv[1] - Address to start disassembling from - ARgv[2] - Number of instructions to disassembly (optional) - - @param Argc Number of command arguments in Argv - @param Argv Array of strings that represent the parsed command line. - Argv[0] is the command name - - @return EFI_SUCCESS - -**/ -EFI_STATUS -EblPerformance ( - IN UINTN Argc, - IN CHAR8 **Argv - ) -{ - UINTN Key; - CONST VOID *Handle; - CONST CHAR8 *Token, *Module; - UINT64 Start, Stop, TimeStamp; - UINT64 Delta, TicksPerSecond, Milliseconds, Microseconds; - UINTN Index; - - TicksPerSecond = GetPerformanceCounterProperties (NULL, NULL); - - Key = 0; - do { - Key = GetPerformanceMeasurement (Key, (CONST VOID **)&Handle, &Token, &Module, &Start, &Stop); - if (Key != 0) { - if (AsciiStriCmp ("StartImage:", Token) == 0) { - if (Stop == 0) { - // The entry for EBL is still running so the stop time will be zero. Skip it - AsciiPrint (" running %a\n", ImageHandleToPdbFileName ((EFI_HANDLE)Handle)); - } else { - Delta = Stop - Start; - Microseconds = DivU64x64Remainder (MultU64x32 (Delta, 1000000), TicksPerSecond, NULL); - AsciiPrint ("%10ld us %a\n", Microseconds, ImageHandleToPdbFileName ((EFI_HANDLE)Handle)); - } - } - } - } while (Key != 0); - - AsciiPrint ("\n"); - - TimeStamp = 0; - Key = 0; - do { - Key = GetPerformanceMeasurement (Key, (CONST VOID **)&Handle, &Token, &Module, &Start, &Stop); - if (Key != 0) { - for (Index = 0; mTokenList[Index] != NULL; Index++) { - if (AsciiStriCmp (mTokenList[Index], Token) == 0) { - Delta = Stop - Start; - TimeStamp += Delta; - Milliseconds = DivU64x64Remainder (MultU64x32 (Delta, 1000), TicksPerSecond, NULL); - AsciiPrint ("%6a %6ld ms\n", Token, Milliseconds); - break; - } - } - } - } while (Key != 0); - - AsciiPrint ("Total Time = %ld ms\n\n", DivU64x64Remainder (MultU64x32 (TimeStamp, 1000), TicksPerSecond, NULL)); - - return EFI_SUCCESS; -} - - -GLOBAL_REMOVE_IF_UNREFERENCED const EBL_COMMAND_TABLE mLibCmdTemplate[] = -{ - { - "disasm address [count]", - " disassemble count instructions", - NULL, - EblDisassembler - }, - { - "performance", - " Display boot performance info", - NULL, - EblPerformance - }, - { - "symboltable [\"format string\"] [PECOFF]", - " show symbol table commands for debugger", - NULL, - EblSymbolTable - } -}; - - -VOID -EblInitializeExternalCmd ( - VOID - ) -{ - EblAddCommands (mLibCmdTemplate, sizeof (mLibCmdTemplate)/sizeof (EBL_COMMAND_TABLE)); - return; -} diff --git a/BeagleBoardPkg/Library/EblCmdLib/EblCmdLib.inf b/BeagleBoardPkg/Library/EblCmdLib/EblCmdLib.inf deleted file mode 100644 index a79448c0e9..0000000000 --- a/BeagleBoardPkg/Library/EblCmdLib/EblCmdLib.inf +++ /dev/null @@ -1,53 +0,0 @@ -#/** @file -# Component description file for the entry point to a EFIDXE Drivers -# -# Library to abstract Framework extensions that conflict with UEFI 2.0 Specification -# Copyright (c) 2007 - 2007, 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 -# 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. -# -# -#**/ - -[Defines] - INF_VERSION = 0x00010005 - BASE_NAME = BeagleBoardEblCmdLib - FILE_GUID = ea62bdc3-1063-425f-8851-98cb47f213a8 - MODULE_TYPE = UEFI_DRIVER - VERSION_STRING = 1.0 - LIBRARY_CLASS = EblCmdLib|DXE_DRIVER UEFI_APPLICATION UEFI_DRIVER - - -# -# The following information is for reference only and not required by the build tools. -# -# VALID_ARCHITECTURES = IA32 X64 IPF EBC -# - -[Sources.common] - EblCmdLib.c - -[Packages] - MdePkg/MdePkg.dec - MdeModulePkg/MdeModulePkg.dec - EmbeddedPkg/EmbeddedPkg.dec - ArmPkg/ArmPkg.dec - -[LibraryClasses] - BaseLib - DebugLib - ArmDisassemblerLib - PerformanceLib - TimerLib - -[Protocols] - gEfiDebugSupportProtocolGuid - gEfiLoadedImageProtocolGuid - -[Guids] - gEfiDebugImageInfoTableGuid diff --git a/BeagleBoardPkg/Library/GdbSerialLib/GdbSerialLib.c b/BeagleBoardPkg/Library/GdbSerialLib/GdbSerialLib.c deleted file mode 100644 index 82a2957dc9..0000000000 --- a/BeagleBoardPkg/Library/GdbSerialLib/GdbSerialLib.c +++ /dev/null @@ -1,103 +0,0 @@ -/** @file - Basic serial IO abstaction for GDB - - Copyright (c) 2008 - 2009, Apple Inc. 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 - 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. - -**/ - -#include -#include -#include -#include -#include -#include -#include - -RETURN_STATUS -EFIAPI -GdbSerialLibConstructor ( - IN EFI_HANDLE ImageHandle, - IN EFI_SYSTEM_TABLE *SystemTable - ) -{ - return RETURN_SUCCESS; -} - -RETURN_STATUS -EFIAPI -GdbSerialInit ( - IN UINT64 BaudRate, - IN UINT8 Parity, - IN UINT8 DataBits, - IN UINT8 StopBits - ) -{ - return RETURN_SUCCESS; -} - -BOOLEAN -EFIAPI -GdbIsCharAvailable ( - VOID - ) -{ - UINT32 LSR = UartBase(PcdGet32(PcdOmap35xxConsoleUart)) + UART_LSR_REG; - - if ((MmioRead8(LSR) & UART_LSR_RX_FIFO_E_MASK) == UART_LSR_RX_FIFO_E_NOT_EMPTY) { - return TRUE; - } else { - return FALSE; - } -} - -CHAR8 -EFIAPI -GdbGetChar ( - VOID - ) -{ - UINT32 LSR = UartBase(PcdGet32(PcdOmap35xxConsoleUart)) + UART_LSR_REG; - UINT32 RBR = UartBase(PcdGet32(PcdOmap35xxConsoleUart)) + UART_RBR_REG; - CHAR8 Char; - - while ((MmioRead8(LSR) & UART_LSR_RX_FIFO_E_MASK) == UART_LSR_RX_FIFO_E_EMPTY); - Char = MmioRead8(RBR); - - return Char; -} - -VOID -EFIAPI -GdbPutChar ( - IN CHAR8 Char - ) -{ - UINT32 LSR = UartBase(PcdGet32(PcdOmap35xxConsoleUart)) + UART_LSR_REG; - UINT32 THR = UartBase(PcdGet32(PcdOmap35xxConsoleUart)) + UART_THR_REG; - - while ((MmioRead8(LSR) & UART_LSR_TX_FIFO_E_MASK) == UART_LSR_TX_FIFO_E_NOT_EMPTY); - MmioWrite8(THR, Char); -} - -VOID -GdbPutString ( - IN CHAR8 *String - ) -{ - while (*String != '\0') { - GdbPutChar (*String); - String++; - } -} - - - - diff --git a/BeagleBoardPkg/Library/GdbSerialLib/GdbSerialLib.inf b/BeagleBoardPkg/Library/GdbSerialLib/GdbSerialLib.inf deleted file mode 100644 index a06acf14fb..0000000000 --- a/BeagleBoardPkg/Library/GdbSerialLib/GdbSerialLib.inf +++ /dev/null @@ -1,41 +0,0 @@ -#/** @file -# -# Copyright (c) 2008 - 2010, Apple Inc. 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 -# 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. -# -#**/ - -[Defines] - INF_VERSION = 0x00010005 - BASE_NAME = GdbSerialLib - FILE_GUID = E2423349-EF5D-439B-95F5-8B8D8E3B443F - MODULE_TYPE = UEFI_DRIVER - VERSION_STRING = 1.0 - LIBRARY_CLASS = GdbSerialLib - - CONSTRUCTOR = GdbSerialLibConstructor - - -[Sources.common] - GdbSerialLib.c - - -[Packages] - MdePkg/MdePkg.dec - EmbeddedPkg/EmbeddedPkg.dec - Omap35xxPkg/Omap35xxPkg.dec - -[LibraryClasses] - DebugLib - IoLib - OmapLib - -[FixedPcd] - gOmap35xxTokenSpaceGuid.PcdOmap35xxConsoleUart - diff --git a/BeagleBoardPkg/Sec/Arm/ModuleEntryPoint.S b/BeagleBoardPkg/Sec/Arm/ModuleEntryPoint.S deleted file mode 100644 index b656c1e040..0000000000 --- a/BeagleBoardPkg/Sec/Arm/ModuleEntryPoint.S +++ /dev/null @@ -1,85 +0,0 @@ -#------------------------------------------------------------------------------ -# -# Copyright (c) 2008 - 2009, Apple Inc. 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 -# 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. -# -#------------------------------------------------------------------------------ - -#include -#include - -.text -.align 3 - -.globl ASM_PFX(CEntryPoint) -GCC_ASM_EXPORT(_ModuleEntryPoint) - -ASM_PFX(_ModuleEntryPoint): - - //Disable L2 cache - mrc p15, 0, r0, c1, c0, 1 // read Auxiliary Control Register - bic r0, r0, #0x00000002 // disable L2 cache - mcr p15, 0, r0, c1, c0, 1 // store Auxiliary Control Register - - //Enable Strict alignment checking & Instruction cache - mrc p15, 0, r0, c1, c0, 0 - bic r0, r0, #0x00002300 /* clear bits 13, 9:8 (--V- --RS) */ - bic r0, r0, #0x00000005 /* clear bits 0, 2 (---- -C-M) */ - orr r0, r0, #0x00000002 /* set bit 1 (A) Align */ - orr r0, r0, #0x00001000 /* set bit 12 (I) enable I-Cache */ - mcr p15, 0, r0, c1, c0, 0 - - // Enable NEON register in case folks want to use them for optimizations (CopyMem) - mrc p15, 0, r0, c1, c0, 2 - orr r0, r0, #0x00f00000 // Enable VPF access (V* instructions) - mcr p15, 0, r0, c1, c0, 2 - mov r0, #0x40000000 // Set EN bit in FPEXC - mcr p10,#0x7,r0,c8,c0,#0 // msr FPEXC,r0 in ARM assembly - - - // Set CPU vectors to start of DRAM - LoadConstantToReg (FixedPcdGet32(PcdCpuVectorBaseAddress) ,r0) // Get vector base - mcr p15, 0, r0, c12, c0, 0 - isb // Sync changes to control registers - - // Fill vector table with branchs to current pc (jmp $) - ldr r1, ShouldNeverGetHere - movs r2, #0 -FillVectors: - str r1, [r0, r2] - adds r2, r2, #4 - cmp r2, #32 - bne FillVectors - - /* before we call C code, lets setup the stack pointer in internal RAM */ -stack_pointer_setup: - - // - // Set stack based on PCD values. Need to do it this way to make C code work - // when it runs from FLASH. - // - LoadConstantToReg (FixedPcdGet32(PcdPrePiStackBase) ,r2) /* stack base arg2 */ - LoadConstantToReg (FixedPcdGet32(PcdPrePiStackSize) ,r3) /* stack size arg3 */ - add r4, r2, r3 - - //Enter SVC mode and set up SVC stack pointer - mov r0,#0x13|0x80|0x40 - msr CPSR_c,r0 - mov r13,r4 - - // Call C entry point - LoadConstantToReg (FixedPcdGet32(PcdMemorySize) ,r1) /* memory size arg1 */ - LoadConstantToReg (FixedPcdGet32(PcdMemoryBase) ,r0) /* memory size arg0 */ - blx ASM_PFX(CEntryPoint) /* Assume C code is thumb */ - -ShouldNeverGetHere: - /* _CEntryPoint should never return */ - b ShouldNeverGetHere - diff --git a/BeagleBoardPkg/Sec/Arm/ModuleEntryPoint.asm b/BeagleBoardPkg/Sec/Arm/ModuleEntryPoint.asm deleted file mode 100644 index 63174d4b84..0000000000 --- a/BeagleBoardPkg/Sec/Arm/ModuleEntryPoint.asm +++ /dev/null @@ -1,89 +0,0 @@ -//------------------------------------------------------------------------------ -// -// Copyright (c) 2008 - 2009, Apple Inc. 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 -// 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. -// -//------------------------------------------------------------------------------ - -#include -#include -#include - INCLUDE AsmMacroIoLib.inc - - IMPORT CEntryPoint - EXPORT _ModuleEntryPoint - - PRESERVE8 - AREA ModuleEntryPoint, CODE, READONLY - - -_ModuleEntryPoint - - //Disable L2 cache - mrc p15, 0, r0, c1, c0, 1 // read Auxiliary Control Register - bic r0, r0, #0x00000002 // disable L2 cache - mcr p15, 0, r0, c1, c0, 1 // store Auxiliary Control Register - - //Enable Strict alignment checking & Instruction cache - mrc p15, 0, r0, c1, c0, 0 - bic r0, r0, #0x00002300 /* clear bits 13, 9:8 (--V- --RS) */ - bic r0, r0, #0x00000005 /* clear bits 0, 2 (---- -C-M) */ - orr r0, r0, #0x00000002 /* set bit 1 (A) Align */ - orr r0, r0, #0x00001000 /* set bit 12 (I) enable I-Cache */ - mcr p15, 0, r0, c1, c0, 0 - - // Enable NEON register in case folks want to use them for optimizations (CopyMem) - mrc p15, 0, r0, c1, c0, 2 - orr r0, r0, #0x00f00000 // Enable VPF access (V* instructions) - mcr p15, 0, r0, c1, c0, 2 - mov r0, #0x40000000 // Set EN bit in FPEXC - msr FPEXC,r0 - - // Set CPU vectors to start of DRAM - LoadConstantToReg (FixedPcdGet32(PcdCpuVectorBaseAddress) ,r0) // Get vector base - mcr p15, 0, r0, c12, c0, 0 - isb // Sync changes to control registers - - // Fill vector table with branchs to current pc (jmp $) - ldr r1, ShouldNeverGetHere - movs r2, #0 -FillVectors - str r1, [r0, r2] - adds r2, r2, #4 - cmp r2, #32 - bne FillVectors - - /* before we call C code, lets setup the stack pointer in internal RAM */ -stack_pointer_setup - - // - // Set stack based on PCD values. Need to do it this way to make C code work - // when it runs from FLASH. - // - LoadConstantToReg (FixedPcdGet32(PcdPrePiStackBase) ,r2) // stack base arg2 - LoadConstantToReg (FixedPcdGet32(PcdPrePiStackSize) ,r3) // stack size arg3 - add r4, r2, r3 - - //Enter SVC mode and set up SVC stack pointer - mov r5,#0x13|0x80|0x40 - msr CPSR_c,r5 - mov r13,r4 - - // Call C entry point - LoadConstantToReg (FixedPcdGet32(PcdMemorySize) ,r1) // memory size arg1 - LoadConstantToReg (FixedPcdGet32(PcdMemoryBase) ,r0) // memory start arg0 - blx CEntryPoint // Assume C code is thumb - -ShouldNeverGetHere - /* _CEntryPoint should never return */ - b ShouldNeverGetHere - - END - diff --git a/BeagleBoardPkg/Sec/Cache.c b/BeagleBoardPkg/Sec/Cache.c deleted file mode 100644 index 7399eef5be..0000000000 --- a/BeagleBoardPkg/Sec/Cache.c +++ /dev/null @@ -1,79 +0,0 @@ -/** @file - - Copyright (c) 2008 - 2009, Apple Inc. 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 - 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. - -**/ - -#include - -#include -#include -#include - -// DDR attributes -#define DDR_ATTRIBUTES_CACHED ARM_MEMORY_REGION_ATTRIBUTE_WRITE_BACK -#define DDR_ATTRIBUTES_UNCACHED ARM_MEMORY_REGION_ATTRIBUTE_UNCACHED_UNBUFFERED - -// SoC registers. L3 interconnects -#define SOC_REGISTERS_L3_PHYSICAL_BASE 0x68000000 -#define SOC_REGISTERS_L3_PHYSICAL_LENGTH 0x08000000 -#define SOC_REGISTERS_L3_ATTRIBUTES ARM_MEMORY_REGION_ATTRIBUTE_DEVICE - -// SoC registers. L4 interconnects -#define SOC_REGISTERS_L4_PHYSICAL_BASE 0x48000000 -#define SOC_REGISTERS_L4_PHYSICAL_LENGTH 0x08000000 -#define SOC_REGISTERS_L4_ATTRIBUTES ARM_MEMORY_REGION_ATTRIBUTE_DEVICE - -VOID -InitCache ( - IN UINT32 MemoryBase, - IN UINT32 MemoryLength - ) -{ - UINT32 CacheAttributes; - ARM_MEMORY_REGION_DESCRIPTOR MemoryTable[5]; - VOID *TranslationTableBase; - UINTN TranslationTableSize; - - if (FeaturePcdGet(PcdCacheEnable) == TRUE) { - CacheAttributes = DDR_ATTRIBUTES_CACHED; - } else { - CacheAttributes = DDR_ATTRIBUTES_UNCACHED; - } - - // DDR - MemoryTable[0].PhysicalBase = MemoryBase; - MemoryTable[0].VirtualBase = MemoryBase; - MemoryTable[0].Length = MemoryLength; - MemoryTable[0].Attributes = (ARM_MEMORY_REGION_ATTRIBUTES)CacheAttributes; - - // SOC Registers. L3 interconnects - MemoryTable[1].PhysicalBase = SOC_REGISTERS_L3_PHYSICAL_BASE; - MemoryTable[1].VirtualBase = SOC_REGISTERS_L3_PHYSICAL_BASE; - MemoryTable[1].Length = SOC_REGISTERS_L3_PHYSICAL_LENGTH; - MemoryTable[1].Attributes = SOC_REGISTERS_L3_ATTRIBUTES; - - // SOC Registers. L4 interconnects - MemoryTable[2].PhysicalBase = SOC_REGISTERS_L4_PHYSICAL_BASE; - MemoryTable[2].VirtualBase = SOC_REGISTERS_L4_PHYSICAL_BASE; - MemoryTable[2].Length = SOC_REGISTERS_L4_PHYSICAL_LENGTH; - MemoryTable[2].Attributes = SOC_REGISTERS_L4_ATTRIBUTES; - - // End of Table - MemoryTable[3].PhysicalBase = 0; - MemoryTable[3].VirtualBase = 0; - MemoryTable[3].Length = 0; - MemoryTable[3].Attributes = (ARM_MEMORY_REGION_ATTRIBUTES)0; - - ArmConfigureMmu (MemoryTable, &TranslationTableBase, &TranslationTableSize); - - BuildMemoryAllocationHob((EFI_PHYSICAL_ADDRESS)(UINTN)TranslationTableBase, TranslationTableSize, EfiBootServicesData); -} diff --git a/BeagleBoardPkg/Sec/Clock.c b/BeagleBoardPkg/Sec/Clock.c deleted file mode 100644 index 24fdc71c42..0000000000 --- a/BeagleBoardPkg/Sec/Clock.c +++ /dev/null @@ -1,70 +0,0 @@ -/** @file - - Copyright (c) 2008 - 2009, Apple Inc. 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 - 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. - -**/ - -#include -#include - -#include - -VOID -ClockInit ( - VOID - ) -{ - //DPLL1 - DPLL4 are configured part of Configuration header which OMAP3 ROM parses. - - // Enable PLL5 and set to 120 MHz as a reference clock. - MmioWrite32 (CM_CLKSEL4_PLL, CM_CLKSEL_PLL_MULT(120) | CM_CLKSEL_PLL_DIV(13)); - MmioWrite32 (CM_CLKSEL5_PLL, CM_CLKSEL_DIV_120M(1)); - MmioWrite32 (CM_CLKEN2_PLL, CM_CLKEN_FREQSEL_075_100 | CM_CLKEN_ENABLE); - - // Turn on functional & interface clocks to the USBHOST power domain - MmioOr32(CM_FCLKEN_USBHOST, CM_FCLKEN_USBHOST_EN_USBHOST2_ENABLE - | CM_FCLKEN_USBHOST_EN_USBHOST1_ENABLE); - MmioOr32(CM_ICLKEN_USBHOST, CM_ICLKEN_USBHOST_EN_USBHOST_ENABLE); - - // Turn on functional & interface clocks to the USBTLL block. - MmioOr32(CM_FCLKEN3_CORE, CM_FCLKEN3_CORE_EN_USBTLL_ENABLE); - MmioOr32(CM_ICLKEN3_CORE, CM_ICLKEN3_CORE_EN_USBTLL_ENABLE); - - // Turn on functional & interface clocks to MMC1 and I2C1 modules. - MmioOr32(CM_FCLKEN1_CORE, CM_FCLKEN1_CORE_EN_MMC1_ENABLE - | CM_FCLKEN1_CORE_EN_I2C1_ENABLE); - MmioOr32(CM_ICLKEN1_CORE, CM_ICLKEN1_CORE_EN_MMC1_ENABLE - | CM_ICLKEN1_CORE_EN_I2C1_ENABLE); - - // Turn on functional & interface clocks to various Peripherals. - MmioOr32(CM_FCLKEN_PER, CM_FCLKEN_PER_EN_UART3_ENABLE - | CM_FCLKEN_PER_EN_GPT3_ENABLE - | CM_FCLKEN_PER_EN_GPT4_ENABLE - | CM_FCLKEN_PER_EN_GPIO2_ENABLE - | CM_FCLKEN_PER_EN_GPIO3_ENABLE - | CM_FCLKEN_PER_EN_GPIO4_ENABLE - | CM_FCLKEN_PER_EN_GPIO5_ENABLE - | CM_FCLKEN_PER_EN_GPIO6_ENABLE); - MmioOr32(CM_ICLKEN_PER, CM_ICLKEN_PER_EN_UART3_ENABLE - | CM_ICLKEN_PER_EN_GPT3_ENABLE - | CM_ICLKEN_PER_EN_GPT4_ENABLE - | CM_ICLKEN_PER_EN_GPIO2_ENABLE - | CM_ICLKEN_PER_EN_GPIO3_ENABLE - | CM_ICLKEN_PER_EN_GPIO4_ENABLE - | CM_ICLKEN_PER_EN_GPIO5_ENABLE - | CM_ICLKEN_PER_EN_GPIO6_ENABLE); - - // Turn on functional & inteface clocks to various wakeup modules. - MmioOr32(CM_FCLKEN_WKUP, CM_FCLKEN_WKUP_EN_GPIO1_ENABLE - | CM_FCLKEN_WKUP_EN_WDT2_ENABLE); - MmioOr32(CM_ICLKEN_WKUP, CM_ICLKEN_WKUP_EN_GPIO1_ENABLE - | CM_ICLKEN_WKUP_EN_WDT2_ENABLE); -} diff --git a/BeagleBoardPkg/Sec/LzmaDecompress.h b/BeagleBoardPkg/Sec/LzmaDecompress.h deleted file mode 100644 index a79ff343d2..0000000000 --- a/BeagleBoardPkg/Sec/LzmaDecompress.h +++ /dev/null @@ -1,103 +0,0 @@ -/** @file - LZMA Decompress Library header file - - Copyright (c) 2006 - 2010, 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 - 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. - -**/ - -#ifndef __LZMA_DECOMPRESS_H___ -#define __LZMA_DECOMPRESS_H___ - -/** - Examines a GUIDed section and returns the size of the decoded buffer and the - size of an scratch buffer required to actually decode the data in a GUIDed section. - - Examines a GUIDed section specified by InputSection. - If GUID for InputSection does not match the GUID that this handler supports, - then RETURN_UNSUPPORTED is returned. - If the required information can not be retrieved from InputSection, - then RETURN_INVALID_PARAMETER is returned. - If the GUID of InputSection does match the GUID that this handler supports, - then the size required to hold the decoded buffer is returned in OututBufferSize, - the size of an optional scratch buffer is returned in ScratchSize, and the Attributes field - from EFI_GUID_DEFINED_SECTION header of InputSection is returned in SectionAttribute. - - If InputSection is NULL, then ASSERT(). - If OutputBufferSize is NULL, then ASSERT(). - If ScratchBufferSize is NULL, then ASSERT(). - If SectionAttribute is NULL, then ASSERT(). - - - @param[in] InputSection A pointer to a GUIDed section of an FFS formatted file. - @param[out] OutputBufferSize A pointer to the size, in bytes, of an output buffer required - if the buffer specified by InputSection were decoded. - @param[out] ScratchBufferSize A pointer to the size, in bytes, required as scratch space - if the buffer specified by InputSection were decoded. - @param[out] SectionAttribute A pointer to the attributes of the GUIDed section. See the Attributes - field of EFI_GUID_DEFINED_SECTION in the PI Specification. - - @retval RETURN_SUCCESS The information about InputSection was returned. - @retval RETURN_UNSUPPORTED The section specified by InputSection does not match the GUID this handler supports. - @retval RETURN_INVALID_PARAMETER The information can not be retrieved from the section specified by InputSection. - -**/ -RETURN_STATUS -EFIAPI -LzmaGuidedSectionGetInfo ( - IN CONST VOID *InputSection, - OUT UINT32 *OutputBufferSize, - OUT UINT32 *ScratchBufferSize, - OUT UINT16 *SectionAttribute - ); - -/** - Decompress a LZAM compressed GUIDed section into a caller allocated output buffer. - - Decodes the GUIDed section specified by InputSection. - If GUID for InputSection does not match the GUID that this handler supports, then RETURN_UNSUPPORTED is returned. - If the data in InputSection can not be decoded, then RETURN_INVALID_PARAMETER is returned. - If the GUID of InputSection does match the GUID that this handler supports, then InputSection - is decoded into the buffer specified by OutputBuffer and the authentication status of this - decode operation is returned in AuthenticationStatus. If the decoded buffer is identical to the - data in InputSection, then OutputBuffer is set to point at the data in InputSection. Otherwise, - the decoded data will be placed in caller allocated buffer specified by OutputBuffer. - - If InputSection is NULL, then ASSERT(). - If OutputBuffer is NULL, then ASSERT(). - If ScratchBuffer is NULL and this decode operation requires a scratch buffer, then ASSERT(). - If AuthenticationStatus is NULL, then ASSERT(). - - - @param[in] InputSection A pointer to a GUIDed section of an FFS formatted file. - @param[out] OutputBuffer A pointer to a buffer that contains the result of a decode operation. - @param[out] ScratchBuffer A caller allocated buffer that may be required by this function - as a scratch buffer to perform the decode operation. - @param[out] AuthenticationStatus - A pointer to the authentication status of the decoded output buffer. - See the definition of authentication status in the EFI_PEI_GUIDED_SECTION_EXTRACTION_PPI - section of the PI Specification. EFI_AUTH_STATUS_PLATFORM_OVERRIDE must - never be set by this handler. - - @retval RETURN_SUCCESS The buffer specified by InputSection was decoded. - @retval RETURN_UNSUPPORTED The section specified by InputSection does not match the GUID this handler supports. - @retval RETURN_INVALID_PARAMETER The section specified by InputSection can not be decoded. - -**/ -RETURN_STATUS -EFIAPI -LzmaGuidedSectionExtraction ( - IN CONST VOID *InputSection, - OUT VOID **OutputBuffer, - OUT VOID *ScratchBuffer, OPTIONAL - OUT UINT32 *AuthenticationStatus - ); - -#endif // __LZMADECOMPRESS_H__ - diff --git a/BeagleBoardPkg/Sec/PadConfiguration.c b/BeagleBoardPkg/Sec/PadConfiguration.c deleted file mode 100644 index 2dace3bf38..0000000000 --- a/BeagleBoardPkg/Sec/PadConfiguration.c +++ /dev/null @@ -1,282 +0,0 @@ -/** @file - - Copyright (c) 2008 - 2009, Apple Inc. 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 - 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. - -**/ - -#include -#include -#include -#include - -#define NUM_PINS 238 - -PAD_CONFIGURATION PadConfigurationTable[NUM_PINS] = { - //Pin, MuxMode, PullConfig, InputEnable - { SDRC_D0, MUXMODE0, PULL_DISABLED, INPUT }, - { SDRC_D1, MUXMODE0, PULL_DISABLED, INPUT }, - { SDRC_D2, MUXMODE0, PULL_DISABLED, INPUT }, - { SDRC_D3, MUXMODE0, PULL_DISABLED, INPUT }, - { SDRC_D4, MUXMODE0, PULL_DISABLED, INPUT }, - { SDRC_D5, MUXMODE0, PULL_DISABLED, INPUT }, - { SDRC_D6, MUXMODE0, PULL_DISABLED, INPUT }, - { SDRC_D7, MUXMODE0, PULL_DISABLED, INPUT }, - { SDRC_D8, MUXMODE0, PULL_DISABLED, INPUT }, - { SDRC_D9, MUXMODE0, PULL_DISABLED, INPUT }, - { SDRC_D10, MUXMODE0, PULL_DISABLED, INPUT }, - { SDRC_D11, MUXMODE0, PULL_DISABLED, INPUT }, - { SDRC_D12, MUXMODE0, PULL_DISABLED, INPUT }, - { SDRC_D13, MUXMODE0, PULL_DISABLED, INPUT }, - { SDRC_D14, MUXMODE0, PULL_DISABLED, INPUT }, - { SDRC_D15, MUXMODE0, PULL_DISABLED, INPUT }, - { SDRC_D16, MUXMODE0, PULL_DISABLED, INPUT }, - { SDRC_D17, MUXMODE0, PULL_DISABLED, INPUT }, - { SDRC_D18, MUXMODE0, PULL_DISABLED, INPUT }, - { SDRC_D19, MUXMODE0, PULL_DISABLED, INPUT }, - { SDRC_D20, MUXMODE0, PULL_DISABLED, INPUT }, - { SDRC_D21, MUXMODE0, PULL_DISABLED, INPUT }, - { SDRC_D22, MUXMODE0, PULL_DISABLED, INPUT }, - { SDRC_D23, MUXMODE0, PULL_DISABLED, INPUT }, - { SDRC_D24, MUXMODE0, PULL_DISABLED, INPUT }, - { SDRC_D25, MUXMODE0, PULL_DISABLED, INPUT }, - { SDRC_D26, MUXMODE0, PULL_DISABLED, INPUT }, - { SDRC_D27, MUXMODE0, PULL_DISABLED, INPUT }, - { SDRC_D28, MUXMODE0, PULL_DISABLED, INPUT }, - { SDRC_D29, MUXMODE0, PULL_DISABLED, INPUT }, - { SDRC_D30, MUXMODE0, PULL_DISABLED, INPUT }, - { SDRC_D31, MUXMODE0, PULL_DISABLED, INPUT }, - { SDRC_CLK, MUXMODE0, PULL_DISABLED, INPUT }, - { SDRC_DQS0, MUXMODE0, PULL_DISABLED, INPUT }, - { SDRC_CKE0, MUXMODE0, PULL_UP_SELECTED, INPUT }, - { SDRC_CKE1, MUXMODE7, PULL_DISABLED, INPUT }, - { SDRC_DQS1, MUXMODE0, PULL_DISABLED, INPUT }, - { SDRC_DQS2, MUXMODE0, PULL_DISABLED, INPUT }, - { SDRC_DQS3, MUXMODE0, PULL_DISABLED, INPUT }, - { GPMC_A1, MUXMODE0, PULL_DISABLED, OUTPUT }, - { GPMC_A2, MUXMODE0, PULL_DISABLED, OUTPUT }, - { GPMC_A3, MUXMODE0, PULL_DISABLED, OUTPUT }, - { GPMC_A4, MUXMODE0, PULL_DISABLED, OUTPUT }, - { GPMC_A5, MUXMODE0, PULL_DISABLED, OUTPUT }, - { GPMC_A6, MUXMODE0, PULL_DISABLED, OUTPUT }, - { GPMC_A7, MUXMODE0, PULL_DISABLED, OUTPUT }, - { GPMC_A8, MUXMODE0, PULL_DISABLED, OUTPUT }, - { GPMC_A9, MUXMODE0, PULL_DISABLED, OUTPUT }, - { GPMC_A10, MUXMODE0, PULL_DISABLED, OUTPUT }, - { GPMC_D0, MUXMODE0, PULL_DISABLED, INPUT }, - { GPMC_D1, MUXMODE0, PULL_DISABLED, INPUT }, - { GPMC_D2, MUXMODE0, PULL_DISABLED, INPUT }, - { GPMC_D3, MUXMODE0, PULL_DISABLED, INPUT }, - { GPMC_D4, MUXMODE0, PULL_DISABLED, INPUT }, - { GPMC_D5, MUXMODE0, PULL_DISABLED, INPUT }, - { GPMC_D6, MUXMODE0, PULL_DISABLED, INPUT }, - { GPMC_D7, MUXMODE0, PULL_DISABLED, INPUT }, - { GPMC_D8, MUXMODE0, PULL_DISABLED, INPUT }, - { GPMC_D9, MUXMODE0, PULL_DISABLED, INPUT }, - { GPMC_D10, MUXMODE0, PULL_DISABLED, INPUT }, - { GPMC_D11, MUXMODE0, PULL_DISABLED, INPUT }, - { GPMC_D12, MUXMODE0, PULL_DISABLED, INPUT }, - { GPMC_D13, MUXMODE0, PULL_DISABLED, INPUT }, - { GPMC_D14, MUXMODE0, PULL_DISABLED, INPUT }, - { GPMC_D15, MUXMODE0, PULL_DISABLED, INPUT }, - { GPMC_NCS0, MUXMODE0, PULL_DISABLED, INPUT }, - { GPMC_NCS1, MUXMODE0, PULL_UP_SELECTED, OUTPUT }, - { GPMC_NCS2, MUXMODE0, PULL_UP_SELECTED, OUTPUT }, - { GPMC_NCS3, MUXMODE0, PULL_UP_SELECTED, OUTPUT }, - { GPMC_NCS4, MUXMODE0, PULL_UP_SELECTED, OUTPUT }, - { GPMC_NCS5, MUXMODE0, PULL_DISABLED, OUTPUT }, - { GPMC_NCS6, MUXMODE1, PULL_DISABLED, INPUT }, - { GPMC_NCS7, MUXMODE1, PULL_UP_SELECTED, INPUT }, - { GPMC_CLK, MUXMODE0, PULL_DISABLED, OUTPUT }, - { GPMC_NADV_ALE, MUXMODE0, PULL_DISABLED, INPUT }, - { GPMC_NOE, MUXMODE0, PULL_DISABLED, INPUT }, - { GPMC_NWE, MUXMODE0, PULL_DISABLED, INPUT }, - { GPMC_NBE0_CLE, MUXMODE0, PULL_DISABLED, OUTPUT }, - { GPMC_NBE1, MUXMODE0, PULL_DISABLED, INPUT }, - { GPMC_NWP, MUXMODE0, PULL_DISABLED, INPUT }, - { GPMC_WAIT0, MUXMODE0, PULL_UP_SELECTED, INPUT }, - { GPMC_WAIT1, MUXMODE0, PULL_UP_SELECTED, INPUT }, - { GPMC_WAIT2, MUXMODE0, PULL_UP_SELECTED, INPUT }, - { GPMC_WAIT3, MUXMODE0, PULL_UP_SELECTED, INPUT }, - { DSS_PCLK, MUXMODE0, PULL_DISABLED, OUTPUT }, - { DSS_HSYNC, MUXMODE0, PULL_DISABLED, OUTPUT }, - { DSS_PSYNC, MUXMODE0, PULL_DISABLED, OUTPUT }, - { DSS_ACBIAS, MUXMODE0, PULL_DISABLED, OUTPUT }, - { DSS_DATA0, MUXMODE0, PULL_DISABLED, OUTPUT }, - { DSS_DATA1, MUXMODE0, PULL_DISABLED, OUTPUT }, - { DSS_DATA2, MUXMODE0, PULL_DISABLED, OUTPUT }, - { DSS_DATA3, MUXMODE0, PULL_DISABLED, OUTPUT }, - { DSS_DATA4, MUXMODE0, PULL_DISABLED, OUTPUT }, - { DSS_DATA5, MUXMODE0, PULL_DISABLED, OUTPUT }, - { DSS_DATA6, MUXMODE0, PULL_DISABLED, OUTPUT }, - { DSS_DATA7, MUXMODE0, PULL_DISABLED, OUTPUT }, - { DSS_DATA8, MUXMODE0, PULL_DISABLED, OUTPUT }, - { DSS_DATA9, MUXMODE0, PULL_DISABLED, OUTPUT }, - { DSS_DATA10, MUXMODE0, PULL_DISABLED, OUTPUT }, - { DSS_DATA11, MUXMODE0, PULL_DISABLED, OUTPUT }, - { DSS_DATA12, MUXMODE0, PULL_DISABLED, OUTPUT }, - { DSS_DATA13, MUXMODE0, PULL_DISABLED, OUTPUT }, - { DSS_DATA14, MUXMODE0, PULL_DISABLED, OUTPUT }, - { DSS_DATA15, MUXMODE0, PULL_DISABLED, OUTPUT }, - { DSS_DATA16, MUXMODE0, PULL_DISABLED, OUTPUT }, - { DSS_DATA17, MUXMODE0, PULL_DISABLED, OUTPUT }, - { DSS_DATA18, MUXMODE0, PULL_DISABLED, OUTPUT }, - { DSS_DATA19, MUXMODE0, PULL_DISABLED, OUTPUT }, - { DSS_DATA20, MUXMODE0, PULL_DISABLED, OUTPUT }, - { DSS_DATA21, MUXMODE0, PULL_DISABLED, OUTPUT }, - { DSS_DATA22, MUXMODE0, PULL_DISABLED, OUTPUT }, - { DSS_DATA23, MUXMODE0, PULL_DISABLED, OUTPUT }, - { CAM_HS, MUXMODE0, PULL_UP_SELECTED, INPUT }, - { CAM_VS, MUXMODE0, PULL_UP_SELECTED, INPUT }, - { CAM_XCLKA, MUXMODE0, PULL_DISABLED, OUTPUT }, - { CAM_PCLK, MUXMODE0, PULL_UP_SELECTED, INPUT }, - { CAM_FLD, MUXMODE4, PULL_DISABLED, OUTPUT }, - { CAM_D0, MUXMODE0, PULL_DISABLED, INPUT }, - { CAM_D1, MUXMODE0, PULL_DISABLED, INPUT }, - { CAM_D2, MUXMODE0, PULL_DISABLED, INPUT }, - { CAM_D3, MUXMODE0, PULL_DISABLED, INPUT }, - { CAM_D4, MUXMODE0, PULL_DISABLED, INPUT }, - { CAM_D5, MUXMODE0, PULL_DISABLED, INPUT }, - { CAM_D6, MUXMODE0, PULL_DISABLED, INPUT }, - { CAM_D7, MUXMODE0, PULL_DISABLED, INPUT }, - { CAM_D8, MUXMODE0, PULL_DISABLED, INPUT }, - { CAM_D9, MUXMODE0, PULL_DISABLED, INPUT }, - { CAM_D10, MUXMODE0, PULL_DISABLED, INPUT }, - { CAM_D11, MUXMODE0, PULL_DISABLED, INPUT }, - { CAM_XCLKB, MUXMODE0, PULL_DISABLED, OUTPUT }, - { CAM_WEN, MUXMODE4, PULL_DISABLED, INPUT }, - { CAM_STROBE, MUXMODE0, PULL_DISABLED, OUTPUT }, - { CSI2_DX0, MUXMODE0, PULL_DISABLED, INPUT }, - { CSI2_DY0, MUXMODE0, PULL_DISABLED, INPUT }, - { CSI2_DX1, MUXMODE0, PULL_DISABLED, INPUT }, - { CSI2_DY1, MUXMODE0, PULL_DISABLED, INPUT }, - { MCBSP2_FSX, MUXMODE0, PULL_DISABLED, INPUT }, - { MCBSP2_CLKX, MUXMODE0, PULL_DISABLED, INPUT }, - { MCBSP2_DR, MUXMODE0, PULL_DISABLED, INPUT }, - { MCBSP2_DX, MUXMODE0, PULL_DISABLED, OUTPUT }, - { MMC1_CLK, MUXMODE0, PULL_UP_SELECTED, OUTPUT }, - { MMC1_CMD, MUXMODE0, PULL_UP_SELECTED, INPUT }, - { MMC1_DAT0, MUXMODE0, PULL_UP_SELECTED, INPUT }, - { MMC1_DAT1, MUXMODE0, PULL_UP_SELECTED, INPUT }, - { MMC1_DAT2, MUXMODE0, PULL_UP_SELECTED, INPUT }, - { MMC1_DAT3, MUXMODE0, PULL_UP_SELECTED, INPUT }, - { MMC1_DAT4, MUXMODE0, PULL_UP_SELECTED, INPUT }, - { MMC1_DAT5, MUXMODE0, PULL_UP_SELECTED, INPUT }, - { MMC1_DAT6, MUXMODE0, PULL_UP_SELECTED, INPUT }, - { MMC1_DAT7, MUXMODE0, PULL_UP_SELECTED, INPUT }, - { MMC2_CLK, MUXMODE4, PULL_UP_SELECTED, INPUT }, - { MMC2_CMD, MUXMODE4, PULL_UP_SELECTED, INPUT }, - { MMC2_DAT0, MUXMODE4, PULL_UP_SELECTED, INPUT }, - { MMC2_DAT1, MUXMODE4, PULL_UP_SELECTED, INPUT }, - { MMC2_DAT2, MUXMODE4, PULL_UP_SELECTED, INPUT }, - { MMC2_DAT3, MUXMODE4, PULL_UP_SELECTED, INPUT }, - { MMC2_DAT4, MUXMODE4, PULL_UP_SELECTED, INPUT }, - { MMC2_DAT5, MUXMODE4, PULL_UP_SELECTED, INPUT }, - { MMC2_DAT6, MUXMODE4, PULL_UP_SELECTED, INPUT }, - { MMC2_DAT7, MUXMODE4, PULL_UP_SELECTED, INPUT }, - { MCBSP3_DX, MUXMODE4, PULL_DISABLED, OUTPUT }, - { MCBSP3_DR, MUXMODE4, PULL_DISABLED, OUTPUT }, - { MCBSP3_CLKX, MUXMODE4, PULL_DISABLED, OUTPUT }, - { MCBSP3_FSX, MUXMODE4, PULL_DISABLED, OUTPUT }, - { UART2_CTS, MUXMODE0, PULL_UP_SELECTED, INPUT }, - { UART2_RTS, MUXMODE0, PULL_DISABLED, OUTPUT }, - { UART2_TX, MUXMODE0, PULL_DISABLED, OUTPUT }, - { UART2_RX, MUXMODE4, PULL_DISABLED, OUTPUT }, - { UART1_TX, MUXMODE0, PULL_DISABLED, OUTPUT }, - { UART1_RTS, MUXMODE4, PULL_DISABLED, OUTPUT }, - { UART1_CTS, MUXMODE4, PULL_DISABLED, OUTPUT }, - { UART1_RX, MUXMODE0, PULL_DISABLED, INPUT }, - { MCBSP4_CLKX, MUXMODE1, PULL_DISABLED, INPUT }, - { MCBSP4_DR, MUXMODE1, PULL_DISABLED, INPUT }, - { MCBSP4_DX, MUXMODE1, PULL_DISABLED, INPUT }, - { MCBSP4_FSX, MUXMODE1, PULL_DISABLED, INPUT }, - { MCBSP1_CLKR, MUXMODE4, PULL_DISABLED, OUTPUT }, - { MCBSP1_FSR, MUXMODE4, PULL_UP_SELECTED, OUTPUT }, - { MCBSP1_DX, MUXMODE4, PULL_DISABLED, OUTPUT }, - { MCBSP1_DR, MUXMODE4, PULL_DISABLED, OUTPUT }, - { MCBSP1_CLKS, MUXMODE0, PULL_UP_SELECTED, INPUT }, - { MCBSP1_FSX, MUXMODE4, PULL_DISABLED, OUTPUT }, - { MCBSP1_CLKX, MUXMODE4, PULL_DISABLED, OUTPUT }, - { UART3_CTS_RCTX,MUXMODE0, PULL_UP_SELECTED, INPUT }, - { UART3_RTS_SD, MUXMODE0, PULL_DISABLED, OUTPUT }, - { UART3_RX_IRRX, MUXMODE0, PULL_DISABLED, INPUT }, - { UART3_TX_IRTX, MUXMODE0, PULL_DISABLED, OUTPUT }, - { HSUSB0_CLK, MUXMODE0, PULL_DISABLED, INPUT }, - { HSUSB0_STP, MUXMODE0, PULL_UP_SELECTED, OUTPUT }, - { HSUSB0_DIR, MUXMODE0, PULL_DISABLED, INPUT }, - { HSUSB0_NXT, MUXMODE0, PULL_DISABLED, INPUT }, - { HSUSB0_DATA0, MUXMODE0, PULL_DISABLED, INPUT }, - { HSUSB0_DATA1, MUXMODE0, PULL_DISABLED, INPUT }, - { HSUSB0_DATA2, MUXMODE0, PULL_DISABLED, INPUT }, - { HSUSB0_DATA3, MUXMODE0, PULL_DISABLED, INPUT }, - { HSUSB0_DATA4, MUXMODE0, PULL_DISABLED, INPUT }, - { HSUSB0_DATA5, MUXMODE0, PULL_DISABLED, INPUT }, - { HSUSB0_DATA6, MUXMODE0, PULL_DISABLED, INPUT }, - { HSUSB0_DATA7, MUXMODE0, PULL_DISABLED, INPUT }, - { I2C1_SCL, MUXMODE0, PULL_UP_SELECTED, INPUT }, - { I2C1_SDA, MUXMODE0, PULL_UP_SELECTED, INPUT }, - { I2C2_SCL, MUXMODE4, PULL_UP_SELECTED, INPUT }, - { I2C2_SDA, MUXMODE4, PULL_UP_SELECTED, INPUT }, - { I2C3_SCL, MUXMODE0, PULL_UP_SELECTED, INPUT }, - { I2C3_SDA, MUXMODE0, PULL_UP_SELECTED, INPUT }, - { HDQ_SIO, MUXMODE4, PULL_UP_SELECTED, OUTPUT }, - { MCSPI1_CLK, MUXMODE4, PULL_UP_SELECTED, INPUT }, - { MCSPI1_SIMO, MUXMODE4, PULL_UP_SELECTED, INPUT }, - { MCSPI1_SOMI, MUXMODE0, PULL_DISABLED, INPUT }, - { MCSPI1_CS0, MUXMODE0, PULL_UP_SELECTED, INPUT }, - { MCSPI1_CS1, MUXMODE0, PULL_UP_SELECTED, OUTPUT }, - { MCSPI1_CS2, MUXMODE4, PULL_DISABLED, OUTPUT }, - { MCSPI1_CS3, MUXMODE3, PULL_UP_SELECTED, INPUT }, - { MCSPI2_CLK, MUXMODE3, PULL_UP_SELECTED, INPUT }, - { MCSPI2_SIMO, MUXMODE3, PULL_UP_SELECTED, INPUT }, - { MCSPI2_SOMI, MUXMODE3, PULL_UP_SELECTED, INPUT }, - { MCSPI2_CS0, MUXMODE3, PULL_UP_SELECTED, INPUT }, - { MCSPI2_CS1, MUXMODE3, PULL_UP_SELECTED, INPUT }, - { SYS_NIRQ, MUXMODE0, PULL_UP_SELECTED, INPUT }, - { SYS_CLKOUT2, MUXMODE4, PULL_UP_SELECTED, INPUT }, - { ETK_CLK, MUXMODE3, PULL_UP_SELECTED, OUTPUT }, - { ETK_CTL, MUXMODE3, PULL_UP_SELECTED, OUTPUT }, - { ETK_D0, MUXMODE3, PULL_UP_SELECTED, INPUT }, - { ETK_D1, MUXMODE3, PULL_UP_SELECTED, INPUT }, - { ETK_D2, MUXMODE3, PULL_UP_SELECTED, INPUT }, - { ETK_D3, MUXMODE3, PULL_UP_SELECTED, INPUT }, - { ETK_D4, MUXMODE3, PULL_UP_SELECTED, INPUT }, - { ETK_D5, MUXMODE3, PULL_UP_SELECTED, INPUT }, - { ETK_D6, MUXMODE3, PULL_UP_SELECTED, INPUT }, - { ETK_D7, MUXMODE3, PULL_UP_SELECTED, INPUT }, - { ETK_D8, MUXMODE3, PULL_UP_SELECTED, INPUT }, - { ETK_D9, MUXMODE4, PULL_UP_SELECTED, INPUT }, - { ETK_D10, MUXMODE3, PULL_UP_SELECTED, OUTPUT }, - { ETK_D11, MUXMODE3, PULL_UP_SELECTED, OUTPUT }, - { ETK_D12, MUXMODE3, PULL_UP_SELECTED, INPUT }, - { ETK_D13, MUXMODE3, PULL_UP_SELECTED, INPUT }, - { ETK_D14, MUXMODE3, PULL_UP_SELECTED, INPUT }, - { ETK_D15, MUXMODE3, PULL_UP_SELECTED, INPUT } -}; - -VOID -PadConfiguration ( - VOID - ) -{ - UINTN Index; - UINT16 PadConfiguration; - UINTN NumPinsToConfigure = sizeof(PadConfigurationTable)/sizeof(PAD_CONFIGURATION); - - for (Index = 0; Index < NumPinsToConfigure; Index++) { - //Set up Pad configuration for particular pin. - PadConfiguration = (PadConfigurationTable[Index].MuxMode << MUXMODE_OFFSET); - PadConfiguration |= (PadConfigurationTable[Index].PullConfig << PULL_CONFIG_OFFSET); - PadConfiguration |= (PadConfigurationTable[Index].InputEnable << INPUTENABLE_OFFSET); - - //Configure the pin with specific Pad configuration. - MmioWrite16(PadConfigurationTable[Index].Pin, PadConfiguration); - } -} diff --git a/BeagleBoardPkg/Sec/Sec.c b/BeagleBoardPkg/Sec/Sec.c deleted file mode 100644 index 0708396d97..0000000000 --- a/BeagleBoardPkg/Sec/Sec.c +++ /dev/null @@ -1,186 +0,0 @@ -/** @file - C Entry point for the SEC. First C code after the reset vector. - - Copyright (c) 2008 - 2009, Apple Inc. 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 - 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. - -**/ - -#include - -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include - -#include "LzmaDecompress.h" - -VOID -PadConfiguration ( - VOID - ); - -VOID -ClockInit ( - VOID - ); - - -VOID -TimerInit ( - VOID - ) -{ - UINTN Timer = FixedPcdGet32(PcdOmap35xxFreeTimer); - UINT32 TimerBaseAddress = TimerBase(Timer); - - // Set source clock for GPT3 & GPT4 to SYS_CLK - MmioOr32 (CM_CLKSEL_PER, CM_CLKSEL_PER_CLKSEL_GPT3_SYS | CM_CLKSEL_PER_CLKSEL_GPT4_SYS); - - // Set count & reload registers - MmioWrite32 (TimerBaseAddress + GPTIMER_TCRR, 0x00000000); - MmioWrite32 (TimerBaseAddress + GPTIMER_TLDR, 0x00000000); - - // Disable interrupts - MmioWrite32 (TimerBaseAddress + GPTIMER_TIER, TIER_TCAR_IT_DISABLE | TIER_OVF_IT_DISABLE | TIER_MAT_IT_DISABLE); - - // Start Timer - MmioWrite32 (TimerBaseAddress + GPTIMER_TCLR, TCLR_AR_AUTORELOAD | TCLR_ST_ON); - - //Disable OMAP Watchdog timer (WDT2) - MmioWrite32 (WDTIMER2_BASE + WSPR, 0xAAAA); - DEBUG ((EFI_D_ERROR, "Magic delay to disable watchdog timers properly.\n")); - MmioWrite32 (WDTIMER2_BASE + WSPR, 0x5555); -} - -VOID -UartInit ( - VOID - ) -{ - UINTN Uart = FixedPcdGet32(PcdOmap35xxConsoleUart); - UINT32 UartBaseAddress = UartBase(Uart); - - // Set MODE_SELECT=DISABLE before trying to initialize or modify DLL, DLH registers. - MmioWrite32 (UartBaseAddress + UART_MDR1_REG, UART_MDR1_MODE_SELECT_DISABLE); - - // Put device in configuration mode. - MmioWrite32 (UartBaseAddress + UART_LCR_REG, UART_LCR_DIV_EN_ENABLE); - - // Programmable divisor N = 48Mhz/16/115200 = 26 - MmioWrite32 (UartBaseAddress + UART_DLL_REG, 3000000/FixedPcdGet64 (PcdUartDefaultBaudRate)); // low divisor - MmioWrite32 (UartBaseAddress + UART_DLH_REG, 0); // high divisor - - // Enter into UART operational mode. - MmioWrite32 (UartBaseAddress + UART_LCR_REG, UART_LCR_DIV_EN_DISABLE | UART_LCR_CHAR_LENGTH_8); - - // Force DTR and RTS output to active - MmioWrite32 (UartBaseAddress + UART_MCR_REG, UART_MCR_RTS_FORCE_ACTIVE | UART_MCR_DTR_FORCE_ACTIVE); - - // Clear & enable fifos - MmioWrite32 (UartBaseAddress + UART_FCR_REG, UART_FCR_TX_FIFO_CLEAR | UART_FCR_RX_FIFO_CLEAR | UART_FCR_FIFO_ENABLE); - - // Restore MODE_SELECT - MmioWrite32 (UartBaseAddress + UART_MDR1_REG, UART_MDR1_MODE_SELECT_UART_16X); -} - -VOID -InitCache ( - IN UINT32 MemoryBase, - IN UINT32 MemoryLength - ); - -EFI_STATUS -EFIAPI -ExtractGuidedSectionLibConstructor ( - VOID - ); - -EFI_STATUS -EFIAPI -LzmaDecompressLibConstructor ( - VOID - ); - - -VOID -CEntryPoint ( - IN VOID *MemoryBase, - IN UINTN MemorySize, - IN VOID *StackBase, - IN UINTN StackSize - ) -{ - VOID *HobBase; - - // Build a basic HOB list - HobBase = (VOID *)(UINTN)(FixedPcdGet32(PcdEmbeddedFdBaseAddress) + FixedPcdGet32(PcdEmbeddedFdSize)); - CreateHobList (MemoryBase, MemorySize, HobBase, StackBase); - - //Set up Pin muxing. - PadConfiguration (); - - // Set up system clocking - ClockInit (); - - - // Enable program flow prediction, if supported. - ArmEnableBranchPrediction (); - - // Initialize CPU cache - InitCache ((UINT32)MemoryBase, (UINT32)MemorySize); - - // Add memory allocation hob for relocated FD - BuildMemoryAllocationHob (FixedPcdGet32(PcdEmbeddedFdBaseAddress), FixedPcdGet32(PcdEmbeddedFdSize), EfiBootServicesData); - - // Add the FVs to the hob list - BuildFvHob (PcdGet32(PcdFlashFvMainBase), PcdGet32(PcdFlashFvMainSize)); - - // Start talking - UartInit (); - - InitializeDebugAgent (DEBUG_AGENT_INIT_PREMEM_SEC, NULL, NULL); - SaveAndSetDebugTimerInterrupt (TRUE); - - DEBUG ((EFI_D_ERROR, "UART Enabled\n")); - - // Start up a free running timer so that the timer lib will work - TimerInit (); - - // SEC phase needs to run library constructors by hand. - ExtractGuidedSectionLibConstructor (); - LzmaDecompressLibConstructor (); - - // Build HOBs to pass up our version of stuff the DXE Core needs to save space - BuildPeCoffLoaderHob (); - BuildExtractSectionHob ( - &gLzmaCustomDecompressGuid, - LzmaGuidedSectionGetInfo, - LzmaGuidedSectionExtraction - ); - - // Assume the FV that contains the SEC (our code) also contains a compressed FV. - DecompressFirstFv (); - - // Load the DXE Core and transfer control to it - LoadDxeCoreFromFv (NULL, 0); - - // DXE Core should always load and never return - ASSERT (FALSE); -} - diff --git a/BeagleBoardPkg/Sec/Sec.inf b/BeagleBoardPkg/Sec/Sec.inf deleted file mode 100644 index eb6d93c000..0000000000 --- a/BeagleBoardPkg/Sec/Sec.inf +++ /dev/null @@ -1,73 +0,0 @@ - -#/** @file -# SEC - Reset vector code that jumps to C and loads DXE core -# -# Copyright (c) 2008, Apple Inc. 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 -# 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. -# -#**/ - -[Defines] - INF_VERSION = 0x00010005 - BASE_NAME = BeagleBoardSec - FILE_GUID = d959e387-7b91-452c-90e0-a1dbac90ddb8 - MODULE_TYPE = SEC - VERSION_STRING = 1.0 - - -[Sources.ARM] - Arm/ModuleEntryPoint.S | GCC - Arm/ModuleEntryPoint.asm | RVCT - -[Sources.ARM] - Sec.c - Cache.c - PadConfiguration.c - Clock.c - -[Packages] - MdePkg/MdePkg.dec - MdeModulePkg/MdeModulePkg.dec - EmbeddedPkg/EmbeddedPkg.dec - ArmPkg/ArmPkg.dec - Omap35xxPkg/Omap35xxPkg.dec - IntelFrameworkModulePkg/IntelFrameworkModulePkg.dec - -[LibraryClasses] - BaseLib - DebugLib - ArmLib - IoLib - ExtractGuidedSectionLib - LzmaDecompressLib - OmapLib - PeCoffGetEntryPointLib - DebugAgentLib - MemoryAllocationLib - PrePiHobListPointerLib - -[FeaturePcd] - gEmbeddedTokenSpaceGuid.PcdCacheEnable - -[FixedPcd] - gEfiMdePkgTokenSpaceGuid.PcdUartDefaultBaudRate - gEmbeddedTokenSpaceGuid.PcdEmbeddedFdBaseAddress - gEmbeddedTokenSpaceGuid.PcdEmbeddedFdSize - gEmbeddedTokenSpaceGuid.PcdFlashFvMainBase - gEmbeddedTokenSpaceGuid.PcdFlashFvMainSize - gEmbeddedTokenSpaceGuid.PcdPrePiStackSize - gEmbeddedTokenSpaceGuid.PcdPrePiStackBase - gEmbeddedTokenSpaceGuid.PcdMemoryBase - gEmbeddedTokenSpaceGuid.PcdMemorySize - - gOmap35xxTokenSpaceGuid.PcdOmap35xxConsoleUart - gOmap35xxTokenSpaceGuid.PcdOmap35xxFreeTimer - - gArmTokenSpaceGuid.PcdCpuVectorBaseAddress -