public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
* [PATCH edk2-platforms 0/2] toolchain cleanups
@ 2023-01-05 16:01 Ard Biesheuvel
  2023-01-05 16:01 ` [PATCH edk2-platforms 1/2] Platform/ Silicon/: Drop remnants of RVCT toolchain support Ard Biesheuvel
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: Ard Biesheuvel @ 2023-01-05 16:01 UTC (permalink / raw)
  To: devel; +Cc: quic_llindhol, rebecca, Ard Biesheuvel

This cleans up some obsolete toolchain configuration variables:
- the RVCT ones, which are no longer supported by EDK2
- ARCHCC and ARCHASM, which serve no useful purpose and are better
  removed

Ard Biesheuvel (2):
  Platform/ Silicon/: Drop remnants of RVCT toolchain support
  Silicon/, Platform/: Get rid of redundant toolchains flags

 Platform/ARM/VExpressPkg/ArmVExpress.dsc.inc                                     |   2 -
 Silicon/Hisilicon/Hisilicon.dsc.inc                                              |   1 -
 Silicon/Phytium/PhytiumCommonPkg/PhytiumCommonPkg.dsc.inc                        |   1 -
 Platform/AMD/OverdriveBoard/OverdriveBoard.dsc                                   |   1 -
 Platform/ARM/VExpressPkg/ArmVExpress-CTA15-A7.dsc                                |   3 -
 Platform/BeagleBoard/BeagleBoardPkg/BeagleBoardPkg.dsc                           |   4 -
 Platform/LeMaker/CelloBoard/CelloBoard.dsc                                       |   1 -
 Silicon/TexasInstruments/Omap35xxPkg/Omap35xxPkg.dsc                             |  10 --
 Platform/ARM/VExpressPkg/Library/ArmVExpressLibCTA15-A7/ArmVExpressLib.inf       |   3 +-
 Platform/ARM/VExpressPkg/Library/ArmVExpressLibRTSM/ArmVExpressLib.inf           |   3 +-
 Platform/ARM/VExpressPkg/Library/ArmVExpressLibRTSM/ArmVExpressLibSec.inf        |   3 +-
 Platform/BeagleBoard/BeagleBoardPkg/Library/BeagleBoardLib/BeagleBoardLib.inf    |   5 +-
 Platform/BeagleBoard/BeagleBoardPkg/PrePi/PeiUniCore.inf                         |   3 +-
 Platform/ARM/VExpressPkg/Library/ArmVExpressLibCTA15-A7/CTA15-A7Helper.asm       |  90 ----------------
 Platform/ARM/VExpressPkg/Library/ArmVExpressLibRTSM/Arm/RTSMHelper.asm           | 112 --------------------
 Platform/BeagleBoard/BeagleBoardPkg/Library/BeagleBoardLib/BeagleBoardHelper.asm |  47 --------
 16 files changed, 5 insertions(+), 284 deletions(-)
 delete mode 100644 Platform/ARM/VExpressPkg/Library/ArmVExpressLibCTA15-A7/CTA15-A7Helper.asm
 delete mode 100644 Platform/ARM/VExpressPkg/Library/ArmVExpressLibRTSM/Arm/RTSMHelper.asm
 delete mode 100644 Platform/BeagleBoard/BeagleBoardPkg/Library/BeagleBoardLib/BeagleBoardHelper.asm

-- 
2.39.0


^ permalink raw reply	[flat|nested] 4+ messages in thread

* [PATCH edk2-platforms 1/2] Platform/ Silicon/: Drop remnants of RVCT toolchain support
  2023-01-05 16:01 [PATCH edk2-platforms 0/2] toolchain cleanups Ard Biesheuvel
@ 2023-01-05 16:01 ` Ard Biesheuvel
  2023-01-05 16:01 ` [PATCH edk2-platforms 2/2] Silicon/, Platform/: Get rid of redundant toolchains flags Ard Biesheuvel
  2023-01-17  9:24 ` [PATCH edk2-platforms 0/2] toolchain cleanups Ard Biesheuvel
  2 siblings, 0 replies; 4+ messages in thread
From: Ard Biesheuvel @ 2023-01-05 16:01 UTC (permalink / raw)
  To: devel; +Cc: quic_llindhol, rebecca, Ard Biesheuvel

The RVCT toolchain family has been removed from EDK2 so let's get rid of
the remaining references to it. This includes .asm versions of assembler
source files that use a different idiom than GNU as.

Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
---
 Platform/ARM/VExpressPkg/ArmVExpress.dsc.inc                                     |   2 -
 Silicon/Hisilicon/Hisilicon.dsc.inc                                              |   1 -
 Silicon/Phytium/PhytiumCommonPkg/PhytiumCommonPkg.dsc.inc                        |   1 -
 Platform/AMD/OverdriveBoard/OverdriveBoard.dsc                                   |   1 -
 Platform/ARM/VExpressPkg/ArmVExpress-CTA15-A7.dsc                                |   2 -
 Platform/BeagleBoard/BeagleBoardPkg/BeagleBoardPkg.dsc                           |   1 -
 Platform/LeMaker/CelloBoard/CelloBoard.dsc                                       |   1 -
 Silicon/TexasInstruments/Omap35xxPkg/Omap35xxPkg.dsc                             |   3 -
 Platform/ARM/VExpressPkg/Library/ArmVExpressLibCTA15-A7/ArmVExpressLib.inf       |   3 +-
 Platform/ARM/VExpressPkg/Library/ArmVExpressLibRTSM/ArmVExpressLib.inf           |   3 +-
 Platform/ARM/VExpressPkg/Library/ArmVExpressLibRTSM/ArmVExpressLibSec.inf        |   3 +-
 Platform/BeagleBoard/BeagleBoardPkg/Library/BeagleBoardLib/BeagleBoardLib.inf    |   5 +-
 Platform/BeagleBoard/BeagleBoardPkg/PrePi/PeiUniCore.inf                         |   3 +-
 Platform/ARM/VExpressPkg/Library/ArmVExpressLibCTA15-A7/CTA15-A7Helper.asm       |  90 ----------------
 Platform/ARM/VExpressPkg/Library/ArmVExpressLibRTSM/Arm/RTSMHelper.asm           | 112 --------------------
 Platform/BeagleBoard/BeagleBoardPkg/Library/BeagleBoardLib/BeagleBoardHelper.asm |  47 --------
 16 files changed, 5 insertions(+), 273 deletions(-)

diff --git a/Platform/ARM/VExpressPkg/ArmVExpress.dsc.inc b/Platform/ARM/VExpressPkg/ArmVExpress.dsc.inc
index 17e4a3fd13d7..81d35fb805c6 100644
--- a/Platform/ARM/VExpressPkg/ArmVExpress.dsc.inc
+++ b/Platform/ARM/VExpressPkg/ArmVExpress.dsc.inc
@@ -268,8 +268,6 @@ [LibraryClasses.ARM, LibraryClasses.AARCH64]
 
 
 [BuildOptions]
-  RVCT:RELEASE_*_*_CC_FLAGS  = -DMDEPKG_NDEBUG
-
   GCC:RELEASE_*_*_CC_FLAGS  = -DMDEPKG_NDEBUG
 
 ################################################################################
diff --git a/Silicon/Hisilicon/Hisilicon.dsc.inc b/Silicon/Hisilicon/Hisilicon.dsc.inc
index 6bacd9cafd7a..b12efd7f031b 100644
--- a/Silicon/Hisilicon/Hisilicon.dsc.inc
+++ b/Silicon/Hisilicon/Hisilicon.dsc.inc
@@ -213,7 +213,6 @@ [LibraryClasses.AARCH64]
   ArmGenericTimerCounterLib|ArmPkg/Library/ArmGenericTimerPhyCounterLib/ArmGenericTimerPhyCounterLib.inf
 
 [BuildOptions]
-  RVCT:RELEASE_*_*_CC_FLAGS  = -DMDEPKG_NDEBUG
   GCC:RELEASE_*_*_CC_FLAGS  = -DMDEPKG_NDEBUG
 
 [BuildOptions.common.EDKII.DXE_RUNTIME_DRIVER]
diff --git a/Silicon/Phytium/PhytiumCommonPkg/PhytiumCommonPkg.dsc.inc b/Silicon/Phytium/PhytiumCommonPkg/PhytiumCommonPkg.dsc.inc
index 3c4440dac5f0..7166212875ec 100644
--- a/Silicon/Phytium/PhytiumCommonPkg/PhytiumCommonPkg.dsc.inc
+++ b/Silicon/Phytium/PhytiumCommonPkg/PhytiumCommonPkg.dsc.inc
@@ -198,7 +198,6 @@ [LibraryClasses.common.UEFI_DRIVER, LibraryClasses.common.UEFI_APPLICATION, Libr
   PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
 
 [BuildOptions]
-  RVCT:RELEASE_*_*_CC_FLAGS  = -DMDEPKG_NDEBUG
   GCC:RELEASE_*_*_CC_FLAGS  = -DMDEPKG_NDEBUG
 
 [BuildOptions.AARCH64.EDKII.DXE_RUNTIME_DRIVER]
diff --git a/Platform/AMD/OverdriveBoard/OverdriveBoard.dsc b/Platform/AMD/OverdriveBoard/OverdriveBoard.dsc
index 236e8f1db3dd..27ae2a86b82d 100644
--- a/Platform/AMD/OverdriveBoard/OverdriveBoard.dsc
+++ b/Platform/AMD/OverdriveBoard/OverdriveBoard.dsc
@@ -250,7 +250,6 @@ [LibraryClasses.AARCH64]
 ###################################################################################################
 
 [BuildOptions]
-  RVCT:RELEASE_*_*_CC_FLAGS  = -DMDEPKG_NDEBUG
   GCC:RELEASE_*_*_CC_FLAGS  = -DMDEPKG_NDEBUG
 
 [BuildOptions.common.EDKII.DXE_RUNTIME_DRIVER]
diff --git a/Platform/ARM/VExpressPkg/ArmVExpress-CTA15-A7.dsc b/Platform/ARM/VExpressPkg/ArmVExpress-CTA15-A7.dsc
index 9c5e78d6275d..3be9822975e5 100644
--- a/Platform/ARM/VExpressPkg/ArmVExpress-CTA15-A7.dsc
+++ b/Platform/ARM/VExpressPkg/ArmVExpress-CTA15-A7.dsc
@@ -68,8 +68,6 @@ [BuildOptions]
   *_*_ARM_PP_FLAGS  = -DARM_BIGLITTLE_TC2=1
 !endif
 
-  RVCT:*_*_ARM_PLATFORM_FLAGS == --cpu Cortex-A15 -I$(WORKSPACE)/Platform/ARM/VExpressPkg/Include/Platform/CTA15-A7
-
   GCC:*_*_ARM_PLATFORM_FLAGS == -mcpu=cortex-a15 -I$(WORKSPACE)/Platform/ARM/VExpressPkg/Include/Platform/CTA15-A7
 
   XCODE:*_*_ARM_PLATFORM_FLAGS = -I$(WORKSPACE)/Platform/ARM/VExpressPkg/Include/Platform/CTA15-A7
diff --git a/Platform/BeagleBoard/BeagleBoardPkg/BeagleBoardPkg.dsc b/Platform/BeagleBoard/BeagleBoardPkg/BeagleBoardPkg.dsc
index 2de49fc0932c..0f5e356f0d5d 100644
--- a/Platform/BeagleBoard/BeagleBoardPkg/BeagleBoardPkg.dsc
+++ b/Platform/BeagleBoard/BeagleBoardPkg/BeagleBoardPkg.dsc
@@ -209,7 +209,6 @@ [LibraryClasses.ARM]
 [BuildOptions]
   XCODE:*_*_ARM_PLATFORM_FLAGS == -arch armv7
   GCC:*_*_ARM_PLATFORM_FLAGS == -march=armv7-a
-  RVCT:*_*_ARM_PLATFORM_FLAGS == --cpu Cortex-A8
 
   *_*_*_CC_FLAGS = -DDISABLE_NEW_DEPRECATED_INTERFACES
 
diff --git a/Platform/LeMaker/CelloBoard/CelloBoard.dsc b/Platform/LeMaker/CelloBoard/CelloBoard.dsc
index 0b98d976f9c4..b46295a1648a 100644
--- a/Platform/LeMaker/CelloBoard/CelloBoard.dsc
+++ b/Platform/LeMaker/CelloBoard/CelloBoard.dsc
@@ -242,7 +242,6 @@ [LibraryClasses.AARCH64]
 ###################################################################################################
 
 [BuildOptions]
-  RVCT:RELEASE_*_*_CC_FLAGS  = -DMDEPKG_NDEBUG
   GCC:RELEASE_*_*_CC_FLAGS  = -DMDEPKG_NDEBUG
 
 [BuildOptions.common.EDKII.DXE_RUNTIME_DRIVER]
diff --git a/Silicon/TexasInstruments/Omap35xxPkg/Omap35xxPkg.dsc b/Silicon/TexasInstruments/Omap35xxPkg/Omap35xxPkg.dsc
index 8bf56c376851..182a4198ad5c 100644
--- a/Silicon/TexasInstruments/Omap35xxPkg/Omap35xxPkg.dsc
+++ b/Silicon/TexasInstruments/Omap35xxPkg/Omap35xxPkg.dsc
@@ -85,9 +85,6 @@ [BuildOptions]
   GCC:*_*_ARM_ARCHCC_FLAGS     == -march=armv7-a -mthumb
   GCC:*_*_ARM_ARCHASM_FLAGS    == -march=armv7-a
 
-  RVCT:*_*_ARM_ARCHCC_FLAGS     == --cpu 7-A
-  RVCT:*_*_ARM_ARCHASM_FLAGS    == --cpu 7-A
-
   *_*_*_CC_FLAGS = -DDISABLE_NEW_DEPRECATED_INTERFACES
 
 ################################################################################
diff --git a/Platform/ARM/VExpressPkg/Library/ArmVExpressLibCTA15-A7/ArmVExpressLib.inf b/Platform/ARM/VExpressPkg/Library/ArmVExpressLibCTA15-A7/ArmVExpressLib.inf
index e585fe6c1876..dbe4cb88fd21 100644
--- a/Platform/ARM/VExpressPkg/Library/ArmVExpressLibCTA15-A7/ArmVExpressLib.inf
+++ b/Platform/ARM/VExpressPkg/Library/ArmVExpressLibCTA15-A7/ArmVExpressLib.inf
@@ -31,8 +31,7 @@ [LibraryClasses]
 [Sources.common]
   CTA15-A7.c
   CTA15-A7Mem.c
-  CTA15-A7Helper.asm | RVCT
-  CTA15-A7Helper.S   | GCC
+  CTA15-A7Helper.S
 
 [FixedPcd]
   gArmPlatformTokenSpaceGuid.PcdCoreCount
diff --git a/Platform/ARM/VExpressPkg/Library/ArmVExpressLibRTSM/ArmVExpressLib.inf b/Platform/ARM/VExpressPkg/Library/ArmVExpressLibRTSM/ArmVExpressLib.inf
index 4b582fdfc945..94572861b398 100644
--- a/Platform/ARM/VExpressPkg/Library/ArmVExpressLibRTSM/ArmVExpressLib.inf
+++ b/Platform/ARM/VExpressPkg/Library/ArmVExpressLibRTSM/ArmVExpressLib.inf
@@ -33,8 +33,7 @@ [Sources.common]
   RTSMMem.c
 
 [Sources.ARM]
-  Arm/RTSMHelper.asm    | RVCT
-  Arm/RTSMHelper.S      | GCC
+  Arm/RTSMHelper.S
 
 [Sources.AARCH64]
   AArch64/RTSMHelper.S
diff --git a/Platform/ARM/VExpressPkg/Library/ArmVExpressLibRTSM/ArmVExpressLibSec.inf b/Platform/ARM/VExpressPkg/Library/ArmVExpressLibRTSM/ArmVExpressLibSec.inf
index 26f551508793..479b0e1b84f5 100644
--- a/Platform/ARM/VExpressPkg/Library/ArmVExpressLibRTSM/ArmVExpressLibSec.inf
+++ b/Platform/ARM/VExpressPkg/Library/ArmVExpressLibRTSM/ArmVExpressLibSec.inf
@@ -30,8 +30,7 @@ [Sources.common]
   RTSM.c
 
 [Sources.ARM]
-  Arm/RTSMHelper.asm    | RVCT
-  Arm/RTSMHelper.S      | GCC
+  Arm/RTSMHelper.S
 
 [Sources.AARCH64]
   AArch64/RTSMHelper.S
diff --git a/Platform/BeagleBoard/BeagleBoardPkg/Library/BeagleBoardLib/BeagleBoardLib.inf b/Platform/BeagleBoard/BeagleBoardPkg/Library/BeagleBoardLib/BeagleBoardLib.inf
index 6584323ccc86..3f06a9b5b2bd 100644
--- a/Platform/BeagleBoard/BeagleBoardPkg/Library/BeagleBoardLib/BeagleBoardLib.inf
+++ b/Platform/BeagleBoard/BeagleBoardPkg/Library/BeagleBoardLib/BeagleBoardLib.inf
@@ -29,14 +29,11 @@ [LibraryClasses]
   MemoryAllocationLib
 
 [Sources.common]
-  BeagleBoardHelper.asm  | RVCT
-  BeagleBoardHelper.S    | GCC
+  BeagleBoardHelper.S
   BeagleBoard.c
   BeagleBoardMem.c
   PadConfiguration.c
   Clock.c
-  BeagleBoardHelper.S    | GCC
-  BeagleBoardHelper.asm  | RVCT
 
 [FixedPcd]
   gArmTokenSpaceGuid.PcdFdBaseAddress
diff --git a/Platform/BeagleBoard/BeagleBoardPkg/PrePi/PeiUniCore.inf b/Platform/BeagleBoard/BeagleBoardPkg/PrePi/PeiUniCore.inf
index a4bf25b59582..414091957cb2 100644
--- a/Platform/BeagleBoard/BeagleBoardPkg/PrePi/PeiUniCore.inf
+++ b/Platform/BeagleBoard/BeagleBoardPkg/PrePi/PeiUniCore.inf
@@ -21,8 +21,7 @@ [Sources]
 
 [Sources.ARM]
   Arm/ArchPrePi.c
-  Arm/ModuleEntryPoint.S   | GCC
-  Arm/ModuleEntryPoint.asm | RVCT
+  Arm/ModuleEntryPoint.S
 
 [Packages]
   ArmPkg/ArmPkg.dec
diff --git a/Platform/ARM/VExpressPkg/Library/ArmVExpressLibCTA15-A7/CTA15-A7Helper.asm b/Platform/ARM/VExpressPkg/Library/ArmVExpressLibCTA15-A7/CTA15-A7Helper.asm
deleted file mode 100644
index 9fb06ea00968..000000000000
--- a/Platform/ARM/VExpressPkg/Library/ArmVExpressLibCTA15-A7/CTA15-A7Helper.asm
+++ /dev/null
@@ -1,90 +0,0 @@
-//
-//  Copyright (c) 2012-2013, ARM Limited. All rights reserved.
-//
-//  SPDX-License-Identifier: BSD-2-Clause-Patent
-//
-//
-
-#include <Library/ArmLib.h>
-
-#include <ArmPlatform.h>
-
-  INCLUDE AsmMacroIoLib.inc
-
-  EXPORT  ArmPlatformPeiBootAction
-  EXPORT  ArmPlatformGetCorePosition
-  EXPORT  ArmPlatformIsPrimaryCore
-  EXPORT  ArmPlatformGetPrimaryCoreMpId
-
-  PRESERVE8
-  AREA    CTA15A7Helper, CODE, READONLY
-
-ArmPlatformPeiBootAction FUNCTION
-  bx    lr
-  ENDFUNC
-
-//UINTN
-//ArmPlatformGetCorePosition (
-//  IN UINTN MpId
-//  );
-ArmPlatformGetCorePosition FUNCTION
-  and   r1, r0, #ARM_CORE_MASK
-  and   r0, r0, #ARM_CLUSTER_MASK
-  add   r0, r1, r0, LSR #7
-  bx    lr
-  ENDFUNC
-
-//UINTN
-//ArmPlatformIsPrimaryCore (
-//  IN UINTN MpId
-//  );
-ArmPlatformIsPrimaryCore FUNCTION
-  // Extract cpu_id and cluster_id from ARM_SCC_CFGREG48
-  // with cpu_id[0:3] and cluster_id[4:7]
-  mov32 r1, ARM_CTA15A7_SCC_CFGREG48
-  ldr   r1, [r1]
-  lsr   r1, #24
-
-  // Shift the SCC value to get the cluster ID at the offset #8
-  lsl   r2, r1, #4
-  and   r2, r2, #0xF00
-
-  // Keep only the cpu ID from the original SCC
-  and   r1, r1, #0x0F
-  // Add the Cluster ID to the Cpu ID
-  orr   r1, r1, r2
-
-  // Keep the Cluster ID and Core ID from the MPID
-  mov32 r2, ARM_CLUSTER_MASK :OR: ARM_CORE_MASK
-  and   r0, r0, r2
-
-  // Compare mpid and boot cpu from ARM_SCC_CFGREG48
-  cmp   r0, r1
-  moveq r0, #1
-  movne r0, #0
-  bx    lr
-  ENDFUNC
-
-//UINTN
-//ArmPlatformGetPrimaryCoreMpId (
-//  VOID
-//  );
-ArmPlatformGetPrimaryCoreMpId FUNCTION
-  // Extract cpu_id and cluster_id from ARM_SCC_CFGREG48
-  // with cpu_id[0:3] and cluster_id[4:7]
-  mov32 r0, ARM_CTA15A7_SCC_CFGREG48
-  ldr   r0, [r0]
-  lsr   r0, #24
-
-  // Shift the SCC value to get the cluster ID at the offset #8
-  lsl   r1, r0, #4
-  and   r1, r1, #0xF00
-
-  // Keep only the cpu ID from the original SCC
-  and   r0, r0, #0x0F
-  // Add the Cluster ID to the Cpu ID
-  orr   r0, r0, r1
-  bx    lr
-  ENDFUNC
-
-  END
diff --git a/Platform/ARM/VExpressPkg/Library/ArmVExpressLibRTSM/Arm/RTSMHelper.asm b/Platform/ARM/VExpressPkg/Library/ArmVExpressLibRTSM/Arm/RTSMHelper.asm
deleted file mode 100644
index 5ae6f9eab8a8..000000000000
--- a/Platform/ARM/VExpressPkg/Library/ArmVExpressLibRTSM/Arm/RTSMHelper.asm
+++ /dev/null
@@ -1,112 +0,0 @@
-//
-//  Copyright (c) 2011-2013, ARM Limited. All rights reserved.
-//
-//  SPDX-License-Identifier: BSD-2-Clause-Patent
-//
-//
-
-#include <Base.h>
-#include <Library/ArmLib.h>
-#include <Library/PcdLib.h>
-
-#include <Chipset/ArmCortexA9.h>
-
-#include <AutoGen.h>
-
-  INCLUDE AsmMacroIoLib.inc
-
-  EXPORT    ArmPlatformPeiBootAction
-  EXPORT    ArmGetCpuCountPerCluster
-  EXPORT    ArmPlatformIsPrimaryCore
-  EXPORT    ArmPlatformGetPrimaryCoreMpId
-  EXPORT    ArmPlatformGetCorePosition
-
-  AREA RTSMHelper, CODE, READONLY
-
-ArmPlatformPeiBootAction FUNCTION
-  bx    lr
-  ENDFUNC
-
-// IN None
-// OUT r0 = SCU Base Address
-ArmGetScuBaseAddress FUNCTION
-  // Read Configuration Base Address Register. ArmCBar cannot be called to get
-  // the Configuration BAR as a stack is not necessary setup. The SCU is at the
-  // offset 0x0000 from the Private Memory Region.
-  mrc   p15, 4, r0, c15, c0, 0
-  bx  lr
-  ENDFUNC
-
-//UINTN
-//ArmPlatformGetPrimaryCoreMpId (
-//  VOID
-//  );
-ArmPlatformGetPrimaryCoreMpId FUNCTION
-  mov32 r0, FixedPcdGet32(PcdArmPrimaryCore)
-  bx    lr
-  ENDFUNC
-
-// IN None
-// OUT r0 = number of cores present in the system
-ArmGetCpuCountPerCluster FUNCTION
-  stmfd SP!, {r1-r2}
-
-  // Read CP15 MIDR
-  mrc   p15, 0, r1, c0, c0, 0
-
-  // Check if the CPU is A15
-  mov   r1, r1, LSR #4
-  mov   r0, #ARM_CPU_TYPE_MASK
-  and   r1, r1, r0
-
-  mov   r0, #ARM_CPU_TYPE_A15
-  cmp   r1, r0
-  beq   _Read_cp15_reg
-
-_CPU_is_not_A15
-  mov   r2, lr                              ; Save link register
-  bl    ArmGetScuBaseAddress                ; Read SCU Base Address
-  mov   lr, r2                              ; Restore link register val
-  ldr   r0, [r0, #A9_SCU_CONFIG_OFFSET]     ; Read SCU Config reg to get CPU count
-  b     _Return
-
-_Read_cp15_reg
-  mrc   p15, 1, r0, c9, c0, 2            ; Read C9 register of CP15 to get CPU count
-  lsr   r0, #24
-
-
-_Return
-  and   r0, r0, #3
-  // Add '1' to the number of CPU on the Cluster
-  add   r0, r0, #1
-  ldmfd SP!, {r1-r2}
-  bx lr
-  ENDFUNC
-
-//UINTN
-//ArmPlatformIsPrimaryCore (
-//  IN UINTN MpId
-//  );
-ArmPlatformIsPrimaryCore FUNCTION
-  mov32 r1, FixedPcdGet32(PcdArmPrimaryCoreMask)
-  and   r0, r0, r1
-  mov32 r1, FixedPcdGet32(PcdArmPrimaryCore)
-  ldr   r1, [r1]
-  cmp   r0, r1
-  moveq r0, #1
-  movne r0, #0
-  bx    lr
-  ENDFUNC
-
-//UINTN
-//ArmPlatformGetCorePosition (
-//  IN UINTN MpId
-//  );
-ArmPlatformGetCorePosition FUNCTION
-  and   r1, r0, #ARM_CORE_MASK
-  and   r0, r0, #ARM_CLUSTER_MASK
-  add   r0, r1, r0, LSR #7
-  bx    lr
-  ENDFUNC
-
-  END
diff --git a/Platform/BeagleBoard/BeagleBoardPkg/Library/BeagleBoardLib/BeagleBoardHelper.asm b/Platform/BeagleBoard/BeagleBoardPkg/Library/BeagleBoardLib/BeagleBoardHelper.asm
deleted file mode 100644
index 884f567cef53..000000000000
--- a/Platform/BeagleBoard/BeagleBoardPkg/Library/BeagleBoardLib/BeagleBoardHelper.asm
+++ /dev/null
@@ -1,47 +0,0 @@
-//
-//  Copyright (c) 2012-2013, ARM Limited. All rights reserved.
-//
-//  SPDX-License-Identifier: BSD-2-Clause-Patent
-//
-//
-
-#include <AsmMacroIoLib.h>
-#include <Base.h>
-
-#include <AutoGen.h>
-
-  INCLUDE AsmMacroIoLib.inc
-
-  EXPORT    ArmPlatformPeiBootAction
-  EXPORT    ArmPlatformIsPrimaryCore
-  EXPORT    ArmPlatformGetPrimaryCoreMpId
-
-  IMPORT    ArmReadMpidr
-
-  AREA BeagleBoardHelper, CODE, READONLY
-
-//UINTN
-//ArmPlatformIsPrimaryCore (
-//  IN UINTN MpId
-//  );
-ArmPlatformIsPrimaryCore FUNCTION
-  // BeagleBoard has a single core. We must always return 1.
-  mov   r0, #1
-  bx    lr
-  ENDFUNC
-
-ArmPlatformPeiBootAction FUNCTION
-  bx    lr
-  ENDFUNC
-
-//UINTN
-//ArmPlatformGetPrimaryCoreMpId (
-//  VOID
-//  );
-ArmPlatformGetPrimaryCoreMpId FUNCTION
-  // The BeagleBoard is a uniprocessor platform. The MPIDR of primary core is
-  // always the MPIDR of the calling CPU.
-  b     ArmReadMpidr
-  ENDFUNC
-
-  END
-- 
2.39.0


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [PATCH edk2-platforms 2/2] Silicon/, Platform/: Get rid of redundant toolchains flags
  2023-01-05 16:01 [PATCH edk2-platforms 0/2] toolchain cleanups Ard Biesheuvel
  2023-01-05 16:01 ` [PATCH edk2-platforms 1/2] Platform/ Silicon/: Drop remnants of RVCT toolchain support Ard Biesheuvel
@ 2023-01-05 16:01 ` Ard Biesheuvel
  2023-01-17  9:24 ` [PATCH edk2-platforms 0/2] toolchain cleanups Ard Biesheuvel
  2 siblings, 0 replies; 4+ messages in thread
From: Ard Biesheuvel @ 2023-01-05 16:01 UTC (permalink / raw)
  To: devel; +Cc: quic_llindhol, rebecca, Ard Biesheuvel

The ARCHCC and ARCHASM flags are redundant, given that ARMv7-A with
Thumb2 codegen has been the default for a long time, for all supported
toolchains.

So let's drop these definitions: this allows us to retire ARCHCC and
ARCHASM entirely from EDK2.

Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
---
 Platform/ARM/VExpressPkg/ArmVExpress-CTA15-A7.dsc      | 1 -
 Platform/BeagleBoard/BeagleBoardPkg/BeagleBoardPkg.dsc | 3 ---
 Silicon/TexasInstruments/Omap35xxPkg/Omap35xxPkg.dsc   | 7 -------
 3 files changed, 11 deletions(-)

diff --git a/Platform/ARM/VExpressPkg/ArmVExpress-CTA15-A7.dsc b/Platform/ARM/VExpressPkg/ArmVExpress-CTA15-A7.dsc
index 3be9822975e5..5b0a929b6b25 100644
--- a/Platform/ARM/VExpressPkg/ArmVExpress-CTA15-A7.dsc
+++ b/Platform/ARM/VExpressPkg/ArmVExpress-CTA15-A7.dsc
@@ -64,7 +64,6 @@ [LibraryClasses.ARM]
 
 [BuildOptions]
 !ifdef ARM_BIGLITTLE_TC2
-  *_*_ARM_ARCHCC_FLAGS  = -DARM_BIGLITTLE_TC2=1
   *_*_ARM_PP_FLAGS  = -DARM_BIGLITTLE_TC2=1
 !endif
 
diff --git a/Platform/BeagleBoard/BeagleBoardPkg/BeagleBoardPkg.dsc b/Platform/BeagleBoard/BeagleBoardPkg/BeagleBoardPkg.dsc
index 0f5e356f0d5d..d44f4771c622 100644
--- a/Platform/BeagleBoard/BeagleBoardPkg/BeagleBoardPkg.dsc
+++ b/Platform/BeagleBoard/BeagleBoardPkg/BeagleBoardPkg.dsc
@@ -207,9 +207,6 @@ [LibraryClasses.ARM]
   NULL|MdePkg/Library/BaseStackCheckLib/BaseStackCheckLib.inf
 
 [BuildOptions]
-  XCODE:*_*_ARM_PLATFORM_FLAGS == -arch armv7
-  GCC:*_*_ARM_PLATFORM_FLAGS == -march=armv7-a
-
   *_*_*_CC_FLAGS = -DDISABLE_NEW_DEPRECATED_INTERFACES
 
 [BuildOptions.common.EDKII.DXE_RUNTIME_DRIVER]
diff --git a/Silicon/TexasInstruments/Omap35xxPkg/Omap35xxPkg.dsc b/Silicon/TexasInstruments/Omap35xxPkg/Omap35xxPkg.dsc
index 182a4198ad5c..92c2f6a2e607 100644
--- a/Silicon/TexasInstruments/Omap35xxPkg/Omap35xxPkg.dsc
+++ b/Silicon/TexasInstruments/Omap35xxPkg/Omap35xxPkg.dsc
@@ -78,13 +78,6 @@ [LibraryClasses.ARM]
   NULL|MdePkg/Library/BaseStackCheckLib/BaseStackCheckLib.inf
 
 [BuildOptions]
-  XCODE:*_*_ARM_ARCHCC_FLAGS     == -arch armv7 -march=armv7
-  XCODE:*_*_ARM_ARCHASM_FLAGS    == -arch armv7
-  XCODE:*_*_ARM_ARCHDLINK_FLAGS  == -arch armv7
-
-  GCC:*_*_ARM_ARCHCC_FLAGS     == -march=armv7-a -mthumb
-  GCC:*_*_ARM_ARCHASM_FLAGS    == -march=armv7-a
-
   *_*_*_CC_FLAGS = -DDISABLE_NEW_DEPRECATED_INTERFACES
 
 ################################################################################
-- 
2.39.0


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH edk2-platforms 0/2] toolchain cleanups
  2023-01-05 16:01 [PATCH edk2-platforms 0/2] toolchain cleanups Ard Biesheuvel
  2023-01-05 16:01 ` [PATCH edk2-platforms 1/2] Platform/ Silicon/: Drop remnants of RVCT toolchain support Ard Biesheuvel
  2023-01-05 16:01 ` [PATCH edk2-platforms 2/2] Silicon/, Platform/: Get rid of redundant toolchains flags Ard Biesheuvel
@ 2023-01-17  9:24 ` Ard Biesheuvel
  2 siblings, 0 replies; 4+ messages in thread
From: Ard Biesheuvel @ 2023-01-17  9:24 UTC (permalink / raw)
  To: devel; +Cc: quic_llindhol, rebecca

On Thu, 5 Jan 2023 at 17:01, Ard Biesheuvel <ardb@kernel.org> wrote:
>
> This cleans up some obsolete toolchain configuration variables:
> - the RVCT ones, which are no longer supported by EDK2
> - ARCHCC and ARCHASM, which serve no useful purpose and are better
>   removed
>
> Ard Biesheuvel (2):
>   Platform/ Silicon/: Drop remnants of RVCT toolchain support
>   Silicon/, Platform/: Get rid of redundant toolchains flags
>

Pushed as 3d072871806c..8e927b0f42e7

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2023-01-17  9:24 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-01-05 16:01 [PATCH edk2-platforms 0/2] toolchain cleanups Ard Biesheuvel
2023-01-05 16:01 ` [PATCH edk2-platforms 1/2] Platform/ Silicon/: Drop remnants of RVCT toolchain support Ard Biesheuvel
2023-01-05 16:01 ` [PATCH edk2-platforms 2/2] Silicon/, Platform/: Get rid of redundant toolchains flags Ard Biesheuvel
2023-01-17  9:24 ` [PATCH edk2-platforms 0/2] toolchain cleanups Ard Biesheuvel

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox