Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit df41017e authored by Christoph Hellwig's avatar Christoph Hellwig Committed by Tony Luck
Browse files

ia64: remove support for machvecs



The only thing remaining of the machvecs is a few checks if we are
running on an SGI UV system.  Replace those with the existing
is_uv_system() check that has been rewritten to simply check the
OEM ID directly.

That leaves us with a generic kernel that is as fast as the previous
DIG/ZX1/UV kernels, but can support all hardware.  Support for UV
and the HP SBA IOMMU is now optional based on new config options.

Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
Link: https://lkml.kernel.org/r/20190813072514.23299-27-hch@lst.de


Signed-off-by: default avatarTony Luck <tony.luck@intel.com>
parent a8384e6c
Loading
Loading
Loading
Loading
+21 −51
Original line number Diff line number Diff line
@@ -11,11 +11,13 @@ config IA64
	select ARCH_MIGHT_HAVE_PC_PARPORT
	select ARCH_MIGHT_HAVE_PC_SERIO
	select ACPI
	select ACPI_NUMA if NUMA
	select ARCH_SUPPORTS_ACPI
	select ACPI_SYSTEM_POWER_STATES_SUPPORT if ACPI
	select ARCH_MIGHT_HAVE_ACPI_PDC if ACPI
	select FORCE_PCI
	select PCI_DOMAINS if PCI
	select PCI_MSI
	select PCI_SYSCALL if PCI
	select HAVE_UNSTABLE_SCHED_CLOCK
	select HAVE_EXIT_THREAD
@@ -30,8 +32,8 @@ config IA64
	select HAVE_ARCH_TRACEHOOK
	select HAVE_MEMBLOCK_NODE_MAP
	select HAVE_VIRT_CPU_ACCOUNTING
	select ARCH_HAS_DMA_COHERENT_TO_PFN if SWIOTLB
	select ARCH_HAS_SYNC_DMA_FOR_CPU if SWIOTLB
	select ARCH_HAS_DMA_COHERENT_TO_PFN
	select ARCH_HAS_SYNC_DMA_FOR_CPU
	select VIRT_TO_BUS
	select GENERIC_IRQ_PROBE
	select GENERIC_PENDING_IRQ if SMP
@@ -45,6 +47,7 @@ config IA64
	select ARCH_THREAD_STACK_ALLOCATOR
	select ARCH_CLOCKSOURCE_DATA
	select GENERIC_TIME_VSYSCALL
	select SWIOTLB
	select SYSCTL_ARCH_UNALIGN_NO_WARN
	select HAVE_MOD_ARCH_SPECIFIC
	select MODULES_USE_ELF_RELA
@@ -52,6 +55,7 @@ config IA64
	select HAVE_ARCH_AUDITSYSCALL
	select NEED_DMA_MAP_STATE
	select NEED_SG_DMA_LENGTH
	select NUMA if !FLATMEM
	default y
	help
	  The Itanium Processor Family is Intel's 64-bit successor to
@@ -119,53 +123,6 @@ config AUDIT_ARCH
	bool
	default y

choice
	prompt "System type"
	default IA64_GENERIC

config IA64_GENERIC
	bool "generic"
	select NUMA
	select ACPI_NUMA
	select SWIOTLB
	select PCI_MSI
	help
	  This selects the system type of your hardware.  A "generic" kernel
	  will run on any supported IA-64 system.  However, if you configure
	  a kernel for your specific system, it will be faster and smaller.

	  generic		For any supported IA-64 system
	  DIG-compliant		For DIG ("Developer's Interface Guide") compliant systems
	  DIG+Intel+IOMMU	For DIG systems with Intel IOMMU
	  HP-zx1/sx1000		For HP systems
	  SGI-UV		For SGI UV systems

	  If you don't know what to do, choose "generic".

config IA64_DIG
	bool "DIG-compliant"
	select SWIOTLB

config IA64_HP_ZX1
	bool "HP-zx1/sx1000"
	help
	  Build a kernel that runs on HP zx1 and sx1000 systems.  This adds
	  support for the HP I/O MMU.

config IA64_SGI_UV
	bool "SGI-UV"
	select NUMA
	select ACPI_NUMA
	select SWIOTLB
	help
	  Selecting this option will optimize the kernel for use on UV based
	  systems, but the resulting kernel binary will not run on other
	  types of ia64 systems.  If you have an SGI UV system, it's safe
	  to select this option.  If in doubt, select ia64 generic support
	  instead.

endchoice

choice
	prompt "Processor type"
	default ITANIUM
@@ -230,6 +187,20 @@ config IA64_L1_CACHE_SHIFT
	default "7" if MCKINLEY
	default "6" if ITANIUM

config IA64_SGI_UV
	bool "SGI-UV support"
	help
	  Selecting this option will add specific support for running on SGI
	  UV based systems.  If you have an SGI UV system or are building a
	  distro kernel, select this option.

config IA64_HP_SBA_IOMMU
	bool "HP SBA IOMMU support"
	default y
	help
	  Say Y here to add support for the SBA IOMMU found on HP zx1 and
	  sx1000 systems.  If you're unsure, answer Y.

config IA64_CYCLONE
	bool "Cyclone (EXA) Time Source support"
	help
@@ -334,13 +305,12 @@ config ARCH_SPARSEMEM_ENABLE
	select SPARSEMEM_VMEMMAP_ENABLE

config ARCH_DISCONTIGMEM_DEFAULT
	def_bool y if (IA64_GENERIC || IA64_HP_ZX1)
	def_bool y
	depends on ARCH_DISCONTIGMEM_ENABLE

config NUMA
	bool "NUMA support"
	depends on !FLATMEM
	select ACPI_NUMA if ACPI
	help
	  Say Y to compile the kernel to support NUMA (Non-Uniform Memory
	  Access).  This option is for configuring high-end multiprocessor
+1 −1
Original line number Diff line number Diff line
@@ -14,7 +14,7 @@ config IA64_GRANULE_16MB

config IA64_GRANULE_64MB
	bool "64MB"
	depends on !(IA64_GENERIC || IA64_HP_ZX1)
	depends on BROKEN

endchoice

+1 −6
Original line number Diff line number Diff line
@@ -50,14 +50,9 @@ head-y := arch/ia64/kernel/head.o

libs-y				+= arch/ia64/lib/
core-y				+= arch/ia64/kernel/ arch/ia64/mm/
core-$(CONFIG_IA64_DIG) 	+= arch/ia64/dig/
core-$(CONFIG_IA64_GENERIC) 	+= arch/ia64/dig/
core-$(CONFIG_IA64_HP_ZX1)	+= arch/ia64/dig/
core-$(CONFIG_IA64_SGI_UV)	+= arch/ia64/uv/

drivers-y			+= arch/ia64/pci/
drivers-$(CONFIG_IA64_HP_ZX1)	+= arch/ia64/hp/common/ arch/ia64/hp/zx1/
drivers-$(CONFIG_IA64_GENERIC)	+= arch/ia64/hp/common/ arch/ia64/hp/zx1/ arch/ia64/uv/
drivers-y			+= arch/ia64/pci/ arch/ia64/hp/common/
drivers-$(CONFIG_OPROFILE)	+= arch/ia64/oprofile/

PHONY += compressed check
+0 −1
Original line number Diff line number Diff line
@@ -7,7 +7,6 @@ CONFIG_MODULES=y
CONFIG_MODULE_UNLOAD=y
CONFIG_PARTITION_ADVANCED=y
CONFIG_SGI_PARTITION=y
CONFIG_IA64_DIG=y
CONFIG_SMP=y
CONFIG_NR_CPUS=2
CONFIG_PREEMPT=y
+0 −1
Original line number Diff line number Diff line
@@ -12,7 +12,6 @@ CONFIG_MODULE_SRCVERSION_ALL=y
# CONFIG_BLK_DEV_BSG is not set
CONFIG_PARTITION_ADVANCED=y
CONFIG_SGI_PARTITION=y
CONFIG_IA64_DIG=y
CONFIG_MCKINLEY=y
CONFIG_IA64_PAGE_SIZE_64KB=y
CONFIG_IA64_CYCLONE=y
Loading