summaryrefslogtreecommitdiff
path: root/ArmPkg
AgeCommit message (Collapse)Author
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
2011-02-03Fixes to get CodeSourcery GCC and RVCT 3.1 compiling.andrewfish
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11298 6f19259b-4bc3-4df7-8a09-765794883524
2011-02-02Fix issue with fixing tabs.andrewfish
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11297 6f19259b-4bc3-4df7-8a09-765794883524
2011-02-02Remove tabs from all text files in the package.andrewfish
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11295 6f19259b-4bc3-4df7-8a09-765794883524
2011-02-02Sync up ArmPkg with patch from mailing list. Changed name of BdsLib.h to ↵andrewfish
BdsUnixLib.h and fixed a lot of issues with Xcode building. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11293 6f19259b-4bc3-4df7-8a09-765794883524
2011-01-06Fix typo in __switchiu8() to use r0 in place of r3. andrewfish
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11234 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-15Fix semihosting on gcc. We need to save lr as svc instruction will change it. andrewfish
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11171 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-15Update remaining ARM .S files with INTERWORK_FUNC macro. This is the 2nd ↵andrewfish
half of check-in 11167. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11169 6f19259b-4bc3-4df7-8a09-765794883524