public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: "Laszlo Ersek" <lersek@redhat.com>
To: Ard Biesheuvel <ardb@kernel.org>, devel@edk2.groups.io
Cc: Ard Biesheuvel <ardb+tianocore@kernel.org>,
	Bibo Mao <maobibo@loongson.cn>, Chao Li <lichao@loongson.cn>,
	Chuong Tran <chuong@os.amperecomputing.com>,
	Leif Lindholm <quic_llindhol@quicinc.com>,
	Ling Jia <jialing@phytium.com.cn>,
	Marcin Wojtas <mw@semihalf.com>,
	Masami Hiramatsu <masami.hiramatsu@linaro.org>,
	Meenakshi Aggarwal <meenakshi.aggarwal@nxp.com>,
	Nhi Pham <nhi@os.amperecomputing.com>,
	Peng Xie <xiepeng@phytium.com.cn>,
	Rebecca Cran <rebecca@os.amperecomputing.com>,
	Wenyi Xie <xiewenyi2@huawei.com>,
	Xianglai li <lixianglai@loongson.cn>,
	Yiqi Shu <shuyiqi@phytium.com.cn>
Subject: Re: [edk2-devel] [edk2-platforms PATCH 00/19] let LibRtcVirtualNotifyEvent() be dropped
Date: Fri, 13 Oct 2023 22:42:14 +0200	[thread overview]
Message-ID: <21b719b1-d59e-d12f-c19d-d604e2d2f991@redhat.com> (raw)
In-Reply-To: <CAMj1kXHPhkDj-B8bagGc2EmBDccuGHcQbMAr31UTs=XB5U_Urw@mail.gmail.com>

On 10/13/23 12:12, Ard Biesheuvel wrote:
> On Thu, 12 Oct 2023 at 11:10, Laszlo Ersek <lersek@redhat.com> wrote:
>>
>> https://bugzilla.tianocore.org/show_bug.cgi?id=4564
>>
>> The RealTimeClockLib class header in edk2's EmbeddedPkg mistakenly
>> declares a function called LibRtcVirtualNotifyEvent(). No component ever
>> calls this function across module boundaries; all RealTimeClockLib
>> instances in edk2 and edk2-platforms are supposed to register -- and do
>> register -- their SetVirtualAddressMap() notification functions.
>>
>> In a sibling series for edk2, we're going to remove the
>> LibRtcVirtualNotifyEvent() API from the RealTimeClockLib *class* header.
>> In edk2-platforms, that means the following:
>>
>> (1) Fix existent (independent) build failures / bitrot. This is a
>> pre-requisite for showing that the other changes don't regress the
>> build. Build regression testing is only possible if you have a build
>> that completes in the first place.
>>
>> Patch #1 enables the NOOPT target for Hisilicon platforms, so that they
>> can be more quickly built: Hisilicon needs several fixes for existent
>> build issues. Patches #2 through #7 fix those issues.
>>
>> In particular patch#4 ("Hisilicon: rename OemMiscLib class to
>> HisiOemMiscLib") requires an ek2-non-osi complement; please see that in
>> the sibling edk2-non-osi posting ("Hisilicon: rename OemMiscLib class
>> dependencies to HisiOemMiscLib").
>>
>> Patch #12 fixes prior build breakage in AmpereAltraPkg.
>>
>> (2) In those RealTimeClockLib instances that define
>> LibRtcVirtualNotifyEvent(), demonstrate that either (a) the usage is
>> module-internal, or (b) there is no usage.
>>
>> In case (a), rename LibRtcVirtualNotifyEvent() to VirtualNotifyEvent(),
>> and make it static. If needed, hoist the function definition above the
>> reference. In case (b), remove the function definition.
>>
>> (3) Some affected RealTimeClockLib instances turn out to be entirely
>> unused / superfluous; drop those altogether.
>>
>> Cc: Ard Biesheuvel <ardb+tianocore@kernel.org>
>> Cc: Bibo Mao <maobibo@loongson.cn>
>> Cc: Chao Li <lichao@loongson.cn>
>> Cc: Chuong Tran <chuong@os.amperecomputing.com>
>> Cc: Leif Lindholm <quic_llindhol@quicinc.com>
>> Cc: Ling Jia <jialing@phytium.com.cn>
>> Cc: Marcin Wojtas <mw@semihalf.com>
>> Cc: Masami Hiramatsu <masami.hiramatsu@linaro.org>
>> Cc: Meenakshi Aggarwal <meenakshi.aggarwal@nxp.com>
>> Cc: Nhi Pham <nhi@os.amperecomputing.com>
>> Cc: Peng Xie <xiepeng@phytium.com.cn>
>> Cc: Rebecca Cran <rebecca@os.amperecomputing.com>
>> Cc: Wenyi Xie <xiewenyi2@huawei.com>
>> Cc: Xianglai li <lixianglai@loongson.cn>
>> Cc: Yiqi Shu <shuyiqi@phytium.com.cn>
>>
>> Thanks
>> Laszlo
>>
>> Laszlo Ersek (19):
>>   Hisilicon: enable NOOPT builds
>>   Hisilicon/FlashFvbDxe: fix PcdNorFlashCheckBlockLocked token space
>>     GUID
>>   Hisilicon.dsc.inc: resolve VariableFlashInfoLib
>>   Hisilicon: rename OemMiscLib class to HisiOemMiscLib
>>   Hisilicon: add missing include file to Pptt components
>>   Hisilicon/Hi1620AcpiTables: fix up ASL
>>   Hisilicon/ProcessorSubClassDxe: drop conflicting PROCESSOR_STATUS_DATA
>>     type
>>   Hisilicon: drop unused DS3231RealTimeClockLib instance
>>   Hisilicon: drop unused VirtualRealTimeClockLib instance
>>   Hisilicon/DS3231RealTimeClockLib: drop LibRtcVirtualNotifyEvent
>>   Hisilicon/RX8900RealTimeClockLib: drop LibRtcVirtualNotifyEvent
>>   AmpereAltraPkg/Ac01PcieLib: fix compilation error
>>   JadePkg/PCF85063RealTimeClockLib: hide LibRtcVirtualNotifyEvent
>>   LoongArchQemuPkg/LsRealTimeClockLib: hide LibRtcVirtualNotifyEvent
>>   Styx/RealTimeClockLib: hide LibRtcVirtualNotifyEvent
>>   Armada7k8k/RealTimeClockLib: hide LibRtcVirtualNotifyEvent
>>   NXP/Pcf8563RealTimeClockLib: hide LibRtcVirtualNotifyEvent
>>   FT2000-4Pkg/RealTimeClockLib: hide LibRtcVirtualNotifyEvent
>>   Omap35xxPkg/RealTimeClockLib: drop LibRtcVirtualNotifyEvent
>>
> 
> Thanks a lot for cleaning this up!
> 
> For the series,
> 
> Reviewed-by: Ard Biesheuvel <ardb@kernel.org>
> 
> Pushed as d6e36a151ff8..06f6274d5642
> 
> edk2-non-osi patch pushed as d6e36a151ff8..06f6274d5642
> 

Thanks much! :)

I'll post a followup for removing the stale MmioRead32() from
AmpereAltraPkg/Ac01PcieLib.

Cheers
Laszlo



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#109610): https://edk2.groups.io/g/devel/message/109610
Mute This Topic: https://groups.io/mt/101914650/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/leave/12367111/7686176/1913456212/xyzzy [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-



  reply	other threads:[~2023-10-13 20:42 UTC|newest]

Thread overview: 46+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-10-12  9:08 [edk2-devel] EmbeddedPkg/RealTimeClockLib: drop LibRtcVirtualNotifyEvent from lib class Laszlo Ersek
2023-10-12  9:09 ` [edk2-devel] [edk2-platforms PATCH 00/19] let LibRtcVirtualNotifyEvent() be dropped Laszlo Ersek
2023-10-12  9:09   ` [edk2-devel] [edk2-platforms PATCH 01/19] Hisilicon: enable NOOPT builds Laszlo Ersek
2023-10-12  9:09   ` [edk2-devel] [edk2-platforms PATCH 02/19] Hisilicon/FlashFvbDxe: fix PcdNorFlashCheckBlockLocked token space GUID Laszlo Ersek
2023-10-12  9:09   ` [edk2-devel] [edk2-platforms PATCH 03/19] Hisilicon.dsc.inc: resolve VariableFlashInfoLib Laszlo Ersek
2023-10-12  9:09   ` [edk2-devel] [edk2-platforms PATCH 04/19] Hisilicon: rename OemMiscLib class to HisiOemMiscLib Laszlo Ersek
2023-10-12  9:09   ` [edk2-devel] [edk2-platforms PATCH 05/19] Hisilicon: add missing include file to Pptt components Laszlo Ersek
2023-10-12  9:09   ` [edk2-devel] [edk2-platforms PATCH 06/19] Hisilicon/Hi1620AcpiTables: fix up ASL Laszlo Ersek
2023-10-12  9:09   ` [edk2-devel] [edk2-platforms PATCH 07/19] Hisilicon/ProcessorSubClassDxe: drop conflicting PROCESSOR_STATUS_DATA type Laszlo Ersek
2023-10-12  9:09   ` [edk2-devel] [edk2-platforms PATCH 08/19] Hisilicon: drop unused DS3231RealTimeClockLib instance Laszlo Ersek
2023-10-12  9:09   ` [edk2-devel] [edk2-platforms PATCH 09/19] Hisilicon: drop unused VirtualRealTimeClockLib instance Laszlo Ersek
2023-10-12  9:09   ` [edk2-devel] [edk2-platforms PATCH 10/19] Hisilicon/DS3231RealTimeClockLib: drop LibRtcVirtualNotifyEvent Laszlo Ersek
2023-10-12  9:09   ` [edk2-devel] [edk2-platforms PATCH 11/19] Hisilicon/RX8900RealTimeClockLib: " Laszlo Ersek
2023-10-12  9:09   ` [edk2-devel] [edk2-platforms PATCH 12/19] AmpereAltraPkg/Ac01PcieLib: fix compilation error Laszlo Ersek
2023-10-13  2:20     ` Nhi Pham via groups.io
2023-10-13  3:24       ` Nhi Pham via groups.io
2023-10-13 20:37         ` Laszlo Ersek
2023-10-12  9:09   ` [edk2-devel] [edk2-platforms PATCH 13/19] JadePkg/PCF85063RealTimeClockLib: hide LibRtcVirtualNotifyEvent Laszlo Ersek
2023-10-13  2:24     ` Nhi Pham via groups.io
2023-10-12  9:09   ` [edk2-devel] [edk2-platforms PATCH 14/19] LoongArchQemuPkg/LsRealTimeClockLib: " Laszlo Ersek
2023-10-12 12:14     ` xianglai
2023-10-12 12:25       ` Chao Li
2023-10-12  9:09   ` [edk2-devel] [edk2-platforms PATCH 15/19] Styx/RealTimeClockLib: " Laszlo Ersek
2023-10-12  9:09   ` [edk2-devel] [edk2-platforms PATCH 16/19] Armada7k8k/RealTimeClockLib: " Laszlo Ersek
2023-10-12 14:32     ` Marcin Wojtas via groups.io
2023-10-12  9:09   ` [edk2-devel] [edk2-platforms PATCH 17/19] NXP/Pcf8563RealTimeClockLib: " Laszlo Ersek
2023-10-12  9:09   ` [edk2-devel] [edk2-platforms PATCH 18/19] FT2000-4Pkg/RealTimeClockLib: " Laszlo Ersek
2023-10-12  9:09   ` [edk2-devel] [edk2-platforms PATCH 19/19] Omap35xxPkg/RealTimeClockLib: drop LibRtcVirtualNotifyEvent Laszlo Ersek
2023-10-13 10:12   ` [edk2-devel] [edk2-platforms PATCH 00/19] let LibRtcVirtualNotifyEvent() be dropped Ard Biesheuvel
2023-10-13 20:42     ` Laszlo Ersek [this message]
2023-10-12  9:10 ` [edk2-devel] [edk2-non-osi PATCH 0/1] Hisilicon: rename OemMiscLib class dependencies to HisiOemMiscLib Laszlo Ersek
2023-10-12  9:10   ` [edk2-devel] [edk2-non-osi PATCH 1/1] " Laszlo Ersek
2023-10-12  9:10 ` [edk2-devel] [PATCH 0/5] EmbeddedPkg/RealTimeClockLib: drop LibRtcVirtualNotifyEvent from lib class Laszlo Ersek
2023-10-12  9:10   ` [edk2-devel] [PATCH 1/5] PcAtChipsetPkg/PcatRealTimeClockRuntimeDxe: rename LibRtcVirtualNotifyEvent Laszlo Ersek
2023-10-12 12:33     ` Sami Mujawar
2023-10-18 13:42       ` Laszlo Ersek
2023-10-18 15:15         ` Sami Mujawar
2023-10-18 15:19           ` Laszlo Ersek
2023-10-12  9:10   ` [edk2-devel] [PATCH 2/5] ArmPlatformPkg/PL031RealTimeClockLib: hide LibRtcVirtualNotifyEvent Laszlo Ersek
2023-10-12 12:31     ` Sami Mujawar
2023-10-12  9:10   ` [edk2-devel] [PATCH 3/5] EmbeddedPkg/TemplateRealTimeClockLib: drop LibRtcVirtualNotifyEvent Laszlo Ersek
2023-10-12  9:10   ` [edk2-devel] [PATCH 4/5] EmbeddedPkg/VirtualRealTimeClockLib: " Laszlo Ersek
2023-10-12  9:10   ` [edk2-devel] [PATCH 5/5] EmbeddedPkg/RealTimeClockLib: drop LibRtcVirtualNotifyEvent from lib class Laszlo Ersek
2023-10-18 13:42   ` [edk2-devel] [PATCH 0/5] " Laszlo Ersek
2023-10-18 13:44     ` Ard Biesheuvel
2023-10-18 17:03       ` Laszlo Ersek

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-list from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=21b719b1-d59e-d12f-c19d-d604e2d2f991@redhat.com \
    --to=devel@edk2.groups.io \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox