ArmPkg/Application: Add new EFI application to boot Linux

This new application support ATAG and FDT Linux kernel.
It uses the Device Tree from the EFI Configuration Table
to boot FDT aware Linux kernel.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ronald Cron <Ronald.Cron@arm.com>
Reviewed-by: Olivier Martin <Olivier.Martin@arm.com>



git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17828 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
Ronald Cron
2015-07-06 16:49:40 +00:00
committed by oliviermartin
parent e6c51eaf02
commit 23b01c83b2
20 changed files with 2787 additions and 691 deletions

View File

@@ -0,0 +1,91 @@
#/* @file
# Copyright (c) 2015, ARM Limited. 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 = 0x00010006
BASE_NAME = LinuxLoader
MODULE_UNI_FILE = LinuxLoader.uni
FILE_GUID = 701f54f2-0d70-4b89-bc0a-d9ca25379059
MODULE_TYPE = UEFI_APPLICATION
VERSION_STRING = 0.1
ENTRY_POINT = LinuxLoaderEntryPoint
[Sources]
LinuxLoader.c
LinuxLoader.h
LinuxLoader.uni
LinuxLoaderFdt.c
LinuxLoaderHelper.c
LinuxLoaderEfiApp.c
LinuxLoaderShellApp.c
[Sources.AARCH64]
AArch64/LinuxStarter.c
AArch64/LinuxStarterHelper.S
[Sources.ARM]
Arm/LinuxAtag.h
Arm/LinuxAtag.c
Arm/LinuxStarter.c
[Packages]
ArmPkg/ArmPkg.dec
EmbeddedPkg/EmbeddedPkg.dec
MdePkg/MdePkg.dec
MdeModulePkg/MdeModulePkg.dec
ShellPkg/ShellPkg.dec
[Guids]
gFdtTableGuid
[Guids]
gArmMpCoreInfoGuid
[LibraryClasses]
ArmLib
BdsLib
DebugLib
DxeServicesTableLib
FdtLib
HiiLib
HobLib
PerformanceLib
ShellLib
SerialPortLib
TimerLib
UefiApplicationEntryPoint
UefiLib
[LibraryClasses.AARCH64]
ArmGicLib
PcdLib
[Protocols]
gEfiLoadedImageProtocolGuid
gEfiDevicePathToTextProtocolGuid
gEfiShellParametersProtocolGuid
[FeaturePcd]
gArmTokenSpaceGuid.PcdArmLinuxSpinTable
[FixedPcd]
gArmTokenSpaceGuid.PcdArmLinuxFdtMaxOffset
gArmTokenSpaceGuid.PcdArmLinuxFdtAlignment
gArmTokenSpaceGuid.PcdArmLinuxKernelMaxOffset
[FixedPcd.ARM]
gArmTokenSpaceGuid.PcdArmLinuxAtagMaxOffset
[Pcd.AARCH64]
gArmTokenSpaceGuid.PcdGicDistributorBase
gArmTokenSpaceGuid.PcdGicSgiIntId