svpbmt und so

A patchset in state Mainline for linux-kernel

From: Heiko Stuebner <heiko@...> Date: Mon, 6 Dec 2021 16:42:21 +0100

Das wäre jetzt mein Versuch für svpbmt. Erstmal intern, ob ich jetzt irgendwas gravierendes falsch mache ;-) . Wie schon mit Christoph erörtert, als alternative und 2 asm Anweisungen. T-Head wäre dann auch einfach indem man den ALTERNATIVE_2 Mechanismus implementiert, dass dort zwischen in Summe 3 Varianten unterschieden werden kann. [Da wir ja davon ausgehen dass keine weiteren kaputten Cores mehr akzeptiert werden]. Tests: - (generierte) PAGE-Werte in beiden Fällen im Kernel-Log ausgeben - normales Qemu - Qemu mit https://lore.kernel.org/all/20211128135255.22089-4-liweiwei@iscas.ac.cn/ und qemu_fdt_setprop_string(mc->fdt, cpu_name, "mmu", "riscv,svpbmt"); in virt - gepatchte Codestellen zählen lassen (177) Guo Ren (1): riscv: Fixup _PAGE_CHG_MASK usage in pgtable Heiko Stuebner (1): riscv: add cpufeature handling via alternatives Wei Fu (2): dt-bindings: riscv: add MMU Standard Extensions support for Svpbmt riscv: add RISC-V Svpbmt extension supports .../devicetree/bindings/riscv/cpus.yaml | 10 +++ arch/riscv/errata/Makefile | 1 + arch/riscv/errata/alternative.c | 3 + arch/riscv/errata/cpufeatures.c | 87 +++++++++++++++++++ arch/riscv/include/asm/alternative.h | 1 + arch/riscv/include/asm/errata_list.h | 12 +++ arch/riscv/include/asm/fixmap.h | 2 - arch/riscv/include/asm/pgtable-32.h | 10 +++ arch/riscv/include/asm/pgtable-64.h | 65 +++++++++++++- arch/riscv/include/asm/pgtable-bits.h | 4 - arch/riscv/include/asm/pgtable.h | 38 ++++++-- 11 files changed, 215 insertions(+), 18 deletions(-) create mode 100644 arch/riscv/errata/cpufeatures.c -- 2.30.2

Patches in this set

Statistics

  • 4 individual patches
  • 216 lines added
  • 19 lines removed
 

Recent Patches

About Us

Sed lacus. Donec lectus. Nullam pretium nibh ut turpis. Nam bibendum. In nulla tortor, elementum vel, tempor at, varius non, purus. Mauris vitae nisl nec metus placerat consectetuer.

Read More...