* Re: [edk2-devel] [PATCH v1 00/26] Part 2 patch set to enable LoongArch virtual machine in edk2
[not found] <17BBAC320AB81FFB.17779@groups.io>
@ 2024-03-14 2:10 ` Chao Li
0 siblings, 0 replies; 2+ messages in thread
From: Chao Li @ 2024-03-14 2:10 UTC (permalink / raw)
To: devel
Cc: Ray Ni, Rahul Kumar, Gerd Hoffmann, Ard Biesheuvel, Jiewen Yao,
Leif Lindholm, Sami Mujawar, Sunil V L, Bibo Mao, Dongyan Qian
[-- Attachment #1: Type: text/plain, Size: 14370 bytes --]
Hi All,
I submitted this version a few days ago and any comments are very
welcome, can you review this series?
Thanks,
Chao
On 2024/3/11 17:36, Chao Li wrote:
> This patch set is the part 2 of enable LoongArch virtual machine and is
> a continuation of the first patch series v8 submitted at:
> https://edk2.groups.io/g/devel/message/114526.
>
> Patch1-Patch4: Reorder some INF files located in UefiCpuPkg
> alphabetically.
>
> Patch5-Patch14: Added Timer, CpuMmuLib, CpuMmuInitLib, MpInitLib, CpuDxe
> for LoongArch, and added some PCD and header files requested by the
> above libraries and drivers.
>
> Patch15-Patch25: LoongArch QEMU virtual machine private code, include
> SEC and PEI phase, some libraries and drivers.
>
> Patch26: Added LoongArchVirt's self introduction-file.
>
> Modfied modules: UefiCpuPkg and OvmfPkg
>
> BZ:https://bugzilla.tianocore.org/show_bug.cgi?id=4584
>
> PR:https://github.com/tianocore/edk2/pull/5208
>
> Cc: Ray Ni<ray.ni@intel.com>
> Cc: Rahul Kumar<rahul1.kumar@intel.com>
> Cc: Gerd Hoffmann<kraxel@redhat.com>
> Cc: Ard Biesheuvel<ardb+tianocore@kernel.org>
> Cc: Jiewen Yao<jiewen.yao@intel.com>
> Cc: Gerd Hoffmann<kraxel@redhat.com>
> Cc: Leif Lindholm<quic_llindhol@quicinc.com>
> Cc: Sami Mujawar<sami.mujawar@arm.com>
> Cc: Sunil V L<sunilvl@ventanamicro.com>
> Cc: Bibo Mao<maobibo@loongson.cn>
> Cc: Dongyan Qian<qiandongyan@loongson.cn>
>
> Chao Li (26):
> UefiCpuPkg/CpuTimerLib: Reorder the INF file alphabetically
> UefiCpuPkg/CpuExceptionHandlerLib: Reorder the INF files
> alphabetically
> UefiCpuPkg/MpInitLib: Reorder the INF files alphabetically
> UefiCpuPkg/CpuDxe: Reorder the INF file alphabetically
> UefiCpuPkg: Add LoongArch64 CPU Timer instance
> UefiCpuPkg: Add CPU exception library for LoongArch
> UefiCpuPkg: Add CpuMmuLib.h to UefiCpuPkg
> UefiCpuPkg: Added a new PCD named PcdCpuExceptionVectorBaseAddress
> UefiCpuPkg: Added a new PCD named PcdCpuMmuIsEnabled
> UefiCpuPkg: Add CpuMmuLib to UefiCpuPkg
> UefiCpuPkg: Add CpuMmuInitLib.h to UefiCpuPkg
> UefiCpuPkg: Add CpuMmuInitLib to UefiCpuPkg
> UefiCpuPkg: Add multiprocessor library for LoongArch64
> UefiCpuPkg: Add CpuDxe driver for LoongArch64
> OvmfPkg/LoongArchVirt: Add stable timer driver
> OvmfPkg/LoongArchVirt: Add a NULL library named
> CollectApResouceLibNull
> OvmfPkg/LoongArchVirt: Add serial port hook library
> OvmfPkg/LoongArchVirt: Add the early serial port output library
> OvmfPkg/LoongArchVirt: Add real time clock library
> OvmfPkg/LoongArchVirt: Add NorFlashQemuLib
> OvmfPkg/LoongArchVirt: Add FdtQemuFwCfgLib
> OvmfPkg/LoongArchVirt: Add reset system library
> OvmfPkg/LoongArchVirt: Support SEC phase
> OvmfPkg/LoongArchVirt: Support PEI phase
> OvmfPkg/LoongArchVirt: Add build file
> OvmfPkg/LoongArchVirt: Add self introduction file
>
> .../Drivers/StableTimerDxe/Timer.c | 381 ++++
> .../Drivers/StableTimerDxe/Timer.h | 127 ++
> .../Drivers/StableTimerDxe/TimerDxe.inf | 41 +
> .../CollectApResourceLibNull.c | 38 +
> .../CollectApResourceLibNull.inf | 31 +
> .../CollectApResourceLibNull.uni | 9 +
> .../EarlyFdtSerialPortLib16550.c | 815 +++++++++
> .../EarlyFdtSerialPortLib16550.inf | 46 +
> .../EarlyFdt16550SerialPortHookLib.c | 52 +
> .../EarlyFdt16550SerialPortHookLib.inf | 37 +
> .../Fdt16550SerialPortHookLib.c | 39 +
> .../Fdt16550SerialPortHookLib.inf | 33 +
> .../Fdt16550SerialPortHookLib.uni | 14 +
> .../FdtQemuFwCfgLib/FdtQemuFwCfgPeiLib.c | 504 +++++
> .../FdtQemuFwCfgLib/FdtQemuFwCfgPeiLib.inf | 42 +
> .../FdtQemuFwCfgLib/QemuFwCfgLibInternal.h | 73 +
> .../Library/FdtQemuFwCfgLib/QemuFwCfgPei.c | 117 ++
> .../DxeLsRealTimeClockLib.c | 327 ++++
> .../DxeLsRealTimeClockLib.inf | 41 +
> .../LsRealTimeClockLib/LsRealTimeClock.h | 47 +
> .../PeiLsRealTimeClockLib.c | 31 +
> .../PeiLsRealTimeClockLib.inf | 29 +
> .../Library/NorFlashQemuLib/NorFlashQemuLib.c | 140 ++
> .../NorFlashQemuLib/NorFlashQemuLib.inf | 43 +
> .../BaseResetSystemAcpiGed.c | 148 ++
> .../BaseResetSystemAcpiGedLib.inf | 36 +
> .../DxeResetSystemAcpiGed.c | 259 +++
> .../DxeResetSystemAcpiGedLib.inf | 41 +
> .../ResetSystemAcpiLib/ResetSystemAcpiGed.c | 125 ++
> .../ResetSystemAcpiLib/ResetSystemAcpiGed.h | 23 +
> OvmfPkg/LoongArchVirt/LoongArchVirt.fdf.inc | 34 +
> OvmfPkg/LoongArchVirt/LoongArchVirtQemu.dsc | 680 +++++++
> OvmfPkg/LoongArchVirt/LoongArchVirtQemu.fdf | 313 ++++
> OvmfPkg/LoongArchVirt/PlatformPei/Fv.c | 39 +
> OvmfPkg/LoongArchVirt/PlatformPei/MemDetect.c | 202 ++
> OvmfPkg/LoongArchVirt/PlatformPei/Platform.c | 393 ++++
> OvmfPkg/LoongArchVirt/PlatformPei/Platform.h | 128 ++
> .../LoongArchVirt/PlatformPei/PlatformPei.inf | 72 +
> OvmfPkg/LoongArchVirt/Readme.md | 69 +
> OvmfPkg/LoongArchVirt/Sec/LoongArch64/Start.S | 184 ++
> OvmfPkg/LoongArchVirt/Sec/SecMain.c | 506 +++++
> OvmfPkg/LoongArchVirt/Sec/SecMain.inf | 53 +
> OvmfPkg/LoongArchVirt/VarStore.fdf.inc | 67 +
> UefiCpuPkg/CpuDxe/CpuDxe.inf | 37 +-
> UefiCpuPkg/CpuDxe/LoongArch64/CpuDxe.c | 426 +++++
> UefiCpuPkg/CpuDxe/LoongArch64/CpuDxe.h | 288 +++
> UefiCpuPkg/CpuDxe/LoongArch64/CpuMp.c | 544 ++++++
> UefiCpuPkg/CpuDxe/LoongArch64/Exception.c | 159 ++
> UefiCpuPkg/Include/Library/CpuMmuInitLib.h | 34 +
> UefiCpuPkg/Include/Library/CpuMmuLib.h | 55 +
> .../DxeCpuExceptionHandlerLib.inf | 37 +-
> .../LoongArch/DxeExceptionLib.c | 198 ++
> .../LoongArch/ExceptionCommon.c | 171 ++
> .../LoongArch/ExceptionCommon.h | 131 ++
> .../LoongArch64/ArchExceptionHandler.c | 268 +++
> .../LoongArch64/ExceptionHandlerAsm.S | 366 ++++
> .../LoongArch/SecPeiExceptionLib.c | 102 ++
> .../PeiCpuExceptionHandlerLib.inf | 16 +-
> .../SecPeiCpuExceptionHandlerLib.inf | 31 +-
> .../SmmCpuExceptionHandlerLib.inf | 16 +-
> .../Library/CpuMmuInitLib/CpuMmuInitLib.inf | 42 +
> .../Library/CpuMmuInitLib/CpuMmuInitLib.uni | 14 +
> .../CpuMmuInitLib/LoongArch64/CpuMmuInit.c | 242 +++
> .../LoongArch64/TlbExceptionHandle.S | 51 +
> .../LoongArch64/TlbExceptionHandle.h | 36 +
> UefiCpuPkg/Library/CpuMmuLib/CpuMmuLib.inf | 38 +
> UefiCpuPkg/Library/CpuMmuLib/CpuMmuLib.uni | 14 +
> .../Library/CpuMmuLib/LoongArch64/CpuMmu.c | 614 +++++++
> .../Library/CpuMmuLib/LoongArch64/Page.h | 24 +
> .../CpuMmuLib/LoongArch64/TlbInvalid.S | 24 +
> .../CpuMmuLib/LoongArch64/TlbInvalid.h | 24 +
> .../Library/CpuTimerLib/BaseCpuTimerLib.inf | 17 +-
> .../CpuTimerLib/LoongArch64/CpuTimerLib.c | 251 +++
> UefiCpuPkg/Library/MpInitLib/DxeMpInitLib.inf | 39 +-
> .../Library/MpInitLib/LoongArch64/DxeMpLib.c | 480 +++++
> .../Library/MpInitLib/LoongArch64/MpLib.c | 1621 +++++++++++++++++
> .../Library/MpInitLib/LoongArch64/MpLib.h | 361 ++++
> .../Library/MpInitLib/LoongArch64/PeiMpLib.c | 404 ++++
> UefiCpuPkg/Library/MpInitLib/PeiMpInitLib.inf | 37 +-
> UefiCpuPkg/UefiCpuPkg.dec | 17 +
> UefiCpuPkg/UefiCpuPkg.dsc | 7 +
> 81 files changed, 13586 insertions(+), 79 deletions(-)
> create mode 100644 OvmfPkg/LoongArchVirt/Drivers/StableTimerDxe/Timer.c
> create mode 100644 OvmfPkg/LoongArchVirt/Drivers/StableTimerDxe/Timer.h
> create mode 100644 OvmfPkg/LoongArchVirt/Drivers/StableTimerDxe/TimerDxe.inf
> create mode 100644 OvmfPkg/LoongArchVirt/Library/CollectApResouceLibNull/CollectApResourceLibNull.c
> create mode 100644 OvmfPkg/LoongArchVirt/Library/CollectApResouceLibNull/CollectApResourceLibNull.inf
> create mode 100644 OvmfPkg/LoongArchVirt/Library/CollectApResouceLibNull/CollectApResourceLibNull.uni
> create mode 100644 OvmfPkg/LoongArchVirt/Library/EarlyFdtSerialPortLib16550/EarlyFdtSerialPortLib16550.c
> create mode 100644 OvmfPkg/LoongArchVirt/Library/EarlyFdtSerialPortLib16550/EarlyFdtSerialPortLib16550.inf
> create mode 100644 OvmfPkg/LoongArchVirt/Library/Fdt16550SerialPortHookLib/EarlyFdt16550SerialPortHookLib.c
> create mode 100644 OvmfPkg/LoongArchVirt/Library/Fdt16550SerialPortHookLib/EarlyFdt16550SerialPortHookLib.inf
> create mode 100644 OvmfPkg/LoongArchVirt/Library/Fdt16550SerialPortHookLib/Fdt16550SerialPortHookLib.c
> create mode 100644 OvmfPkg/LoongArchVirt/Library/Fdt16550SerialPortHookLib/Fdt16550SerialPortHookLib.inf
> create mode 100644 OvmfPkg/LoongArchVirt/Library/Fdt16550SerialPortHookLib/Fdt16550SerialPortHookLib.uni
> create mode 100644 OvmfPkg/LoongArchVirt/Library/FdtQemuFwCfgLib/FdtQemuFwCfgPeiLib.c
> create mode 100644 OvmfPkg/LoongArchVirt/Library/FdtQemuFwCfgLib/FdtQemuFwCfgPeiLib.inf
> create mode 100644 OvmfPkg/LoongArchVirt/Library/FdtQemuFwCfgLib/QemuFwCfgLibInternal.h
> create mode 100644 OvmfPkg/LoongArchVirt/Library/FdtQemuFwCfgLib/QemuFwCfgPei.c
> create mode 100644 OvmfPkg/LoongArchVirt/Library/LsRealTimeClockLib/DxeLsRealTimeClockLib.c
> create mode 100644 OvmfPkg/LoongArchVirt/Library/LsRealTimeClockLib/DxeLsRealTimeClockLib.inf
> create mode 100644 OvmfPkg/LoongArchVirt/Library/LsRealTimeClockLib/LsRealTimeClock.h
> create mode 100644 OvmfPkg/LoongArchVirt/Library/LsRealTimeClockLib/PeiLsRealTimeClockLib.c
> create mode 100644 OvmfPkg/LoongArchVirt/Library/LsRealTimeClockLib/PeiLsRealTimeClockLib.inf
> create mode 100644 OvmfPkg/LoongArchVirt/Library/NorFlashQemuLib/NorFlashQemuLib.c
> create mode 100644 OvmfPkg/LoongArchVirt/Library/NorFlashQemuLib/NorFlashQemuLib.inf
> create mode 100644 OvmfPkg/LoongArchVirt/Library/ResetSystemAcpiLib/BaseResetSystemAcpiGed.c
> create mode 100644 OvmfPkg/LoongArchVirt/Library/ResetSystemAcpiLib/BaseResetSystemAcpiGedLib.inf
> create mode 100644 OvmfPkg/LoongArchVirt/Library/ResetSystemAcpiLib/DxeResetSystemAcpiGed.c
> create mode 100644 OvmfPkg/LoongArchVirt/Library/ResetSystemAcpiLib/DxeResetSystemAcpiGedLib.inf
> create mode 100644 OvmfPkg/LoongArchVirt/Library/ResetSystemAcpiLib/ResetSystemAcpiGed.c
> create mode 100644 OvmfPkg/LoongArchVirt/Library/ResetSystemAcpiLib/ResetSystemAcpiGed.h
> create mode 100644 OvmfPkg/LoongArchVirt/LoongArchVirt.fdf.inc
> create mode 100644 OvmfPkg/LoongArchVirt/LoongArchVirtQemu.dsc
> create mode 100644 OvmfPkg/LoongArchVirt/LoongArchVirtQemu.fdf
> create mode 100644 OvmfPkg/LoongArchVirt/PlatformPei/Fv.c
> create mode 100644 OvmfPkg/LoongArchVirt/PlatformPei/MemDetect.c
> create mode 100644 OvmfPkg/LoongArchVirt/PlatformPei/Platform.c
> create mode 100644 OvmfPkg/LoongArchVirt/PlatformPei/Platform.h
> create mode 100644 OvmfPkg/LoongArchVirt/PlatformPei/PlatformPei.inf
> create mode 100644 OvmfPkg/LoongArchVirt/Readme.md
> create mode 100644 OvmfPkg/LoongArchVirt/Sec/LoongArch64/Start.S
> create mode 100644 OvmfPkg/LoongArchVirt/Sec/SecMain.c
> create mode 100644 OvmfPkg/LoongArchVirt/Sec/SecMain.inf
> create mode 100644 OvmfPkg/LoongArchVirt/VarStore.fdf.inc
> create mode 100644 UefiCpuPkg/CpuDxe/LoongArch64/CpuDxe.c
> create mode 100644 UefiCpuPkg/CpuDxe/LoongArch64/CpuDxe.h
> create mode 100644 UefiCpuPkg/CpuDxe/LoongArch64/CpuMp.c
> create mode 100644 UefiCpuPkg/CpuDxe/LoongArch64/Exception.c
> create mode 100644 UefiCpuPkg/Include/Library/CpuMmuInitLib.h
> create mode 100644 UefiCpuPkg/Include/Library/CpuMmuLib.h
> create mode 100644 UefiCpuPkg/Library/CpuExceptionHandlerLib/LoongArch/DxeExceptionLib.c
> create mode 100644 UefiCpuPkg/Library/CpuExceptionHandlerLib/LoongArch/ExceptionCommon.c
> create mode 100644 UefiCpuPkg/Library/CpuExceptionHandlerLib/LoongArch/ExceptionCommon.h
> create mode 100644 UefiCpuPkg/Library/CpuExceptionHandlerLib/LoongArch/LoongArch64/ArchExceptionHandler.c
> create mode 100644 UefiCpuPkg/Library/CpuExceptionHandlerLib/LoongArch/LoongArch64/ExceptionHandlerAsm.S
> create mode 100644 UefiCpuPkg/Library/CpuExceptionHandlerLib/LoongArch/SecPeiExceptionLib.c
> create mode 100644 UefiCpuPkg/Library/CpuMmuInitLib/CpuMmuInitLib.inf
> create mode 100644 UefiCpuPkg/Library/CpuMmuInitLib/CpuMmuInitLib.uni
> create mode 100644 UefiCpuPkg/Library/CpuMmuInitLib/LoongArch64/CpuMmuInit.c
> create mode 100644 UefiCpuPkg/Library/CpuMmuInitLib/LoongArch64/TlbExceptionHandle.S
> create mode 100644 UefiCpuPkg/Library/CpuMmuInitLib/LoongArch64/TlbExceptionHandle.h
> create mode 100644 UefiCpuPkg/Library/CpuMmuLib/CpuMmuLib.inf
> create mode 100644 UefiCpuPkg/Library/CpuMmuLib/CpuMmuLib.uni
> create mode 100644 UefiCpuPkg/Library/CpuMmuLib/LoongArch64/CpuMmu.c
> create mode 100644 UefiCpuPkg/Library/CpuMmuLib/LoongArch64/Page.h
> create mode 100644 UefiCpuPkg/Library/CpuMmuLib/LoongArch64/TlbInvalid.S
> create mode 100644 UefiCpuPkg/Library/CpuMmuLib/LoongArch64/TlbInvalid.h
> create mode 100644 UefiCpuPkg/Library/CpuTimerLib/LoongArch64/CpuTimerLib.c
> create mode 100644 UefiCpuPkg/Library/MpInitLib/LoongArch64/DxeMpLib.c
> create mode 100644 UefiCpuPkg/Library/MpInitLib/LoongArch64/MpLib.c
> create mode 100644 UefiCpuPkg/Library/MpInitLib/LoongArch64/MpLib.h
> create mode 100644 UefiCpuPkg/Library/MpInitLib/LoongArch64/PeiMpLib.c
>
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#116724): https://edk2.groups.io/g/devel/message/116724
Mute This Topic: https://groups.io/mt/104859849/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-
[-- Attachment #2: Type: text/html, Size: 16031 bytes --]
^ permalink raw reply [flat|nested] 2+ messages in thread
* [edk2-devel] [PATCH v1 00/26] Part 2 patch set to enable LoongArch virtual machine in edk2
@ 2024-03-11 9:36 Chao Li
0 siblings, 0 replies; 2+ messages in thread
From: Chao Li @ 2024-03-11 9:36 UTC (permalink / raw)
To: devel
Cc: Ray Ni, Rahul Kumar, Gerd Hoffmann, Ard Biesheuvel, Jiewen Yao,
Leif Lindholm, Sami Mujawar, Sunil V L, Bibo Mao, Dongyan Qian
This patch set is the part 2 of enable LoongArch virtual machine and is
a continuation of the first patch series v8 submitted at:
https://edk2.groups.io/g/devel/message/114526.
Patch1-Patch4: Reorder some INF files located in UefiCpuPkg
alphabetically.
Patch5-Patch14: Added Timer, CpuMmuLib, CpuMmuInitLib, MpInitLib, CpuDxe
for LoongArch, and added some PCD and header files requested by the
above libraries and drivers.
Patch15-Patch25: LoongArch QEMU virtual machine private code, include
SEC and PEI phase, some libraries and drivers.
Patch26: Added LoongArchVirt's self introduction-file.
Modfied modules: UefiCpuPkg and OvmfPkg
BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=4584
PR: https://github.com/tianocore/edk2/pull/5208
Cc: Ray Ni <ray.ni@intel.com>
Cc: Rahul Kumar <rahul1.kumar@intel.com>
Cc: Gerd Hoffmann <kraxel@redhat.com>
Cc: Ard Biesheuvel <ardb+tianocore@kernel.org>
Cc: Jiewen Yao <jiewen.yao@intel.com>
Cc: Gerd Hoffmann <kraxel@redhat.com>
Cc: Leif Lindholm <quic_llindhol@quicinc.com>
Cc: Sami Mujawar <sami.mujawar@arm.com>
Cc: Sunil V L <sunilvl@ventanamicro.com>
Cc: Bibo Mao <maobibo@loongson.cn>
Cc: Dongyan Qian <qiandongyan@loongson.cn>
Chao Li (26):
UefiCpuPkg/CpuTimerLib: Reorder the INF file alphabetically
UefiCpuPkg/CpuExceptionHandlerLib: Reorder the INF files
alphabetically
UefiCpuPkg/MpInitLib: Reorder the INF files alphabetically
UefiCpuPkg/CpuDxe: Reorder the INF file alphabetically
UefiCpuPkg: Add LoongArch64 CPU Timer instance
UefiCpuPkg: Add CPU exception library for LoongArch
UefiCpuPkg: Add CpuMmuLib.h to UefiCpuPkg
UefiCpuPkg: Added a new PCD named PcdCpuExceptionVectorBaseAddress
UefiCpuPkg: Added a new PCD named PcdCpuMmuIsEnabled
UefiCpuPkg: Add CpuMmuLib to UefiCpuPkg
UefiCpuPkg: Add CpuMmuInitLib.h to UefiCpuPkg
UefiCpuPkg: Add CpuMmuInitLib to UefiCpuPkg
UefiCpuPkg: Add multiprocessor library for LoongArch64
UefiCpuPkg: Add CpuDxe driver for LoongArch64
OvmfPkg/LoongArchVirt: Add stable timer driver
OvmfPkg/LoongArchVirt: Add a NULL library named
CollectApResouceLibNull
OvmfPkg/LoongArchVirt: Add serial port hook library
OvmfPkg/LoongArchVirt: Add the early serial port output library
OvmfPkg/LoongArchVirt: Add real time clock library
OvmfPkg/LoongArchVirt: Add NorFlashQemuLib
OvmfPkg/LoongArchVirt: Add FdtQemuFwCfgLib
OvmfPkg/LoongArchVirt: Add reset system library
OvmfPkg/LoongArchVirt: Support SEC phase
OvmfPkg/LoongArchVirt: Support PEI phase
OvmfPkg/LoongArchVirt: Add build file
OvmfPkg/LoongArchVirt: Add self introduction file
.../Drivers/StableTimerDxe/Timer.c | 381 ++++
.../Drivers/StableTimerDxe/Timer.h | 127 ++
.../Drivers/StableTimerDxe/TimerDxe.inf | 41 +
.../CollectApResourceLibNull.c | 38 +
.../CollectApResourceLibNull.inf | 31 +
.../CollectApResourceLibNull.uni | 9 +
.../EarlyFdtSerialPortLib16550.c | 815 +++++++++
.../EarlyFdtSerialPortLib16550.inf | 46 +
.../EarlyFdt16550SerialPortHookLib.c | 52 +
.../EarlyFdt16550SerialPortHookLib.inf | 37 +
.../Fdt16550SerialPortHookLib.c | 39 +
.../Fdt16550SerialPortHookLib.inf | 33 +
.../Fdt16550SerialPortHookLib.uni | 14 +
.../FdtQemuFwCfgLib/FdtQemuFwCfgPeiLib.c | 504 +++++
.../FdtQemuFwCfgLib/FdtQemuFwCfgPeiLib.inf | 42 +
.../FdtQemuFwCfgLib/QemuFwCfgLibInternal.h | 73 +
.../Library/FdtQemuFwCfgLib/QemuFwCfgPei.c | 117 ++
.../DxeLsRealTimeClockLib.c | 327 ++++
.../DxeLsRealTimeClockLib.inf | 41 +
.../LsRealTimeClockLib/LsRealTimeClock.h | 47 +
.../PeiLsRealTimeClockLib.c | 31 +
.../PeiLsRealTimeClockLib.inf | 29 +
.../Library/NorFlashQemuLib/NorFlashQemuLib.c | 140 ++
.../NorFlashQemuLib/NorFlashQemuLib.inf | 43 +
.../BaseResetSystemAcpiGed.c | 148 ++
.../BaseResetSystemAcpiGedLib.inf | 36 +
.../DxeResetSystemAcpiGed.c | 259 +++
.../DxeResetSystemAcpiGedLib.inf | 41 +
.../ResetSystemAcpiLib/ResetSystemAcpiGed.c | 125 ++
.../ResetSystemAcpiLib/ResetSystemAcpiGed.h | 23 +
OvmfPkg/LoongArchVirt/LoongArchVirt.fdf.inc | 34 +
OvmfPkg/LoongArchVirt/LoongArchVirtQemu.dsc | 680 +++++++
OvmfPkg/LoongArchVirt/LoongArchVirtQemu.fdf | 313 ++++
OvmfPkg/LoongArchVirt/PlatformPei/Fv.c | 39 +
OvmfPkg/LoongArchVirt/PlatformPei/MemDetect.c | 202 ++
OvmfPkg/LoongArchVirt/PlatformPei/Platform.c | 393 ++++
OvmfPkg/LoongArchVirt/PlatformPei/Platform.h | 128 ++
.../LoongArchVirt/PlatformPei/PlatformPei.inf | 72 +
OvmfPkg/LoongArchVirt/Readme.md | 69 +
OvmfPkg/LoongArchVirt/Sec/LoongArch64/Start.S | 184 ++
OvmfPkg/LoongArchVirt/Sec/SecMain.c | 506 +++++
OvmfPkg/LoongArchVirt/Sec/SecMain.inf | 53 +
OvmfPkg/LoongArchVirt/VarStore.fdf.inc | 67 +
UefiCpuPkg/CpuDxe/CpuDxe.inf | 37 +-
UefiCpuPkg/CpuDxe/LoongArch64/CpuDxe.c | 426 +++++
UefiCpuPkg/CpuDxe/LoongArch64/CpuDxe.h | 288 +++
UefiCpuPkg/CpuDxe/LoongArch64/CpuMp.c | 544 ++++++
UefiCpuPkg/CpuDxe/LoongArch64/Exception.c | 159 ++
UefiCpuPkg/Include/Library/CpuMmuInitLib.h | 34 +
UefiCpuPkg/Include/Library/CpuMmuLib.h | 55 +
.../DxeCpuExceptionHandlerLib.inf | 37 +-
.../LoongArch/DxeExceptionLib.c | 198 ++
.../LoongArch/ExceptionCommon.c | 171 ++
.../LoongArch/ExceptionCommon.h | 131 ++
.../LoongArch64/ArchExceptionHandler.c | 268 +++
.../LoongArch64/ExceptionHandlerAsm.S | 366 ++++
.../LoongArch/SecPeiExceptionLib.c | 102 ++
.../PeiCpuExceptionHandlerLib.inf | 16 +-
.../SecPeiCpuExceptionHandlerLib.inf | 31 +-
.../SmmCpuExceptionHandlerLib.inf | 16 +-
.../Library/CpuMmuInitLib/CpuMmuInitLib.inf | 42 +
.../Library/CpuMmuInitLib/CpuMmuInitLib.uni | 14 +
.../CpuMmuInitLib/LoongArch64/CpuMmuInit.c | 242 +++
.../LoongArch64/TlbExceptionHandle.S | 51 +
.../LoongArch64/TlbExceptionHandle.h | 36 +
UefiCpuPkg/Library/CpuMmuLib/CpuMmuLib.inf | 38 +
UefiCpuPkg/Library/CpuMmuLib/CpuMmuLib.uni | 14 +
.../Library/CpuMmuLib/LoongArch64/CpuMmu.c | 614 +++++++
.../Library/CpuMmuLib/LoongArch64/Page.h | 24 +
.../CpuMmuLib/LoongArch64/TlbInvalid.S | 24 +
.../CpuMmuLib/LoongArch64/TlbInvalid.h | 24 +
.../Library/CpuTimerLib/BaseCpuTimerLib.inf | 17 +-
.../CpuTimerLib/LoongArch64/CpuTimerLib.c | 251 +++
UefiCpuPkg/Library/MpInitLib/DxeMpInitLib.inf | 39 +-
.../Library/MpInitLib/LoongArch64/DxeMpLib.c | 480 +++++
.../Library/MpInitLib/LoongArch64/MpLib.c | 1621 +++++++++++++++++
.../Library/MpInitLib/LoongArch64/MpLib.h | 361 ++++
.../Library/MpInitLib/LoongArch64/PeiMpLib.c | 404 ++++
UefiCpuPkg/Library/MpInitLib/PeiMpInitLib.inf | 37 +-
UefiCpuPkg/UefiCpuPkg.dec | 17 +
UefiCpuPkg/UefiCpuPkg.dsc | 7 +
81 files changed, 13586 insertions(+), 79 deletions(-)
create mode 100644 OvmfPkg/LoongArchVirt/Drivers/StableTimerDxe/Timer.c
create mode 100644 OvmfPkg/LoongArchVirt/Drivers/StableTimerDxe/Timer.h
create mode 100644 OvmfPkg/LoongArchVirt/Drivers/StableTimerDxe/TimerDxe.inf
create mode 100644 OvmfPkg/LoongArchVirt/Library/CollectApResouceLibNull/CollectApResourceLibNull.c
create mode 100644 OvmfPkg/LoongArchVirt/Library/CollectApResouceLibNull/CollectApResourceLibNull.inf
create mode 100644 OvmfPkg/LoongArchVirt/Library/CollectApResouceLibNull/CollectApResourceLibNull.uni
create mode 100644 OvmfPkg/LoongArchVirt/Library/EarlyFdtSerialPortLib16550/EarlyFdtSerialPortLib16550.c
create mode 100644 OvmfPkg/LoongArchVirt/Library/EarlyFdtSerialPortLib16550/EarlyFdtSerialPortLib16550.inf
create mode 100644 OvmfPkg/LoongArchVirt/Library/Fdt16550SerialPortHookLib/EarlyFdt16550SerialPortHookLib.c
create mode 100644 OvmfPkg/LoongArchVirt/Library/Fdt16550SerialPortHookLib/EarlyFdt16550SerialPortHookLib.inf
create mode 100644 OvmfPkg/LoongArchVirt/Library/Fdt16550SerialPortHookLib/Fdt16550SerialPortHookLib.c
create mode 100644 OvmfPkg/LoongArchVirt/Library/Fdt16550SerialPortHookLib/Fdt16550SerialPortHookLib.inf
create mode 100644 OvmfPkg/LoongArchVirt/Library/Fdt16550SerialPortHookLib/Fdt16550SerialPortHookLib.uni
create mode 100644 OvmfPkg/LoongArchVirt/Library/FdtQemuFwCfgLib/FdtQemuFwCfgPeiLib.c
create mode 100644 OvmfPkg/LoongArchVirt/Library/FdtQemuFwCfgLib/FdtQemuFwCfgPeiLib.inf
create mode 100644 OvmfPkg/LoongArchVirt/Library/FdtQemuFwCfgLib/QemuFwCfgLibInternal.h
create mode 100644 OvmfPkg/LoongArchVirt/Library/FdtQemuFwCfgLib/QemuFwCfgPei.c
create mode 100644 OvmfPkg/LoongArchVirt/Library/LsRealTimeClockLib/DxeLsRealTimeClockLib.c
create mode 100644 OvmfPkg/LoongArchVirt/Library/LsRealTimeClockLib/DxeLsRealTimeClockLib.inf
create mode 100644 OvmfPkg/LoongArchVirt/Library/LsRealTimeClockLib/LsRealTimeClock.h
create mode 100644 OvmfPkg/LoongArchVirt/Library/LsRealTimeClockLib/PeiLsRealTimeClockLib.c
create mode 100644 OvmfPkg/LoongArchVirt/Library/LsRealTimeClockLib/PeiLsRealTimeClockLib.inf
create mode 100644 OvmfPkg/LoongArchVirt/Library/NorFlashQemuLib/NorFlashQemuLib.c
create mode 100644 OvmfPkg/LoongArchVirt/Library/NorFlashQemuLib/NorFlashQemuLib.inf
create mode 100644 OvmfPkg/LoongArchVirt/Library/ResetSystemAcpiLib/BaseResetSystemAcpiGed.c
create mode 100644 OvmfPkg/LoongArchVirt/Library/ResetSystemAcpiLib/BaseResetSystemAcpiGedLib.inf
create mode 100644 OvmfPkg/LoongArchVirt/Library/ResetSystemAcpiLib/DxeResetSystemAcpiGed.c
create mode 100644 OvmfPkg/LoongArchVirt/Library/ResetSystemAcpiLib/DxeResetSystemAcpiGedLib.inf
create mode 100644 OvmfPkg/LoongArchVirt/Library/ResetSystemAcpiLib/ResetSystemAcpiGed.c
create mode 100644 OvmfPkg/LoongArchVirt/Library/ResetSystemAcpiLib/ResetSystemAcpiGed.h
create mode 100644 OvmfPkg/LoongArchVirt/LoongArchVirt.fdf.inc
create mode 100644 OvmfPkg/LoongArchVirt/LoongArchVirtQemu.dsc
create mode 100644 OvmfPkg/LoongArchVirt/LoongArchVirtQemu.fdf
create mode 100644 OvmfPkg/LoongArchVirt/PlatformPei/Fv.c
create mode 100644 OvmfPkg/LoongArchVirt/PlatformPei/MemDetect.c
create mode 100644 OvmfPkg/LoongArchVirt/PlatformPei/Platform.c
create mode 100644 OvmfPkg/LoongArchVirt/PlatformPei/Platform.h
create mode 100644 OvmfPkg/LoongArchVirt/PlatformPei/PlatformPei.inf
create mode 100644 OvmfPkg/LoongArchVirt/Readme.md
create mode 100644 OvmfPkg/LoongArchVirt/Sec/LoongArch64/Start.S
create mode 100644 OvmfPkg/LoongArchVirt/Sec/SecMain.c
create mode 100644 OvmfPkg/LoongArchVirt/Sec/SecMain.inf
create mode 100644 OvmfPkg/LoongArchVirt/VarStore.fdf.inc
create mode 100644 UefiCpuPkg/CpuDxe/LoongArch64/CpuDxe.c
create mode 100644 UefiCpuPkg/CpuDxe/LoongArch64/CpuDxe.h
create mode 100644 UefiCpuPkg/CpuDxe/LoongArch64/CpuMp.c
create mode 100644 UefiCpuPkg/CpuDxe/LoongArch64/Exception.c
create mode 100644 UefiCpuPkg/Include/Library/CpuMmuInitLib.h
create mode 100644 UefiCpuPkg/Include/Library/CpuMmuLib.h
create mode 100644 UefiCpuPkg/Library/CpuExceptionHandlerLib/LoongArch/DxeExceptionLib.c
create mode 100644 UefiCpuPkg/Library/CpuExceptionHandlerLib/LoongArch/ExceptionCommon.c
create mode 100644 UefiCpuPkg/Library/CpuExceptionHandlerLib/LoongArch/ExceptionCommon.h
create mode 100644 UefiCpuPkg/Library/CpuExceptionHandlerLib/LoongArch/LoongArch64/ArchExceptionHandler.c
create mode 100644 UefiCpuPkg/Library/CpuExceptionHandlerLib/LoongArch/LoongArch64/ExceptionHandlerAsm.S
create mode 100644 UefiCpuPkg/Library/CpuExceptionHandlerLib/LoongArch/SecPeiExceptionLib.c
create mode 100644 UefiCpuPkg/Library/CpuMmuInitLib/CpuMmuInitLib.inf
create mode 100644 UefiCpuPkg/Library/CpuMmuInitLib/CpuMmuInitLib.uni
create mode 100644 UefiCpuPkg/Library/CpuMmuInitLib/LoongArch64/CpuMmuInit.c
create mode 100644 UefiCpuPkg/Library/CpuMmuInitLib/LoongArch64/TlbExceptionHandle.S
create mode 100644 UefiCpuPkg/Library/CpuMmuInitLib/LoongArch64/TlbExceptionHandle.h
create mode 100644 UefiCpuPkg/Library/CpuMmuLib/CpuMmuLib.inf
create mode 100644 UefiCpuPkg/Library/CpuMmuLib/CpuMmuLib.uni
create mode 100644 UefiCpuPkg/Library/CpuMmuLib/LoongArch64/CpuMmu.c
create mode 100644 UefiCpuPkg/Library/CpuMmuLib/LoongArch64/Page.h
create mode 100644 UefiCpuPkg/Library/CpuMmuLib/LoongArch64/TlbInvalid.S
create mode 100644 UefiCpuPkg/Library/CpuMmuLib/LoongArch64/TlbInvalid.h
create mode 100644 UefiCpuPkg/Library/CpuTimerLib/LoongArch64/CpuTimerLib.c
create mode 100644 UefiCpuPkg/Library/MpInitLib/LoongArch64/DxeMpLib.c
create mode 100644 UefiCpuPkg/Library/MpInitLib/LoongArch64/MpLib.c
create mode 100644 UefiCpuPkg/Library/MpInitLib/LoongArch64/MpLib.h
create mode 100644 UefiCpuPkg/Library/MpInitLib/LoongArch64/PeiMpLib.c
--
2.27.0
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#116583): https://edk2.groups.io/g/devel/message/116583
Mute This Topic: https://groups.io/mt/104859849/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2024-03-14 2:10 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <17BBAC320AB81FFB.17779@groups.io>
2024-03-14 2:10 ` [edk2-devel] [PATCH v1 00/26] Part 2 patch set to enable LoongArch virtual machine in edk2 Chao Li
2024-03-11 9:36 Chao Li
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox