ARM: footbridge: remove CATS
authorArnd Bergmann <arnd@arndb.de>
Thu, 29 Sep 2022 13:39:13 +0000 (15:39 +0200)
committerArnd Bergmann <arnd@arndb.de>
Tue, 10 Jan 2023 22:10:27 +0000 (23:10 +0100)
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>
arch/arm/kernel/head.S
arch/arm/mach-footbridge/Kconfig
arch/arm/mach-footbridge/Makefile
arch/arm/mach-footbridge/cats-hw.c [deleted file]
arch/arm/mach-footbridge/cats-pci.c [deleted file]
arch/arm/mach-footbridge/common.c
drivers/watchdog/wdt285.c

index 29e2900..6569910 100644 (file)
@@ -344,7 +344,7 @@ __create_page_tables:
        ldr     r7, [r10, #PROCINFO_IO_MMUFLAGS] @ io_mmuflags
 #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
         * in the 16550-type serial port for the debug messages
index b5e7cbf..7818999 100644 (file)
@@ -16,18 +16,6 @@ menuconfig 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
        bool "EBSA285 (host mode)"
        select ARCH_EBSA285
index 55d5707..1553cc0 100644 (file)
@@ -8,11 +8,9 @@
 obj-y                  := common.o isa-irq.o isa.o isa-rtc.o dma-isa.o
 
 pci-y                  += dc21285.o
-pci-$(CONFIG_ARCH_CATS) += cats-pci.o
 pci-$(CONFIG_ARCH_EBSA285) += ebsa285-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_NETWINDER) += netwinder-hw.o isa-timer.o
 
diff --git a/arch/arm/mach-footbridge/cats-hw.c b/arch/arm/mach-footbridge/cats-hw.c
deleted file mode 100644 (file)
index e575dc0..0000000
+++ /dev/null
@@ -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
diff --git a/arch/arm/mach-footbridge/cats-pci.c b/arch/arm/mach-footbridge/cats-pci.c
deleted file mode 100644 (file)
index 90b1e9b..0000000
+++ /dev/null
@@ -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);
index 629e467..85c5987 100644 (file)
@@ -206,9 +206,6 @@ void __init footbridge_init_irq(void)
                 */
                isa_init_irq(IRQ_PCI);
 
-       if (machine_is_cats())
-               isa_init_irq(IRQ_IN2);
-
        if (machine_is_netwinder())
                isa_init_irq(IRQ_IN3);
 }
index 110249e..5b7be7a 100644 (file)
@@ -206,8 +206,6 @@ static int __init footbridge_watchdog_init(void)
        pr_info("Footbridge Watchdog Timer: 0.01, timer margin: %d sec\n",
                soft_margin);
 
-       if (machine_is_cats())
-               pr_warn("Warning: Watchdog reset may not work on this machine\n");
        return 0;
 }