Commit Graph

11091 Commits

Author SHA1 Message Date
andrewfish 4d0ceb8dca UefiCpuPkg: Fix X64 clang compiler/assembler warnings.
Signed-off-by: andrewfish
Reviewed-by: rsun3



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11996 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-06 18:12:29 +00:00
oliviermartin 63cea7c188 BeagleBoardPkg: Introduce macro EDK2_SECOND_STAGE_BOOTOLADER
By setting this macro, the OMAP353x header is stripped from the UEFI firmware.
Some boot loader (eg: x-loader) loads the second stage boot loader (u-boot or
uefi) to a specific address and start the firmware from this address.
This macro ensures the reset vector is located at the beginning of the image.

To build the BeagleBoard with ./build.sh to enable this feature:
./build.sh -D EDK2_SECOND_STAGE_BOOTOLADER=1

Note: in this case, you must use BEAGLEBOARD_EFI.fd (and not
BeagleBoard_EFI_flashboot.fd)



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11995 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-06 16:46:44 +00:00
oliviermartin dbf6167688 ArmPlatformPkg/Documentation: Update ArmPLatformPkg documentation with PCD descriptions and explain how to port UEFI to new ARM platforms
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11994 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-06 16:37:37 +00:00
oliviermartin 438311a3bd ArmPkg: Minor coding style changes
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11993 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-06 16:35:30 +00:00
oliviermartin d269095b71 ArmPlatformPkg: Change the memory model for the ARM Platform components
In the former memory model, the UEFI firmware was expected to be located
at the top of the system memory. Stacks & Pi memory regions were set below
the firmware.
On some platform, the UEFI firmware could be shadowed by the ROM firmware
(case of the BeagleBoard) and in some cases the firmware is copied at the
beginning of the system memory.

With this new memory model, stack and Pi/DXE memory regions are set at the
top of the system memory wherever the UEFI firmware is located in the memory
map.
Because DXE core does not support shadowed firmwares, the system memory covered
by the UEFI firmware is marked as 'Non Present' to avoid to be overlapped by
DXE allocations.



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11992 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-06 16:27:21 +00:00
oliviermartin a6caee65ac ArmPlatformPkg: Remove PcdStandalone from Sec module and Introduce 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-06 16:07:54 +00:00
oliviermartin 70aa21d5d6 ArmPlatformPkg/Bds: Catch the key pressed to escape the count doan
Catch the pressed key used to not start the default boot device.
Otherwise this key would appear in the menu user input.



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11990 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-06 13:52:29 +00:00
oliviermartin bcd8fa799d ArmPlatformPkg/SP804TimerLib: Fixed the performance timer
The SP804 timer counts down. Change GetPerformanceCounterProperties ()
to declare this property.




git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11989 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-06 13:43:50 +00:00
oliviermartin 570d030a61 Omap35xxPkg/Omap35xxTimerLib: Create a TimerConstructor in the TimerLib
This constructor should be explicitely called by the Sec or PrePi phase
to initialize the OMAP353x timers.

This function is a copy of the Timer initialization function in BeagleBoardPkg/Sec.



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11988 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-06 12:52:01 +00:00
niruiyu 284ee2e829 Fix the comments to follow UEFI Spec regarding how to check an EFI_HANDLE is valid/invalid.
Signed-off-by: niruiyu
Reviewed-by: lgao4

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11987 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-06 03:55:36 +00:00
niruiyu 0c9f676d50 Fix the comments to follow UEFI Spec regarding how to check an EFI_HANDLE is valid/invalid.
Signed-off-by: niruiyu
Reviewed-by: lgao4

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11986 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-06 03:47:08 +00:00
niruiyu d9de792182 Fix the comments to follow UEFI Spec regarding how to check an EFI_HANDLE is valid/invalid.
Signed-off-by: niruiyu
Reviewed-by: lgao4

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11985 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-06 03:44:35 +00:00
niruiyu b28b274d08 Fix the comments to follow UEFI Spec regarding how to check an EFI_HANDLE is valid/invalid.
Signed-off-by: niruiyu
Reviewed-by: lgao4

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11984 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-06 03:44:19 +00:00
niruiyu a97a859621 Enhance BDS to avoid the additional reset when the platform pre-allocated memory is large enough.
Signed-off-by: niruiyu
Reviewed-by: mdkinney
Reviewed-by: lgao4

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11983 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-06 03:23:15 +00:00
ydong10 c3342aa81f correct leap year calculate method.
Signed-off-by:ydong10
Reviewed-by:hhtian


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11982 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-05 09:30:49 +00:00
niruiyu 69cb32fca2 Fix the comments to follow UEFI Spec regarding how to check an EFI_HANDLE is valid/invalid.
Signed-off-by: niruiyu
Reviewed-by: lgao4

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11981 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-05 09:22:57 +00:00
niruiyu c2d9a4d253 Fix the comments to follow UEFI Spec regarding how to check an EFI_HANDLE is valid/invalid.
Signed-off-by: niruiyu
Reviewed-by: lgao4

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11980 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-05 09:21:58 +00:00
niruiyu 15ee13fca7 Fix the comments to follow UEFI Spec regarding how to check an EFI_HANDLE is valid/invalid.
Signed-off-by: niruiyu
Reviewed-by: lgao4

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11979 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-05 09:21:22 +00:00
ydong10 fd94fb3be9 Refine name definition for better user experience.
Signed-off-by:ydong10
Reviewed-by:lgao4


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11978 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-05 08:49:55 +00:00
ydong10 508b4e77f6 Enable value roll over when hit max or min.
Update the maximum value when input day field in date opcode.

Signed-off-by:ydong10
Reviewed-by:lgao4

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11977 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-05 08:28:23 +00:00
ydong10 715cf6dd7e Refine code to avoid potential access violation.
Signed-off-by:ydong10
Reviewed-by:lgao4








git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11976 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-05 08:24:22 +00:00
ydong10 d88ca2c90d Keep the highlight field after user changes the value for time/date opcode
Signed-off-by:ydong10
Reviewed-by:lgao4







git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11975 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-05 08:20:43 +00:00
niruiyu 889a4bc2a9 Fix the BDS to show UEFI hard drive boot option as "EFI Hard Drive" instead of "EFI DVD/CDROM"
Signed-off-by: niruiyu
Reviewed-by: li-elvin

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11974 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-05 07:55:45 +00:00
li-elvin 5d0066d872 Return the correct status at the last of UnregisterAtaDevice.
Signed-off-by: li-elvin
Reviewed-by: erictian, hhuan13


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11973 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-05 04:34:03 +00:00
qianouyang 9972247d89 Add the support for Boot Option with all 0xff USB class Device Path.
Signed-off-by: qianouyang
Reviewed-by: xdu2
Reviewed-by: niruiyu

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11972 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-05 02:08:21 +00:00
oliviermartin 60884a0ae3 BeagleBoardPkg: Fix build
BeagleBoardPkg: Switch to ArmPLatformPkg/Bds

The ArmPlatformPkg/Bds is able to boot Linux. Set the default boot device
for the BeagleBoardc to the SD card.




git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11971 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-04 13:43:58 +00:00
oliviermartin fb42fffeb8 ArmPlatformPkg: Fix build issues
Other compiler version ... other warnings



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11970 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-04 10:18:18 +00:00
oliviermartin d326412cce Omap35xxPkg/InterruptDxe: Fix dependency chain with the Arch Cpu Dxe
The CPU Dxe should be loaded before the Interrupt Dxe.




git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11969 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-04 10:09:04 +00:00
oliviermartin 1c1e70fa6e ArmPkg/BdsLib: Linux kernel supports either FDT or ATAG
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-04 10:02:49 +00:00
xdu2 f3de0a607d MdeModulePkg: Add unload support for SnpDxe and fix NULL ImageHandle in EfiLibInstallDriverBindingComponentName2() in driver entry point.
Signed-off-by: xdu2
Reviewed-by: vanjeff

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11967 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-04 07:33:34 +00:00
oliviermartin 597cb96fa3 ArmPlatformPkg: Update the list of the BaseTools pending patches and the documentation
To make the life easier for the user, I compiled the patches into a single patch
'BaseTools-Pending-Patches.patch'.



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11966 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-01 20:26:17 +00:00
oliviermartin 6e88239331 ArmPkg/CpuDxe: ZeroMem the gExceptionHandlers[] array
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-01 20:02:14 +00:00
oliviermartin 3723a71a33 ArmPlatformPkg: Fix builds
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11964 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-01 19:51:48 +00:00
oliviermartin cb5bf2697d ArmPlatformPkg: Set an empty value to the argument of the default boot entry
Set gArmPlatformTokenSpaceGuid.PcdDefaultBootArgument with the empty string
in DSC files.



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11963 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-01 17:01:37 +00:00
andrewfish 5407ce1895 EmulatorPkg: update New Shell build for new PathLib. Turn off GuardMalloc library as the default for the Shell.
signed-off-by: andrewfish


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11962 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-01 16:58:47 +00:00
oliviermartin 4d900a638e ArmPlatformPkg: Replace the macro $(BUILD_TARGETS) by $(TARGET) in DSC file
The $(BUILD_TARGETS) macro was used to make the difference between DEBUG and
RELEASE builds. The $(TARGET) macro should be used instead.



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11961 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-01 16:58:28 +00:00
oliviermartin 06a8973319 ArmPlatformPkg/PL34xDmc: Remove DMC base address from the DMC configuration
By removing the DMC Base Address from the structure, we can reuse the same DMC
configuration for two similar DMC controllers.



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11960 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-01 16:50:59 +00:00
oliviermartin c52e2dca64 ArmPlatformPkg/PL35xSmc: Clean SMC driver to replace hardcoded Chip Select into the driver itself by passing SMC configuration to the driver
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11959 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-01 16:33:22 +00:00
oliviermartin 3c4b742c18 ArmPlatformPkg/PrePiHobListPointerLib: Get the HobListPointer from the stop of the stack
When using ArmPlatformPkg/PrePeiCore or ArmPlatformPkg/PrePi, the global variable during
the XIP phase are stored on the top of the stack.
Global variables are defined by their PCD offset from the top of this stack.

For example, the HobListPtr is defined at the offset PcdHobListPtrGlobalOffset.



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11958 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-01 15:45:52 +00:00
oliviermartin 633724f462 ArmPkg: Move ARM Platform drivers from ArmPkg/Drivers/ to ArmPlatformPkg/Drivers/ (2)
... svn did not like my way to move folder from one directory to another one :-/




git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11957 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-01 15:40:16 +00:00
oliviermartin 5cc45b70c3 ArmPkg: Move ARM Platform drivers from ArmPkg/Drivers/ to 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-07-01 15:30:01 +00:00
oliviermartin 7fb54d9d04 EmbeddedPkg: Removed unused PCD values
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11955 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-01 14:41:25 +00:00
oliviermartin d60b4c43c1 EmbeddedPkg/Ebl: Check if gST->ConOut has been initialized
An exception error occured in EBL when gST->ConOut had not been intialized.



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11954 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-01 14:37:16 +00:00
oliviermartin 64e03133cc ArmPlatformPkg: Add support for PrePi module
This module is enabled for ArmRealViewEb and ArmvExpress builds
when the macro EDK2_SKIP_PEICORE is passed to the build system.

The PrePi module can be used when the DRAM has already been initialized
by the SEC phase/1st stage boot loader and no call to external PEIM is
required.



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11953 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-01 14:33:26 +00:00
oliviermartin bf72cf3381 ArmPlatformPkg: Move PcdStandalone from Feature PCD to Fixed PCD
Feature PCDs cannot be used in assembly files.
The PcdStandalone PCD is needed in one of the assembly file of the
ArmPlatformPkg/PrePi module.



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11952 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-01 14:21:12 +00:00
oliviermartin 4883513061 ArmPlatformPkg/PlatformPei: Generate a library from the PEI Module
In the aim to reuse the Platform Pei features in a PrePi module (use to
skip the PEI Core), this module has been divided into two files:
- PlatformPeiLib: declare the platform HOBs
- PlatformPeim: PEIM wrapper for the library



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11951 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-01 11:45:32 +00:00
oliviermartin 3a6eaccf2f ArmPlatformPkg/MemoryInitPei: Generate a library from the PEI Module
In the aim to reuse the memory init features in a PrePi module (use to
skip the PEI Core), this module has been divided into two files:
- MemoryInitPeiLib: declare the memory HOBs
- MemoryIniPeim: PEIM warpper for the library



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11950 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-01 11:41:53 +00:00
oliviermartin cd872e401a ArmPlatformPkg/PrePi: Add support for PrePi module
This module should handle the Pre PI phase before the DXE core is
executed when there is no PEI Core support.
It declares the required information needed by the DXE core through HOBs.



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11949 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-01 11:09:00 +00:00
oliviermartin f6eab262f0 EmbeddedPkg/PrePiLib: Export HobConstructor()
This function only create the HOB Handoff Info Table structure in memory.
In opposition to CreateHobList() that creates the structure and starts to
populate it with few HOBs.



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11948 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-01 11:00:47 +00:00
oliviermartin 32f718cf06 EmbeddedPkg/PrePiHobListPointerLib: New interface to abstract the HobListPointer storage
This interface allows to use different mechanism to store the HobList Pointer.


EmbeddedPkg/PrePiHobListPointerLib: Implementation of PrePiHobListPointerLib using PCD

This library uses a PCD to store the location of the HobList Pointer.



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11947 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-01 10:59:06 +00:00