public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: "Abner Chang" <abner.chang@hpe.com>
To: devel@edk2.groups.io
Cc: abner.chang@hpe.com, Daniel Schaefer <daniel.schaefer@hpe.com>,
	Leif Lindholm <leif@nuviainc.com>,
	Michael D Kinney <michael.d.kinney@intel.com>
Subject: [edk2-platforms][PATCH v2 3/3] Platform/U5SeriesPkg: Revise Readme.md
Date: Thu, 27 Aug 2020 23:43:14 +0800	[thread overview]
Message-ID: <20200827154314.31480-4-abner.chang@hpe.com> (raw)
In-Reply-To: <20200827154314.31480-1-abner.chang@hpe.com>

Update RISC-V U5SeriesPkg Readme.md to align with the latest implementation.

Signed-off-by: Abner Chang <abner.chang@hpe.com>
Co-authored-by: Daniel Schaefer <daniel.schaefer@hpe.com>

Cc: Leif Lindholm <leif@nuviainc.com>
Cc: Michael D Kinney <michael.d.kinney@intel.com>
Cc: Daniel Schaefer <daniel.schaefer@hpe.com>
---
 Platform/SiFive/U5SeriesPkg/Readme.md | 114 ++++++++++++++------------
 1 file changed, 60 insertions(+), 54 deletions(-)

diff --git a/Platform/SiFive/U5SeriesPkg/Readme.md b/Platform/SiFive/U5SeriesPkg/Readme.md
index 4d293e54f6..2ced71fa56 100644
--- a/Platform/SiFive/U5SeriesPkg/Readme.md
+++ b/Platform/SiFive/U5SeriesPkg/Readme.md
@@ -1,61 +1,61 @@
-# Introduction
-U5SeriesPkg provides the common EFI library and driver modules for SiFive
-U5 series core platforms. Currently the supported platforms are Freedom
-U500 VC707 platform and Freedom U540 HiFive Unleashed platform.
-
-Both platforms are built with below common packages,
-- **U5SeriesPkg**, edk2 platform branch
-  (Currently is in edk2-platforms/devel-riscvplatforms branch)
-- **RiscVPlatformPkg**, edk2 master branch
-  (Currently is in edk2-staging/RISC-V-V2 branch)
-- **RiscVPkg**, edk2 master branch
-  (Currently is in edk2-staging/RISC-V-V2 branch)
+# Introduction of SiFive U5 Series Platforms
+U5SeriesPkg provides the common EDK2 libraries and drivers for SiFive U5 series platforms. Currently the supported
+platforms are Freedom U500 VC707 platform and Freedom U540 HiFive Unleashed platform.
+
+Both platforms are built with below common edk2 packages under edk2-platforms repository,
+- [**U5SeriesPkg**](https://github.com/tianocore/edk2-platforms/tree/master/Platform/SiFive/U5SeriesPkg)
+- [**RiscVPlatformPkg**](https://github.com/tianocore/edk2-platforms/tree/master/Platform/RISC-V/PlatformPkg)
+- [**RiscVProcessorPkg**](https://github.com/tianocore/edk2-platforms/tree/master/Silicon/RISC-V/ProcessorPkg)
 
 ## U500 Platform
-This is a sample RISC-V EDK2 platform package used agaist SiFive Freedom U500
+This is a sample platform package used against to SiFive Freedom U500
 VC707 FPGA Dev Kit, please refer to "SiFive Freedom U500 VC707 FPGA Getting
 Started Guide" on https://www.sifive.com/documentation.
+The binary built from Platform/SiFive/U5SeriesPkg/FreedomU500VC707Board can run on U500 VC707 FPGA board.
+```
+build -a RISCV64 -t GCC5 -p Platform/SiFive/U5SeriesPkg/FreedomU500VC707Board/U500.dsc
+```
 
 ## U540 Platform
-This is a sample RISC-V EDK2 platform package used against SiFive Freedom U540
-HiFive Unleashed development board, please refer to "SiFive Freedom U540-C000
-Manual" on https://www.sifive.com.
-The binary built from Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/
-can run on main stream [QEMU](https://git.qemu.org/?p=qemu.git;a=summary)
-using qemu-system-riscv64 under riscv64-softmmu. Launch the binary with
+This is a sample platform package used for the SiFive Freedom U540 HiFive Unleashed development board, please refer to "SiFive Freedom U540-C000 Manual" on https://www.sifive.com.
+The binary built from Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/ can run on both hardware and
+[QEMU](https://git.qemu.org/?p=qemu.git;a=summary). It is confirmed that version 5.0 of QEMU can boot with this  firmware to EFI shell and Linux userspace.
+```
+build -a RISCV64 -t GCC5 -p Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/U540.dsc
+```
+For running U540 edk2 binary on QEMU, use qemu-system-riscv64 under riscv64-softmmu to launch the binary with
+below parameters,
 
 ```
--cpu sifive-u54 -machine sifive_u
+qemu-system-riscv64 -cpu sifive-u54 -machine sifive_u -bios U540.fd -m 2048 -nographic -smp cpus=5,maxcpus=5
 ```
 
-## Download the sources
+## Download the Source Code
 ```
-git clone https://github.com/tianocore/edk2-staging.git
-# Checkout RISC-V-V2 branch
+git clone https://github.com/tianocore/edk2.git
 git clone https://github.com/tianocore/edk2-platforms.git
-# Checkout devel-riscvplatforms branch
-git clone https://github.com/tianocore/edk2-non-osi.git
+# Below to clone opensbi submodule.
+git submodule update --init
 ```
-
-## Platform Owners
-Chang, Abner <abner.chang@hpe.com>
-Chen, Gilbert <gilbert.chen@hpe.com>
+Refer to [Readme.md](https://github.com/tianocore/edk2-platforms/blob/master/Platform/RISC-V/PlatformPkg/Readme.md) for building RISC-V platforms.
 
 ## Platform Status
-Currently the binary built from U500Pkg can boot SiFive Freedom U500 VC707
+**FreedomU500VC707Board**
+Currently the binary built from U500 edk2 package can boot SiFive Freedom U500 VC707
 FPGA to EFI shell with console in/out enabled.
 
-## Linux Build Instructions
-You can build the RISC-V platform using below script,
-`build -a RISCV64  -t GCC5 -p Platform/SiFive/U5SeriesPkg/FreedomU500VC707Board/U500.dsc`
+**FreedomU540HiFiveUnleashedBoard**
+Currently the binary built from U540 edk2 package can boot SiFive Freedom U540 HiFive Unleashed
+to EFI shell with console in/out enabled and Linux kernel. Please refer to https://github.com/riscv/riscv-uefi-edk2-docs for booting to Linux kernel.
 
 ## Supported Operating Systems
-Only support to boot to EFI Shell so far.
+Please refer to https://github.com/riscv/riscv-uefi-edk2-docs.
 
 ## Known Issues and Limitations
 Only RISC-V RV64 is verified on this platform.
 
 ## Related Materials
+- [RISC-V UEFI Documents](https://github.com/riscv/riscv-uefi-edk2-docs)
 - [RISC-V OpenSbi](https://github.com/riscv/opensbi)
 - [SiFive U500 VC707 FPGA Getting Started Guide](https://sifive.cdn.prismic.io/sifive%2Fc248fabc-5e44-4412-b1c3-6bb6aac73a2c_sifive-u500-vc707-gettingstarted-v0.2.pdf)
 - [SiFive Freedom U540-C000 Manual](https://sifive.cdn.prismic.io/sifive%2F834354f0-08e6-423c-bf1f-0cb58ef14061_fu540-c000-v1.0.pdf)
@@ -63,48 +63,54 @@ Only RISC-V RV64 is verified on this platform.
 
 ## U5SeriesPkg Libraries and Drivers
 ### PeiCoreInfoHobLib
-This is the library to create RISC-V core characteristics for building up
-RISC-V related SMBIOS records to support the unified boot loader and OS image.
+This is the library to create RISC-V core characteristics for building up RISC-V related SMBIOS records to support
+a single boot loader  or OS image on all RISC-V platforms by discovering RISC-V hart configurations dynamically.
 This library leverage the silicon libraries provided in Silicon/SiFive.
 
 ### RiscVPlatformTimerLib
-This is common U5 series platform timer library which has the
-platform-specific timer implementation.
+This is common U5 series platform timer library which has the platform-specific timer implementation.
+
+### SerialLib
+This is common U5 series platform serial port library.
 
 ### TimerDxe
-This is U5 series platform timer DXE driver whcih has the platform-specific
-timer implementation.
+This is common U5 series platform timer DXE driver which has the platform-specific timer implementation.
 
 ## U500 Platform Libraries and Drivers
 ### RiscVOpensbiPlatformLib
-In order to reduce the dependencies with RISC-V OpenSBI project
-(https://github.com/riscv/opensbi) and fewer burdens to EDK2 build process, the
-implementation of RISC-V EDK2 platform is leveraging platform source code from
+In order to reduce the dependencies with RISC-V OpenSBI project (https://github.com/riscv/opensbi) and avoid duplicating
+code we use it, the implementation of RISC-V EDK2 platform is leveraging platform source code from
 OpenSBI code tree. The "platform.c" under OpenSbiPlatformLib is cloned from
-RISC-V OpenSBI code tree (in EDK2 RiscVPkg) and built based on EDK2 build
-environment.
+[RISC-V OpenSBI code tree](Silicon/RISC-V/ProcessorPkg/Library/RiscVOpensbiLib/opensbi) and built based on edk2
+build environment.
 
 ### PlatformPei
-This is the platform-implementation specific library which is executed in early
-PEI phase for U500 platform initialization.
+This is the platform-implementation specific library which is executed in early PEI phase for U500 platform
+initialization.
 
 ## U540 Platform Libraries and Drivers
 ### RiscVOpensbiPlatformLib
-In order to reduce the dependencies with RISC-V OpenSBI project
-(https://github.com/riscv/opensbi) and fewer burdens to EDK2 build process, the
-implementation of RISC-V EDK2 platform is leveraging platform source code from
+In order to reduce the dependencies with RISC-V OpenSBI project (https://github.com/riscv/opensbi) and fewer
+burdens to EDK2 build process, the implementation of RISC-V EDK2 platform is leveraging platform source code from
 OpenSBI code tree. The "platform.c" under OpenSbiPlatformLib is cloned from
-RISC-V OpenSBI code tree (in EDK2 RiscVPkg) and built based on EDK2 build
-environment.
+[RISC-V OpenSBI code tree](Silicon/RISC-V/ProcessorPkg/Library/RiscVOpensbiLib/opensbi) and built based on edk2
+build environment.
 
 ### PlatformPei
-This is the platform-implementation specific library which is executed in early
-PEI phase for U540 platform initialization.
+This is the platform-implementation specific library which is executed in early PEI phase for U540 platform
+initialization.
 
 ## U5SeriesPkg Platform PCD settings
 
 | **PCD name** |**Usage**|
 |----------------|----------|
+|PcdU5PlatformSystemClock| U5 series platform system clock|
 |PcdNumberofU5Cores| Number of U5 core enabled on U5 series platform|
 |PcdE5MCSupported| Indicates whether the Monitor Core (E5) is supported on U5 series platform|
 |PcdU5UartBase|Platform serial port base address|
+
+
+## Platform Owners
+Chang, Abner <abner.chang@hpe.com>
+Chen, Gilbert <gilbert.chen@hpe.com>
+Schaefer, Daniel <daniel.schaefer@hpe.com>
-- 
2.25.0


  parent reply	other threads:[~2020-08-27 16:26 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-08-27 15:43 [edk2-platforms][PATCH v2 0/3] Revise Readme for RISC-V updates Abner Chang
2020-08-27 15:43 ` [edk2-platforms][PATCH v2 1/3] edk2-platforms: Revise Readme.md Abner Chang
2020-08-27 15:43 ` [edk2-platforms][PATCH v2 2/3] RISC-V/PlatformPkg: " Abner Chang
2020-08-28  9:36   ` Daniel Schaefer
2020-08-27 15:43 ` Abner Chang [this message]
2020-08-28  9:25   ` [edk2-platforms][PATCH v2 3/3] Platform/U5SeriesPkg: " Daniel Schaefer
2020-08-28  9:38     ` Daniel Schaefer

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=20200827154314.31480-4-abner.chang@hpe.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