[PATCH 0/7] Remove 40x

Michael Ellerman mpe at ellerman.id.au
Mon May 6 22:51:45 AEST 2024


The 40x platforms & CPUs are old and have been unmaintained for years, and as
far as we can tell have no users.

Note 44x and 476 are not affected.

Christophe first proposed removing 40x in 2020:
  https://lore.kernel.org/linuxppc-dev/40899eb1b8f10da3706acd06c3d46d2418c8886e.1585635837.git.christophe.leroy@c-s.fr/

And on a few subsequent occasions.

The proposed removal was covered on Phronix:
  https://www.phoronix.com/news/PowerPC-40x-400-Linux-Removal

OpenWRT dropped support in 2019.

So unless anyone steps up to maintain it, remove 40x as unused. RIP.

cheers


More context: https://github.com/linuxppc/issues/issues/349

Christophe Leroy (4):
  powerpc/40x: Remove 40x platforms.
  powerpc/boot: Remove all 40x platforms from boot
  powerpc: Remove core support for 40x
  powerpc/platforms: Move files from 4xx to 44x

Michael Ellerman (3):
  powerpc: Remove 40x from Kconfig and defconfig
  powerpc/4xx: Remove CONFIG_BOOKE_OR_40x
  powerpc: Replace CONFIG_4xx with CONFIG_44x

 MAINTAINERS                                   |   1 -
 arch/powerpc/Kconfig                          |  17 +-
 arch/powerpc/Kconfig.debug                    |  13 -
 arch/powerpc/Makefile                         |   5 -
 arch/powerpc/boot/4xx.c                       | 266 -------
 arch/powerpc/boot/4xx.h                       |   4 -
 arch/powerpc/boot/Makefile                    |  11 -
 arch/powerpc/boot/cuboot-acadia.c             | 171 -----
 arch/powerpc/boot/cuboot-hotfoot.c            | 139 ----
 arch/powerpc/boot/cuboot-kilauea.c            |  46 --
 arch/powerpc/boot/dcr.h                       |  11 -
 arch/powerpc/boot/dts/acadia.dts              | 224 ------
 arch/powerpc/boot/dts/hotfoot.dts             | 296 -------
 arch/powerpc/boot/dts/kilauea.dts             | 407 ----------
 arch/powerpc/boot/dts/obs600.dts              | 314 --------
 arch/powerpc/boot/ppcboot-hotfoot.h           | 119 ---
 arch/powerpc/boot/ppcboot.h                   |   2 +-
 arch/powerpc/configs/40x.config               |   2 -
 arch/powerpc/configs/40x/acadia_defconfig     |  61 --
 arch/powerpc/configs/40x/kilauea_defconfig    |  69 --
 arch/powerpc/configs/40x/klondike_defconfig   |  43 --
 arch/powerpc/configs/40x/makalu_defconfig     |  59 --
 arch/powerpc/configs/40x/obs600_defconfig     |  69 --
 arch/powerpc/configs/40x/walnut_defconfig     |  55 --
 arch/powerpc/configs/ppc40x_defconfig         |  74 --
 arch/powerpc/include/asm/cacheflush.h         |   2 +-
 arch/powerpc/include/asm/cputable.h           |   7 -
 arch/powerpc/include/asm/hw_irq.h             |   8 +-
 arch/powerpc/include/asm/irq.h                |   2 +-
 arch/powerpc/include/asm/kup.h                |   2 +-
 arch/powerpc/include/asm/mmu.h                |   7 -
 arch/powerpc/include/asm/nohash/32/mmu-40x.h  |  68 --
 arch/powerpc/include/asm/nohash/32/pgtable.h  |   4 +-
 arch/powerpc/include/asm/nohash/32/pte-40x.h  |  73 --
 arch/powerpc/include/asm/nohash/mmu.h         |   5 +-
 arch/powerpc/include/asm/ppc_asm.h            |   2 +-
 arch/powerpc/include/asm/processor.h          |   2 +-
 arch/powerpc/include/asm/ptrace.h             |   2 +-
 arch/powerpc/include/asm/reg.h                |  27 +-
 arch/powerpc/include/asm/reg_booke.h          | 113 +--
 arch/powerpc/include/asm/time.h               |   7 +-
 arch/powerpc/include/asm/udbg.h               |   1 -
 arch/powerpc/kernel/Makefile                  |   1 -
 arch/powerpc/kernel/asm-offsets.c             |   2 +-
 arch/powerpc/kernel/cpu_specs.h               |   4 -
 arch/powerpc/kernel/cpu_specs_40x.h           | 280 -------
 arch/powerpc/kernel/entry_32.S                |  48 +-
 arch/powerpc/kernel/epapr_hcalls.S            |   2 +-
 arch/powerpc/kernel/head_32.h                 |  12 +-
 arch/powerpc/kernel/head_40x.S                | 721 ------------------
 arch/powerpc/kernel/head_booke.h              |   3 +-
 arch/powerpc/kernel/irq.c                     |   2 +-
 arch/powerpc/kernel/kgdb.c                    |   4 +-
 arch/powerpc/kernel/misc_32.S                 |  40 -
 arch/powerpc/kernel/process.c                 |   4 +-
 arch/powerpc/kernel/setup.h                   |   2 +-
 arch/powerpc/kernel/setup_32.c                |   2 +-
 arch/powerpc/kernel/time.c                    |   2 +-
 arch/powerpc/kernel/traps.c                   |   2 +-
 arch/powerpc/kernel/udbg.c                    |   3 -
 arch/powerpc/kernel/udbg_16550.c              |  23 -
 arch/powerpc/mm/fault.c                       |   4 +-
 arch/powerpc/mm/mmu_context.c                 |   2 +-
 arch/powerpc/mm/mmu_decl.h                    |   8 +-
 arch/powerpc/mm/nohash/40x.c                  | 161 ----
 arch/powerpc/mm/nohash/Makefile               |   1 -
 arch/powerpc/mm/nohash/kup.c                  |   2 -
 arch/powerpc/mm/nohash/mmu_context.c          |   5 +-
 arch/powerpc/mm/nohash/tlb_low.S              |  27 +-
 arch/powerpc/mm/ptdump/Makefile               |   2 +-
 arch/powerpc/platforms/40x/Kconfig            |  78 --
 arch/powerpc/platforms/40x/Makefile           |   2 -
 arch/powerpc/platforms/40x/ppc40x_simple.c    |  74 --
 arch/powerpc/platforms/44x/Makefile           |   6 +-
 arch/powerpc/platforms/{4xx => 44x}/cpm.c     |   0
 arch/powerpc/platforms/{4xx => 44x}/gpio.c    |   0
 .../powerpc/platforms/{4xx => 44x}/hsta_msi.c |   0
 arch/powerpc/platforms/44x/machine_check.c    |  15 +
 arch/powerpc/platforms/{4xx => 44x}/pci.c     | 100 ---
 arch/powerpc/platforms/{4xx => 44x}/pci.h     |   0
 arch/powerpc/platforms/{4xx => 44x}/soc.c     |   0
 arch/powerpc/platforms/{4xx => 44x}/uic.c     |   0
 arch/powerpc/platforms/4xx/Makefile           |   7 -
 arch/powerpc/platforms/4xx/machine_check.c    |  23 -
 arch/powerpc/platforms/Kconfig                |   1 -
 arch/powerpc/platforms/Kconfig.cputype        |  30 +-
 arch/powerpc/platforms/Makefile               |   2 -
 arch/powerpc/sysdev/Kconfig                   |   4 +-
 scripts/head-object-list.txt                  |   1 -
 89 files changed, 77 insertions(+), 4445 deletions(-)
 delete mode 100644 arch/powerpc/boot/cuboot-acadia.c
 delete mode 100644 arch/powerpc/boot/cuboot-hotfoot.c
 delete mode 100644 arch/powerpc/boot/cuboot-kilauea.c
 delete mode 100644 arch/powerpc/boot/dts/acadia.dts
 delete mode 100644 arch/powerpc/boot/dts/hotfoot.dts
 delete mode 100644 arch/powerpc/boot/dts/kilauea.dts
 delete mode 100644 arch/powerpc/boot/dts/obs600.dts
 delete mode 100644 arch/powerpc/boot/ppcboot-hotfoot.h
 delete mode 100644 arch/powerpc/configs/40x.config
 delete mode 100644 arch/powerpc/configs/40x/acadia_defconfig
 delete mode 100644 arch/powerpc/configs/40x/kilauea_defconfig
 delete mode 100644 arch/powerpc/configs/40x/klondike_defconfig
 delete mode 100644 arch/powerpc/configs/40x/makalu_defconfig
 delete mode 100644 arch/powerpc/configs/40x/obs600_defconfig
 delete mode 100644 arch/powerpc/configs/40x/walnut_defconfig
 delete mode 100644 arch/powerpc/configs/ppc40x_defconfig
 delete mode 100644 arch/powerpc/include/asm/nohash/32/mmu-40x.h
 delete mode 100644 arch/powerpc/include/asm/nohash/32/pte-40x.h
 delete mode 100644 arch/powerpc/kernel/cpu_specs_40x.h
 delete mode 100644 arch/powerpc/kernel/head_40x.S
 delete mode 100644 arch/powerpc/mm/nohash/40x.c
 delete mode 100644 arch/powerpc/platforms/40x/Kconfig
 delete mode 100644 arch/powerpc/platforms/40x/Makefile
 delete mode 100644 arch/powerpc/platforms/40x/ppc40x_simple.c
 rename arch/powerpc/platforms/{4xx => 44x}/cpm.c (100%)
 rename arch/powerpc/platforms/{4xx => 44x}/gpio.c (100%)
 rename arch/powerpc/platforms/{4xx => 44x}/hsta_msi.c (100%)
 rename arch/powerpc/platforms/{4xx => 44x}/pci.c (95%)
 rename arch/powerpc/platforms/{4xx => 44x}/pci.h (100%)
 rename arch/powerpc/platforms/{4xx => 44x}/soc.c (100%)
 rename arch/powerpc/platforms/{4xx => 44x}/uic.c (100%)
 delete mode 100644 arch/powerpc/platforms/4xx/Makefile
 delete mode 100644 arch/powerpc/platforms/4xx/machine_check.c

-- 
2.45.0



More information about the Linuxppc-dev mailing list