[GIT PULL] RISC-V Patches for the 5.20 Merge Window, Part 1
Palmer Dabbelt
palmer at rivosinc.com
Fri Aug 5 16:36:38 PDT 2022
The following changes since commit 924cbb8cbe3460ea192e6243017ceb0ceb255b1b:
riscv: Improve description for RISCV_ISA_SVPBMT Kconfig symbol (2022-06-16 15:47:39 -0700)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux.git tags/riscv-for-linus-5.20-mw0
for you to fetch changes up to ba6cfef057e1c594c456627aad81c2343fdb5d13:
riscv: enable Docker requirements in defconfig (2022-07-22 13:43:28 -0700)
----------------------------------------------------------------
RISC-V Patches for the 5.20 Merge Window, Part 1
* Enabling the FPU is now a static_key.
* Improvements to the Svpbmt support.
* CPU topology bindings for a handful of systems.
* Support for systems with 64-bit hart IDs.
* Many settings have been enabled in the defconfig, including both
support for the StarFive systems and many of the Docker requirements.
There are also a handful of cleanups and improvements, like usual.
----------------------------------------------------------------
This all passes my standard tests, with the old caveat that I'm still seeing
some weirdness with QEMU-7.0 and a new issue where GCC-11 is tripping up on
some fortify string checks in lm90.c on rv32 (GCC-12 works). I don't really
like to send stuff when there's some outstanding issues like this, but after
poking around for a bit it doesn't look like either is related to this pull
request so it seems worse to hold off any longer.
I'm also not 100% sure why it's calling out a patch in the middle as the base,
I see v5.19-rc1 in the history. Sorry if something went off the rails there.
I have one merge conflict, these defines were set to non-zero in arch/riscv at
the same time the refactoring to make them generic went in. I'd considered
merging that PR locally and making the fix in my tree, but that looked uglier
than just passing the merge conflict on. Let me know if I should have done
this the other way around, though.
diff --cc arch/riscv/include/asm/pci.h
index 830ac621dbbc,6ef4a1426194..cc2a184cfc2e
--- a/arch/riscv/include/asm/pci.h
+++ b/arch/riscv/include/asm/pci.h
@@@ -12,31 -12,7 +12,10 @@@
#include <asm/io.h>
+#define PCIBIOS_MIN_IO 4
+#define PCIBIOS_MIN_MEM 16
+
- /* RISC-V shim does not initialize PCI bus */
- #define pcibios_assign_all_busses() 1
-
- #define ARCH_GENERIC_PCI_MMAP_RESOURCE 1
-
- extern int isa_dma_bridge_buggy;
-
- #ifdef CONFIG_PCI
- static inline int pci_get_legacy_ide_irq(struct pci_dev *dev, int channel)
- {
- /* no legacy IRQ on risc-v */
- return -ENODEV;
- }
-
- static inline int pci_proc_domain(struct pci_bus *bus)
- {
- /* always show the domain in /proc */
- return 1;
- }
-
- #ifdef CONFIG_NUMA
-
+ #if defined(CONFIG_PCI) && defined(CONFIG_NUMA)
static inline int pcibus_to_node(struct pci_bus *bus)
{
return dev_to_node(&bus->dev);
----------------------------------------------------------------
Celeste Liu (1):
riscv: mmap with PROT_WRITE but no PROT_READ is invalid
Conor Dooley (7):
riscv: dts: microchip: remove spi-max-frequency property
riscv: dts: microchip: Add mpfs' topology information
riscv: config: enable SOC_STARFIVE in defconfig
riscv: dts: sifive: Add fu540 topology information
riscv: dts: sifive: Add fu740 topology information
riscv: dts: canaan: Add k210 topology information
riscv: dts: sifive: "fix" pmic watchdog node name
Heiko Stuebner (4):
riscv: make patch-function pointer more generic in cpu_manufacturer_info struct
riscv: remove usage of function-pointers from cpufeatures and t-head errata
riscv: introduce nops and __nops macros for NOP sequences
riscv: convert the t-head pbmt errata to use the __nops macro
Heinrich Schuchardt (1):
riscv: enable Docker requirements in defconfig
Jisheng Zhang (2):
riscv: introduce unified static key mechanism for ISA extensions
riscv: switch has_fpu() to the unified static key mechanism
Jonas Hahnfeld (1):
riscv: dts: starfive: Add JH7100 CPU topology
Juerg Haefliger (3):
riscv: Kconfig: Fix indentation and add comments
riscv: Kconfig.erratas: Add comments
riscv: Kconfig.socs: Add comments
Maciej W. Rozycki (1):
RISC-V: PCI: Avoid handing out address 0 to devices
Nagasuresh Relli (1):
riscv: dts: microchip: remove spi-max-frequency property
Palmer Dabbelt (8):
RISC-V: Use the extension probing code to enable the FPU
RISC-V: Some Svpbmt fixes and cleanups
riscv: Kconfig: Style cleanups
RISC-V: Add CONFIG_{NON,}PORTABLE
Merge tag 'dt-for-palmer-v5.20-mw0' of git://git.kernel.org/pub/scm/linux/kernel/git/conor/linux.git into for-next
Merge branch 'riscv-cpu_map_topo' of git://git.kernel.org/pub/scm/linux/kernel/git/palmer/linux.git into for-next
RISC-V: Support for 64bit hartid on RV64 platforms
riscv: Add macro for multiple nop instructions
Sunil V L (5):
riscv: cpu_ops_sbi: Add 64bit hartid support on RV64
riscv: spinwait: Fix hartid variable type
riscv: smp: Add 64bit hartid support on RV64
riscv: cpu: Add 64bit hartid support on RV64
riscv/efi_stub: Add 64bit boot-hartid support on RV64
Xianting Tian (1):
RISC-V: Add fast call path of crash_kexec()
arch/riscv/Kconfig | 47 ++++++++++++----
arch/riscv/Kconfig.erratas | 2 +-
arch/riscv/Kconfig.socs | 4 +-
arch/riscv/boot/dts/canaan/k210.dtsi | 12 ++++
arch/riscv/boot/dts/microchip/mpfs.dtsi | 27 ++++++++-
arch/riscv/boot/dts/sifive/fu540-c000.dtsi | 24 ++++++++
arch/riscv/boot/dts/sifive/fu740-c000.dtsi | 24 ++++++++
.../riscv/boot/dts/sifive/hifive-unmatched-a00.dts | 2 +-
arch/riscv/boot/dts/starfive/jh7100.dtsi | 16 +++++-
arch/riscv/configs/32-bit.config | 2 +
arch/riscv/configs/defconfig | 65 +++++++++++++++++++++-
arch/riscv/configs/nommu_k210_defconfig | 1 +
arch/riscv/configs/nommu_k210_sdcard_defconfig | 1 +
arch/riscv/configs/nommu_virt_defconfig | 1 +
arch/riscv/configs/rv32_defconfig | 1 +
arch/riscv/errata/thead/errata.c | 38 ++++---------
arch/riscv/include/asm/asm.h | 15 +++++
arch/riscv/include/asm/barrier.h | 2 +
arch/riscv/include/asm/errata_list.h | 8 +--
arch/riscv/include/asm/hwcap.h | 25 +++++++++
arch/riscv/include/asm/pci.h | 4 +-
arch/riscv/include/asm/processor.h | 4 +-
arch/riscv/include/asm/smp.h | 4 +-
arch/riscv/include/asm/switch_to.h | 4 +-
arch/riscv/kernel/alternative.c | 18 +++---
arch/riscv/kernel/cpu.c | 26 +++++----
arch/riscv/kernel/cpu_ops_sbi.c | 4 +-
arch/riscv/kernel/cpu_ops_spinwait.c | 4 +-
arch/riscv/kernel/cpufeature.c | 52 +++++++----------
arch/riscv/kernel/smp.c | 4 +-
arch/riscv/kernel/smpboot.c | 9 +--
arch/riscv/kernel/sys_riscv.c | 5 +-
arch/riscv/kernel/traps.c | 4 ++
drivers/clocksource/timer-riscv.c | 15 ++---
drivers/firmware/efi/libstub/riscv-stub.c | 13 ++++-
drivers/irqchip/irq-riscv-intc.c | 7 ++-
drivers/irqchip/irq-sifive-plic.c | 7 ++-
37 files changed, 358 insertions(+), 143 deletions(-)
More information about the linux-riscv
mailing list