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/OpensbiPlatformLib/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/PlatformPei/MemDetect.c
>                                                |  74 -----
>  
> Platform/SiFive/U5SeriesPkg/FreedomU500VC707Board/Universal/Pei/PlatformPei/Platform.c
>                                                 | 310 --------------------
>  
> Platform/SiFive/U5SeriesPkg/FreedomU500VC707Board/Universal/Pei/PlatformPei/PlatformPei.inf
>                                            |  73 -----
>  
> Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/DeviceTree.fdf.inc
>                                                         |  35 +++
>  
> Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/DeviceTree/U540DeviceTree.inf
>                                              |  25 ++
>  
> Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/DeviceTree/fu540-c000.dtsi
>                                                 | 287 ++++++++++++++++++
>  
> Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/DeviceTree/gpio.h 
>                                                         |  42 +++
>  
> Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/DeviceTree/hifive-unleashed-a00.dts
>                                        | 106 +++++++
>  
> Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/DeviceTree/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/Universal/Pei/PlatformPei/Fv.c
>                                             |  51 ----
>  
> Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/Universal/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/PeiServicesTablePointerLibOpenSbi.inf
>                            |   4 +-
>  
> Silicon/RISC-V/ProcessorPkg/Library/PeiServicesTablePointerLibOpenSbi/PeiServicesTablePointerOpenSbi.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/RiscVFirmwareContextSbiLib.c
>                                            |  52 ++++
>  
> Silicon/RISC-V/ProcessorPkg/Library/RiscVFirmwareContextSbiLib/RiscVFirmwareContextSbiLib.inf
>                                          |  34 +++
>  
> Silicon/RISC-V/ProcessorPkg/Library/RiscVFirmwareContextSscratchLib/RiscVFirmwareContextSscratchLib.c
>                                  |  48 +++
>  
> Silicon/RISC-V/ProcessorPkg/Library/RiscVFirmwareContextSscratchLib/RiscVFirmwareContextSscratchLib.inf
>                                |  33 +++
>  
> Silicon/RISC-V/ProcessorPkg/Library/RiscVFirmwareContextStvecLib/RiscVFirmwareContextStvecLib.c
>                                        |  48 +++
>  
> Silicon/RISC-V/ProcessorPkg/Library/RiscVFirmwareContextStvecLib/RiscVFirmwareContextStvecLib.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/PlatformPei/MemDetect.c
>  delete mode 100644 
> Platform/SiFive/U5SeriesPkg/FreedomU500VC707Board/Universal/Pei/PlatformPei/Platform.c
>  delete mode 100644 
> Platform/SiFive/U5SeriesPkg/FreedomU500VC707Board/Universal/Pei/PlatformPei/PlatformPei.inf
>  create mode 100644 
> Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/DeviceTree.fdf.inc
>  create mode 100644 
> Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/DeviceTree/U540DeviceTree.inf
>  create mode 100644 
> Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/DeviceTree/fu540-c000.dtsi
>  create mode 100644 
> Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/DeviceTree/gpio.h
>  create mode 100644 
> Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/DeviceTree/hifive-unleashed-a00.dts
>  create mode 100644 
> Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/DeviceTree/sifive-fu540-prci.h
>  delete mode 100644 
> Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/Library/OpensbiPlatformLib/Platform.c
>  delete mode 100644 
> Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/Universal/Pei/PlatformPei/Fv.c
>  delete mode 100644 
> Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/Universal/Pei/PlatformPei/Platform.h
>  create mode 100644 
> Silicon/RISC-V/ProcessorPkg/Include/Library/RiscVFirmwareContextLib.h
>  create mode 100644 
> Silicon/RISC-V/ProcessorPkg/Library/RiscVFirmwareContextSbiLib/RiscVFirmwareContextSbiLib.c
>  create mode 100644 
> Silicon/RISC-V/ProcessorPkg/Library/RiscVFirmwareContextSbiLib/RiscVFirmwareContextSbiLib.inf
>  create mode 100644 
> Silicon/RISC-V/ProcessorPkg/Library/RiscVFirmwareContextSscratchLib/RiscVFirmwareContextSscratchLib.c
>  create mode 100644 
> Silicon/RISC-V/ProcessorPkg/Library/RiscVFirmwareContextSscratchLib/RiscVFirmwareContextSscratchLib.inf
>  create mode 100644 
> Silicon/RISC-V/ProcessorPkg/Library/RiscVFirmwareContextStvecLib/RiscVFirmwareContextStvecLib.c
>  create mode 100644 
> Silicon/RISC-V/ProcessorPkg/Library/RiscVFirmwareContextStvecLib/RiscVFirmwareContextStvecLib.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 (#81551): https://edk2.groups.io/g/devel/message/81551
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]
-=-=-=-=-=-=-=-=-=-=-=-


Reply via email to