From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [216.205.24.124]) by mx.groups.io with SMTP id smtpd.web08.1708.1615911835418970951 for ; Tue, 16 Mar 2021 09:23:55 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@redhat.com header.s=mimecast20190719 header.b=RdXd079s; spf=pass (domain: redhat.com, ip: 216.205.24.124, mailfrom: lersek@redhat.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1615911834; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=oHmO6snhLIXmfFA652bVlIeG3GAmDNGkQ4O+YnvMUKw=; b=RdXd079sPmtOzvsE/7x/5onYg4QNeU/peduX9SXjYBvcH0RFVfzQ9PJigxxK7M5aYorEVN DLSSJiS/FE6czh+TOun0fM6n95hAIUyqcY1hzxtnac7eXsAm2grSlxqjAGr7R/4yznoMSH ykN8P6L6O3xgkYEK6Zw82LCDF7BRNNc= Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-113-zSYxjOTuPY6viM5mAB5CIg-1; Tue, 16 Mar 2021 12:23:43 -0400 X-MC-Unique: zSYxjOTuPY6viM5mAB5CIg-1 Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.phx2.redhat.com [10.5.11.22]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id CC38D100C661; Tue, 16 Mar 2021 16:23:41 +0000 (UTC) Received: from lacos-laptop-7.usersys.redhat.com (ovpn-114-138.ams2.redhat.com [10.36.114.138]) by smtp.corp.redhat.com (Postfix) with ESMTP id 0574E1017CF5; Tue, 16 Mar 2021 16:23:39 +0000 (UTC) Subject: Re: [edk2-devel] [edk2-platforms] [patch 00/35] Consume RegisterFilterLibNull instance To: Ard Biesheuvel , devel@edk2.groups.io, dandan.bi@intel.com, Andrew Fish Cc: Leif Lindholm , Michael D Kinney , Liming Gao References: <20210316145428.35616-1-dandan.bi@intel.com> From: "Laszlo Ersek" Message-ID: <37431ead-7d7e-74a2-2f94-b8cc82307902@redhat.com> Date: Tue, 16 Mar 2021 17:23:39 +0100 MIME-Version: 1.0 In-Reply-To: X-Scanned-By: MIMEDefang 2.84 on 10.5.11.22 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=lersek@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit On 03/16/21 16:00, Ard Biesheuvel wrote: > On Tue, 16 Mar 2021 at 15:56, Dandan Bi wrote: >> >> REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3246 >> RFC: https://edk2.groups.io/g/devel/message/72530 >> >> >> Add RegisterFilterLibNull in dsc files in edk2-platforms repo, >> which will be consumed by IoLib and BaseLib. >> >> This is the following update in edk2-platforms repo for the change in edk2, >> which will add RegisterFilterLib dependency for IoLib and BaseLib to filter/trace >> port IO/MMIO/MSR access. >> https://edk2.groups.io/g/devel/message/72754 >> >> Cc: Leif Lindholm >> Cc: Michael D Kinney >> Cc: Liming Gao >> > > It is a bit disappointing that we have to update every platform in > existence again to apply a change to a core module. > > Is there really not a better way to provide a 'default' resolution for > a library class? Maybe a change to the .DEC format, so that the file > which defines the library class can provide a resolution that is used > if none is provided by the .DSC file? I vaguely remember this feature was raised earlier (maybe implemented via cross-Pkg DSC !include files). I believe some patches were posted even. I think I asked for a libclass-by-libclass conversion for existent platform DSCs (so I could verify that the new DSC include file would give OVMF and ArmVirt the same resolutions as before). I don't recall updates afterwards. Thanks Laszlo > > > >> Dandan Bi (35): >> Drivers/ASIX: Consume RegisterFilterLibNull instance >> Drivers/DisplayLink: Consume RegisterFilterLibNull instance >> Drivers/OptionRomPkg: Consume RegisterFilterLibNull instance >> Features/Debugging: Consume RegisterFilterLibNull instance >> Features/Network: Consume RegisterFilterLibNull instance >> Features/OutOfBandManagement: Consume RegisterFilterLibNull instance >> Features/PowerManagement: Consume RegisterFilterLibNull instance >> Features/SystemInformation: Consume RegisterFilterLibNull instance >> Features/UserInterface: Consume RegisterFilterLibNull instance >> Platform/AMD: Consume RegisterFilterLibNull instance >> Platform/ARM: Consume RegisterFilterLibNull instance >> Platform/BeagleBoard: Consume RegisterFilterLibNull instance >> Platform/BoardModulePkg: Consume RegisterFilterLibNull instance >> Platform/MinPlatformPkg: Consume RegisterFilterLibNull instance >> Platform/QuarkPlatformPkg: Consume RegisterFilterLibNull instance >> Platform/Vlv2TbltDevicePkg: Consume RegisterFilterLibNull instance >> Platform/LeMaker: Consume RegisterFilterLibNull instance >> Platform/Qemu: Consume RegisterFilterLibNull instance >> Platform/RaspberryPi: Consume RegisterFilterLibNull instance >> Platform/RISC-V: Consume RegisterFilterLibNull instance >> Platform/SiFive: Consume RegisterFilterLibNull instance >> Platform/Socionext: Consume RegisterFilterLibNull instance >> Platform/SoftIron: Consume RegisterFilterLibNull instance >> Silicon/Hisilicon: Consume RegisterFilterLibNull instance >> Silicon/CoffeelakeSiliconPkg: Consume RegisterFilterLibNull instance >> Silicon/IntelSiliconPkg: Consume RegisterFilterLibNull instance >> Silicon/KabylakeSiliconPkg: Consume RegisterFilterLibNull instance >> Silicon/QuarkSocPkg: Consume RegisterFilterLibNull instance >> Silicon/TigerlakeSiliconPkg: Consume RegisterFilterLibNull instance >> Silicon/Marvell: Consume RegisterFilterLibNull instance >> Silicon/NXP: Consume RegisterFilterLibNull instance >> Silicon/Openmoko: Consume RegisterFilterLibNull instance >> Silicon/RISC_V: Consume RegisterFilterLibNull instance >> Silicon/Synopsys/DesignWare: Consume RegisterFilterLibNull instance >> Silicon/TexasInstruments: Consume RegisterFilterLibNull instance >> >> Drivers/ASIX/Asix.dsc | 1 + >> Drivers/DisplayLink/DisplayLinkPkg/DisplayLinkPkg.dsc | 1 + >> Drivers/OptionRomPkg/OptionRomPkg.dsc | 3 ++- >> .../Debugging/AcpiDebugFeaturePkg/Include/AcpiDebugFeature.dsc | 3 ++- >> .../Debugging/BeepDebugFeaturePkg/Include/BeepDebugFeature.dsc | 3 ++- >> .../PostCodeDebugFeaturePkg/Include/PostCodeDebugFeature.dsc | 3 ++- >> .../Debugging/Usb3DebugFeaturePkg/Include/Usb3DebugFeature.dsc | 3 ++- >> .../Intel/Network/NetworkFeaturePkg/Include/NetworkFeature.dsc | 3 ++- >> .../OutOfBandManagement/IpmiFeaturePkg/Include/IpmiFeature.dsc | 3 ++- >> .../OutOfBandManagement/SpcrFeaturePkg/Include/SpcrFeature.dsc | 3 ++- >> .../Intel/PowerManagement/S3FeaturePkg/Include/S3Feature.dsc | 3 ++- >> .../SmbiosFeaturePkg/Include/SmbiosFeature.dsc | 3 ++- >> .../Intel/UserInterface/LogoFeaturePkg/Include/LogoFeature.dsc | 3 ++- >> .../UserAuthFeaturePkg/Include/UserAuthFeature.dsc | 3 ++- >> .../Include/VirtualKeyboardFeature.dsc | 3 ++- >> Platform/AMD/OverdriveBoard/OverdriveBoard.dsc | 1 + >> Platform/ARM/SgiPkg/PlatformStandaloneMm.dsc | 1 + >> Platform/ARM/VExpressPkg/ArmVExpress.dsc.inc | 1 + >> Platform/BeagleBoard/BeagleBoardPkg/BeagleBoardPkg.dsc | 3 ++- >> Platform/Intel/BoardModulePkg/BoardModulePkg.dsc | 3 ++- >> Platform/Intel/MinPlatformPkg/Include/Dsc/CoreCommonLib.dsc | 3 ++- >> Platform/Intel/QuarkPlatformPkg/Quark.dsc | 1 + >> Platform/Intel/QuarkPlatformPkg/QuarkMin.dsc | 1 + >> Platform/Intel/Vlv2TbltDevicePkg/PlatformPkgIA32.dsc | 3 ++- >> Platform/Intel/Vlv2TbltDevicePkg/PlatformPkgX64.dsc | 3 ++- >> Platform/LeMaker/CelloBoard/CelloBoard.dsc | 1 + >> Platform/Qemu/SbsaQemu/SbsaQemu.dsc | 1 + >> Platform/RISC-V/PlatformPkg/RiscVPlatformPkg.dsc | 1 + >> Platform/RaspberryPi/RPi3/RPi3.dsc | 3 ++- >> Platform/RaspberryPi/RPi4/RPi4.dsc | 3 ++- >> Platform/SiFive/U5SeriesPkg/FreedomU500VC707Board/U500.dsc | 1 + >> .../U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/U540.dsc | 1 + >> Platform/Socionext/DeveloperBox/DeveloperBox.dsc.inc | 1 + >> Platform/Socionext/SynQuacerEvalBoard/SynQuacerEvalBoard.dsc | 1 + >> Platform/SoftIron/Overdrive1000Board/Overdrive1000Board.dsc | 1 + >> Silicon/Hisilicon/Hisilicon.dsc.inc | 1 + >> Silicon/Intel/CoffeelakeSiliconPkg/CoffeelakeSiliconPkg.dsc | 1 + >> Silicon/Intel/IntelSiliconPkg/IntelSiliconPkg.dsc | 3 ++- >> Silicon/Intel/KabylakeSiliconPkg/KabylakeSiliconPkg.dsc | 3 ++- >> Silicon/Intel/QuarkSocPkg/QuarkSocPkg.dsc | 3 ++- >> Silicon/Intel/TigerlakeSiliconPkg/TigerlakeSiliconPkg.dsc | 1 + >> Silicon/Marvell/Armada7k8k/Armada7k8k.dsc.inc | 1 + >> Silicon/NXP/NxpQoriqLs.dsc.inc | 1 + >> Silicon/Openmoko/Openmoko.dsc | 1 + >> Silicon/RISC-V/ProcessorPkg/RiscVProcessorPkg.dsc | 1 + >> Silicon/Synopsys/DesignWare/DesignWare.dsc | 1 + >> Silicon/TexasInstruments/Omap35xxPkg/Omap35xxPkg.dsc | 1 + >> 47 files changed, 70 insertions(+), 23 deletions(-) >> >> -- >> 2.18.0.windows.1 >> >> >> >> >> >> >