mbox series

[v2,0/8] RISCV device tree mapping

Message ID cover.1720799925.git.oleksii.kurochko@gmail.com (mailing list archive)
Headers show
Series RISCV device tree mapping | expand

Message

Oleksii Kurochko July 12, 2024, 4:22 p.m. UTC
Current patch series introduces device tree mapping for RISC-V
and necessary things for that such as:
- Fixmap mapping
- pmap
- Xen page table processing

Also, it introduces common stuff for working with fdt which is
based on the patches from [1]:
  [PATCH v4 2/6] xen/device-tree: Move Arm's setup.c bootinfo functions to common
  [PATCH v4 3/6] xen/common: Move Arm's bootfdt.c
All changes which were done on top of Shawn's patches please find in "Changes" section
of each patch.

Also there is another one depenency:
RISCV basic exception handling implementation [2]

[1] https://lore.kernel.org/xen-devel/cover.1712893887.git.sanastasio@raptorengineering.com/
[2] https://lore.kernel.org/xen-devel/cover.1720799487.git.oleksii.kurochko@gmail.com/T/#t

---
Changes in v2:
 - Update the cover letter message
 - introduce fixmap mapping
 - introduce pmap
 - introduce CONFIG_GENREIC_PT
 - update use early_fdt_map() after MMU is enabled.
---

Oleksii Kurochko (6):
  xen/riscv: enable CONFIG_HAS_DEVICE_TREE
  xen/riscv: setup fixmap mapping
  xen/riscv: introduce asm/pmap.h header
  xen/riscv: introduce generic Xen page table handling
  xen/riscv: select CONFIG_GENREIC_PT
  xen/riscv: introduce early_fdt_map()

Shawn Anastasio (2):
  xen/device-tree: Move Arm's setup.c bootinfo functions to common
  xen/common: Move Arm's bootfdt.c to common

 MAINTAINERS                            |   2 +
 xen/arch/arm/Makefile                  |   1 -
 xen/arch/arm/bootfdt.c                 | 622 ------------------------
 xen/arch/arm/include/asm/setup.h       | 200 +-------
 xen/arch/arm/setup.c                   | 432 -----------------
 xen/arch/riscv/Kconfig                 |   3 +
 xen/arch/riscv/include/asm/config.h    |   9 +
 xen/arch/riscv/include/asm/fixmap.h    |  48 ++
 xen/arch/riscv/include/asm/mm.h        |  13 +
 xen/arch/riscv/include/asm/page-bits.h |  45 ++
 xen/arch/riscv/include/asm/page.h      |  82 +++-
 xen/arch/riscv/include/asm/pmap.h      |  28 ++
 xen/arch/riscv/mm.c                    | 167 ++++++-
 xen/arch/riscv/setup.c                 |  11 +
 xen/arch/riscv/xen.lds.S               |   2 +-
 xen/common/Kconfig                     |   5 +
 xen/common/Makefile                    |   2 +
 xen/common/device-tree/Makefile        |   2 +
 xen/common/device-tree/bootfdt.c       | 635 +++++++++++++++++++++++++
 xen/common/device-tree/bootinfo.c      | 459 ++++++++++++++++++
 xen/common/mmu/pt.c                    | 441 +++++++++++++++++
 xen/include/xen/bootfdt.h              | 210 ++++++++
 xen/include/xen/mm.h                   |  24 +
 23 files changed, 2181 insertions(+), 1262 deletions(-)
 delete mode 100644 xen/arch/arm/bootfdt.c
 create mode 100644 xen/arch/riscv/include/asm/fixmap.h
 create mode 100644 xen/arch/riscv/include/asm/pmap.h
 create mode 100644 xen/common/device-tree/Makefile
 create mode 100644 xen/common/device-tree/bootfdt.c
 create mode 100644 xen/common/device-tree/bootinfo.c
 create mode 100644 xen/common/mmu/pt.c
 create mode 100644 xen/include/xen/bootfdt.h