ia64: remove support for the SGI SN2 platform
The SGI SN2 (early Altix) is a very non-standard IA64 platform that was at the very high end of even IA64 hardware, and has been discontinued a long time ago. Remove it because there no upstream users left, and it has magic hooks all over the kernel. Signed-off-by: Christoph Hellwig <hch@lst.de> Link: https://lkml.kernel.org/r/20190813072514.23299-16-hch@lst.de Signed-off-by: Tony Luck <tony.luck@intel.com>
This commit is contained in:

committed by
Tony Luck

orang tua
f7bc6e42bf
melakukan
cf07cb1ff4
@@ -96,8 +96,6 @@ acpi_get_sysname(void)
|
||||
} else if (!strcmp(hdr->oem_id, "SGI")) {
|
||||
if (!strcmp(hdr->oem_table_id + 4, "UV"))
|
||||
return "uv";
|
||||
else
|
||||
return "sn2";
|
||||
}
|
||||
|
||||
#ifdef CONFIG_INTEL_IOMMU
|
||||
@@ -407,7 +405,7 @@ get_processor_proximity_domain(struct acpi_srat_cpu_affinity *pa)
|
||||
int pxm;
|
||||
|
||||
pxm = pa->proximity_domain_lo;
|
||||
if (ia64_platform_is("sn2") || acpi_srat_revision >= 2)
|
||||
if (acpi_srat_revision >= 2)
|
||||
pxm += pa->proximity_domain_hi[0] << 8;
|
||||
return pxm;
|
||||
}
|
||||
@@ -418,7 +416,7 @@ get_memory_proximity_domain(struct acpi_srat_mem_affinity *ma)
|
||||
int pxm;
|
||||
|
||||
pxm = ma->proximity_domain;
|
||||
if (!ia64_platform_is("sn2") && acpi_srat_revision <= 1)
|
||||
if (acpi_srat_revision <= 1)
|
||||
pxm &= 0xff;
|
||||
|
||||
return pxm;
|
||||
@@ -710,9 +708,8 @@ int __init acpi_boot_init(void)
|
||||
|
||||
if (acpi_table_parse_madt
|
||||
(ACPI_MADT_TYPE_IO_SAPIC, acpi_parse_iosapic, NR_IOSAPICS) < 1) {
|
||||
if (!ia64_platform_is("sn2"))
|
||||
printk(KERN_ERR PREFIX
|
||||
"Error parsing MADT - no IOSAPIC entries\n");
|
||||
printk(KERN_ERR PREFIX
|
||||
"Error parsing MADT - no IOSAPIC entries\n");
|
||||
}
|
||||
|
||||
/* System-Level Interrupt Routing */
|
||||
|
@@ -73,17 +73,6 @@ void set_irq_affinity_info (unsigned int irq, int hwid, int redir)
|
||||
irq_redir[irq] = (char) (redir & 0xff);
|
||||
}
|
||||
}
|
||||
|
||||
bool is_affinity_mask_valid(const struct cpumask *cpumask)
|
||||
{
|
||||
if (ia64_platform_is("sn2")) {
|
||||
/* Only allow one CPU to be specified in the smp_affinity mask */
|
||||
if (cpumask_weight(cpumask) != 1)
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
#endif /* CONFIG_SMP */
|
||||
|
||||
int __init arch_early_irq_init(void)
|
||||
|
@@ -110,13 +110,6 @@ check_versions (struct ia64_sal_systab *systab)
|
||||
sal_revision = SAL_VERSION_CODE(2, 8);
|
||||
sal_version = SAL_VERSION_CODE(0, 0);
|
||||
}
|
||||
|
||||
if (ia64_platform_is("sn2") && (sal_revision == SAL_VERSION_CODE(2, 9)))
|
||||
/*
|
||||
* SGI Altix has hard-coded version 2.9 in their prom
|
||||
* but they actually implement 3.2, so let's fix it here.
|
||||
*/
|
||||
sal_revision = SAL_VERSION_CODE(3, 2);
|
||||
}
|
||||
|
||||
static void __init
|
||||
|
@@ -260,11 +260,11 @@ __initcall(register_memory);
|
||||
* in kdump case. See the comment in sba_init() in sba_iommu.c.
|
||||
*
|
||||
* So, the only machvec that really supports loading the kdump kernel
|
||||
* over 4 GB is "sn2".
|
||||
* over 4 GB is "uv".
|
||||
*/
|
||||
static int __init check_crashkernel_memory(unsigned long pbase, size_t size)
|
||||
{
|
||||
if (ia64_platform_is("sn2") || ia64_platform_is("uv"))
|
||||
if (ia64_platform_is("uv"))
|
||||
return 1;
|
||||
else
|
||||
return pbase < (1UL << 32);
|
||||
|
@@ -57,7 +57,6 @@
|
||||
#include <asm/sal.h>
|
||||
#include <asm/tlbflush.h>
|
||||
#include <asm/unistd.h>
|
||||
#include <asm/sn/arch.h>
|
||||
|
||||
#define SMP_DEBUG 0
|
||||
|
||||
@@ -658,11 +657,6 @@ int __cpu_disable(void)
|
||||
return (-EBUSY);
|
||||
}
|
||||
|
||||
if (ia64_platform_is("sn2")) {
|
||||
if (!sn_cpu_disable_allowed(cpu))
|
||||
return -EBUSY;
|
||||
}
|
||||
|
||||
set_cpu_online(cpu, false);
|
||||
|
||||
if (migrate_platform_irqs(cpu)) {
|
||||
|
@@ -24,7 +24,6 @@
|
||||
#include <asm/pgtable.h>
|
||||
#include <linux/atomic.h>
|
||||
#include <asm/tlbflush.h>
|
||||
#include <asm/sn/arch.h>
|
||||
|
||||
|
||||
extern void __init efi_memmap_walk_uc(efi_freemem_callback_t, void *);
|
||||
@@ -129,10 +128,7 @@ static int uncached_add_chunk(struct uncached_pool *uc_pool, int nid)
|
||||
|
||||
preempt_disable();
|
||||
|
||||
if (ia64_platform_is("sn2"))
|
||||
sn_flush_all_caches(uc_addr, IA64_GRANULE_SIZE);
|
||||
else
|
||||
flush_icache_range(uc_addr, uc_addr + IA64_GRANULE_SIZE);
|
||||
flush_icache_range(uc_addr, uc_addr + IA64_GRANULE_SIZE);
|
||||
|
||||
/* flush the just introduced uncached translation from the TLB */
|
||||
local_flush_tlb_all();
|
||||
|
Reference in New Issue
Block a user