summaryrefslogtreecommitdiff
path: root/ArmPkg
AgeCommit message (Collapse)Author
2011-07-06ArmPkg: Minor coding style changesoliviermartin
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11993 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-06ArmPlatformPkg: Remove PcdStandalone from Sec module and Introduce ↵oliviermartin
ArmPlatformSecExtraAction() The PcdStandalone is a PCD ARM Ltd uses to make the difference between a standalone UEFI (boot from cold boot to Boot Manager without user intervention) and a Debug UEFI firmware (the firmware engineer has to copy the Normale World image into the DRAM to enable his/her firmware). By coping the firmware into DRAM in the non standalone version it is much faster than reflashing the NOR Flash after each build. ArmPlatformSecExtraAction() function is called just before the Sec module jump to normal world. The platform firmware can run extra actions at this stage. The 'ARM Standalone' concept has moved to the implementation of ArmPlatformSecExtraAction() for the ARM development boards (in ArmPlatformPkg/Library/DebugSecExtraActionLib). ArmPlatformPkg: Enable DebugAgentLib in Sec and PrePeiCore ArmPlatformPkg: Fix line endings in some source files Use CR+LF line endings as defined by the EDK2 coding convention git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11991 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-04ArmPkg/BdsLib: Linux kernel supports either FDT or ATAGoliviermartin
If a FDT blob is passed to the kernel it is required we can load it. If we fail to load the binary then we must abort the Linux booting process. ArmPkg/CpuDxe: Ensure the reset vector passed to the CP15 VBAR register is aligned on the right boundary git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11968 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-01ArmPkg/CpuDxe: ZeroMem the gExceptionHandlers[] arrayoliviermartin
Prevent an IRQ (or any other exceptions) to make a call to an undefined handler when the interrupt handler has not been registered yet. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11965 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-01ArmPlatformPkg: Fix buildsoliviermartin
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11964 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-01ArmPkg: Move ARM Platform drivers from ArmPkg/Drivers/ to ↵oliviermartin
ArmPlatformPkg/Drivers/ The idea is to keep ArmPkg responsible for the ARM architectural modules and ArmPlatformPkg the ARM development platform packages (with their respective drivers). ArmPlatformPkg: Reduce driver dependency on ArmPlatform.h - Move some driver definitions from C-Macro to PCD values - Unify PCD driver namespace git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11956 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-28ArmPkg/BdsLib: Check if the performance timer is counting down or up in ↵oliviermartin
PrintPerformance() git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11914 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-20ArmPkg/CpuDxe: Register a callback for the gIdleLoopEventGuid eventoliviermartin
This gIdleLoopEventGuid event signals the Cpu that it should go into the idle state waiting for any events. CpuSleep() is used in this implementation to make the Cpu wait for the next interrupt (WFI instruction). git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11863 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-20ArmPkg/CpuPei: Declare the CPU HOBoliviermartin
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11862 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-20ArmPkg/CpuPei: Get the System Memory from the Resource Memory HOBoliviermartin
Declare the system memory provided by the first Resource Memory HOB as cached memory to the MMU. All the remaining memory space is declared as Device Memory. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11861 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-20ArmPkg/CpuDxe: Change chain of dependency for CpuDxe and PL390Gicoliviermartin
Previously the CPU driver had a dependency on the GIC driver. But by design is should be the opposite. The CPU driver installs the CPU protocol that exposes the exception registration function. And then, the interrupt controller registers its IRQ handler through this interface. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11860 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-15ArmPlatformPkg/Bds: Fix various bugs in the new BDSoliviermartin
The errors were: - uncaught returned error - used of uninitialized variables ArmPlatformPkg/Bds: Implement the update of MemMap Boot Device git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11830 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-15ArmPkg: Fix warnings raised by ARMGCColiviermartin
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11829 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-11ArmPlatformPkg: Unify the Secure and Normal FD and FV PCD namingoliviermartin
With this change, we now have these following PCDs values to define the location of the Secure and Normal firmwares: - gArmTokenSpaceGuid.PcdSecureFd(BaseAddress|Size) - gArmTokenSpaceGuid.PcdSecureFv(BaseAddress|Size) - gArmTokenSpaceGuid.PcdNormalFd(BaseAddress|Size) - gArmTokenSpaceGuid.PcdNormalFv(BaseAddress|Size) git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11806 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-11ArmPkg/BdsLib: Upgrade the library to use natively the Device Patholiviermartin
The previous version was using the string representation of the Device Path. This new version takes as paramater the binary representation of the Device Path It also tries to detect which kind of device support it refers by using the remaining part of the Device Path after it has been loaded by gBS->ConnectController() Lots of bug have been fixed as well in this new version. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11799 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-11ArmPkg/PL35xSmc: Split the SMC initialization in multiple Chip Select ↵oliviermartin
initialization functions Some ArmVExpress-based tiles do not map all the ArmVExpress Chips into their memory map. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11797 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-11ArmPkg: Fix coding style to follow EDK2 coding conventionoliviermartin
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11789 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-11ArmPkg/PL180MciDxe: Replace VenHw Device Path GUID by EFI_CALLER_ID_GUIDoliviermartin
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11788 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-03ArmPkg: Implement PeiServicesTablePointerLib using TPIDRURW registeroliviermartin
This implementation use the Tpidrurw software context register to store the PEI Services Table Pointer. The author of this patch is Eugene Cohen (HP). git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11750 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-03ArmPkg/CompilerIntrinsincsLib: Add div and mullu functions to ARMGCColiviermartin
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11742 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-03ArmPkg/PeCoffExtraActionLib: Add the return carriage character after ↵oliviermartin
printing the debugger command lines git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11741 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-03ArmPkg: Add comments to ArmEnableVFPoliviermartin
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11740 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-03ArmPkg: Introduce ArmSetLowVectors/ArmSetHighVectors functionsoliviermartin
These functions set/clear the SCTLR.V bit that controls the location of the Vector Table. This commit also forces the SCTLR.V to be clear when the VBAR register is set. Note: The original fix has been proposed by Eugene Cohen (HP). git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11739 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-03ArmPkg: Renamed PL354SmcSecLib into PL354SmcLiboliviermartin
There is no requirement to initialize the SMC in secure world. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11738 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-03ArmPkg: Fix the default value of PcdCpuVectorBaseAddressoliviermartin
The High Vector Table base address is 0xFFFF0000 (was 0xFFF00000). git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11737 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-03ArmPkg/PL34xDmc: Remove magic values in PL310L2Cache and clean the codeoliviermartin
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11736 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-03ArmPkg/PL310L2Cache: Remove magic values in PL310L2Cache and clean the codeoliviermartin
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11735 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-03Armkg: Fix EDK2 coding styleoliviermartin
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11734 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-03ArmPkg: Introduce the PCD PcdDebuggerExceptionSupportoliviermartin
The Exception Vector can be set before installing the CPU DXE driver to add debugger support at the early stage of the firmware initialization. If no one has touched the exception vector prior to the CPU DXE then the Vector might contain non zero data. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11733 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-03EmbeddedPkg: Move Universal/MmcDxe from ArmPkg to EmbeddedPkgoliviermartin
The MmcDxe is not ARM architecture specific. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11725 6f19259b-4bc3-4df7-8a09-765794883524
2011-04-27ArmPkg/PL180Mci: Fix buildoliviermartin
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11598 6f19259b-4bc3-4df7-8a09-765794883524
2011-04-26ArmPkg/PL180MciDxe: Use the new flag MMC_CMD_NO_CRC_RESPONSEoliviermartin
This new MMC flag defines if a CRC is attached to MMC Response. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11587 6f19259b-4bc3-4df7-8a09-765794883524
2011-04-26ArmPkg/MmcDxe: Introduce MMC_CMD_NO_CRC_RESPONSE flagoliviermartin
Some MMC Responses do not have a CRC field in their packets. This flag defines if the reponse to a MMC command skips the CRC field. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11586 6f19259b-4bc3-4df7-8a09-765794883524
2011-03-31Fix Xcode compile bug. It looks like these two arguments had an extra level ↵andrewfish
of indirection that was in error. Good thing about extra compilers is we catch this kind of thing for almost free. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11491 6f19259b-4bc3-4df7-8a09-765794883524
2011-03-31ArmPkg/Arm9Lib: Assert if memory region size is TT_DESCRIPTOR_SECTION_SIZE ↵oliviermartin
aligned The current code does not support memory region size that is not aligned on TT_DESCRIPTOR_SECTION_SIZE boundary. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11490 6f19259b-4bc3-4df7-8a09-765794883524
2011-03-31ArmPkg: Fix ArmPkg.dsc and ArmVExpress-CTA9x4.dsc buildsoliviermartin
- There were some missing and duplicate files in ArmPkg.dsc - PL301Axi.h was missing to build ArmVExpress-CTA9x4 build Note: PL34xDmc has been temporary removed from ArmPkg just the time to fix its dependency on ArmPlatform.h git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11488 6f19259b-4bc3-4df7-8a09-765794883524
2011-03-31ArmPkg: Fix InternalMemCopyMem()oliviermartin
This function crashed when regions overalapped. The condition to optimize the copy of overlapped regions was not correct. ArmPkg: Add comments to InternalMemCopyMem() These comments explain the flow of this assembly function. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11486 6f19259b-4bc3-4df7-8a09-765794883524
2011-03-31ArmPkg/ArmDisassemblerLib: Fix register listoliviermartin
'r1' register was missing from the list. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11485 6f19259b-4bc3-4df7-8a09-765794883524
2011-03-31ArmPlatformPkg/ArmPlatformLib: Move the UEFI memory partionning to MemoryInitPeioliviermartin
Formerly, each platform was responsible to declare the location of its UEFI memory region (used by PEI and DXE Foundations). The ArmPlatformLib was also declaring every region of its partitionned system memory with a System Resource HOB. In this new model, the MemoryInit expects the system memory to be declared with the PCDs gArmTokenSpaceGuid.PcdSystemMemoryBase/Size. These PCDs declare the largest continuous DRAM region. Additional regions can be declared with the ArmPLatformLib function ArmPlatformGetAdditionalSystemMemory(). Now, it is the PEIM that partitions the system memory for every platform. It installs a region of the size PcdSystemMemoryUefiRegionSize (default 128MB) for the PEI permanent memory at the top of the DRAM region. And a region of gArmPlatformTokenSpaceGuid.PcdSystemMemoryFixRegionSize (default 128MB) is declared at the base of the system memory. This region is used for the allocation that requires fixed address or have some constraints on their locations. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11481 6f19259b-4bc3-4df7-8a09-765794883524
2011-03-31ArmPkg/BdsLib: Fix GetSystemMemoryResources()oliviermartin
The function was not correctly merging the system memory chunks. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11479 6f19259b-4bc3-4df7-8a09-765794883524
2011-03-31ArmPkg/BdsLib: Prevent application to hang the platform using watchdogoliviermartin
Before to start an image we start the watchdog. And it stops when the application returns. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11478 6f19259b-4bc3-4df7-8a09-765794883524
2011-03-31ArmPlatformPkg: Rename gEmbeddedTokenSpaceGuid.PcdEmbeddedFd* into ↵oliviermartin
gArmTokenSpaceGuid.PcdNormalFd* This renaming is for matching the namespace with the secure firmware gArmTokenSpaceGuid.PcdSecureFdBaseAddress/Size. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11475 6f19259b-4bc3-4df7-8a09-765794883524
2011-03-31ArmPkg/ArmLib: Define the macro IS_ARM_MEMORY_REGION_ATTRIBUTES_SECURE()oliviermartin
This macro returns TRUE is the ARM memory region is a Secure region. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11472 6f19259b-4bc3-4df7-8a09-765794883524
2011-03-31ArmPkg/ArmV7: Fix TT_DESCRIPTOR_LARGEPAGE_CACHE_POLICY_MASK maskoliviermartin
The value for this mask was not correct. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11470 6f19259b-4bc3-4df7-8a09-765794883524
2011-03-31ArmPkg/PL390GixDxe: Return from the interrupt handler when it is a sporadic ↵oliviermartin
interrupt Sporadic interrupts must not be handled by any interrupt handlers. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11469 6f19259b-4bc3-4df7-8a09-765794883524
2011-03-31ArmPkg/CpuDxe: Replace SIZE_4KB by TT_DESCRIPTOR_PAGE_SIZEoliviermartin
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11468 6f19259b-4bc3-4df7-8a09-765794883524
2011-03-31ArmPkg/Mmu: Support page size granularity in the initial MMU settingoliviermartin
Formerly, it was only possible to use section size granularity for the translation table regions. This change allows to define initial translation table regions with 4K-byte granularty (page size granularity). git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11467 6f19259b-4bc3-4df7-8a09-765794883524
2011-03-31ArmPkg/PL180MciDxe: Improve error handlingoliviermartin
Get more error handling using PL180 status registers. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11466 6f19259b-4bc3-4df7-8a09-765794883524
2011-03-31ArmPkg/MmcDxe: Fix some returned conditions for MMC/SD commandsoliviermartin
Additional support for some states covered by the specifications. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11465 6f19259b-4bc3-4df7-8a09-765794883524
2011-03-31EmbeddedPkg/MmcDxe: Fix protocols uninstallation in Stop() functionoliviermartin
The EFI handle argument passed to disconnect the protocol was not correct. A pointer to this handle was passed as argument instead to be only the handle itself. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11464 6f19259b-4bc3-4df7-8a09-765794883524