public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
* [edk2-devel] [PATCH v1 00/19] Add LoongArch helper functions and defines
@ 2024-02-02  2:26 Chao Li
  2024-02-02  2:27 ` [edk2-devel] [PATCH v1 01/19] MdePkg: Add the header file named Csr.h for LoongArch64 Chao Li
                   ` (19 more replies)
  0 siblings, 20 replies; 27+ messages in thread
From: Chao Li @ 2024-02-02  2:26 UTC (permalink / raw)
  To: devel
  Cc: Michael D Kinney, Liming Gao, Zhiguang Liu, Leif Lindholm,
	Ard Biesheuvel, Abner Chang, Laszlo Ersek, Sami Mujawar,
	Gerd Hoffmann, Ray Ni, Rahul Kumar, Jiewen Yao, Sunil V L,
	Andrei Warkentin, Dongyan Qian

This series is part 1 of enabling LoongArch64 virtual machine.

Added LoongArch helper functions and defines in MdePkg, added LoongArch
CPU IO width in EmbeddedPkg, moved some libraries and PCDs from
ArmVirtPkg to OvmfPkg for easiser use by other ARCHs, added a new CPU IO2
driver named CpuMmio2Dxe in UefiCpuPkg, for non-IO port implement CPUs.

Cc: Michael D Kinney <michael.d.kinney@intel.com>
Cc: Liming Gao <gaoliming@byosoft.com.cn>
Cc: Zhiguang Liu <zhiguang.liu@intel.com>
Cc: Leif Lindholm <quic_llindhol@quicinc.com>
Cc: Ard Biesheuvel <ardb+tianocore@kernel.org>
Cc: Abner Chang <abner.chang@amd.com>
Cc: Laszlo Ersek <lersek@redhat.com>
Cc: Leif Lindholm <quic_llindhol@quicinc.com>
Cc: Sami Mujawar <sami.mujawar@arm.com>
Cc: Gerd Hoffmann <kraxel@redhat.com>
Cc: Ray Ni <ray.ni@intel.com>
Cc: Rahul Kumar <rahul1.kumar@intel.com>
Cc: Gerd Hoffmann <kraxel@redhat.com>
Cc: Jiewen Yao <jiewen.yao@intel.com>
Cc: Sunil V L <sunilvl@ventanamicro.com>
Cc: Andrei Warkentin <andrei.warkentin@intel.com>
Cc: Dongyan Qian <qiandongyan@loongson.cn>

Chao Li (19):
  MdePkg: Add the header file named Csr.h for LoongArch64
  MdePkg: Add LoongArch64 FPU function set into BaseCpuLib
  MdePkg: Add LoongArch64 exception function set into BaseLib
  MdePkg: Add LoongArch64 local interrupt function set into BaseLib
  MdePkg: Add LoongArch Cpucfg function
  MdePkg: Add read stable counter operation for LoongArch
  MdePkg: Add CSR operation for LoongArch
  MdePkg: Add IOCSR operation for LoongArch
  MdePkg: Add a new library named PeiServicesTablePointerLibKs0
  MdePkg: Add some comments for LoongArch exceptions
  EmbeddedPkg: Add PcdPrePiCpuIoSize width for LOONGARCH64
  ArmVirtPkg: Move PCD of FDT base address and FDT padding to OvmfPkg
  UefiCpuPkg: Add a new CPU IO 2 driver named CpuMmio2Dxe
  ArmVirtPkg: Enable CpuMmio2Dxe
  OvmfPkg/RiscVVirt: Enable CpuMmio2Dxe
  OvmfPkg/RiscVVirt: Remove PciCpuIo2Dxe from RiscVVirt
  ArmVirtPkg: Move the FdtSerialPortAddressLib to OvmfPkg
  ArmVirtPkg: Move two PCD variables into OvmfPkg
  ArmVirtPkg: Move PlatformBootManagerLib to OvmfPkg

 ArmVirtPkg/ArmVirt.dsc.inc                    |   2 +-
 ArmVirtPkg/ArmVirtCloudHv.dsc                 |   4 +-
 ArmVirtPkg/ArmVirtCloudHv.fdf                 |   2 +-
 ArmVirtPkg/ArmVirtKvmTool.dsc                 |   4 +-
 ArmVirtPkg/ArmVirtKvmTool.fdf                 |   2 +-
 ArmVirtPkg/ArmVirtPkg.ci.yaml                 |   1 -
 ArmVirtPkg/ArmVirtPkg.dec                     |  28 -
 ArmVirtPkg/ArmVirtQemu.dsc                    |   8 +-
 ArmVirtPkg/ArmVirtQemuFvMain.fdf.inc          |   2 +-
 ArmVirtPkg/ArmVirtQemuKernel.dsc              |   8 +-
 ArmVirtPkg/ArmVirtXen.dsc                     |   2 +-
 .../ArmVirtPsciResetSystemPeiLib.inf          |   3 +-
 .../CloudHvVirtMemInfoPeiLib.inf              |   3 +-
 .../DebugLibFdtPL011UartFlash.inf             |   3 +-
 .../EarlyFdt16550SerialPortHookLib.inf        |   3 +-
 .../EarlyFdtPL011SerialPortLib.inf            |   3 +-
 .../KvmtoolPlatformPeiLib.inf                 |   5 +-
 .../Library/PlatformPeiLib/PlatformPeiLib.inf |  10 +-
 .../QemuVirtMemInfoPeiLib.inf                 |   3 +-
 .../PrePi/ArmVirtPrePiUniCoreRelocatable.inf  |   3 +-
 EmbeddedPkg/EmbeddedPkg.dec                   |   3 +
 MdePkg/Include/Library/BaseLib.h              | 221 +++++++
 MdePkg/Include/Library/CpuLib.h               |  43 +-
 .../Library/PeiServicesTablePointerLib.h      |   9 +-
 MdePkg/Include/Protocol/DebugSupport.h        |  14 +
 MdePkg/Include/Register/LoongArch64/Cpucfg.h  | 565 ++++++++++++++++++
 MdePkg/Include/Register/LoongArch64/Csr.h     | 263 ++++++++
 MdePkg/Library/BaseCpuLib/BaseCpuLib.inf      |   7 +-
 .../Library/BaseCpuLib/LoongArch/DisableFpu.S |  17 +
 .../Library/BaseCpuLib/LoongArch/EnableFpu.S  |  17 +
 .../BaseCpuLib/LoongArch/InitializeFpu.S      |  51 ++
 MdePkg/Library/BaseLib/BaseLib.inf            |   6 +
 MdePkg/Library/BaseLib/LoongArch64/AsmCsr.S   | 422 +++++++++++++
 MdePkg/Library/BaseLib/LoongArch64/Cpucfg.S   |  26 +
 MdePkg/Library/BaseLib/LoongArch64/Csr.c      |  81 +++
 .../BaseLib/LoongArch64/DisableInterrupts.S   |  22 +-
 .../BaseLib/LoongArch64/EnableInterrupts.S    |  22 +-
 .../BaseLib/LoongArch64/ExceptionBase.S       |  41 ++
 MdePkg/Library/BaseLib/LoongArch64/IoCsr.S    | 120 ++++
 .../BaseLib/LoongArch64/ReadStableCounter.S   |  24 +
 .../PeiServicesTablePointer.c                 |  87 +++
 .../PeiServicesTablePointerLibKs0.inf         |  37 ++
 .../PeiServicesTablePointerLibKs0.uni         |  20 +
 MdePkg/MdePkg.ci.yaml                         |   3 +-
 MdePkg/MdePkg.dsc                             |   3 +
 .../Include/Library/FdtSerialPortAddressLib.h |   0
 .../FdtSerialPortAddressLib.c                 |   0
 .../FdtSerialPortAddressLib.inf               |   2 +-
 .../PlatformBootManagerLibLight}/PlatformBm.c |   0
 .../PlatformBootManagerLibLight}/PlatformBm.h |   0
 .../PlatformBootManagerLib.inf                |   5 +-
 .../PlatformBootManagerLibLight}/QemuKernel.c |   0
 OvmfPkg/OvmfPkg.dec                           |  32 +
 OvmfPkg/RiscVVirt/RiscVVirtQemu.dsc           |   2 +-
 OvmfPkg/RiscVVirt/RiscVVirtQemu.fdf           |   2 +-
 .../CpuMmio2Dxe/CpuMmio2Dxe.c                 |   8 +-
 .../CpuMmio2Dxe/CpuMmio2Dxe.inf               |  16 +-
 UefiCpuPkg/CpuMmio2Dxe/CpuMmio2Dxe.uni        |  18 +
 UefiCpuPkg/UefiCpuPkg.dsc                     |   1 +
 59 files changed, 2209 insertions(+), 100 deletions(-)
 create mode 100644 MdePkg/Include/Register/LoongArch64/Cpucfg.h
 create mode 100644 MdePkg/Include/Register/LoongArch64/Csr.h
 create mode 100644 MdePkg/Library/BaseCpuLib/LoongArch/DisableFpu.S
 create mode 100644 MdePkg/Library/BaseCpuLib/LoongArch/EnableFpu.S
 create mode 100644 MdePkg/Library/BaseCpuLib/LoongArch/InitializeFpu.S
 create mode 100644 MdePkg/Library/BaseLib/LoongArch64/AsmCsr.S
 create mode 100644 MdePkg/Library/BaseLib/LoongArch64/Cpucfg.S
 create mode 100644 MdePkg/Library/BaseLib/LoongArch64/Csr.c
 create mode 100644 MdePkg/Library/BaseLib/LoongArch64/ExceptionBase.S
 create mode 100644 MdePkg/Library/BaseLib/LoongArch64/IoCsr.S
 create mode 100644 MdePkg/Library/BaseLib/LoongArch64/ReadStableCounter.S
 create mode 100644 MdePkg/Library/PeiServicesTablePointerLibKs0/PeiServicesTablePointer.c
 create mode 100644 MdePkg/Library/PeiServicesTablePointerLibKs0/PeiServicesTablePointerLibKs0.inf
 create mode 100644 MdePkg/Library/PeiServicesTablePointerLibKs0/PeiServicesTablePointerLibKs0.uni
 rename {ArmVirtPkg => OvmfPkg}/Include/Library/FdtSerialPortAddressLib.h (100%)
 rename {ArmVirtPkg => OvmfPkg}/Library/FdtSerialPortAddressLib/FdtSerialPortAddressLib.c (100%)
 rename {ArmVirtPkg => OvmfPkg}/Library/FdtSerialPortAddressLib/FdtSerialPortAddressLib.inf (90%)
 rename {ArmVirtPkg/Library/PlatformBootManagerLib => OvmfPkg/Library/PlatformBootManagerLibLight}/PlatformBm.c (100%)
 rename {ArmVirtPkg/Library/PlatformBootManagerLib => OvmfPkg/Library/PlatformBootManagerLibLight}/PlatformBm.h (100%)
 rename {ArmVirtPkg/Library/PlatformBootManagerLib => OvmfPkg/Library/PlatformBootManagerLibLight}/PlatformBootManagerLib.inf (89%)
 rename {ArmVirtPkg/Library/PlatformBootManagerLib => OvmfPkg/Library/PlatformBootManagerLibLight}/QemuKernel.c (100%)
 rename OvmfPkg/RiscVVirt/PciCpuIo2Dxe/PciCpuIo2Dxe.c => UefiCpuPkg/CpuMmio2Dxe/CpuMmio2Dxe.c (96%)
 rename OvmfPkg/RiscVVirt/PciCpuIo2Dxe/PciCpuIo2Dxe.inf => UefiCpuPkg/CpuMmio2Dxe/CpuMmio2Dxe.inf (61%)
 create mode 100644 UefiCpuPkg/CpuMmio2Dxe/CpuMmio2Dxe.uni

-- 
2.27.0



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#114985): https://edk2.groups.io/g/devel/message/114985
Mute This Topic: https://groups.io/mt/104112112/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-



^ permalink raw reply	[flat|nested] 27+ messages in thread

end of thread, other threads:[~2024-02-06 15:53 UTC | newest]

Thread overview: 27+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-02-02  2:26 [edk2-devel] [PATCH v1 00/19] Add LoongArch helper functions and defines Chao Li
2024-02-02  2:27 ` [edk2-devel] [PATCH v1 01/19] MdePkg: Add the header file named Csr.h for LoongArch64 Chao Li
2024-02-02  2:27 ` [edk2-devel] [PATCH v1 02/19] MdePkg: Add LoongArch64 FPU function set into BaseCpuLib Chao Li
2024-02-02  2:27 ` [edk2-devel] [PATCH v1 03/19] MdePkg: Add LoongArch64 exception function set into BaseLib Chao Li
2024-02-02  2:27 ` [edk2-devel] [PATCH v1 04/19] MdePkg: Add LoongArch64 local interrupt " Chao Li
2024-02-02  2:27 ` [edk2-devel] [PATCH v1 05/19] MdePkg: Add LoongArch Cpucfg function Chao Li
2024-02-02  2:27 ` [edk2-devel] [PATCH v1 06/19] MdePkg: Add read stable counter operation for LoongArch Chao Li
2024-02-02  2:27 ` [edk2-devel] [PATCH v1 07/19] MdePkg: Add CSR " Chao Li
2024-02-02  2:28 ` [edk2-devel] [PATCH v1 08/19] MdePkg: Add IOCSR " Chao Li
2024-02-02  2:28 ` [edk2-devel] [PATCH v1 09/19] MdePkg: Add a new library named PeiServicesTablePointerLibKs0 Chao Li
2024-02-02  2:28 ` [edk2-devel] [PATCH v1 10/19] MdePkg: Add some comments for LoongArch exceptions Chao Li
2024-02-02  2:28 ` [edk2-devel] [PATCH v1 11/19] EmbeddedPkg: Add PcdPrePiCpuIoSize width for LOONGARCH64 Chao Li
2024-02-02  2:28 ` [edk2-devel] [PATCH v1 12/19] ArmVirtPkg: Move PCD of FDT base address and FDT padding to OvmfPkg Chao Li
2024-02-02  2:28 ` [edk2-devel] [PATCH v1 13/19] UefiCpuPkg: Add a new CPU IO 2 driver named CpuMmio2Dxe Chao Li
2024-02-02  2:28 ` [edk2-devel] [PATCH v1 14/19] ArmVirtPkg: Enable CpuMmio2Dxe Chao Li
2024-02-02  2:28 ` [edk2-devel] [PATCH v1 15/19] OvmfPkg/RiscVVirt: " Chao Li
2024-02-02  2:28 ` [edk2-devel] [PATCH v1 16/19] OvmfPkg/RiscVVirt: Remove PciCpuIo2Dxe from RiscVVirt Chao Li
2024-02-02  2:28 ` [edk2-devel] [PATCH v1 17/19] ArmVirtPkg: Move the FdtSerialPortAddressLib to OvmfPkg Chao Li
2024-02-02  2:28 ` [edk2-devel] [PATCH v1 18/19] ArmVirtPkg: Move two PCD variables into OvmfPkg Chao Li
2024-02-02  2:29 ` [edk2-devel] [PATCH v1 19/19] ArmVirtPkg: Move PlatformBootManagerLib to OvmfPkg Chao Li
2024-02-02 14:56 ` [edk2-devel] [PATCH v1 00/19] Add LoongArch helper functions and defines Laszlo Ersek
2024-02-02 15:17   ` Ni, Ray
2024-02-02 16:14     ` Laszlo Ersek
2024-02-04  3:16       ` Chao Li
2024-02-05  7:34         ` Laszlo Ersek
2024-02-05  9:11           ` Chao Li
2024-02-06 15:52             ` 回复: " gaoliming via groups.io

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox