Skip to content

Commit a3102fa

Browse files
committed
ARM: iop32x: enable multiplatform support
After iop32x was converted to the generic multi-irq entry code, nothing really stops us from building it into a generic kernel. The two last headers can simply be removed, the mach/irqs.h gets replaced with the sparse-irq intiialization from the board specific .nr_irqs value, and the decompressor debug output can use the debug_ll hack that all other platforms use. Signed-off-by: Arnd Bergmann <arnd@arndb.de>
1 parent 8c1fb11 commit a3102fa

11 files changed

Lines changed: 19 additions & 59 deletions

File tree

arch/arm/Kconfig

Lines changed: 0 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -356,17 +356,6 @@ config ARCH_FOOTBRIDGE
356356
Support for systems based on the DC21285 companion chip
357357
("FootBridge"), such as the Simtec CATS and the Rebel NetWinder.
358358

359-
config ARCH_IOP32X
360-
bool "IOP32x-based"
361-
select CPU_XSCALE
362-
select GPIO_IOP
363-
select GPIOLIB
364-
select FORCE_PCI
365-
select PLAT_IOP
366-
help
367-
Support for Intel's 80219 and IOP32X (XScale) family of
368-
processors.
369-
370359
config ARCH_IXP4XX
371360
bool "IXP4xx-based"
372361
select ARCH_SUPPORTS_BIG_ENDIAN
@@ -688,9 +677,6 @@ config ARCH_MPS2
688677
config ARCH_ACORN
689678
bool
690679

691-
config PLAT_IOP
692-
bool
693-
694680
config PLAT_ORION
695681
bool
696682
select CLKSRC_MMIO

arch/arm/configs/iop32x_defconfig

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ CONFIG_SLAB=y
77
CONFIG_MODULES=y
88
CONFIG_MODULE_UNLOAD=y
99
# CONFIG_BLK_DEV_BSG is not set
10+
# CONFIG_ARCH_MULTI_V7 is not set
1011
CONFIG_ARCH_IOP32X=y
1112
CONFIG_MACH_GLANTANK=y
1213
CONFIG_ARCH_IQ80321=y

arch/arm/mach-iop32x/Kconfig

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,16 @@
11
# SPDX-License-Identifier: GPL-2.0
2-
if ARCH_IOP32X
3-
4-
menu "IOP32x Implementation Options"
2+
menuconfig ARCH_IOP32X
3+
bool "IOP32x-based platforms"
4+
depends on ARCH_MULTI_V5
5+
select CPU_XSCALE
6+
select GPIO_IOP
7+
select GPIOLIB
8+
select FORCE_PCI
9+
help
10+
Support for Intel's 80219 and IOP32X (XScale) family of
11+
processors.
512

6-
comment "IOP32x Platform Types"
13+
if ARCH_IOP32X
714

815
config MACH_EP80219
916
bool
@@ -42,6 +49,4 @@ config MACH_EM7210
4249
board. Say also Y here if you have a SS4000e Baxter Creek NAS
4350
appliance."
4451

45-
endmenu
46-
4752
endif

arch/arm/mach-iop32x/em7210.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -223,6 +223,7 @@ static void __init em7210_init_machine(void)
223223

224224
MACHINE_START(EM7210, "Lanner EM7210")
225225
.atag_offset = 0x100,
226+
.nr_irqs = IOP32X_NR_IRQS,
226227
.map_io = em7210_map_io,
227228
.init_irq = iop32x_init_irq,
228229
.init_time = em7210_timer_init,

arch/arm/mach-iop32x/glantank.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -205,6 +205,7 @@ static void __init glantank_init_machine(void)
205205
MACHINE_START(GLANTANK, "GLAN Tank")
206206
/* Maintainer: Lennert Buytenhek <buytenh@wantstofly.org> */
207207
.atag_offset = 0x100,
208+
.nr_irqs = IOP32X_NR_IRQS,
208209
.map_io = glantank_map_io,
209210
.init_irq = iop32x_init_irq,
210211
.init_time = glantank_timer_init,

arch/arm/mach-iop32x/include/mach/irqs.h

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

arch/arm/mach-iop32x/include/mach/uncompress.h

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

arch/arm/mach-iop32x/iq31244.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -324,6 +324,7 @@ MACHINE_END
324324
MACHINE_START(EP80219, "Intel EP80219")
325325
/* Maintainer: Intel Corp. */
326326
.atag_offset = 0x100,
327+
.nr_irqs = IOP32X_NR_IRQS,
327328
.map_io = iq31244_map_io,
328329
.init_irq = iop32x_init_irq,
329330
.init_time = iq31244_timer_init,

arch/arm/mach-iop32x/iq80321.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -183,6 +183,7 @@ static void __init iq80321_init_machine(void)
183183
MACHINE_START(IQ80321, "Intel IQ80321")
184184
/* Maintainer: Intel Corp. */
185185
.atag_offset = 0x100,
186+
.nr_irqs = IOP32X_NR_IRQS,
186187
.map_io = iq80321_map_io,
187188
.init_irq = iop32x_init_irq,
188189
.init_time = iq80321_timer_init,

arch/arm/mach-iop32x/irqs.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,4 +43,6 @@
4343
#define IRQ_IOP32X_XINT3 IOP_IRQ(30)
4444
#define IRQ_IOP32X_HPI IOP_IRQ(31)
4545

46+
#define IOP32X_NR_IRQS (IRQ_IOP32X_HPI + 1)
47+
4648
#endif

0 commit comments

Comments
 (0)