oliviermartin
a355a3654f
ArmPkg/BdsLib: Upgrade the library to use natively the Device Path
...
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-11 11:56:30 +00:00
oliviermartin
f501f5d1b5
ArmPkg/PL35xSmc: Split the SMC initialization in multiple Chip Select 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-11 11:26:42 +00:00
oliviermartin
9e2b420ee9
ArmPkg: Fix coding style to follow EDK2 coding convention
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11789 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-11 11:15:55 +00:00
oliviermartin
838725abd7
ArmPkg/PL180MciDxe: Replace VenHw Device Path GUID by EFI_CALLER_ID_GUID
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11788 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-11 11:14:51 +00:00
oliviermartin
0530bfe360
ArmPkg: Implement PeiServicesTablePointerLib using TPIDRURW register
...
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-03 09:43:12 +00:00
oliviermartin
f0a7a8ce23
ArmPkg/CompilerIntrinsincsLib: Add div and mullu functions to ARMGCC
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11742 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-03 09:28:40 +00:00
oliviermartin
e748229889
ArmPkg/PeCoffExtraActionLib: Add the return carriage character after 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-03 09:26:44 +00:00
oliviermartin
4705b7da4b
ArmPkg: Add comments to ArmEnableVFP
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11740 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-03 09:25:51 +00:00
oliviermartin
f0fef790ff
ArmPkg: Introduce ArmSetLowVectors/ArmSetHighVectors functions
...
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-03 09:25:01 +00:00
oliviermartin
e7f7105ba0
ArmPkg: Renamed PL354SmcSecLib into PL354SmcLib
...
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-03 09:23:19 +00:00
oliviermartin
5a4b8c6a55
ArmPkg: Fix the default value of PcdCpuVectorBaseAddress
...
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-03 09:22:32 +00:00
oliviermartin
8be5d4d65e
ArmPkg/PL34xDmc: Remove magic values in PL310L2Cache and clean the code
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11736 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-03 09:21:30 +00:00
oliviermartin
51d191aad5
ArmPkg/PL310L2Cache: Remove magic values in PL310L2Cache and clean the code
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11735 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-03 09:20:30 +00:00
oliviermartin
63adfb1129
Armkg: Fix EDK2 coding style
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11734 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-03 09:18:48 +00:00
oliviermartin
eeec69c5dc
ArmPkg: Introduce the PCD PcdDebuggerExceptionSupport
...
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-03 09:18:00 +00:00
oliviermartin
ce73d60afb
EmbeddedPkg: Move Universal/MmcDxe from ArmPkg to EmbeddedPkg
...
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-06-03 09:07:31 +00:00
oliviermartin
2cf57c92af
ArmPkg/PL180Mci: Fix build
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11598 6f19259b-4bc3-4df7-8a09-765794883524
2011-04-27 17:07:34 +00:00
oliviermartin
50c5f18731
ArmPkg/PL180MciDxe: Use the new flag MMC_CMD_NO_CRC_RESPONSE
...
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-26 16:54:05 +00:00
oliviermartin
2b826e7350
ArmPkg/MmcDxe: Introduce MMC_CMD_NO_CRC_RESPONSE flag
...
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-04-26 16:44:46 +00:00
andrewfish
8ea50d2e4a
Fix Xcode compile bug. It looks like these two arguments had an extra level 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-31 15:31:36 +00:00
oliviermartin
2e3650d97d
ArmPkg/Arm9Lib: Assert if memory region size is TT_DESCRIPTOR_SECTION_SIZE 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-31 13:06:48 +00:00
oliviermartin
709497d198
ArmPkg: Fix ArmPkg.dsc and ArmVExpress-CTA9x4.dsc builds
...
- 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-31 12:55:48 +00:00
oliviermartin
643ec0e7c1
ArmPkg: Fix InternalMemCopyMem()
...
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-31 12:26:20 +00:00
oliviermartin
61afd6a9e2
ArmPkg/ArmDisassemblerLib: Fix register list
...
'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-31 12:24:44 +00:00
oliviermartin
964680c124
ArmPlatformPkg/ArmPlatformLib: Move the UEFI memory partionning to MemoryInitPei
...
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-31 12:21:41 +00:00
oliviermartin
cf3a77a02a
ArmPkg/BdsLib: Fix GetSystemMemoryResources()
...
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-31 12:17:37 +00:00
oliviermartin
bad880b172
ArmPkg/BdsLib: Prevent application to hang the platform using watchdog
...
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-31 12:16:28 +00:00
oliviermartin
262a9b0444
ArmPlatformPkg: Rename gEmbeddedTokenSpaceGuid.PcdEmbeddedFd* into 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-31 12:11:12 +00:00
oliviermartin
1e6a5cfcec
ArmPkg/ArmLib: Define the macro IS_ARM_MEMORY_REGION_ATTRIBUTES_SECURE()
...
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-31 11:33:42 +00:00
oliviermartin
53205a55e8
ArmPkg/ArmV7: Fix TT_DESCRIPTOR_LARGEPAGE_CACHE_POLICY_MASK mask
...
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-31 11:29:46 +00:00
oliviermartin
fe93eba096
ArmPkg/PL390GixDxe: Return from the interrupt handler when it is a sporadic 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-31 11:28:25 +00:00
oliviermartin
2297613a3f
ArmPkg/CpuDxe: Replace SIZE_4KB by TT_DESCRIPTOR_PAGE_SIZE
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11468 6f19259b-4bc3-4df7-8a09-765794883524
2011-03-31 11:26:00 +00:00
oliviermartin
2cf4b60895
ArmPkg/Mmu: Support page size granularity in the initial MMU setting
...
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-31 11:23:55 +00:00
oliviermartin
2ed2ed29c2
ArmPkg/PL180MciDxe: Improve error handling
...
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-31 11:20:15 +00:00
oliviermartin
a1ab9143e2
ArmPkg/MmcDxe: Fix some returned conditions for MMC/SD commands
...
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-31 11:16:02 +00:00
oliviermartin
6102636abc
EmbeddedPkg/MmcDxe: Fix protocols uninstallation in Stop() function
...
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-03-31 11:11:59 +00:00
andrewfish
507ebc1a35
Fixes to get CodeSourcery GCC and RVCT 3.1 compiling.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11298 6f19259b-4bc3-4df7-8a09-765794883524
2011-02-03 01:49:07 +00:00
andrewfish
2ac288f919
Fix issue with fixing tabs.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11297 6f19259b-4bc3-4df7-8a09-765794883524
2011-02-02 23:19:30 +00:00
andrewfish
58b5d037b4
Remove tabs from all text files in the package.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11295 6f19259b-4bc3-4df7-8a09-765794883524
2011-02-02 22:52:07 +00:00
andrewfish
1bfda055df
Sync up ArmPkg with patch from mailing list. Changed name of BdsLib.h to 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-02-02 22:35:30 +00:00
andrewfish
98fc7c77ac
Fix typo in __switchiu8() to use r0 in place of r3.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11234 6f19259b-4bc3-4df7-8a09-765794883524
2011-01-06 21:46:54 +00:00
andrewfish
7d9524051e
Fix semihosting on gcc. We need to save lr as svc instruction will change it.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11171 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-15 02:39:00 +00:00
andrewfish
63ca740217
Update remaining ARM .S files with INTERWORK_FUNC macro. This is the 2nd half of check-in 11167.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11169 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-15 01:06:20 +00:00
andrewfish
d9629029f2
Add support for semihosting with GCC. Still needs more testing.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11168 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-15 01:00:54 +00:00
andrewfish
5792e320d3
Fix build break on Apple Xcode, caused by fixing normal gcc build break.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11166 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-14 22:45:46 +00:00
andrewfish
fe295078f2
Add vpush/vpop to the exception handler as we added CopyMem/SetMem that can use NEON registers to speed things up. This means we need to save state so we don't blow up a CopyMem.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11130 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-08 00:14:23 +00:00
hhtian
b28fe0e209
update copyright format
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10857 6f19259b-4bc3-4df7-8a09-765794883524
2010-09-08 03:15:05 +00:00
andrewfish
934309d58e
Add a temp BasePeCoffLib that deals with MOVT instruction. At this point we don't know how the PE/COFF spec will change, but we can merge the real change into the MdePkg when the PE/COFF spec is updated and remove this library. To be clear I made up the PE/COFF relocation extension for these relocations, but as long as the tools match it all works.... Mainly doing this to support gcc.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10762 6f19259b-4bc3-4df7-8a09-765794883524
2010-07-31 01:50:35 +00:00
andrewfish
28d1916584
Fix Xcode build break.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10713 6f19259b-4bc3-4df7-8a09-765794883524
2010-07-29 18:26:19 +00:00
andrewfish
54a7013153
Fix CodeSourcery 2010q1 link issue by adding missing intrinsics
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10692 6f19259b-4bc3-4df7-8a09-765794883524
2010-07-25 05:38:36 +00:00