ARM: footbridge: remove CATS
Nobody seems to have a CATS machine any more, so remove it now, leaving only NetWinder and EBSA285. Cc: Russell King <linux@armlinux.org.uk> Acked-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
This commit is contained in:
parent
046cd3c698
commit
50f6f34e60
@ -344,7 +344,7 @@ __create_page_tables:
|
|||||||
ldr r7, [r10, #PROCINFO_IO_MMUFLAGS] @ io_mmuflags
|
ldr r7, [r10, #PROCINFO_IO_MMUFLAGS] @ io_mmuflags
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if defined(CONFIG_ARCH_NETWINDER) || defined(CONFIG_ARCH_CATS)
|
#if defined(CONFIG_ARCH_NETWINDER)
|
||||||
/*
|
/*
|
||||||
* If we're using the NetWinder or CATS, we also need to map
|
* If we're using the NetWinder or CATS, we also need to map
|
||||||
* in the 16550-type serial port for the debug messages
|
* in the 16550-type serial port for the debug messages
|
||||||
|
@ -16,18 +16,6 @@ menuconfig ARCH_FOOTBRIDGE
|
|||||||
|
|
||||||
if ARCH_FOOTBRIDGE
|
if ARCH_FOOTBRIDGE
|
||||||
|
|
||||||
config ARCH_CATS
|
|
||||||
bool "CATS"
|
|
||||||
depends on UNUSED_BOARD_FILES
|
|
||||||
select CLKEVT_I8253
|
|
||||||
select CLKSRC_I8253
|
|
||||||
select ISA
|
|
||||||
select FORCE_PCI
|
|
||||||
help
|
|
||||||
Say Y here if you intend to run this kernel on the CATS.
|
|
||||||
|
|
||||||
Saying N will reduce the size of the Footbridge kernel.
|
|
||||||
|
|
||||||
config ARCH_EBSA285_HOST
|
config ARCH_EBSA285_HOST
|
||||||
bool "EBSA285 (host mode)"
|
bool "EBSA285 (host mode)"
|
||||||
select ARCH_EBSA285
|
select ARCH_EBSA285
|
||||||
|
@ -8,11 +8,9 @@
|
|||||||
obj-y := common.o isa-irq.o isa.o isa-rtc.o dma-isa.o
|
obj-y := common.o isa-irq.o isa.o isa-rtc.o dma-isa.o
|
||||||
|
|
||||||
pci-y += dc21285.o
|
pci-y += dc21285.o
|
||||||
pci-$(CONFIG_ARCH_CATS) += cats-pci.o
|
|
||||||
pci-$(CONFIG_ARCH_EBSA285) += ebsa285-pci.o
|
pci-$(CONFIG_ARCH_EBSA285) += ebsa285-pci.o
|
||||||
pci-$(CONFIG_ARCH_NETWINDER) += netwinder-pci.o
|
pci-$(CONFIG_ARCH_NETWINDER) += netwinder-pci.o
|
||||||
|
|
||||||
obj-$(CONFIG_ARCH_CATS) += cats-hw.o isa-timer.o
|
|
||||||
obj-$(CONFIG_ARCH_EBSA285) += ebsa285.o dc21285-timer.o
|
obj-$(CONFIG_ARCH_EBSA285) += ebsa285.o dc21285-timer.o
|
||||||
obj-$(CONFIG_ARCH_NETWINDER) += netwinder-hw.o isa-timer.o
|
obj-$(CONFIG_ARCH_NETWINDER) += netwinder-hw.o isa-timer.o
|
||||||
|
|
||||||
|
@ -1,98 +0,0 @@
|
|||||||
// SPDX-License-Identifier: GPL-2.0
|
|
||||||
/*
|
|
||||||
* linux/arch/arm/mach-footbridge/cats-hw.c
|
|
||||||
*
|
|
||||||
* CATS machine fixup
|
|
||||||
*
|
|
||||||
* Copyright (C) 1998, 1999 Russell King, Phil Blundell
|
|
||||||
*/
|
|
||||||
#include <linux/ioport.h>
|
|
||||||
#include <linux/kernel.h>
|
|
||||||
#include <linux/init.h>
|
|
||||||
#include <linux/screen_info.h>
|
|
||||||
#include <linux/io.h>
|
|
||||||
#include <linux/spinlock.h>
|
|
||||||
|
|
||||||
#include <asm/hardware/dec21285.h>
|
|
||||||
#include <asm/mach-types.h>
|
|
||||||
#include <asm/setup.h>
|
|
||||||
|
|
||||||
#include <asm/mach/arch.h>
|
|
||||||
|
|
||||||
#include "common.h"
|
|
||||||
|
|
||||||
#define CFG_PORT 0x370
|
|
||||||
#define INDEX_PORT (CFG_PORT)
|
|
||||||
#define DATA_PORT (CFG_PORT + 1)
|
|
||||||
|
|
||||||
static int __init cats_hw_init(void)
|
|
||||||
{
|
|
||||||
if (machine_is_cats()) {
|
|
||||||
/* Set Aladdin to CONFIGURE mode */
|
|
||||||
outb(0x51, CFG_PORT);
|
|
||||||
outb(0x23, CFG_PORT);
|
|
||||||
|
|
||||||
/* Select logical device 3 */
|
|
||||||
outb(0x07, INDEX_PORT);
|
|
||||||
outb(0x03, DATA_PORT);
|
|
||||||
|
|
||||||
/* Set parallel port to DMA channel 3, ECP+EPP1.9,
|
|
||||||
enable EPP timeout */
|
|
||||||
outb(0x74, INDEX_PORT);
|
|
||||||
outb(0x03, DATA_PORT);
|
|
||||||
|
|
||||||
outb(0xf0, INDEX_PORT);
|
|
||||||
outb(0x0f, DATA_PORT);
|
|
||||||
|
|
||||||
outb(0xf1, INDEX_PORT);
|
|
||||||
outb(0x07, DATA_PORT);
|
|
||||||
|
|
||||||
/* Select logical device 4 */
|
|
||||||
outb(0x07, INDEX_PORT);
|
|
||||||
outb(0x04, DATA_PORT);
|
|
||||||
|
|
||||||
/* UART1 high speed mode */
|
|
||||||
outb(0xf0, INDEX_PORT);
|
|
||||||
outb(0x02, DATA_PORT);
|
|
||||||
|
|
||||||
/* Select logical device 5 */
|
|
||||||
outb(0x07, INDEX_PORT);
|
|
||||||
outb(0x05, DATA_PORT);
|
|
||||||
|
|
||||||
/* UART2 high speed mode */
|
|
||||||
outb(0xf0, INDEX_PORT);
|
|
||||||
outb(0x02, DATA_PORT);
|
|
||||||
|
|
||||||
/* Set Aladdin to RUN mode */
|
|
||||||
outb(0xbb, CFG_PORT);
|
|
||||||
}
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
__initcall(cats_hw_init);
|
|
||||||
|
|
||||||
/*
|
|
||||||
* CATS uses soft-reboot by default, since
|
|
||||||
* hard reboots fail on early boards.
|
|
||||||
*/
|
|
||||||
static void __init
|
|
||||||
fixup_cats(struct tag *tags, char **cmdline)
|
|
||||||
{
|
|
||||||
#if defined(CONFIG_VGA_CONSOLE) || defined(CONFIG_DUMMY_CONSOLE)
|
|
||||||
screen_info.orig_video_lines = 25;
|
|
||||||
screen_info.orig_video_points = 16;
|
|
||||||
screen_info.orig_y = 24;
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
|
|
||||||
MACHINE_START(CATS, "Chalice-CATS")
|
|
||||||
/* Maintainer: Philip Blundell */
|
|
||||||
.atag_offset = 0x100,
|
|
||||||
.reboot_mode = REBOOT_SOFT,
|
|
||||||
.fixup = fixup_cats,
|
|
||||||
.map_io = footbridge_map_io,
|
|
||||||
.init_irq = footbridge_init_irq,
|
|
||||||
.init_time = isa_timer_init,
|
|
||||||
.restart = footbridge_restart,
|
|
||||||
MACHINE_END
|
|
@ -1,64 +0,0 @@
|
|||||||
// SPDX-License-Identifier: GPL-2.0
|
|
||||||
/*
|
|
||||||
* linux/arch/arm/mach-footbridge/cats-pci.c
|
|
||||||
*
|
|
||||||
* PCI bios-type initialisation for PCI machines
|
|
||||||
*
|
|
||||||
* Bits taken from various places.
|
|
||||||
*/
|
|
||||||
#include <linux/kernel.h>
|
|
||||||
#include <linux/pci.h>
|
|
||||||
#include <linux/init.h>
|
|
||||||
|
|
||||||
#include <asm/irq.h>
|
|
||||||
#include <asm/mach/pci.h>
|
|
||||||
#include <asm/mach-types.h>
|
|
||||||
|
|
||||||
/* cats host-specific stuff */
|
|
||||||
static int irqmap_cats[] = { IRQ_PCI, IRQ_IN0, IRQ_IN1, IRQ_IN3 };
|
|
||||||
|
|
||||||
static u8 cats_no_swizzle(struct pci_dev *dev, u8 *pin)
|
|
||||||
{
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
static int cats_map_irq(const struct pci_dev *dev, u8 slot, u8 pin)
|
|
||||||
{
|
|
||||||
if (dev->irq >= 255)
|
|
||||||
return -1; /* not a valid interrupt. */
|
|
||||||
|
|
||||||
if (dev->irq >= 128)
|
|
||||||
return dev->irq & 0x1f;
|
|
||||||
|
|
||||||
if (dev->irq >= 1 && dev->irq <= 4)
|
|
||||||
return irqmap_cats[dev->irq - 1];
|
|
||||||
|
|
||||||
if (dev->irq != 0)
|
|
||||||
printk("PCI: device %02x:%02x has unknown irq line %x\n",
|
|
||||||
dev->bus->number, dev->devfn, dev->irq);
|
|
||||||
|
|
||||||
return -1;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
* why not the standard PCI swizzle? does this prevent 4-port tulip
|
|
||||||
* cards being used (ie, pci-pci bridge based cards)?
|
|
||||||
*/
|
|
||||||
static struct hw_pci cats_pci __initdata = {
|
|
||||||
.swizzle = cats_no_swizzle,
|
|
||||||
.map_irq = cats_map_irq,
|
|
||||||
.nr_controllers = 1,
|
|
||||||
.ops = &dc21285_ops,
|
|
||||||
.setup = dc21285_setup,
|
|
||||||
.preinit = dc21285_preinit,
|
|
||||||
.postinit = dc21285_postinit,
|
|
||||||
};
|
|
||||||
|
|
||||||
static int __init cats_pci_init(void)
|
|
||||||
{
|
|
||||||
if (machine_is_cats())
|
|
||||||
pci_common_init(&cats_pci);
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
subsys_initcall(cats_pci_init);
|
|
@ -206,9 +206,6 @@ void __init footbridge_init_irq(void)
|
|||||||
*/
|
*/
|
||||||
isa_init_irq(IRQ_PCI);
|
isa_init_irq(IRQ_PCI);
|
||||||
|
|
||||||
if (machine_is_cats())
|
|
||||||
isa_init_irq(IRQ_IN2);
|
|
||||||
|
|
||||||
if (machine_is_netwinder())
|
if (machine_is_netwinder())
|
||||||
isa_init_irq(IRQ_IN3);
|
isa_init_irq(IRQ_IN3);
|
||||||
}
|
}
|
||||||
|
@ -206,8 +206,6 @@ static int __init footbridge_watchdog_init(void)
|
|||||||
pr_info("Footbridge Watchdog Timer: 0.01, timer margin: %d sec\n",
|
pr_info("Footbridge Watchdog Timer: 0.01, timer margin: %d sec\n",
|
||||||
soft_margin);
|
soft_margin);
|
||||||
|
|
||||||
if (machine_is_cats())
|
|
||||||
pr_warn("Warning: Watchdog reset may not work on this machine\n");
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user