From: "Abner Chang" <abner.chang@hpe.com>
To: "devel@edk2.groups.io" <devel@edk2.groups.io>,
Sunil V L <sunilvl@ventanamicro.com>
Subject: Re: [edk2-devel] [edk2-platforms][PATCH v2 00/14] Use generic OpenSBI platform
Date: Thu, 7 Oct 2021 01:59:29 +0000 [thread overview]
Message-ID: <CS1PR8401MB11441BA8608B49724B16CA07FFB19@CS1PR8401MB1144.NAMPRD84.PROD.OUTLOOK.COM> (raw)
In-Reply-To: <498440f1-1fce-4f4a-c729-d83e07fb1c56@hpe.com>
The entire series of patches were already reviewed off line with Daniel internally.
Reviewed-by: Abner Chang <abner.chang@hpe.com>
> -----Original Message-----
> From: Schaefer, Daniel
> Sent: Wednesday, October 6, 2021 8:03 PM
> To: devel@edk2.groups.io; Chang, Abner (HPS SW/FW Technologist)
> <abner.chang@hpe.com>; Sunil V L <sunilvl@ventanamicro.com>
> Subject: Re: [edk2-devel] [edk2-platforms][PATCH v2 00/14] Use generic
> OpenSBI platform
>
> Title says v2 but this is the first time I sent it. Sorry.
> If there's a next one, it'll be v3, just to be consistent.
>
> On 10/6/21 19:56, Daniel Schaefer wrote:
> > OpenSBI can now use a generic platform implementation. The platform
> > specific behavior is derived from the device tree.
> >
> > This patchset updates OpenSBI, adds and builds the device tree and does
> > a lot of deduplication as a result.
> > Because OpenSBI has done quite a few other changes, Abner will send out
> > another patchset to adapt the rest of EDK2 RISC-V code for that.
> >
> > This generic implementation not only works for the current U540 and U500
> > implementations but also upcoming QEMU virt platform and possibly
> others
> > like BeagleV or Allwinner Nezha board.
> >
> > Abner Chang (4):
> > Silicon/RISC-V: Introduce FirmwareContext library
> > Silicon/RISC-V: PeiServiceTableLib uses RiscVFirmwareContextLib
> > SiFive/U5SeriesPkg: Use FirmwareContext library
> > RISC-V/PlatformPkg: Add FdtPeim to pass DTB from PEI to DXE via HOB
> >
> > Daniel Schaefer (10):
> > U5SeriesPkg: Deduplicate PlatformPei
> > RISC-V: Split SMBIOS out of PlatformPei
> > RISC-V: Use U5 SMBIOS library only for those platforms
> > U540: Add and build device tree
> > RISC-V/PlatformPkg: Build DeviceTree and use that in SEC
> > RISC-V/PlatformPkg: Fixup FDT from HOB and install into config table
> > U5SeriesPkg: Switch to generic OpenSBI platform
> > RISC-V: Switch to latest OpenSBI
> > RISC-V: Implement ResetSystem RT call
> > Move OpenSbiPlatformLib to RISC-V/PlatformPkg
> >
> > Platform/{SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard =>
> RISC-V/PlatformPkg}/Library/OpensbiPlatformLib/OpensbiPlatformLib.inf |
> 2 +
> > Platform/RISC-V/PlatformPkg/Library/OpensbiPlatformLib/Platform.c
> | 224 ++++++++++++++
> > Platform/RISC-
> V/PlatformPkg/Library/OpensbiPlatformLib/PlatformOverride.h
> | 30 ++
> > Platform/RISC-V/PlatformPkg/Library/OpensbiPlatformLib/SifiveFu540.c
> | 47 +++
> > Platform/RISC-V/PlatformPkg/Library/OpensbiPlatformLibNull/Platform.c
> | 27 +-
> > Platform/RISC-
> V/PlatformPkg/Library/PeiCoreInfoHobLibNull/CoreInfoHob.c
> | 37 +++
> > Platform/RISC-
> V/PlatformPkg/Library/PeiCoreInfoHobLibNull/PeiCoreInfoHobLib.inf
> | 43 +++
> > Platform/RISC-V/PlatformPkg/Library/ResetSystemLib/ResetSystemLib.c
> | 128 ++++++++
> > Platform/RISC-V/PlatformPkg/Library/ResetSystemLib/ResetSystemLib.inf
> | 33 +++
> > Platform/RISC-V/PlatformPkg/RiscVPlatformPkg.dec
> | 4 +
> > Platform/RISC-V/PlatformPkg/Universal/FdtPeim/FdtPeim.c
> | 70 +++++
> > Platform/RISC-V/PlatformPkg/Universal/FdtPeim/FdtPeim.inf
> | 49 ++++
> > Platform/{SiFive/U5SeriesPkg/FreedomU500VC707Board => RISC-
> V/PlatformPkg}/Universal/Pei/PlatformPei/Fv.c | 0
> > Platform/{SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard =>
> RISC-V/PlatformPkg}/Universal/Pei/PlatformPei/MemDetect.c | 11 +-
> > Platform/{SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard =>
> RISC-V/PlatformPkg}/Universal/Pei/PlatformPei/Platform.c | 21 +-
> > Platform/{SiFive/U5SeriesPkg/FreedomU500VC707Board => RISC-
> V/PlatformPkg}/Universal/Pei/PlatformPei/Platform.h | 0
> > Platform/{SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard =>
> RISC-V/PlatformPkg}/Universal/Pei/PlatformPei/PlatformPei.inf | 6 +-
> > Platform/RISC-V/PlatformPkg/Universal/Sec/Riscv64/SecEntry.S
> | 24 +-
> > Platform/RISC-V/PlatformPkg/Universal/Sec/SecMain.c
> | 54 +++-
> > Platform/RISC-V/PlatformPkg/Universal/Sec/SecMain.inf
> | 2 +
> >
> Platform/SiFive/U5SeriesPkg/FreedomU500VC707Board/Library/OpensbiPlat
> formLib/Platform.c | 29 +-
> > Platform/SiFive/U5SeriesPkg/FreedomU500VC707Board/U500.dsc
> | 16 +-
> > Platform/SiFive/U5SeriesPkg/FreedomU500VC707Board/U500.fdf
> | 2 +-
> > Platform/SiFive/U5SeriesPkg/FreedomU500VC707Board/U500.fdf.inc
> | 6 +-
> >
> Platform/SiFive/U5SeriesPkg/FreedomU500VC707Board/Universal/Pei/Platf
> ormPei/MemDetect.c | 74 -----
> >
> Platform/SiFive/U5SeriesPkg/FreedomU500VC707Board/Universal/Pei/Platf
> ormPei/Platform.c | 310 --------------------
> >
> Platform/SiFive/U5SeriesPkg/FreedomU500VC707Board/Universal/Pei/Platf
> ormPei/PlatformPei.inf | 73 -----
> >
> Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/DeviceTr
> ee.fdf.inc | 35 +++
> >
> Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/DeviceTr
> ee/U540DeviceTree.inf | 25 ++
> >
> Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/DeviceTr
> ee/fu540-c000.dtsi | 287 ++++++++++++++++++
> >
> Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/DeviceTr
> ee/gpio.h | 42 +++
> >
> Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/DeviceTr
> ee/hifive-unleashed-a00.dts | 106 +++++++
> >
> Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/DeviceTr
> ee/sifive-fu540-prci.h | 18 ++
> >
> Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/Library/
> OpensbiPlatformLib/Platform.c | 216 --------------
> >
> Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/U540.dsc
> | 29 +-
> >
> Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/U540.fdf
> | 10 +-
> >
> Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/U540.fdf
> .inc | 14 +-
> >
> Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/Universa
> l/Pei/PlatformPei/Fv.c | 51 ----
> >
> Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/Universa
> l/Pei/PlatformPei/Platform.h | 86 ------
> > Platform/SiFive/U5SeriesPkg/Include/SiFiveU5MCCoreplex.h
> | 33 +--
> > Platform/SiFive/U5SeriesPkg/Library/PeiCoreInfoHobLib/CoreInfoHob.c
> | 32 +-
> >
> Platform/SiFive/U5SeriesPkg/Library/PeiCoreInfoHobLib/PeiCoreInfoHobLib.
> inf | 4 +-
> > Platform/SiFive/U5SeriesPkg/Library/SerialIoLib/SerialPortLib.c
> | 81 ++++-
> > Silicon/RISC-V/ProcessorPkg/Include/IndustryStandard/RiscV.h
> | 3 +-
> > Silicon/RISC-V/ProcessorPkg/Include/IndustryStandard/RiscVOpensbi.h
> | 1 +
> > Silicon/RISC-V/ProcessorPkg/Include/Library/RiscVCpuLib.h
> | 14 +-
> > Silicon/RISC-V/ProcessorPkg/Include/Library/RiscVEdk2SbiLib.h
> | 39 ++-
> > Silicon/RISC-V/ProcessorPkg/Include/Library/RiscVFirmwareContextLib.h
> | 43 +++
> > Silicon/RISC-V/ProcessorPkg/Include/OpensbiTypes.h
> | 1 +
> > Silicon/RISC-
> V/ProcessorPkg/Library/PeiServicesTablePointerLibOpenSbi/PeiServicesTabl
> ePointerLibOpenSbi.inf | 4 +-
> > Silicon/RISC-
> V/ProcessorPkg/Library/PeiServicesTablePointerLibOpenSbi/PeiServicesTabl
> ePointerOpenSbi.c | 8 +-
> > Silicon/RISC-V/ProcessorPkg/Library/RiscVCpuLib/Cpu.S
> | 34 ++-
> > Silicon/RISC-V/ProcessorPkg/Library/RiscVEdk2SbiLib/RiscVEdk2SbiLib.c
> | 44 ++-
> > Silicon/RISC-
> V/ProcessorPkg/Library/RiscVFirmwareContextSbiLib/RiscVFirmwareContext
> SbiLib.c | 52 ++++
> > Silicon/RISC-
> V/ProcessorPkg/Library/RiscVFirmwareContextSbiLib/RiscVFirmwareContext
> SbiLib.inf | 34 +++
> > Silicon/RISC-
> V/ProcessorPkg/Library/RiscVFirmwareContextSscratchLib/RiscVFirmwareCo
> ntextSscratchLib.c | 48 +++
> > Silicon/RISC-
> V/ProcessorPkg/Library/RiscVFirmwareContextSscratchLib/RiscVFirmwareCo
> ntextSscratchLib.inf | 33 +++
> > Silicon/RISC-
> V/ProcessorPkg/Library/RiscVFirmwareContextStvecLib/RiscVFirmwareCont
> extStvecLib.c | 48 +++
> > Silicon/RISC-
> V/ProcessorPkg/Library/RiscVFirmwareContextStvecLib/RiscVFirmwareCont
> extStvecLib.inf | 34 +++
> > Silicon/RISC-V/ProcessorPkg/Library/RiscVOpensbiLib/RiscVOpensbiLib.inf
> | 13 +-
> > Silicon/RISC-V/ProcessorPkg/RiscVProcessorPkg.dec
> | 1 +
> > Silicon/RISC-V/ProcessorPkg/RiscVProcessorPkg.dsc
> | 7 +-
> > Silicon/RISC-V/ProcessorPkg/Universal/FdtDxe/FdtDxe.c
> | 116 ++++++++
> > Silicon/RISC-V/ProcessorPkg/Universal/FdtDxe/FdtDxe.inf
> | 53 ++++
> > 64 files changed, 2055 insertions(+), 966 deletions(-)
> > rename
> Platform/{SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard => RISC-
> V/PlatformPkg}/Library/OpensbiPlatformLib/OpensbiPlatformLib.inf (94%)
> > create mode 100644 Platform/RISC-
> V/PlatformPkg/Library/OpensbiPlatformLib/Platform.c
> > create mode 100644 Platform/RISC-
> V/PlatformPkg/Library/OpensbiPlatformLib/PlatformOverride.h
> > create mode 100644 Platform/RISC-
> V/PlatformPkg/Library/OpensbiPlatformLib/SifiveFu540.c
> > create mode 100644 Platform/RISC-
> V/PlatformPkg/Library/PeiCoreInfoHobLibNull/CoreInfoHob.c
> > create mode 100644 Platform/RISC-
> V/PlatformPkg/Library/PeiCoreInfoHobLibNull/PeiCoreInfoHobLib.inf
> > create mode 100644 Platform/RISC-
> V/PlatformPkg/Library/ResetSystemLib/ResetSystemLib.c
> > create mode 100644 Platform/RISC-
> V/PlatformPkg/Library/ResetSystemLib/ResetSystemLib.inf
> > create mode 100644 Platform/RISC-
> V/PlatformPkg/Universal/FdtPeim/FdtPeim.c
> > create mode 100644 Platform/RISC-
> V/PlatformPkg/Universal/FdtPeim/FdtPeim.inf
> > rename Platform/{SiFive/U5SeriesPkg/FreedomU500VC707Board => RISC-
> V/PlatformPkg}/Universal/Pei/PlatformPei/Fv.c (100%)
> > rename
> Platform/{SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard => RISC-
> V/PlatformPkg}/Universal/Pei/PlatformPei/MemDetect.c (79%)
> > rename
> Platform/{SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard => RISC-
> V/PlatformPkg}/Universal/Pei/PlatformPei/Platform.c (89%)
> > rename Platform/{SiFive/U5SeriesPkg/FreedomU500VC707Board => RISC-
> V/PlatformPkg}/Universal/Pei/PlatformPei/Platform.h (100%)
> > rename
> Platform/{SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard => RISC-
> V/PlatformPkg}/Universal/Pei/PlatformPei/PlatformPei.inf (87%)
> > delete mode 100644
> Platform/SiFive/U5SeriesPkg/FreedomU500VC707Board/Universal/Pei/Platf
> ormPei/MemDetect.c
> > delete mode 100644
> Platform/SiFive/U5SeriesPkg/FreedomU500VC707Board/Universal/Pei/Platf
> ormPei/Platform.c
> > delete mode 100644
> Platform/SiFive/U5SeriesPkg/FreedomU500VC707Board/Universal/Pei/Platf
> ormPei/PlatformPei.inf
> > create mode 100644
> Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/DeviceTr
> ee.fdf.inc
> > create mode 100644
> Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/DeviceTr
> ee/U540DeviceTree.inf
> > create mode 100644
> Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/DeviceTr
> ee/fu540-c000.dtsi
> > create mode 100644
> Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/DeviceTr
> ee/gpio.h
> > create mode 100644
> Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/DeviceTr
> ee/hifive-unleashed-a00.dts
> > create mode 100644
> Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/DeviceTr
> ee/sifive-fu540-prci.h
> > delete mode 100644
> Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/Library/
> OpensbiPlatformLib/Platform.c
> > delete mode 100644
> Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/Universa
> l/Pei/PlatformPei/Fv.c
> > delete mode 100644
> Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/Universa
> l/Pei/PlatformPei/Platform.h
> > create mode 100644 Silicon/RISC-
> V/ProcessorPkg/Include/Library/RiscVFirmwareContextLib.h
> > create mode 100644 Silicon/RISC-
> V/ProcessorPkg/Library/RiscVFirmwareContextSbiLib/RiscVFirmwareContext
> SbiLib.c
> > create mode 100644 Silicon/RISC-
> V/ProcessorPkg/Library/RiscVFirmwareContextSbiLib/RiscVFirmwareContext
> SbiLib.inf
> > create mode 100644 Silicon/RISC-
> V/ProcessorPkg/Library/RiscVFirmwareContextSscratchLib/RiscVFirmwareCo
> ntextSscratchLib.c
> > create mode 100644 Silicon/RISC-
> V/ProcessorPkg/Library/RiscVFirmwareContextSscratchLib/RiscVFirmwareCo
> ntextSscratchLib.inf
> > create mode 100644 Silicon/RISC-
> V/ProcessorPkg/Library/RiscVFirmwareContextStvecLib/RiscVFirmwareCont
> extStvecLib.c
> > create mode 100644 Silicon/RISC-
> V/ProcessorPkg/Library/RiscVFirmwareContextStvecLib/RiscVFirmwareCont
> extStvecLib.inf
> > create mode 100644 Silicon/RISC-
> V/ProcessorPkg/Universal/FdtDxe/FdtDxe.c
> > create mode 100644 Silicon/RISC-
> V/ProcessorPkg/Universal/FdtDxe/FdtDxe.inf
> >
prev parent reply other threads:[~2021-10-07 1:59 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <16AB6F18670B344C.27853@groups.io>
2021-10-06 12:02 ` [edk2-devel] [edk2-platforms][PATCH v2 00/14] Use generic OpenSBI platform Daniel Schaefer
2021-10-07 1:57 ` Abner Chang
2021-10-07 1:59 ` Abner Chang [this message]
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=CS1PR8401MB11441BA8608B49724B16CA07FFB19@CS1PR8401MB1144.NAMPRD84.PROD.OUTLOOK.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