mbox series

[00/15] ARM: platform and feature deprecation

Message ID 20241204102904.1863796-1-arnd@kernel.org (mailing list archive)
Headers show
Series ARM: platform and feature deprecation | expand

Message

Arnd Bergmann Dec. 4, 2024, 10:28 a.m. UTC
From: Arnd Bergmann <arnd@arndb.de>

This is attempt to bring the source code to the state that we discussed
this summer[1], regarding a timeline for deprecating and removing
features:

 - DEPRECATED_PARAM_STRUCT and ARCH_S3C64XX were meant to be
   removed by now, but get an extension

 - all board files except for OMAP1 and S3C get an tentative
   end-of-life date in either 2025 or early 2026.

 - IWMMXT is scheduled for removal in 2026

 - ARMv6/ARM1136r0 (not ARMv6K/ARM1136r1/ARM1176) is scheduled
   for removal in 2026, along with the OMAP24xx and i.MX31 SoCs
   using it

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

Regarding actually removing the code, I would plan for linux-6.15 (June
2025), removing both the board files and any drivers that have either
become newly unused or were missed in a previous machine removal series.
For the 2026 removals, I would plan on the release after the next LTS
kernel, most likely 6.19.

The timeline for the three StrongARM platforms is missing feedback from
Russell, who is listed as maintainer for two of them and last confirmed
using all three roughly five years ago[2]. I put those patches last
in the series so they can be dropped if Russell still plans to run
kernels after 6.12-LTS on one or more of these.

      Arnd

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

Arnd Bergmann (15):
  ARM: use CONFIG_AEABI by default everywhere
  ARM: limit OABI support to StrongARM CPUs
  ARM: rework ARM11 CPU selection logic
  ARM: deprecate support for ARM1136r0
  ARM: turn CONFIG_ATAGS off by default
  ARM: update DEPRECATED_PARAM_STRUCT removal timeline
  ARM: s3c64xx: extend deprecation schedule
  ARM: update FPE_NWFPE help text
  ARM: mark IWMMXT as deprecated
  ARM: deprecate ARCH_DOVE
  ARM: PXA: deprecate remaining board file support
  ARM: orion5x: mark all board files as deprecated
  ARM: mark mach-sa1100 as deprecated
  ARM: mark RiscPC as deprecated
  ARM: mark footbridge as deprecated

 arch/arm/Kconfig                        | 72 +++++++++++++------------
 arch/arm/Kconfig.platforms              |  2 +-
 arch/arm/configs/am200epdkit_defconfig  |  3 +-
 arch/arm/configs/aspeed_g4_defconfig    |  2 -
 arch/arm/configs/aspeed_g5_defconfig    |  1 -
 arch/arm/configs/assabet_defconfig      |  3 ++
 arch/arm/configs/at91_dt_defconfig      |  2 -
 arch/arm/configs/axm55xx_defconfig      |  2 -
 arch/arm/configs/bcm2835_defconfig      |  1 -
 arch/arm/configs/clps711x_defconfig     |  1 -
 arch/arm/configs/collie_defconfig       |  2 +-
 arch/arm/configs/davinci_all_defconfig  |  1 -
 arch/arm/configs/dove_defconfig         |  2 +-
 arch/arm/configs/ep93xx_defconfig       |  1 -
 arch/arm/configs/footbridge_defconfig   |  2 +
 arch/arm/configs/gemini_defconfig       |  1 -
 arch/arm/configs/h3600_defconfig        |  3 +-
 arch/arm/configs/hisi_defconfig         |  1 -
 arch/arm/configs/imx_v4_v5_defconfig    |  1 -
 arch/arm/configs/integrator_defconfig   |  2 -
 arch/arm/configs/ixp4xx_defconfig       |  1 -
 arch/arm/configs/jornada720_defconfig   |  3 +-
 arch/arm/configs/keystone_defconfig     |  1 -
 arch/arm/configs/lpc32xx_defconfig      |  1 -
 arch/arm/configs/mmp2_defconfig         |  1 -
 arch/arm/configs/moxart_defconfig       |  2 -
 arch/arm/configs/mps2_defconfig         |  1 -
 arch/arm/configs/multi_v4t_defconfig    |  2 -
 arch/arm/configs/multi_v5_defconfig     | 10 ----
 arch/arm/configs/mv78xx0_defconfig      |  3 +-
 arch/arm/configs/mvebu_v5_defconfig     | 11 ----
 arch/arm/configs/mxs_defconfig          |  1 -
 arch/arm/configs/neponset_defconfig     |  3 ++
 arch/arm/configs/netwinder_defconfig    |  3 ++
 arch/arm/configs/nhk8815_defconfig      |  1 -
 arch/arm/configs/omap1_defconfig        |  3 +-
 arch/arm/configs/orion5x_defconfig      | 11 ----
 arch/arm/configs/pxa168_defconfig       |  2 -
 arch/arm/configs/pxa3xx_defconfig       |  2 -
 arch/arm/configs/pxa910_defconfig       |  2 -
 arch/arm/configs/pxa_defconfig          |  5 --
 arch/arm/configs/rpc_defconfig          |  3 ++
 arch/arm/configs/s3c6400_defconfig      |  2 +
 arch/arm/configs/sama5_defconfig        |  1 -
 arch/arm/configs/sama7_defconfig        |  1 -
 arch/arm/configs/spear13xx_defconfig    |  1 -
 arch/arm/configs/spitz_defconfig        |  2 +-
 arch/arm/configs/stm32_defconfig        |  1 -
 arch/arm/configs/versatile_defconfig    |  2 -
 arch/arm/configs/vt8500_v6_v7_defconfig |  1 -
 arch/arm/configs/wpcm450_defconfig      |  2 -
 arch/arm/mach-dove/Kconfig              |  8 ++-
 arch/arm/mach-footbridge/Kconfig        |  7 ++-
 arch/arm/mach-imx/Kconfig               |  8 ++-
 arch/arm/mach-omap2/Kconfig             | 17 ++++--
 arch/arm/mach-orion5x/Kconfig           | 47 ++++++++++++----
 arch/arm/mach-pxa/Kconfig               | 10 +++-
 arch/arm/mach-rpc/Kconfig               |  5 +-
 arch/arm/mach-s3c/Kconfig.s3c64xx       | 15 ++++--
 arch/arm/mach-sa1100/Kconfig            |  5 +-
 arch/arm/mach-versatile/Kconfig         | 15 +++---
 arch/arm/mm/Kconfig                     | 26 ++++++++-
 62 files changed, 194 insertions(+), 159 deletions(-)