diff options
author | Natalie.Protasevich@unisys.com <Natalie.Protasevich@unisys.com> | 2005-10-30 17:59:38 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2005-10-30 20:37:12 -0500 |
commit | 9338316c9323682d32270d83b106472a50ab6da4 (patch) | |
tree | 372f32101f2ed04ca03335638998905930d23e55 | |
parent | 30037f66ce63b6b7ca1fbfb06605b831f4a60df6 (diff) |
[PATCH] ES7000 platform update
This is platform code update for ES7000: disables IRQ overrides for the
recent ES7000 (Rascal/Zorro), cleans up the compile warning. The patch
only affects the ES7000 subarch.
Signed-off-by: <Natalie.Protasevich@unisys.com>
Acked-by: Zwane Mwaikambo <zwane@arm.linux.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-rw-r--r-- | arch/i386/mach-es7000/es7000.h | 11 | ||||
-rw-r--r-- | arch/i386/mach-es7000/es7000plat.c | 11 | ||||
-rw-r--r-- | include/asm-i386/mach-es7000/mach_mpparse.h | 2 |
3 files changed, 18 insertions, 6 deletions
diff --git a/arch/i386/mach-es7000/es7000.h b/arch/i386/mach-es7000/es7000.h index 898ed905e119..f1e3204f5dec 100644 --- a/arch/i386/mach-es7000/es7000.h +++ b/arch/i386/mach-es7000/es7000.h | |||
@@ -24,6 +24,15 @@ | |||
24 | * http://www.unisys.com | 24 | * http://www.unisys.com |
25 | */ | 25 | */ |
26 | 26 | ||
27 | /* | ||
28 | * ES7000 chipsets | ||
29 | */ | ||
30 | |||
31 | #define NON_UNISYS 0 | ||
32 | #define ES7000_CLASSIC 1 | ||
33 | #define ES7000_ZORRO 2 | ||
34 | |||
35 | |||
27 | #define MIP_REG 1 | 36 | #define MIP_REG 1 |
28 | #define MIP_PSAI_REG 4 | 37 | #define MIP_PSAI_REG 4 |
29 | 38 | ||
@@ -106,6 +115,6 @@ struct mip_reg { | |||
106 | 115 | ||
107 | extern int parse_unisys_oem (char *oemptr); | 116 | extern int parse_unisys_oem (char *oemptr); |
108 | extern int find_unisys_acpi_oem_table(unsigned long *oem_addr); | 117 | extern int find_unisys_acpi_oem_table(unsigned long *oem_addr); |
109 | extern void setup_unisys (); | 118 | extern void setup_unisys(void); |
110 | extern int es7000_start_cpu(int cpu, unsigned long eip); | 119 | extern int es7000_start_cpu(int cpu, unsigned long eip); |
111 | extern void es7000_sw_apic(void); | 120 | extern void es7000_sw_apic(void); |
diff --git a/arch/i386/mach-es7000/es7000plat.c b/arch/i386/mach-es7000/es7000plat.c index dc6660511b07..a9ab0644f403 100644 --- a/arch/i386/mach-es7000/es7000plat.c +++ b/arch/i386/mach-es7000/es7000plat.c | |||
@@ -62,6 +62,9 @@ static unsigned int base; | |||
62 | static int | 62 | static int |
63 | es7000_rename_gsi(int ioapic, int gsi) | 63 | es7000_rename_gsi(int ioapic, int gsi) |
64 | { | 64 | { |
65 | if (es7000_plat == ES7000_ZORRO) | ||
66 | return gsi; | ||
67 | |||
65 | if (!base) { | 68 | if (!base) { |
66 | int i; | 69 | int i; |
67 | for (i = 0; i < nr_ioapics; i++) | 70 | for (i = 0; i < nr_ioapics; i++) |
@@ -76,7 +79,7 @@ es7000_rename_gsi(int ioapic, int gsi) | |||
76 | #endif /* (CONFIG_X86_IO_APIC) && (CONFIG_ACPI) */ | 79 | #endif /* (CONFIG_X86_IO_APIC) && (CONFIG_ACPI) */ |
77 | 80 | ||
78 | void __init | 81 | void __init |
79 | setup_unisys () | 82 | setup_unisys(void) |
80 | { | 83 | { |
81 | /* | 84 | /* |
82 | * Determine the generation of the ES7000 currently running. | 85 | * Determine the generation of the ES7000 currently running. |
@@ -86,9 +89,9 @@ setup_unisys () | |||
86 | * | 89 | * |
87 | */ | 90 | */ |
88 | if (!(boot_cpu_data.x86 <= 15 && boot_cpu_data.x86_model <= 2)) | 91 | if (!(boot_cpu_data.x86 <= 15 && boot_cpu_data.x86_model <= 2)) |
89 | es7000_plat = 2; | 92 | es7000_plat = ES7000_ZORRO; |
90 | else | 93 | else |
91 | es7000_plat = 1; | 94 | es7000_plat = ES7000_CLASSIC; |
92 | ioapic_renumber_irq = es7000_rename_gsi; | 95 | ioapic_renumber_irq = es7000_rename_gsi; |
93 | } | 96 | } |
94 | 97 | ||
@@ -151,7 +154,7 @@ parse_unisys_oem (char *oemptr) | |||
151 | } | 154 | } |
152 | 155 | ||
153 | if (success < 2) { | 156 | if (success < 2) { |
154 | es7000_plat = 0; | 157 | es7000_plat = NON_UNISYS; |
155 | } else | 158 | } else |
156 | setup_unisys(); | 159 | setup_unisys(); |
157 | return es7000_plat; | 160 | return es7000_plat; |
diff --git a/include/asm-i386/mach-es7000/mach_mpparse.h b/include/asm-i386/mach-es7000/mach_mpparse.h index 28a84f6185a7..4a0637a3e208 100644 --- a/include/asm-i386/mach-es7000/mach_mpparse.h +++ b/include/asm-i386/mach-es7000/mach_mpparse.h | |||
@@ -16,7 +16,7 @@ static inline void mpc_oem_pci_bus(struct mpc_config_bus *m, | |||
16 | 16 | ||
17 | extern int parse_unisys_oem (char *oemptr); | 17 | extern int parse_unisys_oem (char *oemptr); |
18 | extern int find_unisys_acpi_oem_table(unsigned long *oem_addr); | 18 | extern int find_unisys_acpi_oem_table(unsigned long *oem_addr); |
19 | extern void setup_unisys(); | 19 | extern void setup_unisys(void); |
20 | 20 | ||
21 | static inline int mps_oem_check(struct mp_config_table *mpc, char *oem, | 21 | static inline int mps_oem_check(struct mp_config_table *mpc, char *oem, |
22 | char *productid) | 22 | char *productid) |