ARM: platform and feature deprecation for 7.3

This is attempt to bring the source code to the state that we discussed
 back in 2024, regarding a timeline for deprecating and removing features,
 in particular platforms and ABIs that are basically unused and are
 also getting in the way of maintenance.
 
 The earlier consensus was to remove these features in 2025 or 2026
 after the corresponding LTS kernel release. I would suggest pushing
 these to early 2027 now, see the patch description for details on
 each one:
 
  - all board files that are still not converted to DT
    (except for OMAP1 and S3C)
 
  - iWMMXt FPU support
 
  - ARMv6/ARM1136r0 (not ARMv6K/ARM1136r1/ARM1176) along with the
    OMAP24xx and i.MX31 SoCs using it
 
  - Cortex-M3/M4/M7 based microcontroller support
    (stm32, imxrt, lpc18xx, samv7)
 
  - LSI Axxia platform
 
  - OABI, OABI-compat and NWFPE are confined to StrongARM based
    builds and scheduled for removal once StrongARM is gone.
 
  - DEPRECATED_PARAM_STRUCT, which was originally scheduled for
    removal in 2006 (!)
 
 The ARCH_S3C64XX platform was scheduled for removal in 2024, but is
 still actively used and will get removed once Mark Brown stops using
 it. The OMAP1 platform has some remaining boardfiles and is expected to
 get converted to DT.
 
 Big-endian ARMv7 CPU support is not scheduled for removal but marked
 as broken the same way as ARM64 has, to reduce the need for testing
 unused configurations. This may be removed in the future if arm64 does
 it as well. Note that big-endian ARMv5 support is can still be
 enabled since the patches to revive little-endianm mode are still
 fresh.
 
 Regarding actually removing the code, I would suggest linux-7.4 (January
 2027), removing both the board files and any drivers that have either
 become newly unused or were missed in a previous machine removal series,
 followed by removing support for then unused CPUs a release later.
 
 Links to previous discussion:
 
   https://lore.kernel.org/linux-arm-kernel/20210109174357.GB1551@shell.armlinux.org.uk/
   https://lore.kernel.org/linux-arm-kernel/2831c5a6-cfbf-4fe0-b51c-0396e5b0aeb7@app.fastmail.com/
   https://lore.kernel.org/all/20241204102904.1863796-1-arnd@kernel.org/
   https://lore.kernel.org/all/20260701212353.2196041-1-arnd@kernel.org/
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmpRZJoACgkQmmx57+YA
 GNm16w/+P/5PMEKEiPtw06p+nX8uyc+WdZ4ZTdHcZoh1dJeHrAYESrfYyxG27AmQ
 4dmLouZXLVmldi1HVX9oNDRh8NaXOJhVfJdsjlgBCXMJhceIlebS0YJetwO+I8Qa
 0nIGyNNIcpYOpchPIl7VX0a1xq6VJhWpqYkvgO7UeKuJczYgSF2LezMqK6a0hQ2o
 N/Azg8XCJRZ2qAeq2hRFFf2Ss6YB3awMw3CVk/Xii+iPpF/xSt7rF+SzavXuko2n
 f4qWNN9qKmWw7m1pXZN1G/YD6Qf/GmR5FfWC6Tby9/BhsACGsqjom9yVYfHbYd7I
 kKRKhY5QXleIKHW9Q5/3c8ksBqJoPTF2+GH4MOnLc7RdmFBJtCfdPvszaLDEeZxe
 mW5PCcbwqUaUq85Pq1mmwrRjQhz3tBoQFW9rQ/NKExxryc5fwSxFpLP9UwpW0ThU
 WVxVny3pPclL3/8i5h7Raz+rMkrOmVY80sdsLJC9DIJ2QlEereqw1crEXcf3l99U
 5l3HqMb8AkwavT5Zh3iAUdTpxUHBo4lrey5t4Er78MY0k90ZQojBjANArEIo52L4
 yFdThLDUoVvyWMZjDM9gpV4JNsWL0HOTlHiEhQbN3cGuDPlMv9KhA3iwDKrMKZp5
 UtfBu5g4ttx4XjgpaHvWW02yrSGpFb7RFU4nEkrUqUG2WnzOMn4=
 =AKt1
 -----END PGP SIGNATURE-----

Merge tag 'arm-feature-deprecation-for-7.3' of https://git.kernel.org/pub/scm/linux/kernel/git/soc/soc into soc/arm

ARM: platform and feature deprecation for 7.3

This is an attempt to bring the source code to the state that we discussed
back in 2024, regarding a timeline for deprecating and removing features,
in particular platforms and ABIs that are basically unused and are
also getting in the way of maintenance.

The earlier consensus was to remove these features in 2025 or 2026
after the corresponding LTS kernel release. I would suggest pushing
these to early 2027 now, see the patch description for details on
each one:

 - all board files that are still not converted to DT
   (except for OMAP1 and S3C)

 - iWMMXt FPU support

 - ARMv6/ARM1136r0 (not ARMv6K/ARM1136r1/ARM1176) along with the
   OMAP24xx and i.MX31 SoCs using it

 - Cortex-M3/M4/M7 based microcontroller support
   (stm32, imxrt, lpc18xx, samv7)

 - LSI Axxia platform

 - OABI, OABI-compat and NWFPE are confined to StrongARM based
   builds and scheduled for removal once StrongARM is gone.

 - DEPRECATED_PARAM_STRUCT, which was originally scheduled for
   removal in 2006 (!)

The ARCH_S3C64XX platform was scheduled for removal in 2024, but is
still actively used and will get removed once Mark Brown stops using
it. The OMAP1 platform has some remaining boardfiles and is expected to
get converted to DT.

Big-endian ARMv7 CPU support is not scheduled for removal but marked
as broken the same way as ARM64 has, to reduce the need for testing
unused configurations. This may be removed in the future if arm64 does
it as well. Note that big-endian ARMv5 support is can still be
enabled since the patches to revive little-endianm mode are still
fresh.

Regarding actually removing the code, I would suggest linux-7.4 (January
2027), removing both the board files and any drivers that have either
become newly unused or were missed in a previous machine removal series,
followed by removing support for then unused CPUs a release later.

Links to previous discussion:

  https://lore.kernel.org/linux-arm-kernel/20210109174357.GB1551@shell.armlinux.org.uk/
  https://lore.kernel.org/linux-arm-kernel/2831c5a6-cfbf-4fe0-b51c-0396e5b0aeb7@app.fastmail.com/
  https://lore.kernel.org/all/20241204102904.1863796-1-arnd@kernel.org/
  https://lore.kernel.org/all/20260701212353.2196041-1-arnd@kernel.org/

Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
This commit is contained in:
Alexandre Belloni 2026-07-15 13:40:42 +02:00
commit 809177dbf3
66 changed files with 225 additions and 170 deletions