#config SGI_SN0_XXL
#	bool "IP27 XXL"
#	depends on SGI_IP27
#	  This options adds support for userspace processes upto 16TB size.
#	  Normally the limit is just .5TB.

choice
	prompt "Node addressing mode"
	depends on SGI_IP27
	default SGI_SN_M_MODE

config SGI_SN_M_MODE
	bool "IP27 M-Mode"
	help
	  The nodes of Origin, Onyx, Fuel and Tezro systems can be configured
	  in either N-Modes which allows for more nodes or M-Mode which allows
	  for more memory.  Your hardware is almost certainly running in
	  M-Mode, so choose M-mode here.

config SGI_SN_N_MODE
	bool "IP27 N-Mode"
	depends on EXPERIMENTAL
	help
	  The nodes of Origin, Onyx, Fuel and Tezro systems can be configured
	  in either N-Modes which allows for more nodes or M-Mode which allows
	  for more memory.  Your hardware is almost certainly running in
	  M-Mode, so choose M-mode here.

endchoice

config MAPPED_KERNEL
	bool "Mapped kernel support"
	depends on SGI_IP27
	help
	  Change the way a Linux kernel is loaded into memory on a MIPS64
	  machine.  This is required in order to support text replication and
	  NUMA.  If you need to understand it, read the source code.

config REPLICATE_KTEXT
	bool "Kernel text replication support"
	depends on SGI_IP27
	help
	  Say Y here to enable replicating the kernel text across multiple
	  nodes in a NUMA cluster.  This trades memory for speed.

config REPLICATE_EXHANDLERS
	bool "Exception handler replication support"
	depends on SGI_IP27
	help
	  Say Y here to enable replicating the kernel exception handlers
	  across multiple nodes in a NUMA cluster. This trades memory for
	  speed.
