aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/x86/Kconfig12
-rw-r--r--arch/x86/kernel/acpi/boot.c12
-rw-r--r--arch/x86/kernel/apic/Makefile1
-rw-r--r--arch/x86/kernel/apic/es7000_32.c738
4 files changed, 2 insertions, 761 deletions
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
index 0af5250d914f..c6a864748c38 100644
--- a/arch/x86/Kconfig
+++ b/arch/x86/Kconfig
@@ -351,7 +351,6 @@ config X86_EXTENDED_PLATFORM
351 SGI 320/540 (Visual Workstation) 351 SGI 320/540 (Visual Workstation)
352 STA2X11-based (e.g. Northville) 352 STA2X11-based (e.g. Northville)
353 Summit/EXA (IBM x440) 353 Summit/EXA (IBM x440)
354 Unisys ES7000 IA32 series
355 Moorestown MID devices 354 Moorestown MID devices
356 355
357 If you have one of these systems, or if you want to build a 356 If you have one of these systems, or if you want to build a
@@ -489,7 +488,7 @@ config X86_32_NON_STANDARD
489 depends on X86_32 && SMP 488 depends on X86_32 && SMP
490 depends on X86_EXTENDED_PLATFORM 489 depends on X86_EXTENDED_PLATFORM
491 ---help--- 490 ---help---
492 This option compiles in the NUMAQ, Summit, bigsmp, ES7000, 491 This option compiles in the NUMAQ, Summit, bigsmp,
493 STA2X11, default subarchitectures. It is intended for a generic 492 STA2X11, default subarchitectures. It is intended for a generic
494 binary kernel. If you select them all, kernel will probe it 493 binary kernel. If you select them all, kernel will probe it
495 one by one and will fallback to default. 494 one by one and will fallback to default.
@@ -555,13 +554,6 @@ config X86_SUMMIT
555 This option is needed for IBM systems that use the Summit/EXA chipset. 554 This option is needed for IBM systems that use the Summit/EXA chipset.
556 In particular, it is needed for the x440. 555 In particular, it is needed for the x440.
557 556
558config X86_ES7000
559 bool "Unisys ES7000 IA32 series"
560 depends on X86_32_NON_STANDARD && X86_BIGSMP
561 ---help---
562 Support for Unisys ES7000 systems. Say 'Y' here if this kernel is
563 supposed to run on an IA32-based Unisys ES7000 system.
564
565config X86_32_IRIS 557config X86_32_IRIS
566 tristate "Eurobraille/Iris poweroff module" 558 tristate "Eurobraille/Iris poweroff module"
567 depends on X86_32 559 depends on X86_32
@@ -820,7 +812,7 @@ config NR_CPUS
820 range 2 8192 if SMP && !MAXSMP && CPUMASK_OFFSTACK && X86_64 812 range 2 8192 if SMP && !MAXSMP && CPUMASK_OFFSTACK && X86_64
821 default "1" if !SMP 813 default "1" if !SMP
822 default "8192" if MAXSMP 814 default "8192" if MAXSMP
823 default "32" if SMP && (X86_NUMAQ || X86_SUMMIT || X86_BIGSMP || X86_ES7000) 815 default "32" if SMP && (X86_NUMAQ || X86_SUMMIT || X86_BIGSMP)
824 default "8" if SMP 816 default "8" if SMP
825 ---help--- 817 ---help---
826 This allows you to specify the maximum number of CPUs which this 818 This allows you to specify the maximum number of CPUs which this
diff --git a/arch/x86/kernel/acpi/boot.c b/arch/x86/kernel/acpi/boot.c
index 1dac94265b59..bcdace45b000 100644
--- a/arch/x86/kernel/acpi/boot.c
+++ b/arch/x86/kernel/acpi/boot.c
@@ -907,10 +907,6 @@ static int __init acpi_parse_madt_lapic_entries(void)
907#ifdef CONFIG_X86_IO_APIC 907#ifdef CONFIG_X86_IO_APIC
908#define MP_ISA_BUS 0 908#define MP_ISA_BUS 0
909 909
910#ifdef CONFIG_X86_ES7000
911extern int es7000_plat;
912#endif
913
914void __init mp_override_legacy_irq(u8 bus_irq, u8 polarity, u8 trigger, u32 gsi) 910void __init mp_override_legacy_irq(u8 bus_irq, u8 polarity, u8 trigger, u32 gsi)
915{ 911{
916 int ioapic; 912 int ioapic;
@@ -960,14 +956,6 @@ void __init mp_config_acpi_legacy_irqs(void)
960 set_bit(MP_ISA_BUS, mp_bus_not_pci); 956 set_bit(MP_ISA_BUS, mp_bus_not_pci);
961 pr_debug("Bus #%d is ISA\n", MP_ISA_BUS); 957 pr_debug("Bus #%d is ISA\n", MP_ISA_BUS);
962 958
963#ifdef CONFIG_X86_ES7000
964 /*
965 * Older generations of ES7000 have no legacy identity mappings
966 */
967 if (es7000_plat == 1)
968 return;
969#endif
970
971 /* 959 /*
972 * Use the default configuration for the IRQs 0-15. Unless 960 * Use the default configuration for the IRQs 0-15. Unless
973 * overridden by (MADT) interrupt source override entries. 961 * overridden by (MADT) interrupt source override entries.
diff --git a/arch/x86/kernel/apic/Makefile b/arch/x86/kernel/apic/Makefile
index 0ae0323b1f9c..7b600c68ed20 100644
--- a/arch/x86/kernel/apic/Makefile
+++ b/arch/x86/kernel/apic/Makefile
@@ -21,7 +21,6 @@ endif
21obj-$(CONFIG_X86_NUMAQ) += numaq_32.o 21obj-$(CONFIG_X86_NUMAQ) += numaq_32.o
22obj-$(CONFIG_X86_SUMMIT) += summit_32.o 22obj-$(CONFIG_X86_SUMMIT) += summit_32.o
23obj-$(CONFIG_X86_BIGSMP) += bigsmp_32.o 23obj-$(CONFIG_X86_BIGSMP) += bigsmp_32.o
24obj-$(CONFIG_X86_ES7000) += es7000_32.o
25 24
26# For 32bit, probe_32 need to be listed last 25# For 32bit, probe_32 need to be listed last
27obj-$(CONFIG_X86_LOCAL_APIC) += probe_$(BITS).o 26obj-$(CONFIG_X86_LOCAL_APIC) += probe_$(BITS).o
diff --git a/arch/x86/kernel/apic/es7000_32.c b/arch/x86/kernel/apic/es7000_32.c
deleted file mode 100644
index 6f8f8b348a39..000000000000
--- a/arch/x86/kernel/apic/es7000_32.c
+++ /dev/null
@@ -1,738 +0,0 @@
1/*
2 * Written by: Garry Forsgren, Unisys Corporation
3 * Natalie Protasevich, Unisys Corporation
4 *
5 * This file contains the code to configure and interface
6 * with Unisys ES7000 series hardware system manager.
7 *
8 * Copyright (c) 2003 Unisys Corporation.
9 * Copyright (C) 2009, Red Hat, Inc., Ingo Molnar
10 *
11 * All Rights Reserved.
12 *
13 * This program is free software; you can redistribute it and/or modify it
14 * under the terms of version 2 of the GNU General Public License as
15 * published by the Free Software Foundation.
16 *
17 * This program is distributed in the hope that it would be useful, but
18 * WITHOUT ANY WARRANTY; without even the implied warranty of
19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
20 *
21 * You should have received a copy of the GNU General Public License along
22 * with this program; if not, write the Free Software Foundation, Inc., 59
23 * Temple Place - Suite 330, Boston MA 02111-1307, USA.
24 *
25 * Contact information: Unisys Corporation, Township Line & Union Meeting
26 * Roads-A, Unisys Way, Blue Bell, Pennsylvania, 19424, or:
27 *
28 * http://www.unisys.com
29 */
30
31#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
32
33#include <linux/notifier.h>
34#include <linux/spinlock.h>
35#include <linux/cpumask.h>
36#include <linux/threads.h>
37#include <linux/kernel.h>
38#include <linux/module.h>
39#include <linux/reboot.h>
40#include <linux/string.h>
41#include <linux/types.h>
42#include <linux/errno.h>
43#include <linux/acpi.h>
44#include <linux/init.h>
45#include <linux/gfp.h>
46#include <linux/nmi.h>
47#include <linux/smp.h>
48#include <linux/io.h>
49
50#include <asm/apicdef.h>
51#include <linux/atomic.h>
52#include <asm/fixmap.h>
53#include <asm/mpspec.h>
54#include <asm/setup.h>
55#include <asm/apic.h>
56#include <asm/ipi.h>
57
58/*
59 * ES7000 chipsets
60 */
61
62#define NON_UNISYS 0
63#define ES7000_CLASSIC 1
64#define ES7000_ZORRO 2
65
66#define MIP_REG 1
67#define MIP_PSAI_REG 4
68
69#define MIP_BUSY 1
70#define MIP_SPIN 0xf0000
71#define MIP_VALID 0x0100000000000000ULL
72#define MIP_SW_APIC 0x1020b
73
74#define MIP_PORT(val) ((val >> 32) & 0xffff)
75
76#define MIP_RD_LO(val) (val & 0xffffffff)
77
78struct mip_reg {
79 unsigned long long off_0x00;
80 unsigned long long off_0x08;
81 unsigned long long off_0x10;
82 unsigned long long off_0x18;
83 unsigned long long off_0x20;
84 unsigned long long off_0x28;
85 unsigned long long off_0x30;
86 unsigned long long off_0x38;
87};
88
89struct mip_reg_info {
90 unsigned long long mip_info;
91 unsigned long long delivery_info;
92 unsigned long long host_reg;
93 unsigned long long mip_reg;
94};
95
96struct psai {
97 unsigned long long entry_type;
98