From: Will Deacon <will@kernel.org>
To: linux-arm-kernel@lists.infradead.org
Cc: linux-kernel@vger.kernel.org, Will Deacon <will@kernel.org>,
Arnd Bergmann <arnd@arndb.de>, Ard Biesheuvel <ardb@kernel.org>,
Eric Biggers <ebiggers@kernel.org>,
Daniel Borkmann <daniel@iogearbox.net>,
Catalin Marinas <catalin.marinas@arm.com>,
Alexei Starovoitov <ast@kernel.org>,
Oliver Upton <oupton@kernel.org>,
Herbert Xu <herbert@gondor.apana.org.au>,
Marc Zyngier <maz@kernel.org>
Subject: [PATCH v3 03/13] arm64: crypto: Assume a little-endian kernel
Date: Fri, 18 Sep 2026 15:52:05 +0100 [thread overview]
Message-ID: <20260918145217.1669-4-will@kernel.org> (raw)
In-Reply-To: <20260918145217.1669-1-will@kernel.org>
Commit 5276ea17a23c ("lib/crc: arm64: Assume a little-endian kernel")
removed all usage of the CPU_LE()/CPU_BE() macros from the arm64 CRC
assembly now that big-endian support depends on BROKEN.
Do the same for the crypto assembly code.
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Acked-by: Marc Zyngier <maz@kernel.org>
Acked-by: Eric Biggers <ebiggers@kernel.org>
Signed-off-by: Will Deacon <will@kernel.org>
---
arch/arm64/crypto/aes-ce-ccm-core.S | 4 ++--
arch/arm64/crypto/aes-neonbs-core.S | 4 ++--
arch/arm64/crypto/ghash-ce-core.S | 6 +++---
arch/arm64/crypto/sm4-ce-cipher-core.S | 4 ++--
4 files changed, 9 insertions(+), 9 deletions(-)
diff --git a/arch/arm64/crypto/aes-ce-ccm-core.S b/arch/arm64/crypto/aes-ce-ccm-core.S
index f2624238fd95..c2e8f500da14 100644
--- a/arch/arm64/crypto/aes-ce-ccm-core.S
+++ b/arch/arm64/crypto/aes-ce-ccm-core.S
@@ -50,7 +50,7 @@
ld1 {v0.16b}, [x5] /* load mac */
cbz x2, ce_aes_ccm_final
ldr x8, [x6, #8] /* load lower ctr */
-CPU_LE( rev x8, x8 ) /* keep swabbed ctr in reg */
+ rev x8, x8 /* keep swabbed ctr in reg */
0: /* outer loop */
ld1 {v1.8b}, [x6] /* load upper ctr */
prfm pldl1strm, [x1]
@@ -73,7 +73,7 @@ CPU_LE( rev x8, x8 ) /* keep swabbed ctr in reg */
eor v0.16b, v0.16b, v2.16b /* xor mac with pt ^ rk[last] */
st1 {v6.16b}, [x0], #16 /* write output block */
bne 0b
-CPU_LE( rev x8, x8 )
+ rev x8, x8
str x8, [x6, #8] /* store lsb end of ctr (BE) */
cbnz x7, ce_aes_ccm_final
st1 {v0.16b}, [x5] /* store mac */
diff --git a/arch/arm64/crypto/aes-neonbs-core.S b/arch/arm64/crypto/aes-neonbs-core.S
index baf450717b24..ba1f981a5464 100644
--- a/arch/arm64/crypto/aes-neonbs-core.S
+++ b/arch/arm64/crypto/aes-neonbs-core.S
@@ -824,8 +824,8 @@ SYM_FUNC_START(aesbs_ctr_encrypt)
frame_push 0
ldp x7, x8, [x5]
ld1 {v0.16b}, [x5]
-CPU_LE( rev x7, x7 )
-CPU_LE( rev x8, x8 )
+ rev x7, x7
+ rev x8, x8
adds x8, x8, #1
adc x7, x7, xzr
diff --git a/arch/arm64/crypto/ghash-ce-core.S b/arch/arm64/crypto/ghash-ce-core.S
index 33772d8fe6b5..ba350d57fc76 100644
--- a/arch/arm64/crypto/ghash-ce-core.S
+++ b/arch/arm64/crypto/ghash-ce-core.S
@@ -148,7 +148,7 @@ SYM_FUNC_START(pmull_ghash_update_p64)
sub w0, w0, #1
3: /* multiply XL by SHASH in GF(2^128) */
-CPU_LE( rev64 T1.16b, T1.16b )
+ rev64 T1.16b, T1.16b
ext T2.16b, XL.16b, XL.16b, #8
ext IN1.16b, T1.16b, T1.16b, #8
@@ -272,7 +272,7 @@ SYM_FUNC_END(pmull_ghash_update_p64)
cbz x0, 3f // tag only?
ldr w8, [x5, #12] // load lower counter
-CPU_LE( rev w8, w8 )
+ rev w8, w8
0: mov w9, #4 // max blocks per round
add x10, x0, #0xf
@@ -380,7 +380,7 @@ CPU_LE( rev w8, w8 )
ret
5:
-CPU_LE( rev w8, w8 )
+ rev w8, w8
str w8, [x5, #12] // store lower counter
st1 {XL.2d}, [x4]
b 4b
diff --git a/arch/arm64/crypto/sm4-ce-cipher-core.S b/arch/arm64/crypto/sm4-ce-cipher-core.S
index 4ac6cfbc5797..1682d727e097 100644
--- a/arch/arm64/crypto/sm4-ce-cipher-core.S
+++ b/arch/arm64/crypto/sm4-ce-cipher-core.S
@@ -18,7 +18,7 @@
SYM_FUNC_START(sm4_ce_do_crypt)
ld1 {v8.4s}, [x2]
ld1 {v0.4s-v3.4s}, [x0], #64
-CPU_LE( rev32 v8.16b, v8.16b )
+ rev32 v8.16b, v8.16b
ld1 {v4.4s-v7.4s}, [x0]
sm4e v8.4s, v0.4s
sm4e v8.4s, v1.4s
@@ -30,7 +30,7 @@ CPU_LE( rev32 v8.16b, v8.16b )
sm4e v8.4s, v7.4s
rev64 v8.4s, v8.4s
ext v8.16b, v8.16b, v8.16b, #8
-CPU_LE( rev32 v8.16b, v8.16b )
+ rev32 v8.16b, v8.16b
st1 {v8.4s}, [x1]
ret
SYM_FUNC_END(sm4_ce_do_crypt)
--
2.55.0.1082.g2b9226bbc0-goog
next prev parent reply other threads:[~2026-09-18 14:52 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-09-18 14:52 [PATCH v3 00/14] arm64: Remove unused big-endian support Will Deacon
2026-09-18 14:52 ` [PATCH v3 01/13] selftests/arm64: Remove " Will Deacon
2026-09-20 19:56 ` Thomas Gleixner
2026-09-18 14:52 ` [PATCH v3 02/13] arm64: bpf: Remove big-endian support from the JIT compiler Will Deacon
2026-09-18 14:52 ` Will Deacon [this message]
2026-09-18 14:52 ` [PATCH v3 04/13] arm64: lib: Assume a little-endian kernel in custom library routines Will Deacon
2026-09-18 14:52 ` [PATCH v3 05/13] arm64: lib: Assume a little-endian kernel in optimised string routines Will Deacon
2026-09-18 14:52 ` [PATCH v3 06/13] arm64: assembler: Remove endianness helper macros Will Deacon
2026-09-18 14:52 ` [PATCH v3 07/13] arm64: vdso32: Always build compat vDSO object as little-endian Will Deacon
2026-09-18 14:52 ` [PATCH v3 08/13] KVM: arm64: Remove support for a big-endian hypervisor object Will Deacon
2026-09-18 14:52 ` [PATCH v3 09/13] arm64: Remove all usage of CONFIG_CPU_BIG_ENDIAN Will Deacon
2026-09-18 14:52 ` [PATCH v3 10/13] arm64: Remove all usage of __AARCH64EB__ Will Deacon
2026-09-18 14:52 ` [PATCH v3 11/13] crypto: hisilicon/sec2: Remove check of CONFIG_CPU_LITTLE_ENDIAN Will Deacon
2026-09-23 7:04 ` liulongfang
2026-09-18 14:52 ` [PATCH v3 12/13] arm64: Kbuild: Remove vestigial big-endian support Will Deacon
2026-09-21 10:24 ` Catalin Marinas
2026-09-22 15:10 ` Will Deacon
2026-09-22 15:17 ` Catalin Marinas
2026-09-22 15:32 ` Will Deacon
2026-09-18 14:52 ` [PATCH v3 13/13] drivers: Kconfig: Simplify dependencies on ARM64 && !CPU_BIG_ENDIAN Will Deacon
2026-09-18 16:22 ` [PATCH v3 00/14] arm64: Remove unused big-endian support Mark Rutland
2026-09-23 18:18 ` Catalin Marinas
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260918145217.1669-4-will@kernel.org \
--to=will@kernel.org \
--cc=ardb@kernel.org \
--cc=arnd@arndb.de \
--cc=ast@kernel.org \
--cc=catalin.marinas@arm.com \
--cc=daniel@iogearbox.net \
--cc=ebiggers@kernel.org \
--cc=herbert@gondor.apana.org.au \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=maz@kernel.org \
--cc=oupton@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.