diff options
| -rw-r--r-- | arch/x86/Kconfig | 12 | ||||
| -rw-r--r-- | arch/x86/kernel/acpi/boot.c | 12 | ||||
| -rw-r--r-- | arch/x86/kernel/apic/Makefile | 1 | ||||
| -rw-r--r-- | arch/x86/kernel/apic/es7000_32.c | 738 |
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 | ||
| 558 | config 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 | |||
| 565 | config X86_32_IRIS | 557 | config 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 | ||
| 911 | extern int es7000_plat; | ||
| 912 | #endif | ||
| 913 | |||
| 914 | void __init mp_override_legacy_irq(u8 bus_irq, u8 polarity, u8 trigger, u32 gsi) | 910 | void __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 | |||
| 21 | obj-$(CONFIG_X86_NUMAQ) += numaq_32.o | 21 | obj-$(CONFIG_X86_NUMAQ) += numaq_32.o |
| 22 | obj-$(CONFIG_X86_SUMMIT) += summit_32.o | 22 | obj-$(CONFIG_X86_SUMMIT) += summit_32.o |
| 23 | obj-$(CONFIG_X86_BIGSMP) += bigsmp_32.o | 23 | obj-$(CONFIG_X86_BIGSMP) += bigsmp_32.o |
| 24 | obj-$(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 |
| 27 | obj-$(CONFIG_X86_LOCAL_APIC) += probe_$(BITS).o | 26 | obj-$(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 | |||
| 78 | struct 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 | |||
| 89 | struct 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 | |||
| 96 | struct psai { | ||
| 97 | unsigned long long entry_type; | ||
| 98 | |||
