On 02/06/19 13:10, Laszlo Ersek wrote: > Repo: https://github.com/lersek/edk2.git > Branch: armvirt_pcd_clean > > (1) The procedure described below depends on: > > [edk2] [PATCH] > BaseTools/BuildReport: fix report for platforms/arches without struct PCDs > > 20190205112213.682-1-lersek@redhat.com">http://mid.mail-archive.com/20190205112213.682-1-lersek@redhat.com > https://lists.01.org/pipermail/edk2-devel/2019-February/036320.html > > (2) Background: while working on the fix in (1), I noticed that the PCD > sections in the build reports of various ArmVirt platforms contained > "PCDs not used by modules or in conditional directives". I thought > that we should attempt to clean those up. Subsequently I built the > following 36 ArmVirt platforms: > >> extra_opts=("" "-D HTTP_BOOT_ENABLE -D NETWORK_IP6_ENABLE -D >> SECURE_BOOT_ENABLE -D TTY_TERMINAL") >> for arch in ARM AARCH64; do >> for platform in Qemu QemuKernel Xen; do >> for target in NOOPT DEBUG RELEASE; do >> for extra in 0 1; do >> GCC5_ARM_PREFIX=arm-linux-gnu- \ >> GCC5_AARCH64_PREFIX=aarch64-linux-gnu- \ >> build \ >> -a $arch \ >> -p ArmVirtPkg/ArmVirt${platform}.dsc \ >> -t GCC5 \ >> -b $target \ >> -n $(getconf _NPROCESSORS_ONLN) \ >> --report-file=$HOME/tmp/report.$arch.$platform.$target.$extra.txt \ >> --report-type=PCD \ >> --cmd-len=65536 \ >> ${extra_opts[$extra]} >> done >> done >> done >> done > > Then I gradually eliminated the redundant PCD settings. > > (3) At the bottom of this email (i.e., the series cover letter), I'm > including a base64-encoded tarball of report files, saved (like > described in (2)) before and after the series. Diffing the reports > proves that the series cleans up the PCD settings without any > changes observable to modules. > > (4) The series advances in small steps. The reason is that some of the > facts exposed could be surprising (I know I was surprised), and we > could decide that we want to do something else (e.g. file a BZ, and > fill the gap later). For such cases I wanted to be able to drop > individual patches at will. > > Cc: Ard Biesheuvel <ard.biesheu...@linaro.org> > Cc: Julien Grall <julien.gr...@linaro.org> > > Thanks, > Laszlo > > Laszlo Ersek (14): > ArmVirtPkg/ArmVirtQemuKernel: don't set PcdCPUCoresStackBase > ArmVirtPkg: don't set PcdRelocateVectorTable > ArmVirtPkg/{ArmVirtQemu,ArmVirtQemuKernel}: don't set > PcdTrustzoneSupport > ArmVirtPkg: don't set PcdPostCodePropertyMask > ArmVirtPkg: clean up PcdSetNxForStack setting (applies to ArmVirtQemu > only) > ArmVirtPkg/PrePi: drop wrong PcdCoreCount dependency > ArmVirtPkg: don't set PcdCoreCount > ArmVirtPkg: don't set PcdDebugClearMemoryValue > ArmVirtPkg: don't set PcdDebugPrintErrorLevel in RELEASE builds > ArmVirtPkg/ArmVirtXen: don't set PcdPL031RtcBase > ArmVirtPkg/ArmVirtXen: don't set PcdTerminalTypeGuidBuffer > ArmVirtPkg/ArmVirtXen: don't set PcdShellFile > ArmVirtPkg/ArmVirtXen: don't set PcdTurnOffUsbLegacySupport > ArmVirtPkg/ArmVirtXen: don't set Pcd*ImageVerificationPolicy > > ArmVirtPkg/ArmVirt.dsc.inc | 27 ++------------------ > ArmVirtPkg/ArmVirtQemu.dsc | 21 ++++++++++++--- > ArmVirtPkg/ArmVirtQemuKernel.dsc | 17 ++++++++---- > ArmVirtPkg/ArmVirtXen.dsc | 9 ------- > ArmVirtPkg/PrePi/ArmVirtPrePiUniCoreRelocatable.inf | 2 -- > 5 files changed, 31 insertions(+), 45 deletions(-)
series pushed as 63d8431a49cb..da06a2a2fa1e thanks Laszlo _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel