From 0ead5ec47d2f99be067ac2867a3e6b62bc1a7895 Mon Sep 17 00:00:00 2001 From: Ronald Cron Date: Tue, 14 Jul 2015 14:32:24 +0000 Subject: [PATCH] ArmPlatformPkg: Add the LinuxLoader.efi EFI application Add the legacy Linux Loader EFI application to the ARM development platforms. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ronald Cron Reviewed-by: Olivier Martin git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17968 6f19259b-4bc3-4df7-8a09-765794883524 --- ArmPlatformPkg/ArmJunoPkg/ArmJuno.fdf | 1 + ArmPlatformPkg/ArmPlatformPkg-2ndstage.dsc | 12 ++++++++++++ ArmPlatformPkg/ArmPlatformPkg-2ndstage.fdf | 4 +++- ArmPlatformPkg/ArmPlatformPkg.dsc | 13 +++++++++++++ ArmPlatformPkg/ArmPlatformPkg.fdf | 4 +++- .../ArmRealViewEb-RTSM-MPCore.fdf | 4 +++- .../ArmRealViewEb-RTSM-UniCore.fdf | 5 ++++- .../ArmRealViewEbPkg/ArmRealViewEb.dsc.inc | 17 +++++++++++++++-- .../ArmVExpressPkg/ArmVExpress-CTA15-A7.dsc | 2 +- .../ArmVExpressPkg/ArmVExpress-CTA15-A7.fdf | 3 +++ .../ArmVExpressPkg/ArmVExpress-CTA9x4.dsc | 2 +- .../ArmVExpressPkg/ArmVExpress-CTA9x4.fdf | 3 +++ .../ArmVExpressPkg/ArmVExpress-FVP-AArch64.fdf | 3 +++ .../ArmVExpressPkg/ArmVExpress-RTSM-A15.dsc | 2 +- .../ArmVExpressPkg/ArmVExpress-RTSM-A15.fdf | 3 +++ .../ArmVExpress-RTSM-A15_MPCore.dsc | 2 +- .../ArmVExpress-RTSM-A15_MPCore.fdf | 3 +++ .../ArmVExpressPkg/ArmVExpress-RTSM-A9x4.dsc | 3 ++- .../ArmVExpressPkg/ArmVExpress-RTSM-A9x4.fdf | 3 +++ .../ArmVExpress-RTSM-AEMv8Ax4-foundation.fdf | 3 +++ .../ArmVExpress-RTSM-AEMv8Ax4.fdf | 3 +++ .../ArmVExpressPkg/ArmVExpress.dsc.inc | 5 ++++- BeagleBoardPkg/BeagleBoardPkg.dsc | 14 +++++++++++++- BeagleBoardPkg/BeagleBoardPkg.fdf | 3 +++ 24 files changed, 104 insertions(+), 13 deletions(-) diff --git a/ArmPlatformPkg/ArmJunoPkg/ArmJuno.fdf b/ArmPlatformPkg/ArmJunoPkg/ArmJuno.fdf index 9a3bf02bd8..0012efcef5 100644 --- a/ArmPlatformPkg/ArmJunoPkg/ArmJuno.fdf +++ b/ArmPlatformPkg/ArmJunoPkg/ArmJuno.fdf @@ -190,6 +190,7 @@ FvNameGuid = B73FE497-B92E-416e-8326-45AD0D270092 # UEFI applications # INF ShellBinPkg/UefiShell/UefiShell.inf + INF ArmPkg/Application/LinuxLoader/LinuxLoader.inf # # Juno platform driver diff --git a/ArmPlatformPkg/ArmPlatformPkg-2ndstage.dsc b/ArmPlatformPkg/ArmPlatformPkg-2ndstage.dsc index 4cfb913b8e..76415fec58 100644 --- a/ArmPlatformPkg/ArmPlatformPkg-2ndstage.dsc +++ b/ArmPlatformPkg/ArmPlatformPkg-2ndstage.dsc @@ -89,6 +89,11 @@ # Networking Requirements for ArmPlatformPkg/Bds NetLib|MdeModulePkg/Library/DxeNetLib/DxeNetLib.inf + # These libraries are used by the dynamic EFI Shell commands + ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf + FileHandleLib|MdePkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf + SortLib|MdeModulePkg/Library/UefiSortLib/UefiSortLib.inf + # EBL Related Libraries EblCmdLib|ArmPlatformPkg/Library/EblCmdLib/EblCmdLib.inf EfiFileLib|EmbeddedPkg/Library/EfiFileLib/EfiFileLib.inf @@ -298,6 +303,11 @@ gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiLoaderCode|20 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiLoaderData|0 + # We want to use the Shell Libraries but don't want it to initialise + # automatically. We initialise the libraries when the command is called by the + # Shell. + gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE + # # ARM Pcds # @@ -369,3 +379,5 @@ MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf ArmPlatformPkg/Bds/Bds.inf + # Legacy Linux Loader + ArmPkg/Application/LinuxLoader/LinuxLoader.inf diff --git a/ArmPlatformPkg/ArmPlatformPkg-2ndstage.fdf b/ArmPlatformPkg/ArmPlatformPkg-2ndstage.fdf index 86a94c19fa..9c35ebb2f4 100644 --- a/ArmPlatformPkg/ArmPlatformPkg-2ndstage.fdf +++ b/ArmPlatformPkg/ArmPlatformPkg-2ndstage.fdf @@ -1,5 +1,5 @@ # -# Copyright (c) 2011-2014, ARM Limited. All rights reserved. +# Copyright (c) 2011-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 @@ -129,6 +129,8 @@ FvNameGuid = 5eda4200-2c5f-43cb-9da3-0baf74b1b30c INF MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf INF ArmPlatformPkg/Bds/Bds.inf + # Legacy Linux Loader + INF ArmPkg/Application/LinuxLoader/LinuxLoader.inf [FV.FVMAIN_COMPACT] FvAlignment = 8 diff --git a/ArmPlatformPkg/ArmPlatformPkg.dsc b/ArmPlatformPkg/ArmPlatformPkg.dsc index f9f217cd61..0147146322 100644 --- a/ArmPlatformPkg/ArmPlatformPkg.dsc +++ b/ArmPlatformPkg/ArmPlatformPkg.dsc @@ -88,6 +88,11 @@ # Networking Requirements for ArmPlatformPkg/Bds NetLib|MdeModulePkg/Library/DxeNetLib/DxeNetLib.inf + # These libraries are used by the dynamic EFI Shell commands + ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf + FileHandleLib|MdePkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf + SortLib|MdeModulePkg/Library/UefiSortLib/UefiSortLib.inf + # EBL Related Libraries EblCmdLib|ArmPlatformPkg/Library/EblCmdLib/EblCmdLib.inf EfiFileLib|EmbeddedPkg/Library/EfiFileLib/EfiFileLib.inf @@ -331,6 +336,11 @@ gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiLoaderCode|20 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiLoaderData|0 + # We want to use the Shell Libraries but don't want it to initialise + # automatically. We initialise the libraries when the command is called by the + # Shell. + gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE + # # ARM Pcds # @@ -434,3 +444,6 @@ # MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf ArmPlatformPkg/Bds/Bds.inf + + # Legacy Linux Loader + ArmPkg/Application/LinuxLoader/LinuxLoader.inf diff --git a/ArmPlatformPkg/ArmPlatformPkg.fdf b/ArmPlatformPkg/ArmPlatformPkg.fdf index 36ca8b0850..0dd98498f1 100644 --- a/ArmPlatformPkg/ArmPlatformPkg.fdf +++ b/ArmPlatformPkg/ArmPlatformPkg.fdf @@ -1,5 +1,5 @@ # -# Copyright (c) 2011-2014, ARM Limited. All rights reserved. +# Copyright (c) 2011-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 @@ -178,6 +178,8 @@ FvNameGuid = 8fa66cd0-f773-4f26-8f9f-5e54d0804c68 INF MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf INF ArmPlatformPkg/Bds/Bds.inf + # Legacy Linux Loader + INF ArmPkg/Application/LinuxLoader/LinuxLoader.inf [FV.FVMAIN_COMPACT] FvAlignment = 8 diff --git a/ArmPlatformPkg/ArmRealViewEbPkg/ArmRealViewEb-RTSM-MPCore.fdf b/ArmPlatformPkg/ArmRealViewEbPkg/ArmRealViewEb-RTSM-MPCore.fdf index bedcf77c53..85c74df3c1 100644 --- a/ArmPlatformPkg/ArmRealViewEbPkg/ArmRealViewEb-RTSM-MPCore.fdf +++ b/ArmPlatformPkg/ArmRealViewEbPkg/ArmRealViewEb-RTSM-MPCore.fdf @@ -1,6 +1,6 @@ # FLASH layout file for ARM RealView EB. # -# Copyright (c) 2011-2014, ARM Limited. All rights reserved. +# Copyright (c) 2011-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 @@ -177,6 +177,8 @@ FvNameGuid = 14801114-da6a-4113-985b-dc876337a15e INF MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf INF ArmPlatformPkg/Bds/Bds.inf + # Legacy Linux Loader + INF ArmPkg/Application/LinuxLoader/LinuxLoader.inf [FV.FVMAIN_COMPACT] FvAlignment = 8 diff --git a/ArmPlatformPkg/ArmRealViewEbPkg/ArmRealViewEb-RTSM-UniCore.fdf b/ArmPlatformPkg/ArmRealViewEbPkg/ArmRealViewEb-RTSM-UniCore.fdf index c6acf9ef44..55257c29b1 100644 --- a/ArmPlatformPkg/ArmRealViewEbPkg/ArmRealViewEb-RTSM-UniCore.fdf +++ b/ArmPlatformPkg/ArmRealViewEbPkg/ArmRealViewEb-RTSM-UniCore.fdf @@ -1,7 +1,7 @@ # FLASH layout file for ARM RealView EB. # # Copyright (c) 2009 - 2010, Apple Inc. All rights reserved.
-# Copyright (c) 2011 - 2014, ARM Limited. All rights reserved. +# Copyright (c) 2011 - 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 @@ -178,6 +178,9 @@ FvNameGuid = 14801114-da6a-4113-985b-dc876337a15e INF MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf INF ArmPlatformPkg/Bds/Bds.inf + # Legacy Linux Loader + INF ArmPkg/Application/LinuxLoader/LinuxLoader.inf + [FV.FVMAIN_COMPACT] FvAlignment = 8 diff --git a/ArmPlatformPkg/ArmRealViewEbPkg/ArmRealViewEb.dsc.inc b/ArmPlatformPkg/ArmRealViewEbPkg/ArmRealViewEb.dsc.inc index d0889f5a4d..6232791b6b 100644 --- a/ArmPlatformPkg/ArmRealViewEbPkg/ArmRealViewEb.dsc.inc +++ b/ArmPlatformPkg/ArmRealViewEbPkg/ArmRealViewEb.dsc.inc @@ -105,6 +105,11 @@ GdbSerialLib|ArmPlatformPkg/ArmRealViewEbPkg/Library/GdbSerialLib/GdbSerialLib.inf + # These libraries are used by the dynamic EFI Shell commands + ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf + FileHandleLib|MdePkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf + SortLib|MdeModulePkg/Library/UefiSortLib/UefiSortLib.inf + # BDS Libraries BdsLib|ArmPkg/Library/BdsLib/BdsLib.inf FdtLib|EmbeddedPkg/Library/FdtLib/FdtLib.inf @@ -303,13 +308,18 @@ gArmPlatformTokenSpaceGuid.PcdPL180SysMciRegAddress|0x10000048 gArmPlatformTokenSpaceGuid.PcdPL180MciBaseAddress|0x10005000 + # We want to use the Shell Libraries but don't want it to initialise + # automatically. We initialise the libraries when the command is called by the + # Shell. + gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE + # # ARM OS Loader # gArmTokenSpaceGuid.PcdArmMachineType|827 gArmPlatformTokenSpaceGuid.PcdDefaultBootDescription|L"SemiHosting" - gArmPlatformTokenSpaceGuid.PcdDefaultBootDevicePath|L"VenHw(C5B9C74A-6D72-4719-99AB-C59F199091EB)/zImage-RTSM" - gArmPlatformTokenSpaceGuid.PcdDefaultBootType|1 + gArmPlatformTokenSpaceGuid.PcdDefaultBootDevicePath|L"Fv(14801114-DA6A-4113-985B-DC876337A15E)/LinuxLoader.efi" + gArmPlatformTokenSpaceGuid.PcdDefaultBootArgument|L"VenHw(C5B9C74A-6D72-4719-99AB-C59F199091EB)/zImage-RTSM -a 827 -c \"console=ttyAMA0,38400n8\"" # Use the Serial console (ConIn & ConOut) and the Graphic driver (ConOut) gArmPlatformTokenSpaceGuid.PcdDefaultConOutPaths|L"VenHw(D3987D4B-971A-435F-8CAF-4967EB627241)/Uart(115200,8,N,1)/VenPcAnsi();VenHw(407B4008-BF5B-11DF-9547-CF16E0D72085)" @@ -325,3 +335,6 @@ # FV Filesystem MdeModulePkg/Universal/FvSimpleFileSystemDxe/FvSimpleFileSystemDxe.inf + + # Legacy Linux Loader + ArmPkg/Application/LinuxLoader/LinuxLoader.inf diff --git a/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-CTA15-A7.dsc b/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-CTA15-A7.dsc index 318c2cf7e4..3b693c2afa 100644 --- a/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-CTA15-A7.dsc +++ b/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-CTA15-A7.dsc @@ -184,7 +184,7 @@ # Versatile Express machine type (ARM VERSATILE EXPRESS = 2272) required for ARM Linux: gArmTokenSpaceGuid.PcdArmMachineType|2272 gArmPlatformTokenSpaceGuid.PcdDefaultBootDescription|L"Linux from NorFlash" - gArmPlatformTokenSpaceGuid.PcdDefaultBootDevicePath|L"VenHw(1F15DA3C-37FF-4070-B471-BB4AF12A724A)/MemoryMapped(0x0,0xE000000,0xE800000)" + gArmPlatformTokenSpaceGuid.PcdDefaultBootDevicePath|L"VenHw(1F15DA3C-37FF-4070-B471-BB4AF12A724A)/Image" gArmPlatformTokenSpaceGuid.PcdDefaultBootArgument|"console=ttyAMA0,38400 earlyprintk debug verbose" gArmPlatformTokenSpaceGuid.PcdDefaultBootType|2 diff --git a/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-CTA15-A7.fdf b/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-CTA15-A7.fdf index b5f8f72b7d..a7210482f6 100644 --- a/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-CTA15-A7.fdf +++ b/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-CTA15-A7.fdf @@ -171,6 +171,9 @@ FvNameGuid = 73dcb643-3862-4904-9076-a94af1890243 INF MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf INF ArmPlatformPkg/Bds/Bds.inf + # Legacy Linux Loader + INF ArmPkg/Application/LinuxLoader/LinuxLoader.inf + # FV Filesystem INF MdeModulePkg/Universal/FvSimpleFileSystemDxe/FvSimpleFileSystemDxe.inf diff --git a/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-CTA9x4.dsc b/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-CTA9x4.dsc index ad4e7bf1aa..baa54789a0 100644 --- a/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-CTA9x4.dsc +++ b/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-CTA9x4.dsc @@ -183,7 +183,7 @@ # Versatile Express machine type (ARM VERSATILE EXPRESS = 2272) required for ARM Linux: gArmTokenSpaceGuid.PcdArmMachineType|2272 gArmPlatformTokenSpaceGuid.PcdDefaultBootDescription|L"NorFlash" - gArmPlatformTokenSpaceGuid.PcdDefaultBootDevicePath|L"VenHw(1F15DA3C-37FF-4070-B471-BB4AF12A724A)/MemoryMapped(0x0,0x46000000,0x46400000)" + gArmPlatformTokenSpaceGuid.PcdDefaultBootDevicePath|L"VenHw(1F15DA3C-37FF-4070-B471-BB4AF12A724A)/Image" gArmPlatformTokenSpaceGuid.PcdDefaultBootType|1 # Use the serial console (ConIn & ConOut) and the Graphic driver (ConOut) diff --git a/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-CTA9x4.fdf b/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-CTA9x4.fdf index e8f8199781..8b11010f51 100644 --- a/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-CTA9x4.fdf +++ b/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-CTA9x4.fdf @@ -240,6 +240,9 @@ FvNameGuid = 1a9b3625-5286-4fa6-af5f-8eabc481f3cc INF MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf INF ArmPlatformPkg/Bds/Bds.inf + # Legacy Linux Loader + INF ArmPkg/Application/LinuxLoader/LinuxLoader.inf + # FV Filesystem INF MdeModulePkg/Universal/FvSimpleFileSystemDxe/FvSimpleFileSystemDxe.inf diff --git a/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-FVP-AArch64.fdf b/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-FVP-AArch64.fdf index 95d5b1d0c0..53e2ca8b02 100644 --- a/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-FVP-AArch64.fdf +++ b/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-FVP-AArch64.fdf @@ -203,6 +203,9 @@ FvNameGuid = 87940482-fc81-41c3-87e6-399cf85ac8a0 INF MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf INF ArmPlatformPkg/Bds/Bds.inf + # Legacy Linux Loader + INF ArmPkg/Application/LinuxLoader/LinuxLoader.inf + # FV Filesystem INF MdeModulePkg/Universal/FvSimpleFileSystemDxe/FvSimpleFileSystemDxe.inf diff --git a/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-RTSM-A15.dsc b/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-RTSM-A15.dsc index bee8f95f35..fb42f34c2d 100644 --- a/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-RTSM-A15.dsc +++ b/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-RTSM-A15.dsc @@ -160,7 +160,7 @@ # Versatile Express machine type (ARM VERSATILE EXPRESS = 2272) required for ARM Linux: gArmTokenSpaceGuid.PcdArmMachineType|2272 gArmPlatformTokenSpaceGuid.PcdDefaultBootDescription|L"SemiHosting" - gArmPlatformTokenSpaceGuid.PcdDefaultBootDevicePath|L"VenHw(C5B9C74A-6D72-4719-99AB-C59F199091EB)/zImage" + gArmPlatformTokenSpaceGuid.PcdDefaultBootDevicePath|L"VenHw(C5B9C74A-6D72-4719-99AB-C59F199091EB)/Image" gArmPlatformTokenSpaceGuid.PcdDefaultBootType|2 # Use the serial console (ConIn & ConOut) and the Graphic driver (ConOut) diff --git a/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-RTSM-A15.fdf b/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-RTSM-A15.fdf index f001ee2bf7..73eb6fb567 100644 --- a/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-RTSM-A15.fdf +++ b/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-RTSM-A15.fdf @@ -218,6 +218,9 @@ FvNameGuid = 9ca4f58c-341e-4f42-b37d-6042fcddb5bf # SECTION RAW = ArmPlatformPkg/ArmVExpressPkg/Fdts/rtsm_ve-ca15x1.dtb #} + # Legacy Linux Loader + INF ArmPkg/Application/LinuxLoader/LinuxLoader.inf + [FV.FVMAIN_COMPACT] FvAlignment = 8 ERASE_POLARITY = 1 diff --git a/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-RTSM-A15_MPCore.dsc b/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-RTSM-A15_MPCore.dsc index 5f85b288ab..09dc1db3f8 100644 --- a/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-RTSM-A15_MPCore.dsc +++ b/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-RTSM-A15_MPCore.dsc @@ -162,7 +162,7 @@ # Versatile Express machine type (ARM VERSATILE EXPRESS = 2272) required for ARM Linux: gArmTokenSpaceGuid.PcdArmMachineType|2272 gArmPlatformTokenSpaceGuid.PcdDefaultBootDescription|L"SemiHosting" - gArmPlatformTokenSpaceGuid.PcdDefaultBootDevicePath|L"VenHw(C5B9C74A-6D72-4719-99AB-C59F199091EB)/zImage" + gArmPlatformTokenSpaceGuid.PcdDefaultBootDevicePath|L"VenHw(C5B9C74A-6D72-4719-99AB-C59F199091EB)/Image" gArmPlatformTokenSpaceGuid.PcdDefaultBootType|2 # Use the serial console (ConIn & ConOut) and the Graphic driver (ConOut) diff --git a/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-RTSM-A15_MPCore.fdf b/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-RTSM-A15_MPCore.fdf index 7a5aac1b44..b65dd9d533 100644 --- a/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-RTSM-A15_MPCore.fdf +++ b/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-RTSM-A15_MPCore.fdf @@ -218,6 +218,9 @@ FvNameGuid = 12c68be9-0996-49d3-8c5b-4957379027ee # SECTION RAW = ArmPlatformPkg/ArmVExpressPkg/Fdts/rtsm_ve-ca15x4.dtb #} + # Legacy Linux Loader + INF ArmPkg/Application/LinuxLoader/LinuxLoader.inf + [FV.FVMAIN_COMPACT] FvAlignment = 8 ERASE_POLARITY = 1 diff --git a/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-RTSM-A9x4.dsc b/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-RTSM-A9x4.dsc index 14d0cf59c7..2fe9e58f64 100644 --- a/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-RTSM-A9x4.dsc +++ b/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-RTSM-A9x4.dsc @@ -163,7 +163,8 @@ # Versatile Express machine type (ARM VERSATILE EXPRESS = 2272) required for ARM Linux: gArmTokenSpaceGuid.PcdArmMachineType|2272 gArmPlatformTokenSpaceGuid.PcdDefaultBootDescription|L"SemiHosting" - gArmPlatformTokenSpaceGuid.PcdDefaultBootDevicePath|L"VenHw(C5B9C74A-6D72-4719-99AB-C59F199091EB)/zImage" + gArmPlatformTokenSpaceGuid.PcdDefaultBootDevicePath|L"Fv(272E583C-B951-433F-AF42-A9C6862AF002)/LinuxLoader.efi" + gArmPlatformTokenSpaceGuid.PcdDefaultBootArgument|L"VenHw(C5B9C74A-6D72-4719-99AB-C59F199091EB)/zImage -c \"console=ttyAMA0,38400n8\"" gArmPlatformTokenSpaceGuid.PcdDefaultBootType|2 # Use the serial console (ConIn & ConOut) and the Graphic driver (ConOut) diff --git a/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-RTSM-A9x4.fdf b/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-RTSM-A9x4.fdf index d671489a80..029b6080dc 100644 --- a/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-RTSM-A9x4.fdf +++ b/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-RTSM-A9x4.fdf @@ -205,6 +205,9 @@ FvNameGuid = 272e583c-b951-433f-af42-a9c6862af002 # SECTION RAW = ArmPlatformPkg/ArmVExpressPkg/Fdts/rtsm_ve-ca9x4.dtb #} + # Legacy Linux Loader + INF ArmPkg/Application/LinuxLoader/LinuxLoader.inf + [FV.FVMAIN_COMPACT] FvAlignment = 8 ERASE_POLARITY = 1 diff --git a/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-RTSM-AEMv8Ax4-foundation.fdf b/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-RTSM-AEMv8Ax4-foundation.fdf index 5015266a25..402ee96e1a 100644 --- a/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-RTSM-AEMv8Ax4-foundation.fdf +++ b/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-RTSM-AEMv8Ax4-foundation.fdf @@ -187,6 +187,9 @@ FvNameGuid = 6685e0b5-d6bb-4c12-97ef-58bd87112dee # FV Filesystem INF MdeModulePkg/Universal/FvSimpleFileSystemDxe/FvSimpleFileSystemDxe.inf + # Legacy Linux Loader + INF ArmPkg/Application/LinuxLoader/LinuxLoader.inf + [FV.FVMAIN_COMPACT] FvAlignment = 16 ERASE_POLARITY = 1 diff --git a/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-RTSM-AEMv8Ax4.fdf b/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-RTSM-AEMv8Ax4.fdf index ee862d485e..6cd125b1e2 100644 --- a/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-RTSM-AEMv8Ax4.fdf +++ b/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-RTSM-AEMv8Ax4.fdf @@ -197,6 +197,9 @@ FvNameGuid = a2fc72eb-4157-40a3-8110-14c010e810b4 # after the device drivers (eg: Ethernet) to ensure we have support for them. INF EmbeddedPkg/Drivers/FdtPlatformDxe/FdtPlatformDxe.inf + # Legacy Linux Loader + INF ArmPkg/Application/LinuxLoader/LinuxLoader.inf + [FV.FVMAIN_COMPACT] FvAlignment = 16 ERASE_POLARITY = 1 diff --git a/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress.dsc.inc b/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress.dsc.inc index 37a1ef7361..c6b94abf67 100644 --- a/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress.dsc.inc +++ b/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress.dsc.inc @@ -383,7 +383,7 @@ # Versatile Express machine type (ARM VERSATILE EXPRESS = 2272) required for ARM Linux: gArmTokenSpaceGuid.PcdArmMachineType|2272 gArmPlatformTokenSpaceGuid.PcdDefaultBootDescription|L"Linux from NorFlash" - gArmPlatformTokenSpaceGuid.PcdDefaultBootDevicePath|L"VenHw(E7223039-5836-41E1-B542-D7EC736C5E59)/MemoryMapped(0x0,0xED000000,0xED400000)" + gArmPlatformTokenSpaceGuid.PcdDefaultBootDevicePath|L"VenHw(E7223039-5836-41E1-B542-D7EC736C5E59)/Image" gArmPlatformTokenSpaceGuid.PcdDefaultBootType|1 # Use the serial console (ConIn & ConOut) and the Graphic driver (ConOut) @@ -435,3 +435,6 @@ # FDT installation # EmbeddedPkg/Drivers/FdtPlatformDxe/FdtPlatformDxe.inf + + # Legacy Linux Loader + ArmPkg/Application/LinuxLoader/LinuxLoader.inf diff --git a/BeagleBoardPkg/BeagleBoardPkg.dsc b/BeagleBoardPkg/BeagleBoardPkg.dsc index 9eb364edd6..7aa6ce206d 100644 --- a/BeagleBoardPkg/BeagleBoardPkg.dsc +++ b/BeagleBoardPkg/BeagleBoardPkg.dsc @@ -63,6 +63,10 @@ EfiFileLib|EmbeddedPkg/Library/EfiFileLib/EfiFileLib.inf + # These libraries are used by the dynamic EFI Shell commands + ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf + FileHandleLib|MdePkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf + SortLib|MdeModulePkg/Library/UefiSortLib/UefiSortLib.inf PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf @@ -345,13 +349,18 @@ gEmbeddedTokenSpaceGuid.PcdEmbeddedPerformanceCounterPeriodInNanoseconds|77 gEmbeddedTokenSpaceGuid.PcdEmbeddedPerformanceCounterFrequencyInHz|13000000 + # We want to use the Shell Libraries but don't want it to initialise + # automatically. We initialise the libraries when the command is called by the + # Shell. + gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE + # # ARM Pcds # gArmTokenSpaceGuid.PcdArmUncachedMemoryMask|0x0000000040000000 gArmPlatformTokenSpaceGuid.PcdDefaultBootDescription|L"Linux from SD" - gArmPlatformTokenSpaceGuid.PcdDefaultBootDevicePath|L"VenHw(B615F1F5-5088-43CD-809C-A16E52487D00)/HD(1,MBR,0x00000000,0x3F,0x19FC0)/zImage" + gArmPlatformTokenSpaceGuid.PcdDefaultBootDevicePath|L"VenHw(B615F1F5-5088-43CD-809C-A16E52487D00)/HD(1,MBR,0x00000000,0x3F,0x19FC0)/Image" gArmPlatformTokenSpaceGuid.PcdDefaultBootArgument|"console=tty0 console=ttyS2,115200n8 root=UUID=a4af765b-c2b5-48f4-9564-7a4e9104c4f6 rootwait ro earlyprintk" gArmPlatformTokenSpaceGuid.PcdDefaultBootType|1 gEfiMdePkgTokenSpaceGuid.PcdPlatformBootTimeOut|10 @@ -473,6 +482,9 @@ MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf ArmPlatformPkg/Bds/Bds.inf + # Legacy Linux Loader + ArmPkg/Application/LinuxLoader/LinuxLoader.inf + # # Example Application # diff --git a/BeagleBoardPkg/BeagleBoardPkg.fdf b/BeagleBoardPkg/BeagleBoardPkg.fdf index 9bc5b135b6..a6392440e6 100644 --- a/BeagleBoardPkg/BeagleBoardPkg.fdf +++ b/BeagleBoardPkg/BeagleBoardPkg.fdf @@ -174,6 +174,9 @@ FvNameGuid = d0dd3e90-343d-4cb3-8f69-772214989282 INF MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf INF ArmPlatformPkg/Bds/Bds.inf + # Legacy Linux Loader + INF ArmPkg/Application/LinuxLoader/LinuxLoader.inf + [FV.FVMAIN_COMPACT] FvAlignment = 8 -- 2.39.2