From: sashiko-bot@kernel.org
To: "Linus Walleij" <linusw@kernel.org>
Cc: conor+dt@kernel.org, devicetree@vger.kernel.org, robh@kernel.org
Subject: Re: [PATCH 2/3] ARM: ixp4xx: Relax endianness
Date: Wed, 08 Jul 2026 22:37:21 +0000 [thread overview]
Message-ID: <20260708223722.439381F000E9@smtp.kernel.org> (raw)
In-Reply-To: <20260709-ixp4xx-little-endian-v1-2-e9622d0ba9e4@kernel.org>
Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
- [High] Removing `depends on CPU_BIG_ENDIAN` breaks the IXP4XX flash driver on little-endian builds due to missing MTD CFI byte swapping logic.
--
--- Patch [2]: [PATCH 2/3] ARM: ixp4xx: Relax endianness ---
commit b77eacff0c25c139068c8fb9c88772bc9af87ae3
Author: Linus Walleij <linusw@kernel.org>
ARM: ixp4xx: Relax endianness
The IXP4xx can now boot in little endian mode so relax the endianness
requirements. This will make IXP4xx compile to little endian by default
like everyone else.
> diff --git a/arch/arm/mach-ixp4xx/Kconfig b/arch/arm/mach-ixp4xx/Kconfig
> index cb46802f5ce52..2bc8a497d3180 100644
> --- a/arch/arm/mach-ixp4xx/Kconfig
> +++ b/arch/arm/mach-ixp4xx/Kconfig
> @@ -2,7 +2,6 @@
> menuconfig ARCH_IXP4XX
> bool "IXP4xx-based platforms"
> depends on ARCH_MULTI_V5
> - depends on CPU_BIG_ENDIAN
[Severity: High]
Does removing this big-endian restriction break the IXP4XX flash driver on
little-endian builds?
The physmap-ixp4xx.c driver documents a hard requirement for the byte swap
option on LE systems:
drivers/mtd/maps/physmap-ixp4xx.c:flash_read16()
* This means that on LE systems each 16 bit word must be swapped. Note that
* this requires CONFIG_MTD_CFI_BE_BYTE_SWAP to be enabled to 'unswap' the CFI
* data and other flash commands which are always in D7-D0.
However, the MTD_PHYSMAP_IXP4XX configuration conditionally selects the swap
only for big-endian builds:
drivers/mtd/maps/Kconfig:MTD_PHYSMAP_IXP4XX
select MTD_CFI_BE_BYTE_SWAP if CPU_BIG_ENDIAN
Because of this conditional, LE builds fail to select the requisite byte swap.
Without the byte swap, the CFI backend defaults to host endian and the driver
sends mangled commands to the flash, causing it to fail to probe.
> select ARM_APPENDED_DTB # Old Redboot bootloaders deployed
> select CPU_XSCALE
> select GPIO_IXP4XX
[ ... ]
--
Sashiko AI review · https://sashiko.dev/#/patchset/20260709-ixp4xx-little-endian-v1-0-e9622d0ba9e4@kernel.org?part=2
next prev parent reply other threads:[~2026-07-08 22:37 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-07-08 22:24 [PATCH 0/3] ARM: Enable IXP4xx to use little endian mode Linus Walleij
2026-07-08 22:24 ` [PATCH 1/3] ARM: decompressor: always set endianess on xscale Linus Walleij
2026-07-08 22:48 ` sashiko-bot
2026-07-09 19:32 ` Linus Walleij
2026-07-08 22:24 ` [PATCH 2/3] ARM: ixp4xx: Relax endianness Linus Walleij
2026-07-08 22:37 ` sashiko-bot [this message]
2026-07-08 23:04 ` Linus Walleij
2026-07-08 22:24 ` [PATCH 3/3] ARM: dts: ixp4xx: Drop the reg-offset hack Linus Walleij
2026-07-08 22:33 ` sashiko-bot
2026-07-08 23:05 ` Linus Walleij
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=20260708223722.439381F000E9@smtp.kernel.org \
--to=sashiko-bot@kernel.org \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=linusw@kernel.org \
--cc=robh@kernel.org \
--cc=sashiko-reviews@lists.linux.dev \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox