Skip to content

Commit 62f8f30

Browse files
committed
powerpc/64: Remove maple platform
The maple platform was added in 2004 [1], to support the "Maple" 970FX evaluation board. It was later used for IBM JS20/JS21 machines, as well as the Bimini machine, aka "Yellow Dog Powerstation". Sadly all those machines have passed into memory, and there's been no evidence for years that anyone is still using any of them. Remove the platform and related code. It can always be reinstated if there's interest. Note that this has no impact on support for 970FX based Power Macs. [1]: https://git.kernel.org/pub/scm/linux/kernel/git/mpe/linux-fullhistory.git/commit/?id=f0d068d65c5e555ffcfbc189de32598f6f00770c Signed-off-by: Michael Ellerman <mpe@ellerman.id.au> Link: https://patch.msgid.link/20241013102957.548291-1-mpe@ellerman.id.au
1 parent c7182a0 commit 62f8f30

File tree

20 files changed

+8
-1488
lines changed

20 files changed

+8
-1488
lines changed

Documentation/arch/powerpc/booting.rst

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -93,8 +93,8 @@ given platform based on the content of the device-tree. Thus, you
9393
should:
9494

9595
a) add your platform support as a _boolean_ option in
96-
arch/powerpc/Kconfig, following the example of PPC_PSERIES,
97-
PPC_PMAC and PPC_MAPLE. The latter is probably a good
96+
arch/powerpc/Kconfig, following the example of PPC_PSERIES
97+
and PPC_PMAC. The latter is probably a good
9898
example of a board support to start from.
9999

100100
b) create your main platform file as

arch/powerpc/Kconfig.debug

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -223,12 +223,6 @@ config PPC_EARLY_DEBUG_RTAS_CONSOLE
223223
help
224224
Select this to enable early debugging via the RTAS console.
225225

226-
config PPC_EARLY_DEBUG_MAPLE
227-
bool "Maple real mode"
228-
depends on PPC_MAPLE
229-
help
230-
Select this to enable early debugging for Maple.
231-
232226
config PPC_EARLY_DEBUG_PAS_REALMODE
233227
bool "PA Semi real mode"
234228
depends on PPC_PASEMI

arch/powerpc/boot/.gitignore

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,6 @@ zImage.coff
3030
zImage.epapr
3131
zImage.holly
3232
zImage.*lds
33-
zImage.maple
3433
zImage.miboot
3534
zImage.pmac
3635
zImage.pseries

arch/powerpc/boot/Makefile

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -276,7 +276,6 @@ quiet_cmd_wrap = WRAP $@
276276

277277
image-$(CONFIG_PPC_PSERIES) += zImage.pseries
278278
image-$(CONFIG_PPC_POWERNV) += zImage.pseries
279-
image-$(CONFIG_PPC_MAPLE) += zImage.maple
280279
image-$(CONFIG_PPC_IBM_CELL_BLADE) += zImage.pseries
281280
image-$(CONFIG_PPC_PS3) += dtbImage.ps3
282281
image-$(CONFIG_PPC_CHRP) += zImage.chrp
@@ -444,7 +443,7 @@ $(obj)/zImage.initrd: $(addprefix $(obj)/, $(initrd-y))
444443
clean-files += $(image-) $(initrd-) cuImage.* dtbImage.* treeImage.* \
445444
zImage zImage.initrd zImage.chrp zImage.coff zImage.holly \
446445
zImage.miboot zImage.pmac zImage.pseries \
447-
zImage.maple simpleImage.* otheros.bld
446+
simpleImage.* otheros.bld
448447

449448
# clean up files cached by wrapper
450449
clean-kernel-base := vmlinux.strip vmlinux.bin

arch/powerpc/boot/wrapper

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -271,11 +271,6 @@ pseries)
271271
fi
272272
make_space=n
273273
;;
274-
maple)
275-
platformo="$object/of.o $object/epapr.o"
276-
link_address='0x400000'
277-
make_space=n
278-
;;
279274
pmac|chrp)
280275
platformo="$object/of.o $object/epapr.o"
281276
make_space=n
@@ -517,7 +512,7 @@ fi
517512

518513
# post-processing needed for some platforms
519514
case "$platform" in
520-
pseries|chrp|maple)
515+
pseries|chrp)
521516
$objbin/addnote "$ofile"
522517
;;
523518
coff)

arch/powerpc/configs/maple_defconfig

Lines changed: 0 additions & 111 deletions
This file was deleted.

arch/powerpc/configs/ppc64_defconfig

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,6 @@ CONFIG_PPC_SMLPAR=y
4444
CONFIG_IBMEBUS=y
4545
CONFIG_PAPR_SCM=m
4646
CONFIG_PPC_SVM=y
47-
CONFIG_PPC_MAPLE=y
4847
CONFIG_PPC_PASEMI=y
4948
CONFIG_PPC_PASEMI_IOMMU=y
5049
CONFIG_PPC_PS3=y

arch/powerpc/include/asm/udbg.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,6 @@ void __init udbg_early_init(void);
3838
void __init udbg_init_debug_lpar(void);
3939
void __init udbg_init_debug_lpar_hvsi(void);
4040
void __init udbg_init_pmac_realmode(void);
41-
void __init udbg_init_maple_realmode(void);
4241
void __init udbg_init_pas_realmode(void);
4342
void __init udbg_init_rtas_panel(void);
4443
void __init udbg_init_rtas_console(void);

arch/powerpc/kernel/misc_64.S

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ _GLOBAL(rmci_off)
7474
blr
7575
#endif /* CONFIG_PPC_EARLY_DEBUG_BOOTX */
7676

77-
#if defined(CONFIG_PPC_PMAC) || defined(CONFIG_PPC_MAPLE)
77+
#ifdef CONFIG_PPC_PMAC
7878

7979
/*
8080
* Do an IO access in real mode
@@ -137,7 +137,7 @@ _GLOBAL(real_writeb)
137137
sync
138138
isync
139139
blr
140-
#endif /* defined(CONFIG_PPC_PMAC) || defined(CONFIG_PPC_MAPLE) */
140+
#endif // CONFIG_PPC_PMAC
141141

142142
#ifdef CONFIG_PPC_PASEMI
143143

@@ -174,7 +174,7 @@ _GLOBAL(real_205_writeb)
174174
#endif /* CONFIG_PPC_PASEMI */
175175

176176

177-
#if defined(CONFIG_CPU_FREQ_PMAC64) || defined(CONFIG_CPU_FREQ_MAPLE)
177+
#ifdef CONFIG_CPU_FREQ_PMAC64
178178
/*
179179
* SCOM access functions for 970 (FX only for now)
180180
*
@@ -243,7 +243,7 @@ _GLOBAL(scom970_write)
243243
/* restore interrupts */
244244
mtmsrd r5,1
245245
blr
246-
#endif /* CONFIG_CPU_FREQ_PMAC64 || CONFIG_CPU_FREQ_MAPLE */
246+
#endif // CONFIG_CPU_FREQ_PMAC64
247247

248248
/* kexec_wait(phys_cpu)
249249
*

arch/powerpc/kernel/prom_init.c

Lines changed: 0 additions & 86 deletions
Original file line numberDiff line numberDiff line change
@@ -2792,90 +2792,6 @@ static void __init flatten_device_tree(void)
27922792
dt_struct_start, dt_struct_end);
27932793
}
27942794

2795-
#ifdef CONFIG_PPC_MAPLE
2796-
/* PIBS Version 1.05.0000 04/26/2005 has an incorrect /ht/isa/ranges property.
2797-
* The values are bad, and it doesn't even have the right number of cells. */
2798-
static void __init fixup_device_tree_maple(void)
2799-
{
2800-
phandle isa;
2801-
u32 rloc = 0x01002000; /* IO space; PCI device = 4 */
2802-
u32 isa_ranges[6];
2803-
char *name;
2804-
2805-
name = "/ht@0/isa@4";
2806-
isa = call_prom("finddevice", 1, 1, ADDR(name));
2807-
if (!PHANDLE_VALID(isa)) {
2808-
name = "/ht@0/isa@6";
2809-
isa = call_prom("finddevice", 1, 1, ADDR(name));
2810-
rloc = 0x01003000; /* IO space; PCI device = 6 */
2811-
}
2812-
if (!PHANDLE_VALID(isa))
2813-
return;
2814-
2815-
if (prom_getproplen(isa, "ranges") != 12)
2816-
return;
2817-
if (prom_getprop(isa, "ranges", isa_ranges, sizeof(isa_ranges))
2818-
== PROM_ERROR)
2819-
return;
2820-
2821-
if (isa_ranges[0] != 0x1 ||
2822-
isa_ranges[1] != 0xf4000000 ||
2823-
isa_ranges[2] != 0x00010000)
2824-
return;
2825-
2826-
prom_printf("Fixing up bogus ISA range on Maple/Apache...\n");
2827-
2828-
isa_ranges[0] = 0x1;
2829-
isa_ranges[1] = 0x0;
2830-
isa_ranges[2] = rloc;
2831-
isa_ranges[3] = 0x0;
2832-
isa_ranges[4] = 0x0;
2833-
isa_ranges[5] = 0x00010000;
2834-
prom_setprop(isa, name, "ranges",
2835-
isa_ranges, sizeof(isa_ranges));
2836-
}
2837-
2838-
#define CPC925_MC_START 0xf8000000
2839-
#define CPC925_MC_LENGTH 0x1000000
2840-
/* The values for memory-controller don't have right number of cells */
2841-
static void __init fixup_device_tree_maple_memory_controller(void)
2842-
{
2843-
phandle mc;
2844-
u32 mc_reg[4];
2845-
char *name = "/hostbridge@f8000000";
2846-
u32 ac, sc;
2847-
2848-
mc = call_prom("finddevice", 1, 1, ADDR(name));
2849-
if (!PHANDLE_VALID(mc))
2850-
return;
2851-
2852-
if (prom_getproplen(mc, "reg") != 8)
2853-
return;
2854-
2855-
prom_getprop(prom.root, "#address-cells", &ac, sizeof(ac));
2856-
prom_getprop(prom.root, "#size-cells", &sc, sizeof(sc));
2857-
if ((ac != 2) || (sc != 2))
2858-
return;
2859-
2860-
if (prom_getprop(mc, "reg", mc_reg, sizeof(mc_reg)) == PROM_ERROR)
2861-
return;
2862-
2863-
if (mc_reg[0] != CPC925_MC_START || mc_reg[1] != CPC925_MC_LENGTH)
2864-
return;
2865-
2866-
prom_printf("Fixing up bogus hostbridge on Maple...\n");
2867-
2868-
mc_reg[0] = 0x0;
2869-
mc_reg[1] = CPC925_MC_START;
2870-
mc_reg[2] = 0x0;
2871-
mc_reg[3] = CPC925_MC_LENGTH;
2872-
prom_setprop(mc, name, "reg", mc_reg, sizeof(mc_reg));
2873-
}
2874-
#else
2875-
#define fixup_device_tree_maple()
2876-
#define fixup_device_tree_maple_memory_controller()
2877-
#endif
2878-
28792795
#ifdef CONFIG_PPC_CHRP
28802796
/*
28812797
* Pegasos and BriQ lacks the "ranges" property in the isa node
@@ -3193,8 +3109,6 @@ static inline void fixup_device_tree_pasemi(void) { }
31933109

31943110
static void __init fixup_device_tree(void)
31953111
{
3196-
fixup_device_tree_maple();
3197-
fixup_device_tree_maple_memory_controller();
31983112
fixup_device_tree_chrp();
31993113
fixup_device_tree_pmac();
32003114
fixup_device_tree_efika();

0 commit comments

Comments
 (0)