* [PATCH net] net: airoha: Fix VIP configuration for AN7583 SoC
From: Lorenzo Bianconi @ 2026-04-12 7:57 UTC (permalink / raw)
To: Andrew Lunn, David S. Miller, Eric Dumazet, Jakub Kicinski,
Paolo Abeni, Simon Horman
Cc: linux-arm-kernel, linux-mediatek, netdev, Lorenzo Bianconi
EN7581 and AN7583 SoCs have different VIP definitions. Introduce
get_vip_port callback in airoha_eth_soc_data struct in order to take
into account EN7581 and AN7583 VIP register layout and definition
differences.
Introduce nbq parameter in airoha_gdm_port struct. At the moment nbq
is set statically to value previously used in airhoha_set_gdm2_loopback
routine and it will be read from device tree in subsequent patches.
Fixes: e4e5ce823bdd ("net: airoha: Add AN7583 SoC support")
Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
---
drivers/net/ethernet/airoha/airoha_eth.c | 66 ++++++++++++++++++++++++--------
drivers/net/ethernet/airoha/airoha_eth.h | 2 +
2 files changed, 51 insertions(+), 17 deletions(-)
diff --git a/drivers/net/ethernet/airoha/airoha_eth.c b/drivers/net/ethernet/airoha/airoha_eth.c
index c14cdce588a7..b64667722d7f 100644
--- a/drivers/net/ethernet/airoha/airoha_eth.c
+++ b/drivers/net/ethernet/airoha/airoha_eth.c
@@ -107,19 +107,7 @@ static int airoha_set_vip_for_gdm_port(struct airoha_gdm_port *port,
struct airoha_eth *eth = port->qdma->eth;
u32 vip_port;
- switch (port->id) {
- case AIROHA_GDM3_IDX:
- /* FIXME: handle XSI_PCIE1_PORT */
- vip_port = XSI_PCIE0_VIP_PORT_MASK;
- break;
- case AIROHA_GDM4_IDX:
- /* FIXME: handle XSI_USB_PORT */
- vip_port = XSI_ETH_VIP_PORT_MASK;
- break;
- default:
- return 0;
- }
-
+ vip_port = eth->soc->ops.get_vip_port(port, port->nbq);
if (enable) {
airoha_fe_set(eth, REG_FE_VIP_PORT_EN, vip_port);
airoha_fe_set(eth, REG_FE_IFC_PORT_EN, vip_port);
@@ -1705,7 +1693,7 @@ static int airoha_dev_set_macaddr(struct net_device *dev, void *p)
static int airhoha_set_gdm2_loopback(struct airoha_gdm_port *port)
{
struct airoha_eth *eth = port->qdma->eth;
- u32 val, pse_port, chan, nbq;
+ u32 val, pse_port, chan;
int src_port;
/* Forward the traffic to the proper GDM port */
@@ -1735,9 +1723,7 @@ static int airhoha_set_gdm2_loopback(struct airoha_gdm_port *port)
airoha_fe_clear(eth, REG_FE_VIP_PORT_EN, BIT(AIROHA_GDM2_IDX));
airoha_fe_clear(eth, REG_FE_IFC_PORT_EN, BIT(AIROHA_GDM2_IDX));
- /* XXX: handle XSI_USB_PORT and XSI_PCE1_PORT */
- nbq = port->id == AIROHA_GDM3_IDX && airoha_is_7581(eth) ? 4 : 0;
- src_port = eth->soc->ops.get_src_port_id(port, nbq);
+ src_port = eth->soc->ops.get_src_port_id(port, port->nbq);
if (src_port < 0)
return src_port;
@@ -2946,6 +2932,8 @@ static int airoha_alloc_gdm_port(struct airoha_eth *eth,
port->qdma = qdma;
port->dev = dev;
port->id = id;
+ /* XXX: Read nbq from DTS */
+ port->nbq = id == AIROHA_GDM3_IDX && airoha_is_7581(eth) ? 4 : 0;
eth->ports[p] = port;
return airoha_metadata_dst_alloc(port);
@@ -3147,6 +3135,28 @@ static int airoha_en7581_get_src_port_id(struct airoha_gdm_port *port, int nbq)
return -EINVAL;
}
+static u32 airoha_en7581_get_vip_port(struct airoha_gdm_port *port, int nbq)
+{
+ switch (port->id) {
+ case AIROHA_GDM3_IDX:
+ if (nbq == 4)
+ return XSI_PCIE0_VIP_PORT_MASK;
+ if (nbq == 5)
+ return XSI_PCIE1_VIP_PORT_MASK;
+ break;
+ case AIROHA_GDM4_IDX:
+ if (!nbq)
+ return XSI_ETH_VIP_PORT_MASK;
+ if (nbq == 1)
+ return XSI_USB_VIP_PORT_MASK;
+ break;
+ default:
+ break;
+ }
+
+ return 0;
+}
+
static const char * const an7583_xsi_rsts_names[] = {
"xsi-mac",
"hsi0-mac",
@@ -3176,6 +3186,26 @@ static int airoha_an7583_get_src_port_id(struct airoha_gdm_port *port, int nbq)
return -EINVAL;
}
+static u32 airoha_an7583_get_vip_port(struct airoha_gdm_port *port, int nbq)
+{
+ switch (port->id) {
+ case AIROHA_GDM3_IDX:
+ if (!nbq)
+ return XSI_ETH_VIP_PORT_MASK;
+ break;
+ case AIROHA_GDM4_IDX:
+ if (!nbq)
+ return XSI_PCIE0_VIP_PORT_MASK;
+ if (nbq == 1)
+ return XSI_USB_VIP_PORT_MASK;
+ break;
+ default:
+ break;
+ }
+
+ return 0;
+}
+
static const struct airoha_eth_soc_data en7581_soc_data = {
.version = 0x7581,
.xsi_rsts_names = en7581_xsi_rsts_names,
@@ -3183,6 +3213,7 @@ static const struct airoha_eth_soc_data en7581_soc_data = {
.num_ppe = 2,
.ops = {
.get_src_port_id = airoha_en7581_get_src_port_id,
+ .get_vip_port = airoha_en7581_get_vip_port,
},
};
@@ -3193,6 +3224,7 @@ static const struct airoha_eth_soc_data an7583_soc_data = {
.num_ppe = 1,
.ops = {
.get_src_port_id = airoha_an7583_get_src_port_id,
+ .get_vip_port = airoha_an7583_get_vip_port,
},
};
diff --git a/drivers/net/ethernet/airoha/airoha_eth.h b/drivers/net/ethernet/airoha/airoha_eth.h
index a97903569335..8bcd809e6f53 100644
--- a/drivers/net/ethernet/airoha/airoha_eth.h
+++ b/drivers/net/ethernet/airoha/airoha_eth.h
@@ -536,6 +536,7 @@ struct airoha_gdm_port {
struct airoha_qdma *qdma;
struct net_device *dev;
int id;
+ int nbq;
struct airoha_hw_stats stats;
@@ -576,6 +577,7 @@ struct airoha_eth_soc_data {
int num_ppe;
struct {
int (*get_src_port_id)(struct airoha_gdm_port *port, int nbq);
+ u32 (*get_vip_port)(struct airoha_gdm_port *port, int nbq);
} ops;
};
---
base-commit: 02f72964395911e7a09bb2ea2fe6f79eda4ea2c2
change-id: 20260412-airoha-7583-vip-fix-5056b9c67f0a
Best regards,
--
Lorenzo Bianconi <lorenzo@kernel.org>
^ permalink raw reply related
* [GIT PULL] arm64: dts: ti: k3: Late DT update for v7.1
From: Vignesh Raghavendra @ 2026-04-12 7:22 UTC (permalink / raw)
To: SoC, arm
Cc: SoC list, linux-arm-kernel, linux-kernel, Tero Kristo,
Nishanth, Menon, Vignesh Raghavendra
[-- Attachment #1.1: Type: text/plain, Size: 1835 bytes --]
Hi ARM SoC Maintainers,
This contains a single patch that updates r5f remoteproc DT nodes, warranted by recent
binding update merged via remoteproc tree.
The following changes since commit 47c806de9e9cf171d197f2f0df86df7f2bd1aa56:
arm64: dts: ti: k3-pinctrl: sort shift values numerically (2026-03-27 19:55:06 +0530)
are available in the Git repository at:
https://git.kernel.org/pub/scm/linux/kernel/git/ti/linux.git tags/ti-k3-dt-for-v7.1-part2
for you to fetch changes up to abe76f9f47d59ff80eb2fc59482aa76bbf6fd13a:
arm64: dts: ti: k3: Use memory-region-names for r5f (2026-04-09 17:05:28 +0530)
----------------------------------------------------------------
TI K3 device tree updates for v7.1 part2
Late addition:
- Use memory-region-names for r5f across K3 SoCs
----------------------------------------------------------------
Markus Schneider-Pargmann (TI) (1):
arm64: dts: ti: k3: Use memory-region-names for r5f
arch/arm64/boot/dts/ti/k3-am62-ti-ipc-firmware.dtsi | 1 +
arch/arm64/boot/dts/ti/k3-am62a-ti-ipc-firmware.dtsi | 2 ++
arch/arm64/boot/dts/ti/k3-am62p-ti-ipc-firmware.dtsi | 2 ++
arch/arm64/boot/dts/ti/k3-am64-ti-ipc-firmware.dtsi | 4 ++++
arch/arm64/boot/dts/ti/k3-am65-ti-ipc-firmware.dtsi | 2 ++
arch/arm64/boot/dts/ti/k3-j7200-ti-ipc-firmware.dtsi | 4 ++++
arch/arm64/boot/dts/ti/k3-j721e-ti-ipc-firmware.dtsi | 6 ++++++
arch/arm64/boot/dts/ti/k3-j721s2-ti-ipc-firmware.dtsi | 6 ++++++
arch/arm64/boot/dts/ti/k3-j722s-ti-ipc-firmware.dtsi | 3 +++
.../boot/dts/ti/k3-j784s4-j742s2-ti-ipc-firmware-common.dtsi | 8 ++++++++
10 files changed, 38 insertions(+)
--
Regards
Vignesh
https://ti.com/opensource
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 236 bytes --]
^ permalink raw reply
* Re: [PATCH 1/2] crypto: atmel-ecc - add support for atecc608b
From: Thorsten Blum @ 2026-04-12 7:18 UTC (permalink / raw)
To: Herbert Xu
Cc: David S. Miller, Nicolas Ferre, Alexandre Belloni, Claudiu Beznea,
linux-crypto, linux-arm-kernel, linux-kernel
In-Reply-To: <adsyzmm3WSZ1ao4a@gondor.apana.org.au>
On Sun, Apr 12, 2026 at 01:51:10PM +0800, Herbert Xu wrote:
> On Mon, Mar 30, 2026 at 12:08:00PM +0200, Thorsten Blum wrote:
> > Tested on hardware with an ATECC608B at 0x60. The device binds
> > successfully, passes the driver's sanity check, and registers the
> > ecdh-nist-p256 KPP algorithm.
> >
> > The hardware ECDH path was also exercised using a minimal KPP test
> > module, covering private key generation, public key derivation, and
> > shared secret computation.
> >
> > Signed-off-by: Thorsten Blum <thorsten.blum@linux.dev>
> > ---
> > drivers/crypto/atmel-ecc.c | 3 +++
> > 1 file changed, 3 insertions(+)
>
> Is there supposed to be a 2/2 or should I apply this patch on its
> own?
Patch 2/2 is here:
https://lore.kernel.org/lkml/20260330100800.389042-4-thorsten.blum@linux.dev/
Thanks,
Thorsten
^ permalink raw reply
* Re: [PATCH 1/2] crypto: atmel-ecc - add support for atecc608b
From: Herbert Xu @ 2026-04-12 5:51 UTC (permalink / raw)
To: Thorsten Blum
Cc: David S. Miller, Nicolas Ferre, Alexandre Belloni, Claudiu Beznea,
linux-crypto, linux-arm-kernel, linux-kernel
In-Reply-To: <20260330100800.389042-3-thorsten.blum@linux.dev>
On Mon, Mar 30, 2026 at 12:08:00PM +0200, Thorsten Blum wrote:
> Tested on hardware with an ATECC608B at 0x60. The device binds
> successfully, passes the driver's sanity check, and registers the
> ecdh-nist-p256 KPP algorithm.
>
> The hardware ECDH path was also exercised using a minimal KPP test
> module, covering private key generation, public key derivation, and
> shared secret computation.
>
> Signed-off-by: Thorsten Blum <thorsten.blum@linux.dev>
> ---
> drivers/crypto/atmel-ecc.c | 3 +++
> 1 file changed, 3 insertions(+)
Is there supposed to be a 2/2 or should I apply this patch on its
own?
Thanks,
--
Email: Herbert Xu <herbert@gondor.apana.org.au>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
^ permalink raw reply
* [soc:soc/dt] BUILD SUCCESS 5b3a6cf06c8e013e0bffe929aac8129188b8933d
From: kernel test robot @ 2026-04-12 5:35 UTC (permalink / raw)
To: Krzysztof Kozlowski; +Cc: linux-arm-kernel, arm
tree/branch: https://git.kernel.org/pub/scm/linux/kernel/git/soc/soc.git soc/dt
branch HEAD: 5b3a6cf06c8e013e0bffe929aac8129188b8933d Merge tag 'mvebu-dt-7.1-1' of https://git.kernel.org/pub/scm/linux/kernel/git/gclement/mvebu into soc/dt
elapsed time: 733m
configs tested: 258
configs skipped: 4
The following configs have been built successfully.
More configs may be tested in the coming days.
tested configs:
alpha allnoconfig gcc-15.2.0
alpha allyesconfig gcc-15.2.0
alpha defconfig gcc-15.2.0
arc allmodconfig clang-16
arc allmodconfig gcc-15.2.0
arc allnoconfig gcc-15.2.0
arc allyesconfig clang-23
arc allyesconfig gcc-15.2.0
arc defconfig gcc-15.2.0
arc randconfig-001-20260412 gcc-11.5.0
arc randconfig-002-20260412 gcc-10.5.0
arc randconfig-002-20260412 gcc-11.5.0
arm allnoconfig clang-23
arm allnoconfig gcc-15.2.0
arm allyesconfig clang-16
arm allyesconfig gcc-15.2.0
arm aspeed_g5_defconfig gcc-15.2.0
arm defconfig clang-23
arm defconfig gcc-15.2.0
arm dove_defconfig gcc-15.2.0
arm randconfig-001-20260412 clang-23
arm randconfig-001-20260412 gcc-11.5.0
arm randconfig-002-20260412 gcc-11.5.0
arm randconfig-002-20260412 gcc-14.3.0
arm randconfig-003-20260412 gcc-10.5.0
arm randconfig-003-20260412 gcc-11.5.0
arm randconfig-004-20260412 gcc-11.5.0
arm64 allmodconfig clang-19
arm64 allmodconfig clang-23
arm64 allnoconfig gcc-15.2.0
arm64 defconfig gcc-15.2.0
arm64 randconfig-001-20260412 clang-19
arm64 randconfig-002-20260412 clang-19
arm64 randconfig-002-20260412 gcc-8.5.0
arm64 randconfig-003-20260412 clang-18
arm64 randconfig-003-20260412 clang-19
arm64 randconfig-004-20260412 clang-19
arm64 randconfig-004-20260412 gcc-8.5.0
csky allmodconfig gcc-15.2.0
csky allnoconfig gcc-15.2.0
csky defconfig gcc-15.2.0
csky randconfig-001-20260412 clang-19
csky randconfig-001-20260412 gcc-15.2.0
csky randconfig-002-20260412 clang-19
csky randconfig-002-20260412 gcc-14.3.0
hexagon allmodconfig clang-17
hexagon allmodconfig gcc-15.2.0
hexagon allnoconfig clang-23
hexagon allnoconfig gcc-15.2.0
hexagon defconfig clang-23
hexagon defconfig gcc-15.2.0
hexagon randconfig-001-20260412 clang-23
hexagon randconfig-002-20260412 clang-23
i386 allmodconfig clang-20
i386 allmodconfig gcc-14
i386 allnoconfig gcc-14
i386 allnoconfig gcc-15.2.0
i386 allyesconfig clang-20
i386 allyesconfig gcc-14
i386 buildonly-randconfig-001-20260412 gcc-14
i386 buildonly-randconfig-002-20260412 clang-20
i386 buildonly-randconfig-002-20260412 gcc-14
i386 buildonly-randconfig-003-20260412 gcc-14
i386 buildonly-randconfig-004-20260412 gcc-14
i386 buildonly-randconfig-005-20260412 gcc-14
i386 buildonly-randconfig-006-20260412 gcc-14
i386 defconfig clang-20
i386 defconfig gcc-15.2.0
i386 randconfig-001-20260412 clang-20
i386 randconfig-002-20260412 clang-20
i386 randconfig-003-20260412 clang-20
i386 randconfig-004-20260412 clang-20
i386 randconfig-005-20260412 clang-20
i386 randconfig-005-20260412 gcc-14
i386 randconfig-006-20260412 clang-20
i386 randconfig-007-20260412 clang-20
i386 randconfig-011-20260412 gcc-14
i386 randconfig-012-20260412 gcc-14
i386 randconfig-013-20260412 gcc-14
i386 randconfig-014-20260412 gcc-14
i386 randconfig-015-20260412 gcc-14
i386 randconfig-016-20260412 gcc-14
i386 randconfig-017-20260412 gcc-14
loongarch allmodconfig clang-19
loongarch allmodconfig clang-23
loongarch allnoconfig clang-23
loongarch allnoconfig gcc-15.2.0
loongarch defconfig clang-19
loongarch randconfig-001-20260412 clang-23
loongarch randconfig-002-20260412 clang-23
loongarch randconfig-002-20260412 gcc-15.2.0
m68k allmodconfig gcc-15.2.0
m68k allnoconfig gcc-15.2.0
m68k allyesconfig clang-16
m68k allyesconfig gcc-15.2.0
m68k defconfig clang-19
m68k defconfig gcc-15.2.0
microblaze allnoconfig gcc-15.2.0
microblaze allyesconfig gcc-15.2.0
microblaze defconfig clang-19
microblaze defconfig gcc-15.2.0
mips allmodconfig gcc-15.2.0
mips allnoconfig gcc-15.2.0
mips allyesconfig gcc-15.2.0
mips db1xxx_defconfig clang-23
mips loongson3_defconfig gcc-15.2.0
nios2 allmodconfig clang-23
nios2 allmodconfig gcc-11.5.0
nios2 allnoconfig clang-23
nios2 allnoconfig gcc-11.5.0
nios2 defconfig clang-19
nios2 defconfig gcc-11.5.0
nios2 randconfig-001-20260412 clang-23
nios2 randconfig-001-20260412 gcc-11.5.0
nios2 randconfig-002-20260412 clang-23
nios2 randconfig-002-20260412 gcc-8.5.0
openrisc allmodconfig clang-23
openrisc allmodconfig gcc-15.2.0
openrisc allnoconfig clang-23
openrisc allnoconfig gcc-15.2.0
openrisc defconfig gcc-15.2.0
parisc allmodconfig gcc-15.2.0
parisc allnoconfig clang-23
parisc allnoconfig gcc-15.2.0
parisc allyesconfig clang-19
parisc allyesconfig gcc-15.2.0
parisc defconfig gcc-15.2.0
parisc randconfig-001-20260412 gcc-10.5.0
parisc randconfig-001-20260412 gcc-15.2.0
parisc randconfig-002-20260412 gcc-15.2.0
parisc64 defconfig clang-19
parisc64 defconfig gcc-15.2.0
powerpc allmodconfig gcc-15.2.0
powerpc allnoconfig clang-23
powerpc allnoconfig gcc-15.2.0
powerpc randconfig-001-20260412 gcc-12.5.0
powerpc randconfig-001-20260412 gcc-15.2.0
powerpc randconfig-002-20260412 gcc-12.5.0
powerpc randconfig-002-20260412 gcc-15.2.0
powerpc64 randconfig-001-20260412 clang-23
powerpc64 randconfig-001-20260412 gcc-15.2.0
powerpc64 randconfig-002-20260412 clang-23
powerpc64 randconfig-002-20260412 gcc-15.2.0
riscv allmodconfig clang-23
riscv allnoconfig clang-23
riscv allnoconfig gcc-15.2.0
riscv allyesconfig clang-16
riscv defconfig clang-23
riscv defconfig gcc-15.2.0
riscv randconfig-001-20260412 clang-23
riscv randconfig-001-20260412 gcc-13.4.0
riscv randconfig-001-20260412 gcc-15.2.0
riscv randconfig-002-20260412 clang-23
s390 allmodconfig clang-18
s390 allmodconfig clang-19
s390 allnoconfig clang-23
s390 allyesconfig gcc-15.2.0
s390 defconfig clang-23
s390 defconfig gcc-15.2.0
s390 randconfig-001-20260412 clang-23
s390 randconfig-001-20260412 gcc-15.2.0
s390 randconfig-002-20260412 clang-23
s390 randconfig-002-20260412 gcc-15.2.0
s390 randconfig-002-20260412 gcc-8.5.0
sh allmodconfig gcc-15.2.0
sh allnoconfig clang-23
sh allnoconfig gcc-15.2.0
sh allyesconfig clang-19
sh allyesconfig gcc-15.2.0
sh defconfig gcc-14
sh defconfig gcc-15.2.0
sh randconfig-001-20260412 clang-23
sh randconfig-001-20260412 gcc-12.5.0
sh randconfig-001-20260412 gcc-15.2.0
sh randconfig-002-20260412 clang-23
sh randconfig-002-20260412 gcc-13.4.0
sh randconfig-002-20260412 gcc-15.2.0
sparc allnoconfig clang-23
sparc allnoconfig gcc-15.2.0
sparc defconfig gcc-15.2.0
sparc randconfig-001-20260412 clang-23
sparc randconfig-001-20260412 gcc-8.5.0
sparc randconfig-002-20260412 clang-23
sparc randconfig-002-20260412 gcc-11.5.0
sparc64 allmodconfig clang-23
sparc64 defconfig clang-20
sparc64 defconfig gcc-14
sparc64 randconfig-001-20260412 clang-23
sparc64 randconfig-001-20260412 gcc-15.2.0
sparc64 randconfig-002-20260412 clang-23
sparc64 randconfig-002-20260412 gcc-12.5.0
um allmodconfig clang-19
um allnoconfig clang-23
um allyesconfig gcc-14
um allyesconfig gcc-15.2.0
um defconfig clang-23
um defconfig gcc-14
um i386_defconfig gcc-14
um randconfig-001-20260412 clang-23
um randconfig-001-20260412 gcc-14
um randconfig-002-20260412 clang-23
um x86_64_defconfig clang-23
um x86_64_defconfig gcc-14
x86_64 allmodconfig clang-20
x86_64 allnoconfig clang-20
x86_64 allnoconfig clang-23
x86_64 allyesconfig clang-20
x86_64 buildonly-randconfig-001-20260412 clang-20
x86_64 buildonly-randconfig-001-20260412 gcc-12
x86_64 buildonly-randconfig-002-20260412 clang-20
x86_64 buildonly-randconfig-002-20260412 gcc-14
x86_64 buildonly-randconfig-003-20260412 clang-20
x86_64 buildonly-randconfig-003-20260412 gcc-12
x86_64 buildonly-randconfig-004-20260412 clang-20
x86_64 buildonly-randconfig-004-20260412 gcc-14
x86_64 buildonly-randconfig-005-20260412 clang-20
x86_64 buildonly-randconfig-005-20260412 gcc-14
x86_64 buildonly-randconfig-006-20260412 clang-20
x86_64 defconfig gcc-14
x86_64 kexec clang-20
x86_64 randconfig-001-20260412 clang-20
x86_64 randconfig-001-20260412 gcc-14
x86_64 randconfig-002-20260412 clang-20
x86_64 randconfig-003-20260412 clang-20
x86_64 randconfig-004-20260412 clang-20
x86_64 randconfig-005-20260412 clang-20
x86_64 randconfig-005-20260412 gcc-14
x86_64 randconfig-006-20260412 clang-20
x86_64 randconfig-011-20260412 gcc-14
x86_64 randconfig-012-20260412 clang-20
x86_64 randconfig-012-20260412 gcc-14
x86_64 randconfig-013-20260412 clang-20
x86_64 randconfig-013-20260412 gcc-14
x86_64 randconfig-014-20260412 gcc-14
x86_64 randconfig-015-20260412 gcc-14
x86_64 randconfig-016-20260412 gcc-14
x86_64 randconfig-071-20260412 clang-20
x86_64 randconfig-072-20260412 clang-20
x86_64 randconfig-073-20260412 clang-20
x86_64 randconfig-074-20260412 clang-20
x86_64 randconfig-074-20260412 gcc-14
x86_64 randconfig-075-20260412 clang-20
x86_64 randconfig-076-20260412 clang-20
x86_64 randconfig-076-20260412 gcc-14
x86_64 rhel-9.4 clang-20
x86_64 rhel-9.4-bpf gcc-14
x86_64 rhel-9.4-func clang-20
x86_64 rhel-9.4-kselftests clang-20
x86_64 rhel-9.4-kunit gcc-14
x86_64 rhel-9.4-ltp gcc-14
x86_64 rhel-9.4-rust clang-20
xtensa allnoconfig clang-23
xtensa allnoconfig gcc-15.2.0
xtensa allyesconfig clang-23
xtensa randconfig-001-20260412 clang-23
xtensa randconfig-001-20260412 gcc-12.5.0
xtensa randconfig-002-20260412 clang-23
xtensa randconfig-002-20260412 gcc-13.4.0
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply
* [soc:for-next] BUILD SUCCESS 9c4372beab603ef072bbf672a61e3dacabc0ea4c
From: kernel test robot @ 2026-04-12 5:26 UTC (permalink / raw)
To: Krzysztof Kozlowski; +Cc: linux-arm-kernel, arm
tree/branch: https://git.kernel.org/pub/scm/linux/kernel/git/soc/soc.git for-next
branch HEAD: 9c4372beab603ef072bbf672a61e3dacabc0ea4c soc: document merges
elapsed time: 727m
configs tested: 221
configs skipped: 4
The following configs have been built successfully.
More configs may be tested in the coming days.
tested configs:
alpha allnoconfig gcc-15.2.0
alpha allyesconfig gcc-15.2.0
alpha defconfig gcc-15.2.0
arc allmodconfig clang-16
arc allmodconfig gcc-15.2.0
arc allnoconfig gcc-15.2.0
arc allyesconfig clang-23
arc allyesconfig gcc-15.2.0
arc defconfig gcc-15.2.0
arc randconfig-001-20260412 gcc-11.5.0
arc randconfig-002-20260412 gcc-11.5.0
arm allnoconfig clang-23
arm allnoconfig gcc-15.2.0
arm allyesconfig clang-16
arm allyesconfig gcc-15.2.0
arm aspeed_g5_defconfig gcc-15.2.0
arm defconfig gcc-15.2.0
arm randconfig-001-20260412 gcc-11.5.0
arm randconfig-002-20260412 gcc-11.5.0
arm randconfig-003-20260412 gcc-11.5.0
arm randconfig-004-20260412 gcc-11.5.0
arm64 allmodconfig clang-19
arm64 allmodconfig clang-23
arm64 allnoconfig gcc-15.2.0
arm64 defconfig gcc-15.2.0
arm64 randconfig-001-20260412 clang-19
arm64 randconfig-002-20260412 clang-19
arm64 randconfig-003-20260412 clang-19
arm64 randconfig-004-20260412 clang-19
csky allmodconfig gcc-15.2.0
csky allnoconfig gcc-15.2.0
csky defconfig gcc-15.2.0
csky randconfig-001-20260412 clang-19
csky randconfig-002-20260412 clang-19
hexagon allmodconfig clang-17
hexagon allmodconfig gcc-15.2.0
hexagon allnoconfig clang-23
hexagon allnoconfig gcc-15.2.0
hexagon defconfig gcc-15.2.0
hexagon randconfig-001-20260412 clang-23
hexagon randconfig-002-20260412 clang-23
i386 allmodconfig clang-20
i386 allmodconfig gcc-14
i386 allnoconfig gcc-14
i386 allnoconfig gcc-15.2.0
i386 allyesconfig clang-20
i386 allyesconfig gcc-14
i386 buildonly-randconfig-001-20260412 gcc-14
i386 buildonly-randconfig-002-20260412 clang-20
i386 buildonly-randconfig-002-20260412 gcc-14
i386 buildonly-randconfig-003-20260412 gcc-14
i386 buildonly-randconfig-004-20260412 gcc-14
i386 buildonly-randconfig-005-20260412 gcc-14
i386 buildonly-randconfig-006-20260412 gcc-14
i386 defconfig gcc-15.2.0
i386 randconfig-001-20260412 clang-20
i386 randconfig-002-20260412 clang-20
i386 randconfig-003-20260412 clang-20
i386 randconfig-004-20260412 clang-20
i386 randconfig-005-20260412 clang-20
i386 randconfig-005-20260412 gcc-14
i386 randconfig-006-20260412 clang-20
i386 randconfig-007-20260412 clang-20
i386 randconfig-011-20260412 gcc-14
i386 randconfig-012-20260412 gcc-14
i386 randconfig-013-20260412 gcc-14
i386 randconfig-014-20260412 gcc-14
i386 randconfig-015-20260412 gcc-14
i386 randconfig-016-20260412 gcc-14
i386 randconfig-017-20260412 gcc-14
loongarch allmodconfig clang-19
loongarch allmodconfig clang-23
loongarch allnoconfig clang-23
loongarch allnoconfig gcc-15.2.0
loongarch defconfig clang-19
loongarch randconfig-001-20260412 clang-23
loongarch randconfig-002-20260412 clang-23
loongarch randconfig-002-20260412 gcc-15.2.0
m68k allmodconfig gcc-15.2.0
m68k allnoconfig gcc-15.2.0
m68k allyesconfig clang-16
m68k allyesconfig gcc-15.2.0
m68k defconfig clang-19
m68k defconfig gcc-15.2.0
microblaze allnoconfig gcc-15.2.0
microblaze allyesconfig gcc-15.2.0
microblaze defconfig clang-19
microblaze defconfig gcc-15.2.0
mips allmodconfig gcc-15.2.0
mips allnoconfig gcc-15.2.0
mips allyesconfig gcc-15.2.0
mips db1xxx_defconfig clang-23
mips loongson3_defconfig gcc-15.2.0
nios2 allmodconfig clang-23
nios2 allmodconfig gcc-11.5.0
nios2 allnoconfig clang-23
nios2 allnoconfig gcc-11.5.0
nios2 defconfig clang-19
nios2 defconfig gcc-11.5.0
nios2 randconfig-001-20260412 clang-23
nios2 randconfig-001-20260412 gcc-11.5.0
nios2 randconfig-002-20260412 clang-23
nios2 randconfig-002-20260412 gcc-8.5.0
openrisc allmodconfig clang-23
openrisc allmodconfig gcc-15.2.0
openrisc allnoconfig clang-23
openrisc allnoconfig gcc-15.2.0
openrisc defconfig gcc-15.2.0
parisc allmodconfig gcc-15.2.0
parisc allnoconfig clang-23
parisc allnoconfig gcc-15.2.0
parisc allyesconfig clang-19
parisc allyesconfig gcc-15.2.0
parisc defconfig gcc-15.2.0
parisc randconfig-001-20260412 gcc-15.2.0
parisc randconfig-002-20260412 gcc-15.2.0
parisc64 defconfig clang-19
parisc64 defconfig gcc-15.2.0
powerpc allmodconfig gcc-15.2.0
powerpc allnoconfig clang-23
powerpc allnoconfig gcc-15.2.0
powerpc randconfig-001-20260412 gcc-15.2.0
powerpc randconfig-002-20260412 gcc-15.2.0
powerpc64 randconfig-001-20260412 gcc-15.2.0
powerpc64 randconfig-002-20260412 gcc-15.2.0
riscv allmodconfig clang-23
riscv allnoconfig clang-23
riscv allnoconfig gcc-15.2.0
riscv allyesconfig clang-16
riscv defconfig gcc-15.2.0
riscv randconfig-001-20260412 clang-23
riscv randconfig-001-20260412 gcc-15.2.0
riscv randconfig-002-20260412 clang-23
s390 allmodconfig clang-18
s390 allmodconfig clang-19
s390 allnoconfig clang-23
s390 allyesconfig gcc-15.2.0
s390 defconfig gcc-15.2.0
s390 randconfig-001-20260412 clang-23
s390 randconfig-001-20260412 gcc-15.2.0
s390 randconfig-002-20260412 clang-23
s390 randconfig-002-20260412 gcc-15.2.0
sh allmodconfig gcc-15.2.0
sh allnoconfig clang-23
sh allnoconfig gcc-15.2.0
sh allyesconfig clang-19
sh allyesconfig gcc-15.2.0
sh defconfig gcc-14
sh randconfig-001-20260412 clang-23
sh randconfig-001-20260412 gcc-15.2.0
sh randconfig-002-20260412 clang-23
sh randconfig-002-20260412 gcc-15.2.0
sparc allnoconfig clang-23
sparc allnoconfig gcc-15.2.0
sparc defconfig gcc-15.2.0
sparc randconfig-001-20260412 clang-23
sparc randconfig-001-20260412 gcc-8.5.0
sparc randconfig-002-20260412 clang-23
sparc randconfig-002-20260412 gcc-11.5.0
sparc64 allmodconfig clang-23
sparc64 defconfig gcc-14
sparc64 randconfig-001-20260412 clang-23
sparc64 randconfig-001-20260412 gcc-15.2.0
sparc64 randconfig-002-20260412 clang-23
sparc64 randconfig-002-20260412 gcc-12.5.0
um allmodconfig clang-19
um allnoconfig clang-23
um allyesconfig gcc-14
um allyesconfig gcc-15.2.0
um defconfig gcc-14
um i386_defconfig gcc-14
um randconfig-001-20260412 clang-23
um randconfig-001-20260412 gcc-14
um randconfig-002-20260412 clang-23
um x86_64_defconfig gcc-14
x86_64 allmodconfig clang-20
x86_64 allnoconfig clang-20
x86_64 allnoconfig clang-23
x86_64 allyesconfig clang-20
x86_64 buildonly-randconfig-001-20260412 clang-20
x86_64 buildonly-randconfig-002-20260412 clang-20
x86_64 buildonly-randconfig-003-20260412 clang-20
x86_64 buildonly-randconfig-004-20260412 clang-20
x86_64 buildonly-randconfig-005-20260412 clang-20
x86_64 buildonly-randconfig-006-20260412 clang-20
x86_64 defconfig gcc-14
x86_64 kexec clang-20
x86_64 randconfig-001-20260412 clang-20
x86_64 randconfig-002-20260412 clang-20
x86_64 randconfig-003-20260412 clang-20
x86_64 randconfig-004-20260412 clang-20
x86_64 randconfig-005-20260412 clang-20
x86_64 randconfig-006-20260412 clang-20
x86_64 randconfig-011-20260412 gcc-14
x86_64 randconfig-012-20260412 clang-20
x86_64 randconfig-012-20260412 gcc-14
x86_64 randconfig-013-20260412 clang-20
x86_64 randconfig-013-20260412 gcc-14
x86_64 randconfig-014-20260412 gcc-14
x86_64 randconfig-015-20260412 gcc-14
x86_64 randconfig-016-20260412 gcc-14
x86_64 randconfig-071-20260412 clang-20
x86_64 randconfig-072-20260412 clang-20
x86_64 randconfig-073-20260412 clang-20
x86_64 randconfig-074-20260412 clang-20
x86_64 randconfig-075-20260412 clang-20
x86_64 randconfig-076-20260412 clang-20
x86_64 rhel-9.4 clang-20
x86_64 rhel-9.4-bpf gcc-14
x86_64 rhel-9.4-func clang-20
x86_64 rhel-9.4-kselftests clang-20
x86_64 rhel-9.4-kunit gcc-14
x86_64 rhel-9.4-ltp gcc-14
x86_64 rhel-9.4-rust clang-20
xtensa allnoconfig clang-23
xtensa allnoconfig gcc-15.2.0
xtensa allyesconfig clang-23
xtensa randconfig-001-20260412 clang-23
xtensa randconfig-001-20260412 gcc-12.5.0
xtensa randconfig-002-20260412 clang-23
xtensa randconfig-002-20260412 gcc-13.4.0
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply
* [soc:soc/drivers] BUILD SUCCESS 33a20cdaf41d08a66581cc01a60c1a3d596ba9cd
From: kernel test robot @ 2026-04-12 5:25 UTC (permalink / raw)
To: Krzysztof Kozlowski; +Cc: linux-arm-kernel, arm
tree/branch: https://git.kernel.org/pub/scm/linux/kernel/git/soc/soc.git soc/drivers
branch HEAD: 33a20cdaf41d08a66581cc01a60c1a3d596ba9cd Merge tag 'ffa-fix-7.1' of https://git.kernel.org/pub/scm/linux/kernel/git/sudeep.holla/linux into soc/drivers
elapsed time: 723m
configs tested: 255
configs skipped: 3
The following configs have been built successfully.
More configs may be tested in the coming days.
tested configs:
alpha allnoconfig gcc-15.2.0
alpha allyesconfig gcc-15.2.0
alpha defconfig gcc-15.2.0
arc allmodconfig clang-16
arc allmodconfig gcc-15.2.0
arc allnoconfig gcc-15.2.0
arc allyesconfig clang-23
arc allyesconfig gcc-15.2.0
arc defconfig gcc-15.2.0
arc randconfig-001-20260412 gcc-11.5.0
arc randconfig-002-20260412 gcc-10.5.0
arc randconfig-002-20260412 gcc-11.5.0
arm allnoconfig clang-23
arm allnoconfig gcc-15.2.0
arm allyesconfig clang-16
arm allyesconfig gcc-15.2.0
arm aspeed_g5_defconfig gcc-15.2.0
arm defconfig clang-23
arm defconfig gcc-15.2.0
arm pxa168_defconfig clang-19
arm randconfig-001-20260412 clang-23
arm randconfig-001-20260412 gcc-11.5.0
arm randconfig-002-20260412 gcc-11.5.0
arm randconfig-002-20260412 gcc-14.3.0
arm randconfig-003-20260412 gcc-10.5.0
arm randconfig-003-20260412 gcc-11.5.0
arm randconfig-004-20260412 gcc-11.5.0
arm64 allmodconfig clang-19
arm64 allmodconfig clang-23
arm64 allnoconfig gcc-15.2.0
arm64 defconfig gcc-15.2.0
arm64 randconfig-001-20260412 clang-19
arm64 randconfig-002-20260412 clang-19
arm64 randconfig-002-20260412 gcc-8.5.0
arm64 randconfig-003-20260412 clang-18
arm64 randconfig-003-20260412 clang-19
arm64 randconfig-004-20260412 clang-19
arm64 randconfig-004-20260412 gcc-8.5.0
csky allmodconfig gcc-15.2.0
csky allnoconfig gcc-15.2.0
csky defconfig gcc-15.2.0
csky randconfig-001-20260412 clang-19
csky randconfig-001-20260412 gcc-15.2.0
csky randconfig-002-20260412 clang-19
csky randconfig-002-20260412 gcc-14.3.0
hexagon allmodconfig clang-17
hexagon allmodconfig gcc-15.2.0
hexagon allnoconfig clang-23
hexagon allnoconfig gcc-15.2.0
hexagon defconfig clang-23
hexagon defconfig gcc-15.2.0
hexagon randconfig-001-20260412 clang-23
hexagon randconfig-002-20260412 clang-23
i386 allmodconfig clang-20
i386 allmodconfig gcc-14
i386 allnoconfig gcc-14
i386 allnoconfig gcc-15.2.0
i386 allyesconfig clang-20
i386 allyesconfig gcc-14
i386 buildonly-randconfig-001-20260412 gcc-14
i386 buildonly-randconfig-002-20260412 clang-20
i386 buildonly-randconfig-002-20260412 gcc-14
i386 buildonly-randconfig-003-20260412 gcc-14
i386 buildonly-randconfig-004-20260412 gcc-14
i386 buildonly-randconfig-005-20260412 gcc-14
i386 buildonly-randconfig-006-20260412 gcc-14
i386 defconfig clang-20
i386 defconfig gcc-15.2.0
i386 randconfig-001-20260412 clang-20
i386 randconfig-002-20260412 clang-20
i386 randconfig-003-20260412 clang-20
i386 randconfig-004-20260412 clang-20
i386 randconfig-005-20260412 clang-20
i386 randconfig-005-20260412 gcc-14
i386 randconfig-006-20260412 clang-20
i386 randconfig-007-20260412 clang-20
i386 randconfig-011-20260412 gcc-14
i386 randconfig-012-20260412 clang-20
i386 randconfig-012-20260412 gcc-14
i386 randconfig-013-20260412 clang-20
i386 randconfig-013-20260412 gcc-14
i386 randconfig-014-20260412 clang-20
i386 randconfig-014-20260412 gcc-14
i386 randconfig-015-20260412 clang-20
i386 randconfig-015-20260412 gcc-14
i386 randconfig-016-20260412 clang-20
i386 randconfig-016-20260412 gcc-14
i386 randconfig-017-20260412 clang-20
i386 randconfig-017-20260412 gcc-14
loongarch allmodconfig clang-19
loongarch allmodconfig clang-23
loongarch allnoconfig clang-23
loongarch allnoconfig gcc-15.2.0
loongarch defconfig clang-19
loongarch randconfig-001-20260412 clang-23
loongarch randconfig-002-20260412 clang-23
loongarch randconfig-002-20260412 gcc-15.2.0
m68k allmodconfig gcc-15.2.0
m68k allnoconfig gcc-15.2.0
m68k allyesconfig clang-16
m68k allyesconfig gcc-15.2.0
m68k defconfig clang-19
microblaze allnoconfig gcc-15.2.0
microblaze allyesconfig gcc-15.2.0
microblaze defconfig clang-19
mips allmodconfig gcc-15.2.0
mips allnoconfig gcc-15.2.0
mips allyesconfig gcc-15.2.0
mips db1xxx_defconfig clang-23
mips loongson3_defconfig gcc-15.2.0
nios2 allmodconfig clang-23
nios2 allmodconfig gcc-11.5.0
nios2 allnoconfig clang-23
nios2 allnoconfig gcc-11.5.0
nios2 defconfig clang-19
nios2 randconfig-001-20260412 clang-23
nios2 randconfig-001-20260412 gcc-11.5.0
nios2 randconfig-002-20260412 clang-23
nios2 randconfig-002-20260412 gcc-8.5.0
openrisc allmodconfig clang-23
openrisc allmodconfig gcc-15.2.0
openrisc allnoconfig clang-23
openrisc allnoconfig gcc-15.2.0
openrisc defconfig gcc-15.2.0
parisc allmodconfig gcc-15.2.0
parisc allnoconfig clang-23
parisc allnoconfig gcc-15.2.0
parisc allyesconfig clang-19
parisc allyesconfig gcc-15.2.0
parisc defconfig gcc-15.2.0
parisc randconfig-001-20260412 gcc-15.2.0
parisc randconfig-002-20260412 gcc-15.2.0
parisc64 defconfig clang-19
powerpc allmodconfig gcc-15.2.0
powerpc allnoconfig clang-23
powerpc allnoconfig gcc-15.2.0
powerpc randconfig-001-20260412 gcc-15.2.0
powerpc randconfig-002-20260412 gcc-15.2.0
powerpc64 randconfig-001-20260412 gcc-15.2.0
powerpc64 randconfig-002-20260412 gcc-15.2.0
riscv allmodconfig clang-23
riscv allnoconfig clang-23
riscv allnoconfig gcc-15.2.0
riscv allyesconfig clang-16
riscv defconfig clang-23
riscv defconfig gcc-15.2.0
riscv randconfig-001-20260412 clang-23
riscv randconfig-001-20260412 gcc-13.4.0
riscv randconfig-001-20260412 gcc-15.2.0
riscv randconfig-002-20260412 clang-23
s390 allmodconfig clang-18
s390 allmodconfig clang-19
s390 allnoconfig clang-23
s390 allyesconfig gcc-15.2.0
s390 defconfig clang-23
s390 defconfig gcc-15.2.0
s390 randconfig-001-20260412 clang-23
s390 randconfig-001-20260412 gcc-15.2.0
s390 randconfig-002-20260412 clang-23
s390 randconfig-002-20260412 gcc-15.2.0
s390 randconfig-002-20260412 gcc-8.5.0
sh allmodconfig gcc-15.2.0
sh allnoconfig clang-23
sh allnoconfig gcc-15.2.0
sh allyesconfig clang-19
sh allyesconfig gcc-15.2.0
sh defconfig gcc-14
sh defconfig gcc-15.2.0
sh randconfig-001-20260412 clang-23
sh randconfig-001-20260412 gcc-12.5.0
sh randconfig-001-20260412 gcc-15.2.0
sh randconfig-002-20260412 clang-23
sh randconfig-002-20260412 gcc-13.4.0
sh randconfig-002-20260412 gcc-15.2.0
sparc allnoconfig clang-23
sparc allnoconfig gcc-15.2.0
sparc defconfig gcc-15.2.0
sparc randconfig-001-20260412 clang-23
sparc randconfig-001-20260412 gcc-8.5.0
sparc randconfig-002-20260412 clang-23
sparc randconfig-002-20260412 gcc-11.5.0
sparc64 allmodconfig clang-23
sparc64 defconfig clang-20
sparc64 defconfig gcc-14
sparc64 randconfig-001-20260412 clang-23
sparc64 randconfig-001-20260412 gcc-15.2.0
sparc64 randconfig-002-20260412 clang-23
sparc64 randconfig-002-20260412 gcc-12.5.0
um allmodconfig clang-19
um allnoconfig clang-23
um allyesconfig gcc-14
um allyesconfig gcc-15.2.0
um defconfig clang-23
um defconfig gcc-14
um i386_defconfig gcc-14
um randconfig-001-20260412 clang-23
um randconfig-001-20260412 gcc-14
um randconfig-002-20260412 clang-23
um x86_64_defconfig clang-23
um x86_64_defconfig gcc-14
x86_64 allmodconfig clang-20
x86_64 allnoconfig clang-20
x86_64 allnoconfig clang-23
x86_64 allyesconfig clang-20
x86_64 buildonly-randconfig-001-20260412 clang-20
x86_64 buildonly-randconfig-001-20260412 gcc-12
x86_64 buildonly-randconfig-002-20260412 clang-20
x86_64 buildonly-randconfig-002-20260412 gcc-14
x86_64 buildonly-randconfig-003-20260412 clang-20
x86_64 buildonly-randconfig-003-20260412 gcc-12
x86_64 buildonly-randconfig-004-20260412 clang-20
x86_64 buildonly-randconfig-004-20260412 gcc-14
x86_64 buildonly-randconfig-005-20260412 clang-20
x86_64 buildonly-randconfig-005-20260412 gcc-14
x86_64 buildonly-randconfig-006-20260412 clang-20
x86_64 defconfig gcc-14
x86_64 kexec clang-20
x86_64 randconfig-001-20260412 clang-20
x86_64 randconfig-001-20260412 gcc-14
x86_64 randconfig-002-20260412 clang-20
x86_64 randconfig-003-20260412 clang-20
x86_64 randconfig-004-20260412 clang-20
x86_64 randconfig-005-20260412 clang-20
x86_64 randconfig-005-20260412 gcc-14
x86_64 randconfig-006-20260412 clang-20
x86_64 randconfig-011-20260412 gcc-14
x86_64 randconfig-012-20260412 clang-20
x86_64 randconfig-012-20260412 gcc-14
x86_64 randconfig-013-20260412 clang-20
x86_64 randconfig-013-20260412 gcc-14
x86_64 randconfig-014-20260412 gcc-14
x86_64 randconfig-015-20260412 gcc-14
x86_64 randconfig-016-20260412 gcc-14
x86_64 randconfig-071-20260412 clang-20
x86_64 randconfig-072-20260412 clang-20
x86_64 randconfig-073-20260412 clang-20
x86_64 randconfig-074-20260412 clang-20
x86_64 randconfig-074-20260412 gcc-14
x86_64 randconfig-075-20260412 clang-20
x86_64 randconfig-076-20260412 clang-20
x86_64 randconfig-076-20260412 gcc-14
x86_64 rhel-9.4 clang-20
x86_64 rhel-9.4-bpf gcc-14
x86_64 rhel-9.4-func clang-20
x86_64 rhel-9.4-kselftests clang-20
x86_64 rhel-9.4-kunit gcc-14
x86_64 rhel-9.4-ltp gcc-14
x86_64 rhel-9.4-rust clang-20
xtensa allnoconfig clang-23
xtensa allnoconfig gcc-15.2.0
xtensa allyesconfig clang-23
xtensa randconfig-001-20260412 clang-23
xtensa randconfig-001-20260412 gcc-12.5.0
xtensa randconfig-002-20260412 clang-23
xtensa randconfig-002-20260412 gcc-13.4.0
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply
* [soc:arm/fixes] BUILD SUCCESS 3e2444044d160e33ec2b139d1e4f9691bb9d9bac
From: kernel test robot @ 2026-04-12 5:25 UTC (permalink / raw)
To: Krzysztof Kozlowski; +Cc: linux-arm-kernel, arm
tree/branch: https://git.kernel.org/pub/scm/linux/kernel/git/soc/soc.git arm/fixes
branch HEAD: 3e2444044d160e33ec2b139d1e4f9691bb9d9bac Merge tag 'mvebu-fixes-7.0-1' of https://git.kernel.org/pub/scm/linux/kernel/git/gclement/mvebu into arm/fixes
elapsed time: 725m
configs tested: 207
configs skipped: 4
The following configs have been built successfully.
More configs may be tested in the coming days.
tested configs:
alpha allnoconfig gcc-15.2.0
alpha allyesconfig gcc-15.2.0
alpha defconfig gcc-15.2.0
arc allmodconfig clang-16
arc allmodconfig gcc-15.2.0
arc allnoconfig gcc-15.2.0
arc allyesconfig clang-23
arc allyesconfig gcc-15.2.0
arc defconfig gcc-15.2.0
arc randconfig-001-20260412 gcc-11.5.0
arc randconfig-002-20260412 gcc-11.5.0
arm allnoconfig clang-23
arm allnoconfig gcc-15.2.0
arm allyesconfig clang-16
arm allyesconfig gcc-15.2.0
arm aspeed_g5_defconfig gcc-15.2.0
arm defconfig gcc-15.2.0
arm randconfig-001-20260412 gcc-11.5.0
arm randconfig-002-20260412 gcc-11.5.0
arm randconfig-003-20260412 gcc-11.5.0
arm randconfig-004-20260412 gcc-11.5.0
arm64 allmodconfig clang-19
arm64 allmodconfig clang-23
arm64 allnoconfig gcc-15.2.0
arm64 defconfig gcc-15.2.0
arm64 randconfig-001-20260412 clang-19
arm64 randconfig-002-20260412 clang-19
arm64 randconfig-003-20260412 clang-19
arm64 randconfig-004-20260412 clang-19
csky allmodconfig gcc-15.2.0
csky allnoconfig gcc-15.2.0
csky defconfig gcc-15.2.0
csky randconfig-001-20260412 clang-19
csky randconfig-002-20260412 clang-19
hexagon allmodconfig clang-17
hexagon allmodconfig gcc-15.2.0
hexagon allnoconfig clang-23
hexagon allnoconfig gcc-15.2.0
hexagon defconfig gcc-15.2.0
hexagon randconfig-001-20260412 clang-23
hexagon randconfig-002-20260412 clang-23
i386 allmodconfig clang-20
i386 allmodconfig gcc-14
i386 allnoconfig gcc-14
i386 allnoconfig gcc-15.2.0
i386 allyesconfig clang-20
i386 allyesconfig gcc-14
i386 buildonly-randconfig-001-20260412 gcc-14
i386 buildonly-randconfig-002-20260412 gcc-14
i386 buildonly-randconfig-003-20260412 gcc-14
i386 buildonly-randconfig-004-20260412 gcc-14
i386 buildonly-randconfig-005-20260412 gcc-14
i386 buildonly-randconfig-006-20260412 gcc-14
i386 defconfig gcc-15.2.0
i386 randconfig-001-20260412 clang-20
i386 randconfig-002-20260412 clang-20
i386 randconfig-003-20260412 clang-20
i386 randconfig-004-20260412 clang-20
i386 randconfig-005-20260412 clang-20
i386 randconfig-006-20260412 clang-20
i386 randconfig-007-20260412 clang-20
i386 randconfig-011-20260412 gcc-14
i386 randconfig-012-20260412 gcc-14
i386 randconfig-013-20260412 gcc-14
i386 randconfig-014-20260412 gcc-14
i386 randconfig-015-20260412 gcc-14
i386 randconfig-016-20260412 gcc-14
i386 randconfig-017-20260412 gcc-14
loongarch allmodconfig clang-19
loongarch allmodconfig clang-23
loongarch allnoconfig clang-23
loongarch allnoconfig gcc-15.2.0
loongarch defconfig clang-19
loongarch randconfig-001-20260412 clang-23
loongarch randconfig-002-20260412 clang-23
loongarch randconfig-002-20260412 gcc-15.2.0
m68k allmodconfig gcc-15.2.0
m68k allnoconfig gcc-15.2.0
m68k allyesconfig clang-16
m68k allyesconfig gcc-15.2.0
m68k defconfig clang-19
microblaze allnoconfig gcc-15.2.0
microblaze allyesconfig gcc-15.2.0
microblaze defconfig clang-19
mips allmodconfig gcc-15.2.0
mips allnoconfig gcc-15.2.0
mips allyesconfig gcc-15.2.0
mips db1xxx_defconfig clang-23
mips loongson3_defconfig gcc-15.2.0
nios2 allmodconfig clang-23
nios2 allnoconfig clang-23
nios2 allnoconfig gcc-11.5.0
nios2 defconfig clang-19
nios2 randconfig-001-20260412 clang-23
nios2 randconfig-001-20260412 gcc-11.5.0
nios2 randconfig-002-20260412 clang-23
nios2 randconfig-002-20260412 gcc-8.5.0
openrisc allmodconfig clang-23
openrisc allnoconfig clang-23
openrisc allnoconfig gcc-15.2.0
openrisc defconfig gcc-15.2.0
parisc allmodconfig gcc-15.2.0
parisc allnoconfig clang-23
parisc allnoconfig gcc-15.2.0
parisc allyesconfig clang-19
parisc allyesconfig gcc-15.2.0
parisc defconfig gcc-15.2.0
parisc randconfig-001-20260412 gcc-15.2.0
parisc randconfig-002-20260412 gcc-15.2.0
parisc64 defconfig clang-19
powerpc allmodconfig gcc-15.2.0
powerpc allnoconfig clang-23
powerpc allnoconfig gcc-15.2.0
powerpc randconfig-001-20260412 gcc-15.2.0
powerpc randconfig-002-20260412 gcc-15.2.0
powerpc64 randconfig-001-20260412 gcc-15.2.0
powerpc64 randconfig-002-20260412 gcc-15.2.0
riscv allmodconfig clang-23
riscv allnoconfig clang-23
riscv allnoconfig gcc-15.2.0
riscv allyesconfig clang-16
riscv defconfig gcc-15.2.0
riscv randconfig-001-20260412 clang-23
riscv randconfig-001-20260412 gcc-15.2.0
riscv randconfig-002-20260412 clang-23
s390 allmodconfig clang-18
s390 allmodconfig clang-19
s390 allnoconfig clang-23
s390 allyesconfig gcc-15.2.0
s390 defconfig gcc-15.2.0
s390 randconfig-001-20260412 clang-23
s390 randconfig-001-20260412 gcc-15.2.0
s390 randconfig-002-20260412 clang-23
s390 randconfig-002-20260412 gcc-15.2.0
sh allmodconfig gcc-15.2.0
sh allnoconfig clang-23
sh allnoconfig gcc-15.2.0
sh allyesconfig clang-19
sh allyesconfig gcc-15.2.0
sh defconfig gcc-14
sh kfr2r09-romimage_defconfig gcc-15.2.0
sh randconfig-001-20260412 clang-23
sh randconfig-001-20260412 gcc-15.2.0
sh randconfig-002-20260412 clang-23
sh randconfig-002-20260412 gcc-15.2.0
sparc allnoconfig clang-23
sparc allnoconfig gcc-15.2.0
sparc defconfig gcc-15.2.0
sparc randconfig-001-20260412 clang-23
sparc randconfig-002-20260412 clang-23
sparc64 allmodconfig clang-23
sparc64 defconfig gcc-14
sparc64 randconfig-001-20260412 clang-23
sparc64 randconfig-002-20260412 clang-23
um allmodconfig clang-19
um allnoconfig clang-23
um allyesconfig gcc-14
um allyesconfig gcc-15.2.0
um defconfig gcc-14
um i386_defconfig gcc-14
um randconfig-001-20260412 clang-23
um randconfig-002-20260412 clang-23
um x86_64_defconfig gcc-14
x86_64 allmodconfig clang-20
x86_64 allnoconfig clang-20
x86_64 allnoconfig clang-23
x86_64 allyesconfig clang-20
x86_64 buildonly-randconfig-001-20260412 clang-20
x86_64 buildonly-randconfig-002-20260412 clang-20
x86_64 buildonly-randconfig-003-20260412 clang-20
x86_64 buildonly-randconfig-004-20260412 clang-20
x86_64 buildonly-randconfig-005-20260412 clang-20
x86_64 buildonly-randconfig-006-20260412 clang-20
x86_64 defconfig gcc-14
x86_64 kexec clang-20
x86_64 randconfig-001-20260412 clang-20
x86_64 randconfig-002-20260412 clang-20
x86_64 randconfig-003-20260412 clang-20
x86_64 randconfig-004-20260412 clang-20
x86_64 randconfig-005-20260412 clang-20
x86_64 randconfig-006-20260412 clang-20
x86_64 randconfig-011-20260412 gcc-14
x86_64 randconfig-012-20260412 gcc-14
x86_64 randconfig-013-20260412 gcc-14
x86_64 randconfig-014-20260412 gcc-14
x86_64 randconfig-015-20260412 gcc-14
x86_64 randconfig-016-20260412 gcc-14
x86_64 randconfig-071-20260412 clang-20
x86_64 randconfig-072-20260412 clang-20
x86_64 randconfig-073-20260412 clang-20
x86_64 randconfig-074-20260412 clang-20
x86_64 randconfig-074-20260412 gcc-14
x86_64 randconfig-075-20260412 clang-20
x86_64 randconfig-076-20260412 clang-20
x86_64 randconfig-076-20260412 gcc-14
x86_64 rhel-9.4 clang-20
x86_64 rhel-9.4-bpf gcc-14
x86_64 rhel-9.4-func clang-20
x86_64 rhel-9.4-kselftests clang-20
x86_64 rhel-9.4-kunit gcc-14
x86_64 rhel-9.4-ltp gcc-14
x86_64 rhel-9.4-rust clang-20
xtensa allnoconfig clang-23
xtensa allnoconfig gcc-15.2.0
xtensa allyesconfig clang-23
xtensa randconfig-001-20260412 clang-23
xtensa randconfig-002-20260412 clang-23
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply
* Questions On Request/Partnership
From: John Lucas @ 2026-04-12 3:03 UTC (permalink / raw)
To: linux-arm-kernel
Greetings linux-arm-kernel,
I hope this message finds you well. Kindly confirm if you have
received the loan offer letter.
The company has a large portfolio in Eastern part
of Europe, Middle East and Asia which he earmarked for
investment.
If this is of interest to you, get back to me and I will give you
further details and my personal information
I will give you good news immediately as soon as I hear from
you. I await your response
Warm regards,
John Lucas
Financial Consultant
^ permalink raw reply
* Re: [PATCH] pmdomain: imx: Make IMX8M/IMX9 BLK_CTRL tristate
From: Frank Li @ 2026-04-12 1:07 UTC (permalink / raw)
To: Zhipeng Wang
Cc: ulfh, s.hauer, kernel, festevam, linux-pm, imx, linux-arm-kernel,
linux-kernel, xuegang.liu, jindong.yue
In-Reply-To: <20260410092735.1065294-1-zhipeng.wang_1@nxp.com>
On Fri, Apr 10, 2026 at 06:27:35PM +0900, Zhipeng Wang wrote:
> Convert IMX8M_BLK_CTRL and IMX9_BLK_CTRL from bool to tristate
> to allow building as loadable modules.
>
> Add prompt strings to make these options visible and configurable
> in menuconfig, keeping them enabled by default on appropriate platforms.
>
> Also remove the IMX_GPCV2_PM_DOMAINS dependency from IMX9_BLK_CTRL
> since i.MX93 doesn't use GPCv2 power domains.
Does it cause build failure at GPCv2 platform? Or previous dependency
actually wrong.
Frank
>
> Signed-off-by: Zhipeng Wang <zhipeng.wang_1@nxp.com>
> ---
> drivers/pmdomain/imx/Kconfig | 11 +++++++----
> 1 file changed, 7 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/pmdomain/imx/Kconfig b/drivers/pmdomain/imx/Kconfig
> index 00203615c65e..9168d183b0c5 100644
> --- a/drivers/pmdomain/imx/Kconfig
> +++ b/drivers/pmdomain/imx/Kconfig
> @@ -10,15 +10,18 @@ config IMX_GPCV2_PM_DOMAINS
> default y if SOC_IMX7D
>
> config IMX8M_BLK_CTRL
> - bool
> - default SOC_IMX8M && IMX_GPCV2_PM_DOMAINS
> + tristate "i.MX8M BLK CTRL driver"
> + depends on SOC_IMX8M
> + depends on IMX_GPCV2_PM_DOMAINS
> depends on PM_GENERIC_DOMAINS
> depends on COMMON_CLK
> + default y
>
> config IMX9_BLK_CTRL
> - bool
> - default SOC_IMX9 && IMX_GPCV2_PM_DOMAINS
> + tristate "i.MX93 BLK CTRL driver"
> + depends on SOC_IMX9
> depends on PM_GENERIC_DOMAINS
> + default y
>
> config IMX_SCU_PD
> bool "IMX SCU Power Domain driver"
> --
> 2.34.1
>
^ permalink raw reply
* Re: [PATCH 2/2] thermal/drivers/imxl:Fix runtime PM handling on early returns
From: Frank Li @ 2026-04-12 1:00 UTC (permalink / raw)
To: Felix Gu
Cc: Rafael J. Wysocki, Daniel Lezcano, Zhang Rui, Lukasz Luba,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Oleksij Rempel, linux-pm, imx, linux-arm-kernel, linux-kernel
In-Reply-To: <20260412-imx-v1-2-cc3b45d63811@gmail.com>
On Sun, Apr 12, 2026 at 03:03:04AM +0800, Felix Gu wrote:
> Use PM_RUNTIME_ACQUIRE() in imx_get_temp() and imx_set_trip_temp() so
> runtime PM references are released correctly even when the functions
> return early on errors.
>
> Fixes: 4cf2ddf16e17 ("thermal/drivers/imx: Implement runtime PM support")
> Signed-off-by: Felix Gu <ustc.gu@gmail.com>
Reviewed-by: Frank Li <Frank.Li@nxp.com>
> ---
> drivers/thermal/imx_thermal.c | 14 ++++++--------
> 1 file changed, 6 insertions(+), 8 deletions(-)
>
> diff --git a/drivers/thermal/imx_thermal.c b/drivers/thermal/imx_thermal.c
> index 68f9ce41a670..9d9ae7871068 100644
> --- a/drivers/thermal/imx_thermal.c
> +++ b/drivers/thermal/imx_thermal.c
> @@ -260,8 +260,9 @@ static int imx_get_temp(struct thermal_zone_device *tz, int *temp)
> u32 val;
> int ret;
>
> - ret = pm_runtime_resume_and_get(data->dev);
> - if (ret < 0)
> + PM_RUNTIME_ACQUIRE(data->dev, pm);
> + ret = PM_RUNTIME_ACQUIRE_ERR(&pm);
> + if (ret)
> return ret;
>
> regmap_read(map, soc_data->temp_data, &val);
> @@ -302,8 +303,6 @@ static int imx_get_temp(struct thermal_zone_device *tz, int *temp)
> enable_irq(data->irq);
> }
>
> - pm_runtime_put(data->dev);
> -
> return 0;
> }
>
> @@ -337,8 +336,9 @@ static int imx_set_trip_temp(struct thermal_zone_device *tz,
> struct imx_thermal_data *data = thermal_zone_device_priv(tz);
> int ret;
>
> - ret = pm_runtime_resume_and_get(data->dev);
> - if (ret < 0)
> + PM_RUNTIME_ACQUIRE(data->dev, pm);
> + ret = PM_RUNTIME_ACQUIRE_ERR(&pm);
> + if (ret)
> return ret;
>
> /* do not allow passive to be set higher than critical */
> @@ -348,8 +348,6 @@ static int imx_set_trip_temp(struct thermal_zone_device *tz,
> imx_set_alarm_temp(data, temp);
> trips[IMX_TRIP_PASSIVE].temperature = temp;
>
> - pm_runtime_put(data->dev);
> -
> return 0;
> }
>
>
> --
> 2.43.0
>
^ permalink raw reply
* Re: [PATCH 1/2] thermal/drivers/imx: Fix thermal zone leak on probe error path
From: Frank Li @ 2026-04-12 0:58 UTC (permalink / raw)
To: Felix Gu
Cc: Rafael J. Wysocki, Daniel Lezcano, Zhang Rui, Lukasz Luba,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Oleksij Rempel, linux-pm, imx, linux-arm-kernel, linux-kernel
In-Reply-To: <20260412-imx-v1-1-cc3b45d63811@gmail.com>
On Sun, Apr 12, 2026 at 03:03:03AM +0800, Felix Gu wrote:
> If pm_runtime_resume_and_get() fails after the thermal zone has been
> registered, the probe error path cleans up runtime PM but skips
> thermal_zone_device_unregister(), leaking the thermal zone device.
>
> Move thermal_zone_device_unregister() into disable_runtime_pm so all
Use devm_thermal_of_zone_register() to fix this problem
Frank
^ permalink raw reply
* Re: [PATCH] clk: visconti: pll: initialize clk_init_data to zero
From: Stephen Boyd @ 2026-04-12 0:55 UTC (permalink / raw)
To: Brian Masney, Michael Turquette, Nobuhiro Iwamatsu, Rosen Penev
Cc: linux-clk, linux-arm-kernel, linux-kernel, Brian Masney
In-Reply-To: <20260330-clk-visconti-init-v1-1-ac3e825e54b5@redhat.com>
Quoting Brian Masney (2026-03-30 07:32:37)
> Sashiko reported the following:
>
> > The struct clk_init_data init is declared on the stack without being
> > fully zero-initialized. While fields like name, flags, parent_names,
> > num_parents, and ops are explicitly assigned, the parent_data and
> > parent_hws fields are left containing stack garbage.
>
> clk_core_populate_parent_map() currently prefers the parent names over
> the parent data and hws, so this isn't a problem at the moment. If that
> ordering ever changed in the future, then this could lead to some
> unexpected crashes. Let's just go ahead and make sure that the struct
> clk_init_data is initialized to zero as a good practice.
>
> Fixes: b4cbe606dc367 ("clk: visconti: Add support common clock driver and reset driver")
> Link: https://sashiko.dev/#/patchset/20260326042317.122536-1-rosenp%40gmail.com
> Signed-off-by: Brian Masney <bmasney@redhat.com>
> ---
Applied to clk-next
^ permalink raw reply
* [GIT PULL] Crypto library updates for 7.1
From: Eric Biggers @ 2026-04-12 0:32 UTC (permalink / raw)
To: Linus Torvalds
Cc: linux-crypto, linux-arm-kernel, linux-kernel, Ard Biesheuvel,
Jason A. Donenfeld, Herbert Xu, AlanSong-oc, Arnd Bergmann,
Dan Williams, David Howells, Johannes Berg, Randy Dunlap
The following changes since commit 1f318b96cc84d7c2ab792fcc0bfd42a7ca890681:
Linux 7.0-rc3 (2026-03-08 16:56:54 -0700)
are available in the Git repository at:
https://git.kernel.org/pub/scm/linux/kernel/git/ebiggers/linux.git tags/libcrypto-for-linus
for you to fetch changes up to 12b11e47f126d097839fd2f077636e2139b0151b:
lib/crypto: arm64: Assume a little-endian kernel (2026-04-01 13:02:15 -0700)
----------------------------------------------------------------
- Migrate more hash algorithms from the traditional crypto subsystem
to lib/crypto/.
Like the algorithms migrated earlier (e.g. SHA-*), this simplifies
the implementations, improves performance, enables further
simplifications in calling code, and solves various other issues:
- AES CBC-based MACs (AES-CMAC, AES-XCBC-MAC, and AES-CBC-MAC)
- Support these algorithms in lib/crypto/ using the AES
library and the existing arm64 assembly code
- Reimplement the traditional crypto API's "cmac(aes)",
"xcbc(aes)", and "cbcmac(aes)" on top of the library
- Convert mac80211 to use the AES-CMAC library. Note: several
other subsystems can use it too and will be converted later
- Drop the broken, nonstandard, and likely unused support for
"xcbc(aes)" with key lengths other than 128 bits
- Enable optimizations by default
- GHASH
- Migrate the standalone GHASH code into lib/crypto/
- Integrate the GHASH code more closely with the very similar
POLYVAL code, and improve the generic GHASH implementation
to resist cache-timing attacks and use much less memory
- Reimplement the AES-GCM library and the "gcm" crypto_aead
template on top of the GHASH library. Remove "ghash" from
the crypto_shash API, as it's no longer needed
- Enable optimizations by default
- SM3
- Migrate the kernel's existing SM3 code into lib/crypto/, and
reimplement the traditional crypto API's "sm3" on top of it
- I don't recommend using SM3, but this cleanup is worthwhile
to organize the code the same way as other algorithms
- Testing improvements
- Add a KUnit test suite for each of the new library APIs
- Migrate the existing ChaCha20Poly1305 test to KUnit
- Make the KUnit all_tests.config enable all crypto library tests
- Move the test kconfig options to the Runtime Testing menu
- Other updates to arch-optimized crypto code
- Optimize SHA-256 for Zhaoxin CPUs using the Padlock Hash Engine
- Remove some MD5 implementations that are no longer worth keeping
- Drop big endian and voluntary preemption support from the arm64
code, as those configurations are no longer supported on arm64
- Make jitterentropy and samples/tsm-mr use the crypto library APIs
Note: the overall diffstat is neutral, but when the test code is
excluded it is significantly negative:
Tests: 13 files changed, 1982 insertions(+), 888 deletions(-)
Non-test: 141 files changed, 2897 insertions(+), 3987 deletions(-)
All: 154 files changed, 4879 insertions(+), 4875 deletions(-)
----------------------------------------------------------------
AlanSong-oc (1):
lib/crypto: x86/sha256: PHE Extensions optimized SHA256 transform function
David Howells (1):
crypto: jitterentropy - Use SHA-3 library
Eric Biggers (64):
lib/crypto: aes: Add support for CBC-based MACs
crypto: aes - Add cmac, xcbc, and cbcmac algorithms using library
crypto: arm64/aes - Fix 32-bit aes_mac_update() arg treated as 64-bit
lib/crypto: arm64/aes: Move assembly code for AES modes into libaes
lib/crypto: arm64/aes: Migrate optimized CBC-based MACs into library
lib/crypto: tests: Add KUnit tests for CBC-based MACs
lib/crypto: aes: Add FIPS self-test for CMAC
wifi: mac80211: Use AES-CMAC library in ieee80211_aes_cmac()
wifi: mac80211: Use AES-CMAC library in aes_s2v()
lib/crypto: tests: Introduce CRYPTO_LIB_ENABLE_ALL_FOR_KUNIT
kunit: configs: Enable all crypto library tests in all_tests.config
lib/crypto: tests: Drop the default to CRYPTO_SELFTESTS
lib/crypto: Remove unused file blockhash.h
lib/crypto: arm64: Drop checks for CONFIG_KERNEL_MODE_NEON
sample/tsm-mr: Use SHA-2 library APIs
coco/guest: Remove unneeded selection of CRYPTO
lib/crypto: gf128hash: Rename polyval module to gf128hash
lib/crypto: gf128hash: Support GF128HASH_ARCH without all POLYVAL functions
lib/crypto: gf128hash: Add GHASH support
lib/crypto: tests: Add KUnit tests for GHASH
crypto: arm/ghash - Make the "ghash" crypto_shash NEON-only
crypto: arm/ghash - Move NEON GHASH assembly into its own file
lib/crypto: arm/ghash: Migrate optimized code into library
crypto: arm64/ghash - Move NEON GHASH assembly into its own file
lib/crypto: arm64/ghash: Migrate optimized code into library
crypto: arm64/aes-gcm - Rename struct ghash_key and make fixed-sized
lib/crypto: powerpc/ghash: Migrate optimized code into library
lib/crypto: riscv/ghash: Migrate optimized code into library
lib/crypto: s390/ghash: Migrate optimized code into library
lib/crypto: x86/ghash: Migrate optimized code into library
crypto: gcm - Use GHASH library instead of crypto_ahash
crypto: ghash - Remove ghash from crypto_shash API
lib/crypto: gf128mul: Remove unused 4k_lle functions
lib/crypto: gf128hash: Remove unused content from ghash.h
lib/crypto: aesgcm: Use GHASH library API
crypto: sm3 - Fold sm3_init() into its caller
crypto: sm3 - Remove sm3_zero_message_hash and SM3_T[1-2]
crypto: sm3 - Rename CRYPTO_SM3_GENERIC to CRYPTO_SM3
lib/crypto: sm3: Add SM3 library API
lib/crypto: tests: Add KUnit tests for SM3
crypto: sm3 - Replace with wrapper around library
lib/crypto: arm64/sm3: Migrate optimized code into library
lib/crypto: riscv/sm3: Migrate optimized code into library
lib/crypto: x86/sm3: Migrate optimized code into library
crypto: sm3 - Remove sm3_base.h
crypto: sm3 - Remove the original "sm3_block_generic()"
crypto: sm3 - Remove 'struct sm3_state'
lib: Move crypto library tests to Runtime Testing menu
lib/crypto: mips: Drop optimized MD5 code
lib/crypto: sparc: Drop optimized MD5 code
lib/crypto: tests: Migrate ChaCha20Poly1305 self-test to KUnit
lib/crypto: aescfb: Don't disable IRQs during AES block encryption
lib/crypto: aesgcm: Don't disable IRQs during AES block encryption
lib/crypto: Include <crypto/utils.h> instead of <crypto/algapi.h>
lib/crypto: arm64/aes: Remove obsolete chunking logic
lib/crypto: arm64/chacha: Remove obsolete chunking logic
lib/crypto: arm64/gf128hash: Remove obsolete chunking logic
lib/crypto: arm64/poly1305: Remove obsolete chunking logic
lib/crypto: arm64/sha1: Remove obsolete chunking logic
lib/crypto: arm64/sha256: Remove obsolete chunking logic
lib/crypto: arm64/sha512: Remove obsolete chunking logic
lib/crypto: arm64/sha3: Remove obsolete chunking logic
arm64: fpsimd: Remove obsolete cond_yield macro
lib/crypto: arm64: Assume a little-endian kernel
MAINTAINERS | 4 +-
arch/arm/crypto/Kconfig | 13 +-
arch/arm/crypto/ghash-ce-core.S | 171 +--
arch/arm/crypto/ghash-ce-glue.c | 166 +--
arch/arm64/configs/defconfig | 2 +-
arch/arm64/crypto/Kconfig | 29 +-
arch/arm64/crypto/Makefile | 10 +-
arch/arm64/crypto/aes-ce-ccm-glue.c | 17 +-
arch/arm64/crypto/aes-glue.c | 261 +---
arch/arm64/crypto/aes-neonbs-glue.c | 15 +-
arch/arm64/crypto/ghash-ce-core.S | 221 +--
arch/arm64/crypto/ghash-ce-glue.c | 168 +--
arch/arm64/crypto/sm3-ce-glue.c | 70 -
arch/arm64/crypto/sm3-neon-glue.c | 67 -
arch/arm64/include/asm/assembler.h | 22 -
arch/loongarch/configs/loongson32_defconfig | 2 +-
arch/loongarch/configs/loongson64_defconfig | 2 +-
arch/m68k/configs/amiga_defconfig | 2 +-
arch/m68k/configs/apollo_defconfig | 2 +-
arch/m68k/configs/atari_defconfig | 2 +-
arch/m68k/configs/bvme6000_defconfig | 2 +-
arch/m68k/configs/hp300_defconfig | 2 +-
arch/m68k/configs/mac_defconfig | 2 +-
arch/m68k/configs/multi_defconfig | 2 +-
arch/m68k/configs/mvme147_defconfig | 2 +-
arch/m68k/configs/mvme16x_defconfig | 2 +-
arch/m68k/configs/q40_defconfig | 2 +-
arch/m68k/configs/sun3_defconfig | 2 +-
arch/m68k/configs/sun3x_defconfig | 2 +-
arch/powerpc/crypto/Kconfig | 5 +-
arch/powerpc/crypto/Makefile | 8 +-
arch/powerpc/crypto/aesp8-ppc.h | 1 -
arch/powerpc/crypto/ghash.c | 160 ---
arch/powerpc/crypto/vmx.c | 10 +-
arch/riscv/crypto/Kconfig | 24 -
arch/riscv/crypto/Makefile | 6 -
arch/riscv/crypto/ghash-riscv64-glue.c | 146 --
arch/riscv/crypto/sm3-riscv64-glue.c | 97 --
arch/s390/configs/debug_defconfig | 3 +-
arch/s390/configs/defconfig | 3 +-
arch/s390/crypto/Kconfig | 10 -
arch/s390/crypto/Makefile | 1 -
arch/s390/crypto/ghash_s390.c | 144 --
arch/x86/crypto/Kconfig | 23 -
arch/x86/crypto/Makefile | 6 -
arch/x86/crypto/aesni-intel_glue.c | 1 +
arch/x86/crypto/ghash-clmulni-intel_glue.c | 163 ---
arch/x86/crypto/sm3_avx_glue.c | 100 --
crypto/Kconfig | 17 +-
crypto/Makefile | 3 +-
crypto/aes.c | 183 ++-
crypto/gcm.c | 413 +-----
crypto/ghash-generic.c | 162 ---
crypto/hctr2.c | 2 +-
crypto/jitterentropy-kcapi.c | 114 +-
crypto/jitterentropy.c | 25 +-
crypto/jitterentropy.h | 19 +-
crypto/sm3.c | 89 ++
crypto/sm3_generic.c | 72 -
crypto/tcrypt.c | 9 -
crypto/testmgr.c | 28 +-
crypto/testmgr.h | 109 --
drivers/crypto/Kconfig | 2 +-
drivers/crypto/starfive/Kconfig | 2 +-
drivers/crypto/starfive/jh7110-aes.c | 4 +-
drivers/crypto/starfive/jh7110-hash.c | 8 +-
drivers/virt/coco/guest/Kconfig | 1 -
include/crypto/aes-cbc-macs.h | 154 ++
include/crypto/aes.h | 66 +
include/crypto/chacha20poly1305.h | 2 -
include/crypto/gcm.h | 4 +-
include/crypto/{polyval.h => gf128hash.h} | 126 +-
include/crypto/gf128mul.h | 17 +-
include/crypto/ghash.h | 12 -
include/crypto/internal/blockhash.h | 52 -
include/crypto/sm3.h | 85 +-
include/crypto/sm3_base.h | 82 --
lib/Kconfig.debug | 2 +
lib/crypto/.kunitconfig | 24 +-
lib/crypto/Kconfig | 68 +-
lib/crypto/Makefile | 79 +-
lib/crypto/aes.c | 231 ++-
lib/crypto/aescfb.c | 27 +-
lib/crypto/aesgcm.c | 76 +-
lib/crypto/arm/gf128hash.h | 43 +
lib/crypto/arm/ghash-neon-core.S | 209 +++
{arch/arm64/crypto => lib/crypto/arm64}/aes-ce.S | 3 +-
lib/crypto/arm64/aes-cipher-core.S | 10 -
.../arm64/crypto => lib/crypto/arm64}/aes-modes.S | 25 +-
{arch/arm64/crypto => lib/crypto/arm64}/aes-neon.S | 2 +-
lib/crypto/arm64/aes.h | 75 +-
lib/crypto/arm64/chacha-neon-core.S | 16 -
lib/crypto/arm64/chacha.h | 16 +-
lib/crypto/arm64/gf128hash.h | 121 ++
lib/crypto/arm64/ghash-neon-core.S | 220 +++
lib/crypto/arm64/poly1305.h | 14 +-
lib/crypto/arm64/polyval.h | 80 --
lib/crypto/arm64/sha1-ce-core.S | 22 +-
lib/crypto/arm64/sha1.h | 15 +-
lib/crypto/arm64/sha256-ce.S | 55 +-
lib/crypto/arm64/sha256.h | 37 +-
lib/crypto/arm64/sha3-ce-core.S | 8 +-
lib/crypto/arm64/sha3.h | 15 +-
lib/crypto/arm64/sha512-ce-core.S | 28 +-
lib/crypto/arm64/sha512.h | 20 +-
.../crypto => lib/crypto/arm64}/sm3-ce-core.S | 19 +-
.../crypto => lib/crypto/arm64}/sm3-neon-core.S | 9 +-
lib/crypto/arm64/sm3.h | 41 +
lib/crypto/chacha.c | 2 +-
lib/crypto/chacha20poly1305.c | 14 -
lib/crypto/fips.h | 5 +
lib/crypto/{polyval.c => gf128hash.c} | 183 ++-
lib/crypto/gf128mul.c | 73 +-
lib/crypto/memneq.c | 4 +-
lib/crypto/mips/md5.h | 65 -
lib/crypto/powerpc/.gitignore | 1 +
lib/crypto/powerpc/gf128hash.h | 109 ++
.../crypto => lib/crypto/powerpc}/ghashp8-ppc.pl | 1 +
lib/crypto/riscv/gf128hash.h | 57 +
.../crypto/riscv}/ghash-riscv64-zvkg.S | 13 +-
.../crypto/riscv}/sm3-riscv64-zvksh-zvkb.S | 3 +-
lib/crypto/riscv/sm3.h | 39 +
lib/crypto/s390/gf128hash.h | 54 +
lib/crypto/sm3.c | 148 +-
lib/crypto/sparc/md5.h | 48 -
lib/crypto/sparc/md5_asm.S | 70 -
lib/crypto/tests/Kconfig | 86 +-
lib/crypto/tests/Makefile | 4 +
lib/crypto/tests/aes-cmac-testvecs.h | 181 +++
lib/crypto/tests/aes_cbc_macs_kunit.c | 228 +++
.../chacha20poly1305_kunit.c} | 1493 ++++++++++----------
lib/crypto/tests/ghash-testvecs.h | 186 +++
lib/crypto/tests/ghash_kunit.c | 194 +++
lib/crypto/tests/polyval_kunit.c | 2 +-
lib/crypto/tests/sm3-testvecs.h | 231 +++
lib/crypto/tests/sm3_kunit.c | 31 +
lib/crypto/x86/{polyval.h => gf128hash.h} | 72 +-
.../crypto/x86/ghash-pclmul.S | 98 +-
lib/crypto/x86/sha256.h | 25 +
.../x86/crypto => lib/crypto/x86}/sm3-avx-asm_64.S | 13 +-
lib/crypto/x86/sm3.h | 39 +
net/mac80211/Kconfig | 2 +-
net/mac80211/aes_cmac.c | 65 +-
net/mac80211/aes_cmac.h | 12 +-
net/mac80211/fils_aead.c | 48 +-
net/mac80211/key.c | 11 +-
net/mac80211/key.h | 3 +-
net/mac80211/wpa.c | 13 +-
samples/Kconfig | 2 +
samples/tsm-mr/tsm_mr_sample.c | 68 +-
scripts/crypto/gen-fips-testvecs.py | 10 +
scripts/crypto/gen-hash-testvecs.py | 97 +-
security/integrity/ima/Kconfig | 2 +-
tools/testing/kunit/configs/all_tests.config | 2 +
154 files changed, 4879 insertions(+), 4875 deletions(-)
delete mode 100644 arch/arm64/crypto/sm3-ce-glue.c
delete mode 100644 arch/arm64/crypto/sm3-neon-glue.c
delete mode 100644 arch/powerpc/crypto/ghash.c
delete mode 100644 arch/riscv/crypto/ghash-riscv64-glue.c
delete mode 100644 arch/riscv/crypto/sm3-riscv64-glue.c
delete mode 100644 arch/s390/crypto/ghash_s390.c
delete mode 100644 arch/x86/crypto/ghash-clmulni-intel_glue.c
delete mode 100644 arch/x86/crypto/sm3_avx_glue.c
delete mode 100644 crypto/ghash-generic.c
create mode 100644 crypto/sm3.c
delete mode 100644 crypto/sm3_generic.c
create mode 100644 include/crypto/aes-cbc-macs.h
rename include/crypto/{polyval.h => gf128hash.h} (60%)
delete mode 100644 include/crypto/internal/blockhash.h
delete mode 100644 include/crypto/sm3_base.h
create mode 100644 lib/crypto/arm/gf128hash.h
create mode 100644 lib/crypto/arm/ghash-neon-core.S
rename {arch/arm64/crypto => lib/crypto/arm64}/aes-ce.S (96%)
rename {arch/arm64/crypto => lib/crypto/arm64}/aes-modes.S (98%)
rename {arch/arm64/crypto => lib/crypto/arm64}/aes-neon.S (99%)
create mode 100644 lib/crypto/arm64/gf128hash.h
create mode 100644 lib/crypto/arm64/ghash-neon-core.S
delete mode 100644 lib/crypto/arm64/polyval.h
rename {arch/arm64/crypto => lib/crypto/arm64}/sm3-ce-core.S (89%)
rename {arch/arm64/crypto => lib/crypto/arm64}/sm3-neon-core.S (98%)
create mode 100644 lib/crypto/arm64/sm3.h
rename lib/crypto/{polyval.c => gf128hash.c} (61%)
delete mode 100644 lib/crypto/mips/md5.h
create mode 100644 lib/crypto/powerpc/gf128hash.h
rename {arch/powerpc/crypto => lib/crypto/powerpc}/ghashp8-ppc.pl (98%)
create mode 100644 lib/crypto/riscv/gf128hash.h
rename {arch/riscv/crypto => lib/crypto/riscv}/ghash-riscv64-zvkg.S (91%)
rename {arch/riscv/crypto => lib/crypto/riscv}/sm3-riscv64-zvksh-zvkb.S (97%)
create mode 100644 lib/crypto/riscv/sm3.h
create mode 100644 lib/crypto/s390/gf128hash.h
delete mode 100644 lib/crypto/sparc/md5.h
delete mode 100644 lib/crypto/sparc/md5_asm.S
create mode 100644 lib/crypto/tests/aes-cmac-testvecs.h
create mode 100644 lib/crypto/tests/aes_cbc_macs_kunit.c
rename lib/crypto/{chacha20poly1305-selftest.c => tests/chacha20poly1305_kunit.c} (91%)
create mode 100644 lib/crypto/tests/ghash-testvecs.h
create mode 100644 lib/crypto/tests/ghash_kunit.c
create mode 100644 lib/crypto/tests/sm3-testvecs.h
create mode 100644 lib/crypto/tests/sm3_kunit.c
rename lib/crypto/x86/{polyval.h => gf128hash.h} (51%)
rename arch/x86/crypto/ghash-clmulni-intel_asm.S => lib/crypto/x86/ghash-pclmul.S (54%)
rename {arch/x86/crypto => lib/crypto/x86}/sm3-avx-asm_64.S (98%)
create mode 100644 lib/crypto/x86/sm3.h
^ permalink raw reply
* [GIT PULL] CRC updates for 7.1
From: Eric Biggers @ 2026-04-12 0:23 UTC (permalink / raw)
To: Linus Torvalds
Cc: linux-crypto, linux-arm-kernel, linux-kernel, Ard Biesheuvel,
Demian Shulhan
The following changes since commit 1f318b96cc84d7c2ab792fcc0bfd42a7ca890681:
Linux 7.0-rc3 (2026-03-08 16:56:54 -0700)
are available in the Git repository at:
https://git.kernel.org/pub/scm/linux/kernel/git/ebiggers/linux.git tags/crc-for-linus
for you to fetch changes up to 8fdef85d601db670e9c178314eedffe7bbb07e52:
lib/crc: arm64: Simplify intrinsics implementation (2026-04-02 16:14:53 -0700)
----------------------------------------------------------------
- Several improvements related to crc_kunit, to align with the
standard KUnit conventions and make it easier for developers and CI
systems to run this test suite
- Add an arm64-optimized implementation of CRC64-NVME
- Remove unused code for big endian arm64
----------------------------------------------------------------
Ard Biesheuvel (3):
lib/crc: arm64: Drop unnecessary chunking logic from crc64
lib/crc: arm64: Use existing macros for kernel-mode FPU cflags
lib/crc: arm64: Simplify intrinsics implementation
Demian Shulhan (1):
lib/crc: arm64: add NEON accelerated CRC64-NVMe implementation
Eric Biggers (8):
lib/crc: tests: Make crc_kunit test only the enabled CRC variants
lib/crc: tests: Add CRC_ENABLE_ALL_FOR_KUNIT
lib/crc: tests: Add a .kunitconfig file
kunit: configs: Enable all CRC tests in all_tests.config
crypto: crc32c - Remove more outdated usage information
crypto: crc32c - Remove another outdated comment
lib/crc: arm64: Drop check for CONFIG_KERNEL_MODE_NEON
lib/crc: arm64: Assume a little-endian kernel
crypto/crc32c.c | 19 +-------
lib/crc/.kunitconfig | 3 ++
lib/crc/Kconfig | 20 ++++++---
lib/crc/Makefile | 7 ++-
lib/crc/arm64/crc-t10dif-core.S | 56 ++++++++++++------------
lib/crc/arm64/crc32-core.S | 9 +---
lib/crc/arm64/crc64-neon-inner.c | 65 ++++++++++++++++++++++++++++
lib/crc/arm64/crc64.h | 28 ++++++++++++
lib/crc/tests/crc_kunit.c | 28 +++++++++---
tools/testing/kunit/configs/all_tests.config | 2 +
10 files changed, 172 insertions(+), 65 deletions(-)
create mode 100644 lib/crc/.kunitconfig
create mode 100644 lib/crc/arm64/crc64-neon-inner.c
create mode 100644 lib/crc/arm64/crc64.h
^ permalink raw reply
* Re: [PATCH v5 0/5] Add support for AAEON SRG-IMX8P MCU
From: Guenter Roeck @ 2026-04-12 0:12 UTC (permalink / raw)
To: Thomas Perrot (Schneider Electric), Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Linus Walleij,
Bartosz Golaszewski, Shawn Guo, Sascha Hauer,
Pengutronix Kernel Team, Fabio Estevam,
Jérémie Dautheribes, Wim Van Sebroeck, Lee Jones
Cc: devicetree, linux-kernel, linux-gpio, imx, linux-arm-kernel,
linux-watchdog, Thomas Petazzoni, Miquel Raynal,
Krzysztof Kozlowski, Conor Dooley, Bartosz Golaszewski
In-Reply-To: <20260408-dev-b4-aaeon-mcu-driver-v5-0-ad98bd481668@bootlin.com>
On 4/8/26 10:21, Thomas Perrot (Schneider Electric) wrote:
> This patch series introduces support for the AAEON SRG-IMX8P embedded
> controller (MCU). The MCU is connected via I2C and provides GPIO and
> watchdog functionality for the SRG-IMX8P board.
>
> The series includes:
> - Device tree binding for the MFD driver
> - MFD driver that serves as the core driver for the MCU
> - GPIO driver implementing the GPIO functionality
> - Watchdog driver for system monitoring
> - MAINTAINERS entry for the new drivers
>
> The drivers follow the standard Linux kernel subsystem patterns, with
> the MFD driver registering the sub-devices (GPIO and watchdog) which
> are then handled by their respective subsystem drivers.
>
> Signed-off-by: Thomas Perrot (Schneider Electric) <thomas.perrot@bootlin.com>
Sashiko has some interesting feedback that might be worth looking into.
https://sashiko.dev/#/patchset/20260408-dev-b4-aaeon-mcu-driver-v5-0-ad98bd481668%40bootlin.com
Guenter
^ permalink raw reply
* Re: [GIT PULL] Qualcomm clock updates for v7.1
From: Stephen Boyd @ 2026-04-11 23:35 UTC (permalink / raw)
To: Bjorn Andersson, linux-clk
Cc: linux-arm-msm, linux-arm-kernel, Taniya Das, Val Packett,
Krzysztof Kozlowski, Konrad Dybcio, John Crispin, Abel Vesa,
Kathiravan Thirumoorthy, Pengyu Luo, Dmitry Baryshkov,
Jagadeesh Kona, Prasanna Tolety, Vladimir Zapolskiy, White Lewis
In-Reply-To: <20260410223840.3976134-1-andersson@kernel.org>
Quoting Bjorn Andersson (2026-04-10 15:38:40)
>
> The following changes since commit 6de23f81a5e08be8fbf5e8d7e9febc72a5b5f27f:
>
> Linux 7.0-rc1 (2026-02-22 13:18:59 -0800)
>
> are available in the Git repository at:
>
> https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux.git tags/qcom-clk-for-7.1
>
> for you to fetch changes up to a4f780cd5c7aa8c0d2d044ffd153f7a3a13ca81e:
>
> clk: qcom: gcc: Add multiple global clock controller driver for Nord SoC (2026-04-08 21:00:09 -0500)
>
> ----------------------------------------------------------------
Thanks. Pulled into clk-next
^ permalink raw reply
* Re: [GIT PULL] clk: samsung: drivers for v7.1
From: Stephen Boyd @ 2026-04-11 23:27 UTC (permalink / raw)
To: Krzysztof Kozlowski, Michael Turquette
Cc: Krzysztof Kozlowski, Chanwoo Choi, linux-clk, Sylwester Nawrocki,
Alim Akhtar, Peter Griffin, linux-arm-kernel, linux-samsung-soc,
linux-kernel
In-Reply-To: <20260409122504.71017-2-krzk@kernel.org>
Quoting Krzysztof Kozlowski (2026-04-09 05:25:03)
> The following changes since commit 6de23f81a5e08be8fbf5e8d7e9febc72a5b5f27f:
>
> Linux 7.0-rc1 (2026-02-22 13:18:59 -0800)
>
> are available in the Git repository at:
>
> https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux.git tags/samsung-clk-7.1
>
> for you to fetch changes up to e57c36bc1a3e459239ead492ebce731a88a264b1:
>
> clk: samsung: exynos850: Add APM-to-AP mailbox clock (2026-03-24 13:43:19 +0100)
>
> ----------------------------------------------------------------
Thanks. Pulled into clk-next
^ permalink raw reply
* Re: [GIT PULL] Allwinner Clock Changes for 7.1
From: Stephen Boyd @ 2026-04-11 23:24 UTC (permalink / raw)
To: Chen-Yu Tsai
Cc: Chen-Yu Tsai, Jernej Skrabec, Samuel Holland, linux-sunxi,
linux-arm-kernel, linux-clk
In-Reply-To: <adJu-NeYb70E-1yS@home.wens.tw>
Quoting Chen-Yu Tsai (2026-04-05 07:17:28)
> The following changes since commit 6de23f81a5e08be8fbf5e8d7e9febc72a5b5f27f:
>
> Linux 7.0-rc1 (2026-02-22 13:18:59 -0800)
>
> are available in the Git repository at:
>
> https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux.git tags/sunxi-clk-for-7.1
>
> for you to fetch changes up to fb20ccf70cf695f178d7c32e2d33b376560df0ff:
>
> clk: sunxi-ng: sun55i-a523-r: Add missing r-spi module clock (2026-02-25 00:26:12 +0800)
>
> ----------------------------------------------------------------
Thanks. Pulled into clk-next
^ permalink raw reply
* Re: [GIT PULL] Qualcomm clock fix for v7.0
From: Stephen Boyd @ 2026-04-11 23:22 UTC (permalink / raw)
To: Bjorn Andersson, linux-clk
Cc: linux-arm-msm, linux-arm-kernel, Dmitry Baryshkov
In-Reply-To: <20260326134515.67326-1-andersson@kernel.org>
Quoting Bjorn Andersson (2026-03-26 06:45:15)
>
> The following changes since commit 6de23f81a5e08be8fbf5e8d7e9febc72a5b5f27f:
>
> Linux 7.0-rc1 (2026-02-22 13:18:59 -0800)
>
> are available in the Git repository at:
>
> https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux.git tags/qcom-clk-fixes-for-7.0
>
> for you to fetch changes up to 141af1be817c42c7f1e1605348d4b1983d319bea:
>
> clk: qcom: dispcc-sm8450: use RCG2 ops for DPTX1 AUX clock source (2026-02-23 10:45:35 -0600)
>
> ----------------------------------------------------------------
Thanks. Pulled into clk-next
^ permalink raw reply
* Re: [PATCH net v4 0/2] stmmac crash/stall fixes when under memory pressure
From: Sam Edwards @ 2026-04-11 20:40 UTC (permalink / raw)
To: Russell King (Oracle)
Cc: Andrew Lunn, David S. Miller, Eric Dumazet, Jakub Kicinski,
Paolo Abeni, Maxime Coquelin, Alexandre Torgue, Maxime Chevallier,
Ovidiu Panait, Vladimir Oltean, Baruch Siach, Serge Semin,
Giuseppe Cavallaro, netdev, linux-stm32, linux-arm-kernel,
linux-kernel
In-Reply-To: <adjrtRSepmac2hpN@shell.armlinux.org.uk>
On Fri, Apr 10, 2026 at 5:23 AM Russell King (Oracle)
<linux@armlinux.org.uk> wrote:
>
> On Thu, Apr 02, 2026 at 10:39:32AM -0700, Sam Edwards wrote:
> > On Thu, Apr 2, 2026 at 10:16 AM Russell King (Oracle)
> > <linux@armlinux.org.uk> wrote:
> > > I've tested this on my Jetson Xavier platform. One of the issues I've
> > > had is that running iperf3 results in the receive side stalling because
> > > it runs out of descriptors. However, despite the receive ring
> > > eventually being re-filled and the hardware appropriately prodded, it
> > > steadfastly refuses to restart, despite the descriptors having been
> > > updated.
> >
> > Hi Russell,
> >
> > Just to make sure I understand correctly: before my patches, you've
> > been observing this problem on Xavier for a while (no interrupts, ring
> > goes dry); with my patches, the ring is refilled, but the dwmac5
> > doesn't resume DMA. (Ah, just saw your follow-up email.)
> >
> > > Any ideas?
> >
> > Off the top of my head, my hypothesis is that dwmac5 has an additional
> > tripwire when the receive DMA is exhausted, and the
> > stmmac_set_rx_tail_ptr()/stmmac_enable_dma_reception() at the end of
> > stmmac_rx_refill() aren't sufficient to wake it back up.
> >
> > I think this is new to dwmac5, because my RK3588 (dwmac4.20 iirc)
> > happily resumes after the same condition.
> >
> > You gave a lot of info; thanks! I'll try to scrape up some
> > documentation on dwmac5 to see if there's something more
> > stmmac_rx_refill() ought to be doing. I think I have a Xavier NX
> > around here somewhere, I'll see if I can repro the problem.
>
> I've added dma_rmb() into dwmac4_wrback_get_tx_status() and
> dwmac4_wrback_get_rx_status(), and with that I've had an iperf3
> instance finally complete... but only once:
Hi Russell,
To me it feels relevant that the T194 doesn't use first-party
ARM/Cortex cores but rather Nvidia's in-house "Carmel" architecture.
Do you suppose the cache there is quirky in such a way that either:
1) We're seeing poor cache hygiene in stmmac where other caches are
more forgiving (more likely)
2) Carmel's cache has a subtle hardware bug triggered by stmmac's
specific access pattern (less likely)?
I'm still trying to get my Xavier NX to boot on net-next. It's running
into eMMC corruption/stalls very early in the boot process (at
slightly different times; feels like a problem in autocalibration)
that I'm not seeing on older kernels. Once I'm done bisecting that
regression I'll take a deeper look at this stmmac mystery. :)
Cheers,
Sam
>
> root@tegra-ubuntu:~# iperf3 -c 192.168.248.1 -R
> Connecting to host 192.168.248.1, port 5201
> Reverse mode, remote host 192.168.248.1 is sending
> [ 5] local 192.168.248.174 port 42232 connected to 192.168.248.1 port 5201
> [ ID] Interval Transfer Bitrate
> [ 5] 0.00-1.00 sec 50.8 MBytes 426 Mbits/sec
> [ 5] 1.00-2.00 sec 54.9 MBytes 460 Mbits/sec
> [ 5] 2.00-3.00 sec 54.0 MBytes 453 Mbits/sec
> [ 5] 3.00-4.00 sec 53.8 MBytes 452 Mbits/sec
> [ 5] 4.00-5.00 sec 52.4 MBytes 438 Mbits/sec
> [ 5] 5.00-6.00 sec 54.3 MBytes 455 Mbits/sec
> [ 5] 6.00-7.00 sec 53.7 MBytes 452 Mbits/sec
> [ 5] 7.00-8.00 sec 52.8 MBytes 443 Mbits/sec
> [ 5] 8.00-9.00 sec 53.7 MBytes 451 Mbits/sec
> [ 5] 9.00-10.00 sec 54.3 MBytes 455 Mbits/sec
> - - - - - - - - - - - - - - - - - - - - - - - - -
> [ ID] Interval Transfer Bitrate Retr
> [ 5] 0.00-10.01 sec 537 MBytes 450 Mbits/sec 13 sender
> [ 5] 0.00-10.00 sec 535 MBytes 448 Mbits/sec receiver
>
> iperf Done.
>
> So, it seems better, but not completely solved.
>
> diff --git a/drivers/net/ethernet/stmicro/stmmac/dwmac4_descs.c b/drivers/net/ethernet/stmicro/stmmac/dwmac4_descs.c
> index 2994df41ec2c..119f31c94b61 100644
> --- a/drivers/net/ethernet/stmicro/stmmac/dwmac4_descs.c
> +++ b/drivers/net/ethernet/stmicro/stmmac/dwmac4_descs.c
> @@ -17,10 +17,12 @@ static int dwmac4_wrback_get_tx_status(struct stmmac_extra_stats *x,
> struct dma_desc *p,
> void __iomem *ioaddr)
> {
> - u32 tdes3 = le32_to_cpu(p->des3);
> + u32 tdes3;
> int ret = tx_done;
>
> /* Get tx owner first */
> + dma_rmb();
> + tdes3 = le32_to_cpu(p->des3);
> if (unlikely(tdes3 & TDES3_OWN))
> return tx_dma_own;
>
> @@ -70,12 +72,12 @@ static int dwmac4_wrback_get_tx_status(struct stmmac_extra_stats *x,
> static int dwmac4_wrback_get_rx_status(struct stmmac_extra_stats *x,
> struct dma_desc *p)
> {
> - u32 rdes1 = le32_to_cpu(p->des1);
> - u32 rdes2 = le32_to_cpu(p->des2);
> - u32 rdes3 = le32_to_cpu(p->des3);
> + u32 rdes1, rdes2, rdes3;
> int message_type;
> int ret = good_frame;
>
> + dma_rmb();
> + rdes3 = le32_to_cpu(p->des3);
> if (unlikely(rdes3 & RDES3_OWN))
> return dma_own;
>
> @@ -107,6 +109,7 @@ static int dwmac4_wrback_get_rx_status(struct stmmac_extra_stats *x,
>
> message_type = FIELD_GET(RDES1_PTP_MSG_TYPE_MASK, rdes1);
>
> + rdes1 = le32_to_cpu(p->des1);
> if (rdes1 & RDES1_IP_HDR_ERROR) {
> x->ip_hdr_err++;
> ret |= csum_none;
> @@ -152,6 +155,7 @@ static int dwmac4_wrback_get_rx_status(struct stmmac_extra_stats *x,
> if (rdes1 & RDES1_TIMESTAMP_DROPPED)
> x->timestamp_dropped++;
>
> + rdes2 = le32_to_cpu(p->des2);
> if (unlikely(rdes2 & RDES2_SA_FILTER_FAIL)) {
> x->sa_rx_filter_fail++;
> ret = discard_frame;
>
> --
> RMK's Patch system: https://www.armlinux.org.uk/developer/patches/
> FTTP is here! 80Mbps down 10Mbps up. Decent connectivity at last!
^ permalink raw reply
* Re: [PATCH v3 2/7] arm64/runtime-const: Use aarch64_insn_patch_text_nosync() for patching
From: K Prateek Nayak @ 2026-04-11 19:54 UTC (permalink / raw)
To: Catalin Marinas
Cc: Thomas Gleixner, Ingo Molnar, Peter Zijlstra,
Sebastian Andrzej Siewior, Will Deacon, David Laight, Darren Hart,
Davidlohr Bueso, André Almeida, linux-arch, linux-kernel,
linux-s390, linux-riscv, linux-arm-kernel, Jisheng Zhang
In-Reply-To: <adjE6WzFM7NogzlU@arm.com>
Hello Catalin,
Thank you for taking a look at the series and pointing to the Shashiko
review.
On 4/10/2026 3:07 PM, Catalin Marinas wrote:
>> -static inline void __runtime_fixup_caches(void *where, unsigned int insns)
>> -{
>> - unsigned long va = (unsigned long)where;
>> - caches_clean_inval_pou(va, va + 4*insns);
>> + aarch64_insn_patch_text_nosync(p, insn);
>> }
>
> Sashiko has some good points here:
Ack! I did check the Sashiko review a few days after posting. I think
I'll probably start replying to Shahsiko's inline review on future
threads on LKML to keep the record like some folks are doing.
>
> https://sashiko.dev/#/patchset/20260402112250.2138-1-kprateek.nayak@amd.com
>
> In short, aarch64_insn_patch_text_nosync() does not expect a linear map
> address but rather a kernel text one (or vmalloc/modules). The other
> valid point is on aliasing I-caches.
>
> I think dropping the lm_alias() and just use 'where' directly would do
> but I haven't tried.
Ack! I completely missed that subtlety of passing "where" to
caches_clean_inval_pou(). I'm still surprised that it didn't
blow up in my testing.
Anyhow, following diff, on top of the full series builds and
tests fine and has been blessed by review-prompts:
diff --git a/arch/arm64/include/asm/runtime-const.h b/arch/arm64/include/asm/runtime-const.h
index 21f817eb5951..d3f0dfa7ced0 100644
--- a/arch/arm64/include/asm/runtime-const.h
+++ b/arch/arm64/include/asm/runtime-const.h
@@ -57,21 +57,21 @@
} while (0)
/* 16-bit immediate for wide move (movz and movk) in bits 5..20 */
-static inline void __runtime_fixup_16(__le32 *p, unsigned int val)
+static inline void __runtime_fixup_16(void *where, unsigned int val)
{
+ __le32 *p = lm_alias(where);
u32 insn = le32_to_cpu(*p);
insn &= 0xffe0001f;
insn |= (val & 0xffff) << 5;
- aarch64_insn_patch_text_nosync(p, insn);
+ aarch64_insn_patch_text_nosync(where, insn);
}
static inline void __runtime_fixup_ptr(void *where, unsigned long val)
{
- __le32 *p = lm_alias(where);
- __runtime_fixup_16(p, val);
- __runtime_fixup_16(p+1, val >> 16);
- __runtime_fixup_16(p+2, val >> 32);
- __runtime_fixup_16(p+3, val >> 48);
+ __runtime_fixup_16(where, val);
+ __runtime_fixup_16(where + 4, val >> 16);
+ __runtime_fixup_16(where + 8, val >> 32);
+ __runtime_fixup_16(where + 12, val >> 48);
}
/* Immediate value is 6 bits starting at bit #16 */
@@ -81,15 +81,14 @@ static inline void __runtime_fixup_shift(void *where, unsigned long val)
u32 insn = le32_to_cpu(*p);
insn &= 0xffc0ffff;
insn |= (val & 63) << 16;
- aarch64_insn_patch_text_nosync(p, insn);
+ aarch64_insn_patch_text_nosync(where, insn);
}
/* Immediate value is 6 bits starting at bit #16 */
static inline void __runtime_fixup_mask(void *where, unsigned long val)
{
- __le32 *p = lm_alias(where);
- __runtime_fixup_16(p, val);
- __runtime_fixup_16(p+1, val >> 16);
+ __runtime_fixup_16(where, val);
+ __runtime_fixup_16(where + 4, val >> 16);
}
static inline void runtime_const_fixup(void (*fn)(void *, unsigned long),
---
I'll do some more sanity checks and address the rest of the comments
before posting out v4 soon after the merge window. Thank you again
for your feedback. Much appreciated.
--
Thanks and Regards,
Prateek
^ permalink raw reply related
* [PATCH 2/2] thermal/drivers/imxl:Fix runtime PM handling on early returns
From: Felix Gu @ 2026-04-11 19:03 UTC (permalink / raw)
To: Rafael J. Wysocki, Daniel Lezcano, Zhang Rui, Lukasz Luba,
Frank Li, Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Oleksij Rempel
Cc: linux-pm, imx, linux-arm-kernel, linux-kernel, Felix Gu
In-Reply-To: <20260412-imx-v1-0-cc3b45d63811@gmail.com>
Use PM_RUNTIME_ACQUIRE() in imx_get_temp() and imx_set_trip_temp() so
runtime PM references are released correctly even when the functions
return early on errors.
Fixes: 4cf2ddf16e17 ("thermal/drivers/imx: Implement runtime PM support")
Signed-off-by: Felix Gu <ustc.gu@gmail.com>
---
drivers/thermal/imx_thermal.c | 14 ++++++--------
1 file changed, 6 insertions(+), 8 deletions(-)
diff --git a/drivers/thermal/imx_thermal.c b/drivers/thermal/imx_thermal.c
index 68f9ce41a670..9d9ae7871068 100644
--- a/drivers/thermal/imx_thermal.c
+++ b/drivers/thermal/imx_thermal.c
@@ -260,8 +260,9 @@ static int imx_get_temp(struct thermal_zone_device *tz, int *temp)
u32 val;
int ret;
- ret = pm_runtime_resume_and_get(data->dev);
- if (ret < 0)
+ PM_RUNTIME_ACQUIRE(data->dev, pm);
+ ret = PM_RUNTIME_ACQUIRE_ERR(&pm);
+ if (ret)
return ret;
regmap_read(map, soc_data->temp_data, &val);
@@ -302,8 +303,6 @@ static int imx_get_temp(struct thermal_zone_device *tz, int *temp)
enable_irq(data->irq);
}
- pm_runtime_put(data->dev);
-
return 0;
}
@@ -337,8 +336,9 @@ static int imx_set_trip_temp(struct thermal_zone_device *tz,
struct imx_thermal_data *data = thermal_zone_device_priv(tz);
int ret;
- ret = pm_runtime_resume_and_get(data->dev);
- if (ret < 0)
+ PM_RUNTIME_ACQUIRE(data->dev, pm);
+ ret = PM_RUNTIME_ACQUIRE_ERR(&pm);
+ if (ret)
return ret;
/* do not allow passive to be set higher than critical */
@@ -348,8 +348,6 @@ static int imx_set_trip_temp(struct thermal_zone_device *tz,
imx_set_alarm_temp(data, temp);
trips[IMX_TRIP_PASSIVE].temperature = temp;
- pm_runtime_put(data->dev);
-
return 0;
}
--
2.43.0
^ permalink raw reply related
* [PATCH 1/2] thermal/drivers/imx: Fix thermal zone leak on probe error path
From: Felix Gu @ 2026-04-11 19:03 UTC (permalink / raw)
To: Rafael J. Wysocki, Daniel Lezcano, Zhang Rui, Lukasz Luba,
Frank Li, Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Oleksij Rempel
Cc: linux-pm, imx, linux-arm-kernel, linux-kernel, Felix Gu
In-Reply-To: <20260412-imx-v1-0-cc3b45d63811@gmail.com>
If pm_runtime_resume_and_get() fails after the thermal zone has been
registered, the probe error path cleans up runtime PM but skips
thermal_zone_device_unregister(), leaking the thermal zone device.
Move thermal_zone_device_unregister() into disable_runtime_pm so all
failures after thermal zone registration unwind the probe path
correctly.
Fixes: 4cf2ddf16e17 ("thermal/drivers/imx: Implement runtime PM support")
Signed-off-by: Felix Gu <ustc.gu@gmail.com>
---
drivers/thermal/imx_thermal.c | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/drivers/thermal/imx_thermal.c b/drivers/thermal/imx_thermal.c
index 38c993d1bcb3..68f9ce41a670 100644
--- a/drivers/thermal/imx_thermal.c
+++ b/drivers/thermal/imx_thermal.c
@@ -727,25 +727,24 @@ static int imx_thermal_probe(struct platform_device *pdev)
data->irq_enabled = true;
ret = thermal_zone_device_enable(data->tz);
if (ret)
- goto thermal_zone_unregister;
+ goto disable_runtime_pm;
ret = devm_request_threaded_irq(dev, data->irq,
imx_thermal_alarm_irq, imx_thermal_alarm_irq_thread,
0, "imx_thermal", data);
if (ret < 0) {
dev_err(dev, "failed to request alarm irq: %d\n", ret);
- goto thermal_zone_unregister;
+ goto disable_runtime_pm;
}
pm_runtime_put(data->dev);
return 0;
-thermal_zone_unregister:
- thermal_zone_device_unregister(data->tz);
disable_runtime_pm:
pm_runtime_put_noidle(data->dev);
pm_runtime_disable(data->dev);
+ thermal_zone_device_unregister(data->tz);
clk_disable:
clk_disable_unprepare(data->thermal_clk);
legacy_cleanup:
--
2.43.0
^ permalink raw reply related
* [PATCH 0/2] thermal/drivers/imx: two fixes
From: Felix Gu @ 2026-04-11 19:03 UTC (permalink / raw)
To: Rafael J. Wysocki, Daniel Lezcano, Zhang Rui, Lukasz Luba,
Frank Li, Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Oleksij Rempel
Cc: linux-pm, imx, linux-arm-kernel, linux-kernel, Felix Gu
Signed-off-by: Felix Gu <ustc.gu@gmail.com>
---
Felix Gu (2):
thermal/drivers/imx: Fix thermal zone leak on probe error path
thermal/drivers/imxl:Fix runtime PM handling on early returns
drivers/thermal/imx_thermal.c | 21 +++++++++------------
1 file changed, 9 insertions(+), 12 deletions(-)
---
base-commit: 66672af7a095d89f082c5327f3b15bc2f93d558e
change-id: 20260411-imx-b022791ea1b9
Best regards,
--
Felix Gu <ustc.gu@gmail.com>
^ permalink raw reply
page: next (older) | prev (newer) | latest
- recent:[subjects (threaded)|topics (new)|topics (active)]
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox