[<prev] [next>] [day] [month] [year] [list]
Message-Id: <20251222-cc-can-link-riscv-v1-1-633e39e4a60d@linutronix.de>
Date: Mon, 22 Dec 2025 09:27:47 +0100
From: Thomas Weißschuh <thomas.weissschuh@...utronix.de>
To: Paul Walmsley <pjw@...nel.org>, Palmer Dabbelt <palmer@...belt.com>,
Albert Ou <aou@...s.berkeley.edu>, Alexandre Ghiti <alex@...ti.fr>
Cc: linux-riscv@...ts.infradead.org, linux-kernel@...r.kernel.org,
Thomas Weißschuh <thomas.weissschuh@...utronix.de>
Subject: [PATCH] riscv: Implement ARCH_HAS_CC_CAN_LINK
The generic CC_CAN_LINK detection relies on -m32/-m64 compiler flags.
These are not supported by riscv compilers.
Use architecture-specific logic using -mabi instead.
Signed-off-by: Thomas Weißschuh <thomas.weissschuh@...utronix.de>
---
arch/riscv/Kconfig | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/arch/riscv/Kconfig b/arch/riscv/Kconfig
index 6b39f37f769a..b4c1f922eed5 100644
--- a/arch/riscv/Kconfig
+++ b/arch/riscv/Kconfig
@@ -25,6 +25,7 @@ config RISCV
select ARCH_ENABLE_SPLIT_PMD_PTLOCK if PGTABLE_LEVELS > 2
select ARCH_ENABLE_THP_MIGRATION if TRANSPARENT_HUGEPAGE
select ARCH_HAS_BINFMT_FLAT
+ select ARCH_HAS_CC_CAN_LINK
select ARCH_HAS_CURRENT_STACK_POINTER
select ARCH_HAS_DEBUG_VIRTUAL if MMU
select ARCH_HAS_DEBUG_VM_PGTABLE
@@ -1351,6 +1352,16 @@ config PORTABLE
config ARCH_PROC_KCORE_TEXT
def_bool y
+config ARCH_CC_CAN_LINK
+ bool
+ default $(cc_can_link_user,-mabi=lp64d) if 64BIT
+ default $(cc_can_link_user,-mabi=ilp32d)
+
+config ARCH_USERFLAGS
+ string
+ default "-mabi=lp64d" if 64BIT
+ default "-mabi=ilp32d"
+
menu "Power management options"
source "kernel/power/Kconfig"
---
base-commit: 8f0b4cce4481fb22653697cced8d0d04027cb1e8
change-id: 20251222-cc-can-link-riscv-dc0304d27cf4
Best regards,
--
Thomas Weißschuh <thomas.weissschuh@...utronix.de>
Powered by blists - more mailing lists