Hi, Evan

Here are some more comments for the Readme.md in the v2.5 branch.
https://github.com/ChaiEvan/edk2-platforms/blob/RV_ServerPlatformRef_v2.5/Platform/Qemu/RiscVQemuServerPlatform/Readme.md

  1. Please remove the Revision History section, since this is a readme file instead of a formal released document. I guess you may copied from a design doc of this Pkg? If yes pls put a link here.

  2. The “2.1 Requirements” and “2.2 High Level Design” are describing the QEMO model requirement/design, not this platform package. Please replace them by a link to the QEMO model doc. It doesn’t make sense to maintain these content here.

  3. About figure 1 “RISC-V Platform EDK2 Firmware Enabling Philosophy” in section 3. It makes me confuse about the platform enabling philosophy instead of explained it. The dotted line “QemuVirt Boot Flow” and blue like “QemuServerPlatform Boot Flow” behaves exactly same with each other - both loaded OpenSbi, both consume VirtDevices dotted box, and both boot to Shell/Linux - so what’s the meaning of creating a new QemuServerPlatform package and what’s the expected diffenence (benifit) vs the existing Virt? Please consider to update this figure to make it more clear. Again, considering the boot flow design may change, please move it to the design doc.

  4. Please reverse the order of Section 4.1 built test, 4.2 build platform BIOS, or move 4.1 to 5 Verification. A common dev setup process should be like “download code, build it, then test”.

  5. Please remove the 8 Appendix if there is no content.

  6. Please remove your old email address, not cross it out.

Best Regards,
Siyuan

On 19 Jul 2024, at 12:29, EvanChai wrote:

Hi Andrei, 
     Could you help review the patch?  
As I said before, it is the initial commit for kicking off RV server platform project. Then we can continue to optimize it based on this foundation. More importantly, other developers now have a codebase for developing server platform features. 
If I remember correctly, the following table lists the next phase of feature implementation that you and Yong discussed a couple of months ago. Let's proceed with the work according to this table.

Table 6 Upcoming UEFI Features List

# Enable Non-Virtio devices 1. Add Memory mapped AHCI controller, to enable SATA device Inlcude drivers for AHCI and Sata, eg: OvmfPkg/SataControllerDxe/SataControllerDxe.inf MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBusDxe.inf MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDiskDxe.inf

2. Add Memory mapped EHCI/XHCI controller to enable USB devices Include drivers for XHCI/ECHI for USB devices, eg: MdeModulePkg/Bus/Pci/UhciDxe/UhciDxe.inf MdeModulePkg/Bus/Pci/EhciDxe/EhciDxe.inf MdeModulePkg/Bus/Pci/XhciDxe/XhciDxe.inf MdeModulePkg/Bus/Usb/UsbKbDxe/UsbKbDxe.inf

3. Clean-up OVMF version of the NOR flash DXE driver, which supports QEMU's NOR flash emulation Existing OVMF Norflash driver will cause some BRS related cases’ failure, this takes includes the code clean-up and bug fixes to the existing Norflash drvier in OVMF: ExitBootServicesTestVariable * 1, BS.GetNextMonotonicCount * 3, RT.SetVariable - Non-volatile variable after system reset * 4, RT.SetTime - Verify xx after change * 8

4. Enable non-virtio network, eg: E1000E NIC This may depend on QEMU side implementation, and the server platform spec requirement, can take it as low priority and use virtio-net first

5. Enable non-virto VGA display This may depend on QEMU side implementation, and the server platform spec requirement, can take it as low priority and use virtio-gpu first
# Add initial support for static ACPI tables 6. Add the DSDT, FADT, GTDT, SPCR tables for ServerPlatform-Ref platform This can refer to SBSA’s implementation https://github.com/tianocore/edk2-platforms/commit/4476e34cf93458e0ea84820fb88e82a2997e5075

7. Handle EHCI and XHCI in DSDT, not to try to initialize non-existing hardware This can refer to SBSA’s implementation https://www.mail-archive.com/devel@edk2.groups.io/msg64706.html
# Add SMBIOS tables 8. Add SMBIOS tables by referencing ArmPkg/Universal/Smbios, set PcdSmbiosVersion to the version as required by RISCV server platform spec Refer to https://github.com/tianocore/edk2-platforms/commit/c2016d9b6836acc27df939f0cccffe61c1bac492

9. Add implementation that provides the system information. The serial numbers, asset tags etc. are currently all fixed strings, to allow fwts to pass without errors Refer to https://github.com/tianocore/edk2-platforms/tree/master/Platform/Qemu/SbsaQemu/OemMiscLib
# Move drivers toward to FdtBusPkg-based implementation (This will not be 1st priority) 10. Verify and replace the OVMF Norflash driver to device tree-based Norflash driver Refer to https://github.com/intel/FdtBusPkg

11. Verify and replace the PCI root bridge driver to device tree-based PCI root bridge driver Refer to https://github.com/intel/FdtBusPkg
# MSIC 12. Initiate the design by Intel, keep ReadMe.md update with partner Refer to https://github.com/tianocore/edk2-platforms/blob/master/Platform/Qemu/SbsaQemu/Readme.md




BR,
Evan
------------------------------------------------------------------
发件人:EvanChai <evan.chai@linux.alibaba.com>
发送时间:2024年7月12日(星期五) 16:30
收件人:Sunil V L<sunilvl@ventanamicro.com>
抄 送:devel<devel@edk2.groups.io>; "evan.chai"<evan.chai@linux.alibaba.com>; Andrei Warkentin<andrei.warkentin@intel.com>; "yong.li"<yong.li@intel.com>
主 题:回复:[edk2-devel] [PATCH V3 0/2] Initial commit for RISC-V Qemu-based Server

Hi Sunil,
      I updated the patch by your solid commetns:
1. I didn't do any change except for renaming in this version, so the code part is no need to be splitted to pieces;
2. I simplified the Readme file, the rest of part were all linked to the RISE wik. Then we can keep improving it on that page.  



BR,
Evan
------------------------------------------------------------------
发件人:Evan Chai <evanchai91@gmail.com>
发送时间:2024年7月12日(星期五) 16:20
收件人:devel<devel@edk2.groups.io>
抄 送:Evan Chai<evan.chai@linux.alibaba.com>
主 题:[edk2-devel] [PATCH V3 0/2] Initial commit for RISC-V Qemu-based Server

This is a foundational patch to move the 'RISC-V QEMU Server Reference Platform' forward.

Evan Chai (2):
  RiscVQemuServerPlatform: Initial commit for RISC-V Qemu-based Server
    platform
  RiscVQemuServerPlatform: added README file

Platform/Qemu/RiscVQemuServerPlatform/Readme.md                       | 165 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Platform/Qemu/RiscVQemuServerPlatform/RiscVQemuServerPlatform.dsc     | 496 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Platform/Qemu/RiscVQemuServerPlatform/RiscVQemuServerPlatform.dsc.inc | 341 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Platform/Qemu/RiscVQemuServerPlatform/RiscVQemuServerPlatform.fdf     | 317 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Platform/Qemu/RiscVQemuServerPlatform/RiscVQemuServerPlatform.fdf.inc |  41 +++++++++++++++++++++++++++++++++++++++++
Platform/Qemu/RiscVQemuServerPlatform/VarStore.fdf.inc                |  72 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
6 files changed, 1432 insertions(+)
create mode 100644 Platform/Qemu/RiscVQemuServerPlatform/Readme.md
create mode 100644 Platform/Qemu/RiscVQemuServerPlatform/RiscVQemuServerPlatform.dsc
create mode 100644 Platform/Qemu/RiscVQemuServerPlatform/RiscVQemuServerPlatform.dsc.inc
create mode 100644 Platform/Qemu/RiscVQemuServerPlatform/RiscVQemuServerPlatform.fdf
create mode 100644 Platform/Qemu/RiscVQemuServerPlatform/RiscVQemuServerPlatform.fdf.inc
create mode 100644 Platform/Qemu/RiscVQemuServerPlatform/VarStore.fdf.inc

--
2.45.1.windows.1
_._,_._,_

Groups.io Links:

You receive all messages sent to this group.

View/Reply Online (#120032) | | Mute This Topic | New Topic
Your Subscription | Contact Group Owner | Unsubscribe [rebecca@openfw.io]

_._,_._,_