[<prev] [next>] [day] [month] [year] [list]
Message-ID: <20251211144219.2282231-1-chenhuacai@loongson.cn>
Date: Thu, 11 Dec 2025 22:42:19 +0800
From: Huacai Chen <chenhuacai@...ngson.cn>
To: Linus Torvalds <torvalds@...ux-foundation.org>,
Arnd Bergmann <arnd@...db.de>,
Huacai Chen <chenhuacai@...nel.org>
Cc: loongarch@...ts.linux.dev,
linux-arch@...r.kernel.org,
linux-kernel@...r.kernel.org,
Guo Ren <guoren@...nel.org>,
Xuerui Wang <kernel@...0n.name>,
Jiaxun Yang <jiaxun.yang@...goat.com>,
Huacai Chen <chenhuacai@...ngson.cn>
Subject: [GIT PULL] LoongArch changes for v6.19
The following changes since commit 7d0a66e4bb9081d75c82ec4957c50034cb0ea449:
Linux 6.18 (2025-11-30 14:42:10 -0800)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/chenhuacai/linux-loongson.git tags/loongarch-6.19
for you to fetch changes up to be77cf43d2fd6eca150594e997e40ca7df90f251:
LoongArch: Adjust default config files for 32BIT/64BIT (2025-12-08 18:09:17 +0800)
----------------------------------------------------------------
LoongArch changes for v6.19
1, Add basic LoongArch32 support;
2, Select HAVE_ARCH_BITREVERSE in Kconfig;
3, Fix build and boot for CONFIG_RANDSTRUCT;
4, Correct the calculation logic of thread_count;
5, Some bug fixes and other small changes.
Note: Build infrastructures of LoongArch32 are not enabled yet, because
we need to adjust irqchip drivers and wait for GNU toolchain be upstream
first.
----------------------------------------------------------------
Huacai Chen (16):
LoongArch: Fix build errors for CONFIG_RANDSTRUCT
LoongArch: Fix arch_dup_task_struct() for CONFIG_RANDSTRUCT
LoongArch: Add new PCI ID for pci_fixup_vgadev()
LoongArch: Add atomic operations for 32BIT/64BIT
LoongArch: Add adaptive CSR accessors for 32BIT/64BIT
LoongArch: Adjust common macro definitions for 32BIT/64BIT
LoongArch: Adjust boot & setup for 32BIT/64BIT
LoongArch: Adjust memory management for 32BIT/64BIT
LoongArch: Adjust process management for 32BIT/64BIT
LoongArch: Adjust time routines for 32BIT/64BIT
LoongArch: Adjust module loader for 32BIT/64BIT
LoongArch: Adjust system call for 32BIT/64BIT
LoongArch: Adjust user accessors for 32BIT/64BIT
LoongArch: Adjust misc routines for 32BIT/64BIT
LoongArch: Adjust VDSO/VSYSCALL for 32BIT/64BIT
LoongArch: Adjust default config files for 32BIT/64BIT
Qiang Ma (1):
LoongArch: Correct the calculation logic of thread_count
Song Gao (1):
LoongArch: Add and use some macros for AVEC
Tiezhu Yang (1):
LoongArch: Use unsigned long for _end and _text
Xi Ruoyao (2):
LoongArch: Select HAVE_ARCH_BITREVERSE in Kconfig
LoongArch: Simplify __arch_bitrev32() implementation
Yuli Wang (1):
LoongArch: Use __pmd()/__pte() for swap entry conversions
arch/loongarch/Kconfig | 5 +
arch/loongarch/Makefile | 7 +-
arch/loongarch/configs/loongson32_defconfig | 1105 ++++++++++++++++++++
.../{loongson3_defconfig => loongson64_defconfig} | 7 +-
arch/loongarch/include/asm/Kbuild | 1 +
arch/loongarch/include/asm/addrspace.h | 15 +-
arch/loongarch/include/asm/asm.h | 77 +-
arch/loongarch/include/asm/asmmacro.h | 118 ++-
arch/loongarch/include/asm/atomic-amo.h | 206 ++++
arch/loongarch/include/asm/atomic-llsc.h | 100 ++
arch/loongarch/include/asm/atomic.h | 197 +---
arch/loongarch/include/asm/bitops.h | 11 +
arch/loongarch/include/asm/bitrev.h | 2 +-
arch/loongarch/include/asm/checksum.h | 4 +
arch/loongarch/include/asm/cmpxchg.h | 48 +-
arch/loongarch/include/asm/cpu-features.h | 3 -
arch/loongarch/include/asm/dmi.h | 2 +-
arch/loongarch/include/asm/elf.h | 31 +
arch/loongarch/include/asm/inst.h | 12 +-
arch/loongarch/include/asm/irq.h | 12 +
arch/loongarch/include/asm/jump_label.h | 12 +-
arch/loongarch/include/asm/local.h | 37 +
arch/loongarch/include/asm/loongarch.h | 102 +-
arch/loongarch/include/asm/module.h | 11 +
arch/loongarch/include/asm/page.h | 2 +-
arch/loongarch/include/asm/percpu.h | 44 +-
arch/loongarch/include/asm/pgtable-bits.h | 36 +-
arch/loongarch/include/asm/pgtable.h | 79 +-
arch/loongarch/include/asm/stackframe.h | 34 +-
arch/loongarch/include/asm/string.h | 2 +
arch/loongarch/include/asm/timex.h | 33 +-
arch/loongarch/include/asm/uaccess.h | 63 +-
arch/loongarch/include/asm/vdso/gettimeofday.h | 4 +
arch/loongarch/include/uapi/asm/Kbuild | 1 +
arch/loongarch/include/uapi/asm/ptrace.h | 10 +
arch/loongarch/include/uapi/asm/unistd.h | 6 +
arch/loongarch/kernel/Makefile.syscalls | 1 +
arch/loongarch/kernel/cpu-probe.c | 13 +-
arch/loongarch/kernel/efi-header.S | 4 +
arch/loongarch/kernel/efi.c | 4 +-
arch/loongarch/kernel/entry.S | 22 +-
arch/loongarch/kernel/env.c | 5 +-
arch/loongarch/kernel/fpu.S | 111 ++
arch/loongarch/kernel/head.S | 39 +-
arch/loongarch/kernel/module-sections.c | 1 +
arch/loongarch/kernel/module.c | 204 +++-
arch/loongarch/kernel/proc.c | 10 +-
arch/loongarch/kernel/process.c | 11 +-
arch/loongarch/kernel/ptrace.c | 5 +
arch/loongarch/kernel/relocate.c | 13 +-
arch/loongarch/kernel/setup.c | 8 +-
arch/loongarch/kernel/switch.S | 28 +-
arch/loongarch/kernel/syscall.c | 15 +-
arch/loongarch/kernel/time.c | 31 +-
arch/loongarch/kernel/traps.c | 15 +-
arch/loongarch/kernel/unaligned.c | 30 +-
arch/loongarch/kvm/vcpu.c | 5 +-
arch/loongarch/lib/bswapdi.c | 13 +
arch/loongarch/lib/bswapsi.c | 13 +
arch/loongarch/lib/clear_user.S | 22 +-
arch/loongarch/lib/copy_user.S | 28 +-
arch/loongarch/lib/dump_tlb.c | 14 +-
arch/loongarch/lib/unaligned.S | 72 +-
arch/loongarch/mm/init.c | 4 +-
arch/loongarch/mm/page.S | 118 +--
arch/loongarch/mm/tlb.c | 12 +-
arch/loongarch/mm/tlbex.S | 322 ++++--
arch/loongarch/pci/pci.c | 2 +
arch/loongarch/power/hibernate.c | 6 +-
arch/loongarch/power/platform.c | 4 +-
arch/loongarch/power/suspend.c | 24 +-
arch/loongarch/power/suspend_asm.S | 72 +-
arch/loongarch/vdso/Makefile | 7 +-
arch/loongarch/vdso/vdso.lds.S | 4 +-
arch/loongarch/vdso/vgetcpu.c | 8 +
drivers/firmware/efi/libstub/loongarch.c | 8 +-
drivers/irqchip/irq-loongarch-avec.c | 5 +-
77 files changed, 3001 insertions(+), 771 deletions(-)
create mode 100644 arch/loongarch/configs/loongson32_defconfig
rename arch/loongarch/configs/{loongson3_defconfig => loongson64_defconfig} (99%)
create mode 100644 arch/loongarch/include/asm/atomic-amo.h
create mode 100644 arch/loongarch/include/asm/atomic-llsc.h
create mode 100644 arch/loongarch/lib/bswapdi.c
create mode 100644 arch/loongarch/lib/bswapsi.c
Powered by blists - more mailing lists