From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by mx.groups.io with SMTP id smtpd.web10.8022.1634639119008559098 for ; Tue, 19 Oct 2021 03:25:19 -0700 Authentication-Results: mx.groups.io; dkim=missing; spf=pass (domain: arm.com, ip: 217.140.110.172, mailfrom: pierre.gondois@arm.com) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id E953CD6E; Tue, 19 Oct 2021 03:25:16 -0700 (PDT) Received: from e120189.arm.com (unknown [10.57.73.233]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id AC8FF3F70D; Tue, 19 Oct 2021 03:25:15 -0700 (PDT) From: "PierreGondois" To: devel@edk2.groups.io, Sean Brogan , Sami Mujawar , Leif Lindholm Cc: Ard Biesheuvel Subject: [RFC PATCH edk2-platforms v1 0/5] Remove ARM nested packages Date: Tue, 19 Oct 2021 11:24:57 +0100 Message-Id: <20211019102502.3765-1-Pierre.Gondois@arm.com> X-Mailer: git-send-email 2.17.1 From: Pierre Gondois Bugzilla: 3259 (https://bugzilla.tianocore.org/show_bug.cgi?id=3259) The Platform/ARM/ARM.dec file implies that the Platform/ARM/ folder is a package. This folder however hosts other packages describing platforms (JunoPkg, SgiPkg, ...) and packages describing drivers (BootMonFs, FdtPlatformDxe). As the Dec specification mention: "EDK II Packages cannot be nested within other EDK II Packages." Also, CI modules are based on packages. Having non-nested packages allows to have distinct entities each CI module must check. To remove the nested structure: 1- Create a Platform/ARM/ArmCommonPkg package containing code shared among platforms. It will contains the following folders: Platform/ARM/[Drivers/ | Include/ | Library/] 2- Remove the BootMonFs and FdtPlatformDxe packages and resolve the broken dependencies to these drivers 3- Resolve the broken dependencies to the libraries from Platform/ARM/Library Some remarks: - This patch-set doesn't remove the Platform/ARM prefix. - Building an ARM Platform after applying a subset of the patch-set would fail. Thus, if accepted, the patch-set should be squashed as one single patch. Pierre Gondois (5): Platform/ARM: Create ArmCommonPkg Platform/ARM: Create ArmCommonPkg.dec from ARM.dec Platform/ARM: Move BootMonFs package to ArmCommonPkg Platform/ARM: Move FdtPlatformDxe package to ArmCommonPkg Platform/ARM: Resolve ArmCommonPkg library references Platform/ARM/ARM.dec | 22 ------------------- .../ArmCommonPkg.dec} | 18 +++++++++++++-- .../Drivers/BootMonFs/BootMonFs.inf | 3 +-- .../Drivers/BootMonFs/BootMonFsApi.h | 0 .../Drivers/BootMonFs/BootMonFsDir.c | 0 .../Drivers/BootMonFs/BootMonFsEntryPoint.c | 0 .../Drivers/BootMonFs/BootMonFsHw.h | 0 .../Drivers/BootMonFs/BootMonFsImages.c | 0 .../Drivers/BootMonFs/BootMonFsInternal.h | 0 .../Drivers/BootMonFs/BootMonFsOpenClose.c | 0 .../Drivers/BootMonFs/BootMonFsReadWrite.c | 0 .../Drivers/BootMonFs/BootMonFsUnsupported.c | 0 .../Drivers/FdtPlatformDxe/FdtPlatform.c | 0 .../Drivers/FdtPlatformDxe/FdtPlatform.h | 0 .../Drivers/FdtPlatformDxe/FdtPlatformDxe.inf | 3 +-- .../Drivers/FdtPlatformDxe/FdtPlatformDxe.uni | 0 .../Drivers/FdtPlatformDxe/README.txt | 0 .../Drivers/FdtPlatformDxe/ShellDumpFdt.c | 0 .../Drivers/FdtPlatformDxe/ShellSetFdt.c | 0 .../Include/Guid/BootMonFsFileInfo.h | 0 .../Include/Library/ArmShellCmdLib.h | 0 .../Include/Library/BdsLib.h | 0 .../Library/ArmShellCmdRunAxf/AArch64/Pivot.S | 0 .../Library/ArmShellCmdRunAxf/Arm/Pivot.S | 0 .../ArmShellCmdRunAxf/ArmShellCmdRunAxf.c | 0 .../ArmShellCmdRunAxf/ArmShellCmdRunAxf.h | 0 .../ArmShellCmdRunAxf/ArmShellCmdRunAxf.inf | 2 +- .../ArmShellCmdRunAxf/ArmShellCmdRunAxf.uni | 0 .../ArmShellCmdRunAxf/BootMonFsLoader.c | 0 .../ArmShellCmdRunAxf/BootMonFsLoader.h | 0 .../Library/ArmShellCmdRunAxf/ElfLoader.c | 0 .../Library/ArmShellCmdRunAxf/ElfLoader.h | 0 .../Library/ArmShellCmdRunAxf/RunAxf.c | 0 .../Library/ArmShellCmdRunAxf/elf32.h | 0 .../Library/ArmShellCmdRunAxf/elf64.h | 0 .../Library/ArmShellCmdRunAxf/elf_common.h | 0 .../Library/BdsLib/BdsFilePath.c | 0 .../Library/BdsLib/BdsHelper.c | 0 .../Library/BdsLib/BdsInternal.h | 0 .../Library/BdsLib/BdsLib.inf | 2 +- Platform/ARM/Drivers/BootMonFs/BootMonFs.dec | 20 ----------------- Platform/ARM/JunoPkg/ArmJuno.dsc | 4 ++-- Platform/ARM/JunoPkg/ArmJuno.fdf | 4 ++-- .../JunoPkg/Drivers/ArmJunoDxe/ArmJunoDxe.inf | 3 +-- Platform/ARM/Morello/MorelloPlatformFvp.fdf | 2 +- Platform/ARM/N1Sdp/N1SdpPlatform.fdf | 2 +- Platform/ARM/SgiPkg/SgiPlatform.fdf | 2 +- .../ARM/VExpressPkg/ArmVExpress-CTA15-A7.dsc | 4 ++-- .../ARM/VExpressPkg/ArmVExpress-CTA15-A7.fdf | 4 ++-- Platform/ARM/VExpressPkg/ArmVExpress.dsc.inc | 4 ++-- .../Drivers/ArmVExpressDxe/ArmFvpDxe.inf | 2 +- .../Drivers/ArmVExpressDxe/ArmHwDxe.inf | 2 +- 52 files changed, 36 insertions(+), 67 deletions(-) delete mode 100644 Platform/ARM/ARM.dec rename Platform/ARM/{Drivers/FdtPlatformDxe/FdtPlatformDxe.dec => ArmCommonPkg/ArmCommonPkg.dec} (52%) rename Platform/ARM/{ => ArmCommonPkg}/Drivers/BootMonFs/BootMonFs.inf (90%) rename Platform/ARM/{ => ArmCommonPkg}/Drivers/BootMonFs/BootMonFsApi.h (100%) rename Platform/ARM/{ => ArmCommonPkg}/Drivers/BootMonFs/BootMonFsDir.c (100%) rename Platform/ARM/{ => ArmCommonPkg}/Drivers/BootMonFs/BootMonFsEntryPoint.c (100%) rename Platform/ARM/{ => ArmCommonPkg}/Drivers/BootMonFs/BootMonFsHw.h (100%) rename Platform/ARM/{ => ArmCommonPkg}/Drivers/BootMonFs/BootMonFsImages.c (100%) rename Platform/ARM/{ => ArmCommonPkg}/Drivers/BootMonFs/BootMonFsInternal.h (100%) rename Platform/ARM/{ => ArmCommonPkg}/Drivers/BootMonFs/BootMonFsOpenClose.c (100%) rename Platform/ARM/{ => ArmCommonPkg}/Drivers/BootMonFs/BootMonFsReadWrite.c (100%) rename Platform/ARM/{ => ArmCommonPkg}/Drivers/BootMonFs/BootMonFsUnsupported.c (100%) rename Platform/ARM/{ => ArmCommonPkg}/Drivers/FdtPlatformDxe/FdtPlatform.c (100%) rename Platform/ARM/{ => ArmCommonPkg}/Drivers/FdtPlatformDxe/FdtPlatform.h (100%) rename Platform/ARM/{ => ArmCommonPkg}/Drivers/FdtPlatformDxe/FdtPlatformDxe.inf (89%) rename Platform/ARM/{ => ArmCommonPkg}/Drivers/FdtPlatformDxe/FdtPlatformDxe.uni (100%) rename Platform/ARM/{ => ArmCommonPkg}/Drivers/FdtPlatformDxe/README.txt (100%) rename Platform/ARM/{ => ArmCommonPkg}/Drivers/FdtPlatformDxe/ShellDumpFdt.c (100%) rename Platform/ARM/{ => ArmCommonPkg}/Drivers/FdtPlatformDxe/ShellSetFdt.c (100%) rename Platform/ARM/{ => ArmCommonPkg}/Include/Guid/BootMonFsFileInfo.h (100%) rename Platform/ARM/{ => ArmCommonPkg}/Include/Library/ArmShellCmdLib.h (100%) rename Platform/ARM/{ => ArmCommonPkg}/Include/Library/BdsLib.h (100%) rename Platform/ARM/{ => ArmCommonPkg}/Library/ArmShellCmdRunAxf/AArch64/Pivot.S (100%) rename Platform/ARM/{ => ArmCommonPkg}/Library/ArmShellCmdRunAxf/Arm/Pivot.S (100%) rename Platform/ARM/{ => ArmCommonPkg}/Library/ArmShellCmdRunAxf/ArmShellCmdRunAxf.c (100%) rename Platform/ARM/{ => ArmCommonPkg}/Library/ArmShellCmdRunAxf/ArmShellCmdRunAxf.h (100%) rename Platform/ARM/{ => ArmCommonPkg}/Library/ArmShellCmdRunAxf/ArmShellCmdRunAxf.inf (91%) rename Platform/ARM/{ => ArmCommonPkg}/Library/ArmShellCmdRunAxf/ArmShellCmdRunAxf.uni (100%) rename Platform/ARM/{ => ArmCommonPkg}/Library/ArmShellCmdRunAxf/BootMonFsLoader.c (100%) rename Platform/ARM/{ => ArmCommonPkg}/Library/ArmShellCmdRunAxf/BootMonFsLoader.h (100%) rename Platform/ARM/{ => ArmCommonPkg}/Library/ArmShellCmdRunAxf/ElfLoader.c (100%) rename Platform/ARM/{ => ArmCommonPkg}/Library/ArmShellCmdRunAxf/ElfLoader.h (100%) rename Platform/ARM/{ => ArmCommonPkg}/Library/ArmShellCmdRunAxf/RunAxf.c (100%) rename Platform/ARM/{ => ArmCommonPkg}/Library/ArmShellCmdRunAxf/elf32.h (100%) rename Platform/ARM/{ => ArmCommonPkg}/Library/ArmShellCmdRunAxf/elf64.h (100%) rename Platform/ARM/{ => ArmCommonPkg}/Library/ArmShellCmdRunAxf/elf_common.h (100%) rename Platform/ARM/{ => ArmCommonPkg}/Library/BdsLib/BdsFilePath.c (100%) rename Platform/ARM/{ => ArmCommonPkg}/Library/BdsLib/BdsHelper.c (100%) rename Platform/ARM/{ => ArmCommonPkg}/Library/BdsLib/BdsInternal.h (100%) rename Platform/ARM/{ => ArmCommonPkg}/Library/BdsLib/BdsLib.inf (92%) delete mode 100644 Platform/ARM/Drivers/BootMonFs/BootMonFs.dec -- 2.17.1