Apart from the minor comments I've made, and the fallout from header
wrapper changes, I think this is ready to go into a -devel branch.

I still think the SMBIOS generation code needs to be consolidated, but
sure, let's do that once the code is in the branch.

Regards,

Leif

On Mon, Oct 28, 2019 at 12:20:15 +0800, Abner Chang wrote:
> The is the set of patches for belwo two platforms,
>  - SiFive Freedom U500 VC707 FPGA Dev Kit
>  - SiFive Freedom U540 HiFive Unleashed development board
> Refer to Readme.md under platforms/SiFive/U5SeriesPkg.
> 
> These patches have to be incorporated with RISC-V-V2 pacth v3 of edk2-staging.
> 
> Besides of patches, you can also get code from belwo git repository.
> - edk2-platforms for RISC-V platform,
> https://github.com/gilbert225/edk2-platforms/tree/devel-riscv-v2-PATCHv5
> - edk2-staging for RISC-V,
> https://github.com/changab/edk2-staging-riscv/tree/RISC-V-V2-v3
> 
> Abner Chang (18):
>   Silicon/SiFive: Initial version of SiFive silicon package.
>   SiFive/E51: Initial version of SiFive E51 core library.
>   SiFive/U54: Initial version of SiFive U54 core library.
>   SiFive/U54MC: Initial version of SiFive U54MC Coreplex library.
>   U5SeriesPkg/PeiCoreInfoHobLib: Library to create core information.
>   U5SeriesPkg/TimerDxe: U5 Series Platform Timer DXE driver.
>   U5SeriesPkg/RamFvbServicesRuntimeDxe: Firmware Volume Block service.
>   U5SeriesPkg/RiscVPlatformTimerLib: Platform Timer library
>   U5SeriesPkg/SerialIoLib: Platform Serial Port library
>   FreedomU540HiFiveUnleashedBoard/PlatformPei: Platform PEI for U540
>     platform.
>   FreedomU540HiFiveUnleashedBoard/OpensbiPlatformLib: OpenSBI platform
>     library     for U540 platform.
>   U5SeriesPkg/FreedomU540HiFiveUnleashedBoard: Add SiFive U540 platform.
>   FreedomU500VC707Board/PlatformPei: Platform initialization PEI module.
>   FreedomU500VC707Board/OpensbiPlatformLib: OpenSBI platform interface.
>   U5SeriesPkg/FreedomU500VC707Board: Add SiFive U500 platform.
>   SiFive/U5SeriesPkg Add U5SeriesPkg.
>   edk2-platforms: Update Readme.md for RISC-V platform.
>   edk2-platforms: Update Maintainers file.
> 
>  .../U5SeriesPkg/FreedomU500VC707Board/U500.dec     |   25 +
>  .../FreedomU540HiFiveUnleashedBoard/U540.dec       |   25 +
>  Platform/SiFive/U5SeriesPkg/U5SeriesPkg.dec        |   33 +
>  Silicon/SiFive/SiFive.dec                          |   39 +
>  .../U5SeriesPkg/FreedomU500VC707Board/U500.dsc     |  543 ++++++++++
>  .../FreedomU540HiFiveUnleashedBoard/U540.dsc       |  543 ++++++++++
>  .../U5SeriesPkg/FreedomU500VC707Board/U500.fdf     |  336 ++++++
>  .../FreedomU540HiFiveUnleashedBoard/U540.fdf       |  336 ++++++
>  .../U5SeriesPkg/FreedomU500VC707Board/U500.fdf.inc |   55 +
>  .../FreedomU500VC707Board/VarStore.fdf.inc         |   78 ++
>  .../FreedomU540HiFiveUnleashedBoard/U540.fdf.inc   |   54 +
>  .../VarStore.fdf.inc                               |   78 ++
>  .../OpensbiPlatformLib/OpensbiPlatformLib.inf      |   52 +
>  .../Universal/Pei/PlatformPei/PlatformPei.inf      |   73 ++
>  .../OpensbiPlatformLib/OpensbiPlatformLib.inf      |   52 +
>  .../Universal/Pei/PlatformPei/PlatformPei.inf      |   72 ++
>  .../PeiCoreInfoHobLib/PeiCoreInfoHobLib.inf        |   58 +
>  .../RiscVPlatformTimerLib.inf                      |   36 +
>  .../Library/SerialIoLib/SerialIoLib.inf            |   38 +
>  .../FvbServicesRuntimeDxe.inf                      |   80 ++
>  .../Universal/Dxe/TimerDxe/TimerDxe.inf            |   53 +
>  .../PeiCoreInfoHobLib/PeiCoreInfoHobLib.inf        |   47 +
>  .../PeiCoreInfoHobLib/PeiCoreInfoHobLib.inf        |   48 +
>  .../PeiCoreInfoHobLib/PeiCoreInfoHobLib.inf        |   46 +
>  .../Universal/Pei/PlatformPei/Platform.h           |   86 ++
>  .../Universal/Pei/PlatformPei/Platform.h           |   86 ++
>  .../U5SeriesPkg/Include/SiFiveU5MCCoreplex.h       |   51 +
>  Platform/SiFive/U5SeriesPkg/Include/U5Clint.h      |   20 +
>  .../Dxe/RamFvbServicesRuntimeDxe/FwBlockService.h  |  187 ++++
>  .../Dxe/RamFvbServicesRuntimeDxe/RamFlash.h        |   85 ++
>  .../U5SeriesPkg/Universal/Dxe/TimerDxe/Timer.h     |  174 +++
>  Silicon/SiFive/Include/Library/SiFiveE51.h         |   60 ++
>  Silicon/SiFive/Include/Library/SiFiveU54.h         |   60 ++
>  .../SiFive/Include/Library/SiFiveU54MCCoreplex.h   |   55 +
>  .../Library/OpensbiPlatformLib/Platform.c          |  213 ++++
>  .../Universal/Pei/PlatformPei/Fv.c                 |   51 +
>  .../Universal/Pei/PlatformPei/MemDetect.c          |   74 ++
>  .../Universal/Pei/PlatformPei/Platform.c           |  310 ++++++
>  .../Library/OpensbiPlatformLib/Platform.c          |  213 ++++
>  .../Universal/Pei/PlatformPei/Fv.c                 |   51 +
>  .../Universal/Pei/PlatformPei/MemDetect.c          |   74 ++
>  .../Universal/Pei/PlatformPei/Platform.c           |  310 ++++++
>  .../Library/PeiCoreInfoHobLib/CoreInfoHob.c        |  195 ++++
>  .../Library/SerialIoLib/SerialPortLib.c            |  253 +++++
>  .../Dxe/RamFvbServicesRuntimeDxe/FvbInfo.c         |  127 +++
>  .../Dxe/RamFvbServicesRuntimeDxe/FwBlockService.c  | 1114 
> ++++++++++++++++++++
>  .../RamFvbServicesRuntimeDxe/FwBlockServiceDxe.c   |  150 +++
>  .../Dxe/RamFvbServicesRuntimeDxe/RamFlash.c        |  145 +++
>  .../Dxe/RamFvbServicesRuntimeDxe/RamFlashDxe.c     |   20 +
>  .../U5SeriesPkg/Universal/Dxe/TimerDxe/Timer.c     |  304 ++++++
>  .../E51/Library/PeiCoreInfoHobLib/CoreInfoHob.c    |  242 +++++
>  .../U54/Library/PeiCoreInfoHobLib/CoreInfoHob.c    |  290 +++++
>  .../Library/PeiCoreInfoHobLib/CoreInfoHob.c        |  184 ++++
>  Platform/SiFive/U5SeriesPkg/Readme.md              |  110 ++
>  Readme.md                                          |   13 +
>  Maintainers.txt                                    |   16 +
>  .../U5SeriesPkg/FreedomU500VC707Board/U500.uni     |   13 +
>  .../FreedomU500VC707Board/U500PkgExtra.uni         |   12 +
>  .../FreedomU540HiFiveUnleashedBoard/U540.uni       |   13 +
>  .../U540PkgExtra.uni                               |   12 +
>  .../RiscVPlatformTimerLib/RiscVPlatformTimerLib.S  |   48 +
>  .../Library/SerialIoLib/U5SerialPortLib.uni        |   16 +
>  Platform/SiFive/U5SeriesPkg/U5SeriesPkg.uni        |   13 +
>  Platform/SiFive/U5SeriesPkg/U5SeriesPkgExtra.uni   |   12 +
>  .../U5SeriesPkg/Universal/Dxe/TimerDxe/Timer.uni   |   14 +
>  .../Universal/Dxe/TimerDxe/TimerExtra.uni          |   12 +
>  66 files changed, 8288 insertions(+)
>  create mode 100644 Platform/SiFive/U5SeriesPkg/FreedomU500VC707Board/U500.dec
>  create mode 100644 
> Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/U540.dec
>  create mode 100644 Platform/SiFive/U5SeriesPkg/U5SeriesPkg.dec
>  create mode 100644 Silicon/SiFive/SiFive.dec
>  create mode 100644 Platform/SiFive/U5SeriesPkg/FreedomU500VC707Board/U500.dsc
>  create mode 100644 
> Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/U540.dsc
>  create mode 100644 Platform/SiFive/U5SeriesPkg/FreedomU500VC707Board/U500.fdf
>  create mode 100644 
> Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/U540.fdf
>  create mode 100644 
> Platform/SiFive/U5SeriesPkg/FreedomU500VC707Board/U500.fdf.inc
>  create mode 100644 
> Platform/SiFive/U5SeriesPkg/FreedomU500VC707Board/VarStore.fdf.inc
>  create mode 100644 
> Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/U540.fdf.inc
>  create mode 100644 
> Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/VarStore.fdf.inc
>  create mode 100644 
> Platform/SiFive/U5SeriesPkg/FreedomU500VC707Board/Library/OpensbiPlatformLib/OpensbiPlatformLib.inf
>  create mode 100644 
> Platform/SiFive/U5SeriesPkg/FreedomU500VC707Board/Universal/Pei/PlatformPei/PlatformPei.inf
>  create mode 100644 
> Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/Library/OpensbiPlatformLib/OpensbiPlatformLib.inf
>  create mode 100644 
> Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/Universal/Pei/PlatformPei/PlatformPei.inf
>  create mode 100644 
> Platform/SiFive/U5SeriesPkg/Library/PeiCoreInfoHobLib/PeiCoreInfoHobLib.inf
>  create mode 100644 
> Platform/SiFive/U5SeriesPkg/Library/RiscVPlatformTimerLib/RiscVPlatformTimerLib.inf
>  create mode 100644 
> Platform/SiFive/U5SeriesPkg/Library/SerialIoLib/SerialIoLib.inf
>  create mode 100644 
> Platform/SiFive/U5SeriesPkg/Universal/Dxe/RamFvbServicesRuntimeDxe/FvbServicesRuntimeDxe.inf
>  create mode 100644 
> Platform/SiFive/U5SeriesPkg/Universal/Dxe/TimerDxe/TimerDxe.inf
>  create mode 100644 
> Silicon/SiFive/E51/Library/PeiCoreInfoHobLib/PeiCoreInfoHobLib.inf
>  create mode 100644 
> Silicon/SiFive/U54/Library/PeiCoreInfoHobLib/PeiCoreInfoHobLib.inf
>  create mode 100644 
> Silicon/SiFive/U54MCCoreplex/Library/PeiCoreInfoHobLib/PeiCoreInfoHobLib.inf
>  create mode 100644 
> Platform/SiFive/U5SeriesPkg/FreedomU500VC707Board/Universal/Pei/PlatformPei/Platform.h
>  create mode 100644 
> Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/Universal/Pei/PlatformPei/Platform.h
>  create mode 100644 Platform/SiFive/U5SeriesPkg/Include/SiFiveU5MCCoreplex.h
>  create mode 100644 Platform/SiFive/U5SeriesPkg/Include/U5Clint.h
>  create mode 100644 
> Platform/SiFive/U5SeriesPkg/Universal/Dxe/RamFvbServicesRuntimeDxe/FwBlockService.h
>  create mode 100644 
> Platform/SiFive/U5SeriesPkg/Universal/Dxe/RamFvbServicesRuntimeDxe/RamFlash.h
>  create mode 100644 Platform/SiFive/U5SeriesPkg/Universal/Dxe/TimerDxe/Timer.h
>  create mode 100644 Silicon/SiFive/Include/Library/SiFiveE51.h
>  create mode 100644 Silicon/SiFive/Include/Library/SiFiveU54.h
>  create mode 100644 Silicon/SiFive/Include/Library/SiFiveU54MCCoreplex.h
>  create mode 100644 
> Platform/SiFive/U5SeriesPkg/FreedomU500VC707Board/Library/OpensbiPlatformLib/Platform.c
>  create mode 100644 
> Platform/SiFive/U5SeriesPkg/FreedomU500VC707Board/Universal/Pei/PlatformPei/Fv.c
>  create mode 100644 
> Platform/SiFive/U5SeriesPkg/FreedomU500VC707Board/Universal/Pei/PlatformPei/MemDetect.c
>  create mode 100644 
> Platform/SiFive/U5SeriesPkg/FreedomU500VC707Board/Universal/Pei/PlatformPei/Platform.c
>  create mode 100644 
> Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/Library/OpensbiPlatformLib/Platform.c
>  create mode 100644 
> Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/Universal/Pei/PlatformPei/Fv.c
>  create mode 100644 
> Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/Universal/Pei/PlatformPei/MemDetect.c
>  create mode 100644 
> Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/Universal/Pei/PlatformPei/Platform.c
>  create mode 100644 
> Platform/SiFive/U5SeriesPkg/Library/PeiCoreInfoHobLib/CoreInfoHob.c
>  create mode 100644 
> Platform/SiFive/U5SeriesPkg/Library/SerialIoLib/SerialPortLib.c
>  create mode 100644 
> Platform/SiFive/U5SeriesPkg/Universal/Dxe/RamFvbServicesRuntimeDxe/FvbInfo.c
>  create mode 100644 
> Platform/SiFive/U5SeriesPkg/Universal/Dxe/RamFvbServicesRuntimeDxe/FwBlockService.c
>  create mode 100644 
> Platform/SiFive/U5SeriesPkg/Universal/Dxe/RamFvbServicesRuntimeDxe/FwBlockServiceDxe.c
>  create mode 100644 
> Platform/SiFive/U5SeriesPkg/Universal/Dxe/RamFvbServicesRuntimeDxe/RamFlash.c
>  create mode 100644 
> Platform/SiFive/U5SeriesPkg/Universal/Dxe/RamFvbServicesRuntimeDxe/RamFlashDxe.c
>  create mode 100644 Platform/SiFive/U5SeriesPkg/Universal/Dxe/TimerDxe/Timer.c
>  create mode 100644 Silicon/SiFive/E51/Library/PeiCoreInfoHobLib/CoreInfoHob.c
>  create mode 100644 Silicon/SiFive/U54/Library/PeiCoreInfoHobLib/CoreInfoHob.c
>  create mode 100644 
> Silicon/SiFive/U54MCCoreplex/Library/PeiCoreInfoHobLib/CoreInfoHob.c
>  create mode 100644 Platform/SiFive/U5SeriesPkg/Readme.md
>  create mode 100644 Platform/SiFive/U5SeriesPkg/FreedomU500VC707Board/U500.uni
>  create mode 100644 
> Platform/SiFive/U5SeriesPkg/FreedomU500VC707Board/U500PkgExtra.uni
>  create mode 100644 
> Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/U540.uni
>  create mode 100644 
> Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/U540PkgExtra.uni
>  create mode 100644 
> Platform/SiFive/U5SeriesPkg/Library/RiscVPlatformTimerLib/RiscVPlatformTimerLib.S
>  create mode 100644 
> Platform/SiFive/U5SeriesPkg/Library/SerialIoLib/U5SerialPortLib.uni
>  create mode 100644 Platform/SiFive/U5SeriesPkg/U5SeriesPkg.uni
>  create mode 100644 Platform/SiFive/U5SeriesPkg/U5SeriesPkgExtra.uni
>  create mode 100644 
> Platform/SiFive/U5SeriesPkg/Universal/Dxe/TimerDxe/Timer.uni
>  create mode 100644 
> Platform/SiFive/U5SeriesPkg/Universal/Dxe/TimerDxe/TimerExtra.uni
> 
> -- 
> 2.7.4
> 
> 
> 
> 

-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#51296): https://edk2.groups.io/g/devel/message/51296
Mute This Topic: https://groups.io/mt/38831832/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to