The entire series of patches were already reviewed off line with Daniel internally.
Reviewed-by: Abner Chang <abner.ch...@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.ch...@hpe.com>; Sunil V L <suni...@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 > > -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#81564): https://edk2.groups.io/g/devel/message/81564 Mute This Topic: https://groups.io/mt/86117287/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-