Hi Siyuan, 
    Thanks for your comments. 
    1.  will remove it in the next patch
    2.  In my oppinion, we should keep the content here. Similar to how writing a manual for a development board starts with an introduction to its hardware architecture, our server platform relies on a virtual hardware topology, which is currently 'rvsp-ref'. Based on Sunil's earlier recommendation, I have moved all relevant hardware information tables out of this document and created a minimal hardware introduction (or index).  Moreover, no 'Qemu model documentation' or similar document exists at present.
    3. I am considering improving several details in this image, or I might temporarily move it outside and merge it back in the next version once it is ready.
    4.  My intention is actually: in 4.1, try to describe the automation of downloading, compiling, executing, and testing through the rv-brs-test-suit repo.  And in 4.2, describe the manual steps for performing the above tasks. I will reconsider how to optimize this section. Maybe Chapter 5 is not suitable as a separate chapter.
    5.  Will remove it in the next patch
    6.  Will remove it.

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

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

Task Category
Task Description
Comments
# Enable Non-Virtio devices1. Add Memory mapped AHCI controller, to enable SATA deviceInlcude 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 devicesInclude 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 emulationExisting 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 NICThis 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 displayThis 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 tables6. Add the DSDT, FADT, GTDT, SPCR tables for ServerPlatform-Ref platformThis 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 hardwareThis can refer to SBSA’s implementation https://www.mail-archive.com/devel@edk2.groups.io/msg64706.html
# Add SMBIOS tables8. Add SMBIOS tables by referencing ArmPkg/Universal/Smbios, set PcdSmbiosVersion to the version as required by RISCV server platform specRefer 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 errorsRefer 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 driverRefer to https://github.com/intel/FdtBusPkg

11. Verify and replace the PCI root bridge driver to device tree-based PCI root bridge driverRefer to https://github.com/intel/FdtBusPkg
# MSIC12. Initiate the design by Intel, keep ReadMe.md update with partnerRefer 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 (#120038) | | Mute This Topic | New Topic
Your Subscription | Contact Group Owner | Unsubscribe [rebecca@openfw.io]

_._,_._,_