18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0-only
28c2ecf20Sopenharmony_ciconfig 64BIT
38c2ecf20Sopenharmony_ci	bool "64-bit kernel" if "$(ARCH)" = "sparc"
48c2ecf20Sopenharmony_ci	default "$(ARCH)" = "sparc64"
58c2ecf20Sopenharmony_ci	help
68c2ecf20Sopenharmony_ci	  SPARC is a family of RISC microprocessors designed and marketed by
78c2ecf20Sopenharmony_ci	  Sun Microsystems, incorporated.  They are very widely found in Sun
88c2ecf20Sopenharmony_ci	  workstations and clones.
98c2ecf20Sopenharmony_ci
108c2ecf20Sopenharmony_ci	  Say yes to build a 64-bit kernel - formerly known as sparc64
118c2ecf20Sopenharmony_ci	  Say no to build a 32-bit kernel - formerly known as sparc
128c2ecf20Sopenharmony_ci
138c2ecf20Sopenharmony_ciconfig SPARC
148c2ecf20Sopenharmony_ci	bool
158c2ecf20Sopenharmony_ci	default y
168c2ecf20Sopenharmony_ci	select ARCH_MIGHT_HAVE_PC_PARPORT if SPARC64 && PCI
178c2ecf20Sopenharmony_ci	select ARCH_MIGHT_HAVE_PC_SERIO
188c2ecf20Sopenharmony_ci	select DMA_OPS
198c2ecf20Sopenharmony_ci	select OF
208c2ecf20Sopenharmony_ci	select OF_PROMTREE
218c2ecf20Sopenharmony_ci	select HAVE_ASM_MODVERSIONS
228c2ecf20Sopenharmony_ci	select HAVE_IDE
238c2ecf20Sopenharmony_ci	select HAVE_OPROFILE
248c2ecf20Sopenharmony_ci	select HAVE_ARCH_KGDB if !SMP || SPARC64
258c2ecf20Sopenharmony_ci	select HAVE_ARCH_TRACEHOOK
268c2ecf20Sopenharmony_ci	select HAVE_ARCH_SECCOMP if SPARC64
278c2ecf20Sopenharmony_ci	select HAVE_EXIT_THREAD
288c2ecf20Sopenharmony_ci	select HAVE_PCI
298c2ecf20Sopenharmony_ci	select SYSCTL_EXCEPTION_TRACE
308c2ecf20Sopenharmony_ci	select RTC_CLASS
318c2ecf20Sopenharmony_ci	select RTC_DRV_M48T59
328c2ecf20Sopenharmony_ci	select RTC_SYSTOHC
338c2ecf20Sopenharmony_ci	select HAVE_ARCH_JUMP_LABEL if SPARC64
348c2ecf20Sopenharmony_ci	select GENERIC_IRQ_SHOW
358c2ecf20Sopenharmony_ci	select ARCH_WANT_IPC_PARSE_VERSION
368c2ecf20Sopenharmony_ci	select GENERIC_PCI_IOMAP
378c2ecf20Sopenharmony_ci	select HAVE_NMI_WATCHDOG if SPARC64
388c2ecf20Sopenharmony_ci	select HAVE_CBPF_JIT if SPARC32
398c2ecf20Sopenharmony_ci	select HAVE_EBPF_JIT if SPARC64
408c2ecf20Sopenharmony_ci	select HAVE_DEBUG_BUGVERBOSE
418c2ecf20Sopenharmony_ci	select GENERIC_SMP_IDLE_THREAD
428c2ecf20Sopenharmony_ci	select GENERIC_CLOCKEVENTS
438c2ecf20Sopenharmony_ci	select GENERIC_STRNCPY_FROM_USER
448c2ecf20Sopenharmony_ci	select GENERIC_STRNLEN_USER
458c2ecf20Sopenharmony_ci	select MODULES_USE_ELF_RELA
468c2ecf20Sopenharmony_ci	select PCI_SYSCALL if PCI
478c2ecf20Sopenharmony_ci	select PCI_MSI_ARCH_FALLBACKS if PCI_MSI
488c2ecf20Sopenharmony_ci	select ODD_RT_SIGACTION
498c2ecf20Sopenharmony_ci	select OLD_SIGSUSPEND
508c2ecf20Sopenharmony_ci	select CPU_NO_EFFICIENT_FFS
518c2ecf20Sopenharmony_ci	select LOCKDEP_SMALL if LOCKDEP
528c2ecf20Sopenharmony_ci	select NEED_DMA_MAP_STATE
538c2ecf20Sopenharmony_ci	select NEED_SG_DMA_LENGTH
548c2ecf20Sopenharmony_ci	select SET_FS
558c2ecf20Sopenharmony_ci
568c2ecf20Sopenharmony_ciconfig SPARC32
578c2ecf20Sopenharmony_ci	def_bool !64BIT
588c2ecf20Sopenharmony_ci	select ARCH_32BIT_OFF_T
598c2ecf20Sopenharmony_ci	select ARCH_HAS_CPU_FINALIZE_INIT if !SMP
608c2ecf20Sopenharmony_ci	select ARCH_HAS_SYNC_DMA_FOR_CPU
618c2ecf20Sopenharmony_ci	select GENERIC_ATOMIC64
628c2ecf20Sopenharmony_ci	select CLZ_TAB
638c2ecf20Sopenharmony_ci	select HAVE_UID16
648c2ecf20Sopenharmony_ci	select OLD_SIGACTION
658c2ecf20Sopenharmony_ci
668c2ecf20Sopenharmony_ciconfig SPARC64
678c2ecf20Sopenharmony_ci	def_bool 64BIT
688c2ecf20Sopenharmony_ci	select HAVE_FUNCTION_TRACER
698c2ecf20Sopenharmony_ci	select HAVE_FUNCTION_GRAPH_TRACER
708c2ecf20Sopenharmony_ci	select HAVE_KRETPROBES
718c2ecf20Sopenharmony_ci	select HAVE_KPROBES
728c2ecf20Sopenharmony_ci	select MMU_GATHER_RCU_TABLE_FREE if SMP
738c2ecf20Sopenharmony_ci	select HAVE_ARCH_TRANSPARENT_HUGEPAGE
748c2ecf20Sopenharmony_ci	select HAVE_DYNAMIC_FTRACE
758c2ecf20Sopenharmony_ci	select HAVE_FTRACE_MCOUNT_RECORD
768c2ecf20Sopenharmony_ci	select HAVE_SYSCALL_TRACEPOINTS
778c2ecf20Sopenharmony_ci	select HAVE_CONTEXT_TRACKING
788c2ecf20Sopenharmony_ci	select HAVE_TIF_NOHZ
798c2ecf20Sopenharmony_ci	select HAVE_DEBUG_KMEMLEAK
808c2ecf20Sopenharmony_ci	select IOMMU_HELPER
818c2ecf20Sopenharmony_ci	select SPARSE_IRQ
828c2ecf20Sopenharmony_ci	select RTC_DRV_CMOS
838c2ecf20Sopenharmony_ci	select RTC_DRV_BQ4802
848c2ecf20Sopenharmony_ci	select RTC_DRV_SUN4V
858c2ecf20Sopenharmony_ci	select RTC_DRV_STARFIRE
868c2ecf20Sopenharmony_ci	select HAVE_PERF_EVENTS
878c2ecf20Sopenharmony_ci	select PERF_USE_VMALLOC
888c2ecf20Sopenharmony_ci	select ARCH_HAVE_NMI_SAFE_CMPXCHG
898c2ecf20Sopenharmony_ci	select HAVE_C_RECORDMCOUNT
908c2ecf20Sopenharmony_ci	select HAVE_ARCH_AUDITSYSCALL
918c2ecf20Sopenharmony_ci	select ARCH_SUPPORTS_ATOMIC_RMW
928c2ecf20Sopenharmony_ci	select HAVE_NMI
938c2ecf20Sopenharmony_ci	select HAVE_REGS_AND_STACK_ACCESS_API
948c2ecf20Sopenharmony_ci	select ARCH_USE_QUEUED_RWLOCKS
958c2ecf20Sopenharmony_ci	select ARCH_USE_QUEUED_SPINLOCKS
968c2ecf20Sopenharmony_ci	select GENERIC_TIME_VSYSCALL
978c2ecf20Sopenharmony_ci	select ARCH_CLOCKSOURCE_DATA
988c2ecf20Sopenharmony_ci	select ARCH_HAS_PTE_SPECIAL
998c2ecf20Sopenharmony_ci	select PCI_DOMAINS if PCI
1008c2ecf20Sopenharmony_ci	select ARCH_HAS_GIGANTIC_PAGE
1018c2ecf20Sopenharmony_ci
1028c2ecf20Sopenharmony_ciconfig ARCH_PROC_KCORE_TEXT
1038c2ecf20Sopenharmony_ci	def_bool y
1048c2ecf20Sopenharmony_ci
1058c2ecf20Sopenharmony_ciconfig CPU_BIG_ENDIAN
1068c2ecf20Sopenharmony_ci	def_bool y
1078c2ecf20Sopenharmony_ci
1088c2ecf20Sopenharmony_ciconfig ARCH_ATU
1098c2ecf20Sopenharmony_ci	bool
1108c2ecf20Sopenharmony_ci	default y if SPARC64
1118c2ecf20Sopenharmony_ci
1128c2ecf20Sopenharmony_ciconfig STACKTRACE_SUPPORT
1138c2ecf20Sopenharmony_ci	bool
1148c2ecf20Sopenharmony_ci	default y if SPARC64
1158c2ecf20Sopenharmony_ci
1168c2ecf20Sopenharmony_ciconfig LOCKDEP_SUPPORT
1178c2ecf20Sopenharmony_ci	bool
1188c2ecf20Sopenharmony_ci	default y if SPARC64
1198c2ecf20Sopenharmony_ci
1208c2ecf20Sopenharmony_ciconfig ARCH_HIBERNATION_POSSIBLE
1218c2ecf20Sopenharmony_ci	def_bool y if SPARC64
1228c2ecf20Sopenharmony_ci
1238c2ecf20Sopenharmony_ciconfig AUDIT_ARCH
1248c2ecf20Sopenharmony_ci	bool
1258c2ecf20Sopenharmony_ci	default y
1268c2ecf20Sopenharmony_ci
1278c2ecf20Sopenharmony_ciconfig HAVE_SETUP_PER_CPU_AREA
1288c2ecf20Sopenharmony_ci	def_bool y if SPARC64
1298c2ecf20Sopenharmony_ci
1308c2ecf20Sopenharmony_ciconfig NEED_PER_CPU_EMBED_FIRST_CHUNK
1318c2ecf20Sopenharmony_ci	def_bool y if SPARC64
1328c2ecf20Sopenharmony_ci
1338c2ecf20Sopenharmony_ciconfig NEED_PER_CPU_PAGE_FIRST_CHUNK
1348c2ecf20Sopenharmony_ci	def_bool y if SPARC64
1358c2ecf20Sopenharmony_ci
1368c2ecf20Sopenharmony_ciconfig MMU
1378c2ecf20Sopenharmony_ci	bool
1388c2ecf20Sopenharmony_ci	default y
1398c2ecf20Sopenharmony_ci
1408c2ecf20Sopenharmony_ciconfig HIGHMEM
1418c2ecf20Sopenharmony_ci	bool
1428c2ecf20Sopenharmony_ci	default y if SPARC32
1438c2ecf20Sopenharmony_ci
1448c2ecf20Sopenharmony_ciconfig ZONE_DMA
1458c2ecf20Sopenharmony_ci	bool
1468c2ecf20Sopenharmony_ci	default y if SPARC32
1478c2ecf20Sopenharmony_ci
1488c2ecf20Sopenharmony_ciconfig GENERIC_ISA_DMA
1498c2ecf20Sopenharmony_ci	bool
1508c2ecf20Sopenharmony_ci	default y if SPARC32
1518c2ecf20Sopenharmony_ci
1528c2ecf20Sopenharmony_ciconfig ARCH_SUPPORTS_DEBUG_PAGEALLOC
1538c2ecf20Sopenharmony_ci	def_bool y if SPARC64
1548c2ecf20Sopenharmony_ci
1558c2ecf20Sopenharmony_ciconfig PGTABLE_LEVELS
1568c2ecf20Sopenharmony_ci	default 4 if 64BIT
1578c2ecf20Sopenharmony_ci	default 3
1588c2ecf20Sopenharmony_ci
1598c2ecf20Sopenharmony_ciconfig ARCH_SUPPORTS_UPROBES
1608c2ecf20Sopenharmony_ci	def_bool y if SPARC64
1618c2ecf20Sopenharmony_ci
1628c2ecf20Sopenharmony_cimenu "Processor type and features"
1638c2ecf20Sopenharmony_ci
1648c2ecf20Sopenharmony_ciconfig SMP
1658c2ecf20Sopenharmony_ci	bool "Symmetric multi-processing support"
1668c2ecf20Sopenharmony_ci	help
1678c2ecf20Sopenharmony_ci	  This enables support for systems with more than one CPU. If you have
1688c2ecf20Sopenharmony_ci	  a system with only one CPU, say N. If you have a system with more
1698c2ecf20Sopenharmony_ci	  than one CPU, say Y.
1708c2ecf20Sopenharmony_ci
1718c2ecf20Sopenharmony_ci	  If you say N here, the kernel will run on uni- and multiprocessor
1728c2ecf20Sopenharmony_ci	  machines, but will use only one CPU of a multiprocessor machine. If
1738c2ecf20Sopenharmony_ci	  you say Y here, the kernel will run on many, but not all,
1748c2ecf20Sopenharmony_ci	  uniprocessor machines. On a uniprocessor machine, the kernel
1758c2ecf20Sopenharmony_ci	  will run faster if you say N here.
1768c2ecf20Sopenharmony_ci
1778c2ecf20Sopenharmony_ci	  People using multiprocessor machines who say Y here should also say
1788c2ecf20Sopenharmony_ci	  Y to "Enhanced Real Time Clock Support", below. The "Advanced Power
1798c2ecf20Sopenharmony_ci	  Management" code will be disabled if you say Y here.
1808c2ecf20Sopenharmony_ci
1818c2ecf20Sopenharmony_ci	  See also <file:Documentation/admin-guide/lockup-watchdogs.rst> and the SMP-HOWTO
1828c2ecf20Sopenharmony_ci	  available at <http://www.tldp.org/docs.html#howto>.
1838c2ecf20Sopenharmony_ci
1848c2ecf20Sopenharmony_ci	  If you don't know what to do here, say N.
1858c2ecf20Sopenharmony_ci
1868c2ecf20Sopenharmony_ciconfig NR_CPUS
1878c2ecf20Sopenharmony_ci	int "Maximum number of CPUs"
1888c2ecf20Sopenharmony_ci	depends on SMP
1898c2ecf20Sopenharmony_ci	range 2 32 if SPARC32
1908c2ecf20Sopenharmony_ci	range 2 4096 if SPARC64
1918c2ecf20Sopenharmony_ci	default 32 if SPARC32
1928c2ecf20Sopenharmony_ci	default 4096 if SPARC64
1938c2ecf20Sopenharmony_ci
1948c2ecf20Sopenharmony_cisource "kernel/Kconfig.hz"
1958c2ecf20Sopenharmony_ci
1968c2ecf20Sopenharmony_ciconfig GENERIC_HWEIGHT
1978c2ecf20Sopenharmony_ci	bool
1988c2ecf20Sopenharmony_ci	default y
1998c2ecf20Sopenharmony_ci
2008c2ecf20Sopenharmony_ciconfig GENERIC_CALIBRATE_DELAY
2018c2ecf20Sopenharmony_ci	bool
2028c2ecf20Sopenharmony_ci	default y
2038c2ecf20Sopenharmony_ci
2048c2ecf20Sopenharmony_ciconfig ARCH_MAY_HAVE_PC_FDC
2058c2ecf20Sopenharmony_ci	bool
2068c2ecf20Sopenharmony_ci	default y
2078c2ecf20Sopenharmony_ci
2088c2ecf20Sopenharmony_ciconfig EMULATED_CMPXCHG
2098c2ecf20Sopenharmony_ci	bool
2108c2ecf20Sopenharmony_ci	default y if SPARC32
2118c2ecf20Sopenharmony_ci	help
2128c2ecf20Sopenharmony_ci	  Sparc32 does not have a CAS instruction like sparc64. cmpxchg()
2138c2ecf20Sopenharmony_ci	  is emulated, and therefore it is not completely atomic.
2148c2ecf20Sopenharmony_ci
2158c2ecf20Sopenharmony_ci# Makefile helpers
2168c2ecf20Sopenharmony_ciconfig SPARC32_SMP
2178c2ecf20Sopenharmony_ci	bool
2188c2ecf20Sopenharmony_ci	default y
2198c2ecf20Sopenharmony_ci	depends on SPARC32 && SMP
2208c2ecf20Sopenharmony_ci
2218c2ecf20Sopenharmony_ciconfig SPARC64_SMP
2228c2ecf20Sopenharmony_ci	bool
2238c2ecf20Sopenharmony_ci	default y
2248c2ecf20Sopenharmony_ci	depends on SPARC64 && SMP
2258c2ecf20Sopenharmony_ci
2268c2ecf20Sopenharmony_ciconfig EARLYFB
2278c2ecf20Sopenharmony_ci	bool "Support for early boot text console"
2288c2ecf20Sopenharmony_ci	default y
2298c2ecf20Sopenharmony_ci	depends on SPARC64
2308c2ecf20Sopenharmony_ci	help
2318c2ecf20Sopenharmony_ci	  Say Y here to enable a faster early framebuffer boot console.
2328c2ecf20Sopenharmony_ci
2338c2ecf20Sopenharmony_ciconfig HOTPLUG_CPU
2348c2ecf20Sopenharmony_ci	bool "Support for hot-pluggable CPUs"
2358c2ecf20Sopenharmony_ci	depends on SPARC64 && SMP
2368c2ecf20Sopenharmony_ci	help
2378c2ecf20Sopenharmony_ci	  Say Y here to experiment with turning CPUs off and on.  CPUs
2388c2ecf20Sopenharmony_ci	  can be controlled through /sys/devices/system/cpu/cpu#.
2398c2ecf20Sopenharmony_ci	  Say N if you want to disable CPU hotplug.
2408c2ecf20Sopenharmony_ci
2418c2ecf20Sopenharmony_ciif SPARC64
2428c2ecf20Sopenharmony_cisource "drivers/cpufreq/Kconfig"
2438c2ecf20Sopenharmony_ciendif
2448c2ecf20Sopenharmony_ci
2458c2ecf20Sopenharmony_ciconfig US3_MC
2468c2ecf20Sopenharmony_ci	tristate "UltraSPARC-III Memory Controller driver"
2478c2ecf20Sopenharmony_ci	depends on SPARC64
2488c2ecf20Sopenharmony_ci	default y
2498c2ecf20Sopenharmony_ci	help
2508c2ecf20Sopenharmony_ci	  This adds a driver for the UltraSPARC-III memory controller.
2518c2ecf20Sopenharmony_ci	  Loading this driver allows exact mnemonic strings to be
2528c2ecf20Sopenharmony_ci	  printed in the event of a memory error, so that the faulty DIMM
2538c2ecf20Sopenharmony_ci	  on the motherboard can be matched to the error.
2548c2ecf20Sopenharmony_ci
2558c2ecf20Sopenharmony_ci	  If in doubt, say Y, as this information can be very useful.
2568c2ecf20Sopenharmony_ci
2578c2ecf20Sopenharmony_ci# Global things across all Sun machines.
2588c2ecf20Sopenharmony_ciconfig GENERIC_LOCKBREAK
2598c2ecf20Sopenharmony_ci	bool
2608c2ecf20Sopenharmony_ci	default y
2618c2ecf20Sopenharmony_ci	depends on SPARC64 && SMP && PREEMPTION
2628c2ecf20Sopenharmony_ci
2638c2ecf20Sopenharmony_ciconfig NUMA
2648c2ecf20Sopenharmony_ci	bool "NUMA support"
2658c2ecf20Sopenharmony_ci	depends on SPARC64 && SMP
2668c2ecf20Sopenharmony_ci
2678c2ecf20Sopenharmony_ciconfig NODES_SHIFT
2688c2ecf20Sopenharmony_ci	int "Maximum NUMA Nodes (as a power of 2)"
2698c2ecf20Sopenharmony_ci	range 4 5 if SPARC64
2708c2ecf20Sopenharmony_ci	default "5"
2718c2ecf20Sopenharmony_ci	depends on NEED_MULTIPLE_NODES
2728c2ecf20Sopenharmony_ci	help
2738c2ecf20Sopenharmony_ci	  Specify the maximum number of NUMA Nodes available on the target
2748c2ecf20Sopenharmony_ci	  system.  Increases memory reserved to accommodate various tables.
2758c2ecf20Sopenharmony_ci
2768c2ecf20Sopenharmony_ciconfig ARCH_SPARSEMEM_ENABLE
2778c2ecf20Sopenharmony_ci	def_bool y if SPARC64
2788c2ecf20Sopenharmony_ci	select SPARSEMEM_VMEMMAP_ENABLE
2798c2ecf20Sopenharmony_ci
2808c2ecf20Sopenharmony_ciconfig ARCH_SPARSEMEM_DEFAULT
2818c2ecf20Sopenharmony_ci	def_bool y if SPARC64
2828c2ecf20Sopenharmony_ci
2838c2ecf20Sopenharmony_ciconfig FORCE_MAX_ZONEORDER
2848c2ecf20Sopenharmony_ci	int "Maximum zone order"
2858c2ecf20Sopenharmony_ci	default "13"
2868c2ecf20Sopenharmony_ci	help
2878c2ecf20Sopenharmony_ci	  The kernel memory allocator divides physically contiguous memory
2888c2ecf20Sopenharmony_ci	  blocks into "zones", where each zone is a power of two number of
2898c2ecf20Sopenharmony_ci	  pages.  This option selects the largest power of two that the kernel
2908c2ecf20Sopenharmony_ci	  keeps in the memory allocator.  If you need to allocate very large
2918c2ecf20Sopenharmony_ci	  blocks of physically contiguous memory, then you may need to
2928c2ecf20Sopenharmony_ci	  increase this value.
2938c2ecf20Sopenharmony_ci
2948c2ecf20Sopenharmony_ci	  This config option is actually maximum order plus one. For example,
2958c2ecf20Sopenharmony_ci	  a value of 13 means that the largest free memory block is 2^12 pages.
2968c2ecf20Sopenharmony_ci
2978c2ecf20Sopenharmony_ciif SPARC64 || COMPILE_TEST
2988c2ecf20Sopenharmony_cisource "kernel/power/Kconfig"
2998c2ecf20Sopenharmony_ciendif
3008c2ecf20Sopenharmony_ci
3018c2ecf20Sopenharmony_ciconfig SCHED_SMT
3028c2ecf20Sopenharmony_ci	bool "SMT (Hyperthreading) scheduler support"
3038c2ecf20Sopenharmony_ci	depends on SPARC64 && SMP
3048c2ecf20Sopenharmony_ci	default y
3058c2ecf20Sopenharmony_ci	help
3068c2ecf20Sopenharmony_ci	  SMT scheduler support improves the CPU scheduler's decision making
3078c2ecf20Sopenharmony_ci	  when dealing with SPARC cpus at a cost of slightly increased overhead
3088c2ecf20Sopenharmony_ci	  in some places. If unsure say N here.
3098c2ecf20Sopenharmony_ci
3108c2ecf20Sopenharmony_ciconfig SCHED_MC
3118c2ecf20Sopenharmony_ci	bool "Multi-core scheduler support"
3128c2ecf20Sopenharmony_ci	depends on SPARC64 && SMP
3138c2ecf20Sopenharmony_ci	default y
3148c2ecf20Sopenharmony_ci	help
3158c2ecf20Sopenharmony_ci	  Multi-core scheduler support improves the CPU scheduler's decision
3168c2ecf20Sopenharmony_ci	  making when dealing with multi-core CPU chips at a cost of slightly
3178c2ecf20Sopenharmony_ci	  increased overhead in some places. If unsure say N here.
3188c2ecf20Sopenharmony_ci
3198c2ecf20Sopenharmony_ciconfig CMDLINE_BOOL
3208c2ecf20Sopenharmony_ci	bool "Default bootloader kernel arguments"
3218c2ecf20Sopenharmony_ci	depends on SPARC64
3228c2ecf20Sopenharmony_ci
3238c2ecf20Sopenharmony_ciconfig CMDLINE
3248c2ecf20Sopenharmony_ci	string "Initial kernel command string"
3258c2ecf20Sopenharmony_ci	depends on CMDLINE_BOOL
3268c2ecf20Sopenharmony_ci	default "console=ttyS0,9600 root=/dev/sda1"
3278c2ecf20Sopenharmony_ci	help
3288c2ecf20Sopenharmony_ci	  Say Y here if you want to be able to pass default arguments to
3298c2ecf20Sopenharmony_ci	  the kernel. This will be overridden by the bootloader, if you
3308c2ecf20Sopenharmony_ci	  use one (such as SILO). This is most useful if you want to boot
3318c2ecf20Sopenharmony_ci	  a kernel from TFTP, and want default options to be available
3328c2ecf20Sopenharmony_ci	  with having them passed on the command line.
3338c2ecf20Sopenharmony_ci
3348c2ecf20Sopenharmony_ci	  NOTE: This option WILL override the PROM bootargs setting!
3358c2ecf20Sopenharmony_ci
3368c2ecf20Sopenharmony_ciconfig SUN_PM
3378c2ecf20Sopenharmony_ci	bool
3388c2ecf20Sopenharmony_ci	default y if SPARC32
3398c2ecf20Sopenharmony_ci	help
3408c2ecf20Sopenharmony_ci	  Enable power management and CPU standby features on supported
3418c2ecf20Sopenharmony_ci	  SPARC platforms.
3428c2ecf20Sopenharmony_ci
3438c2ecf20Sopenharmony_ciconfig SPARC_LED
3448c2ecf20Sopenharmony_ci	tristate "Sun4m LED driver"
3458c2ecf20Sopenharmony_ci	depends on SPARC32
3468c2ecf20Sopenharmony_ci	help
3478c2ecf20Sopenharmony_ci	  This driver toggles the front-panel LED on sun4m systems
3488c2ecf20Sopenharmony_ci	  in a user-specifiable manner.  Its state can be probed
3498c2ecf20Sopenharmony_ci	  by reading /proc/led and its blinking mode can be changed
3508c2ecf20Sopenharmony_ci	  via writes to /proc/led
3518c2ecf20Sopenharmony_ci
3528c2ecf20Sopenharmony_ciconfig SERIAL_CONSOLE
3538c2ecf20Sopenharmony_ci	bool
3548c2ecf20Sopenharmony_ci	depends on SPARC32
3558c2ecf20Sopenharmony_ci	default y
3568c2ecf20Sopenharmony_ci	help
3578c2ecf20Sopenharmony_ci	  If you say Y here, it will be possible to use a serial port as the
3588c2ecf20Sopenharmony_ci	  system console (the system console is the device which receives all
3598c2ecf20Sopenharmony_ci	  kernel messages and warnings and which allows logins in single user
3608c2ecf20Sopenharmony_ci	  mode). This could be useful if some terminal or printer is connected
3618c2ecf20Sopenharmony_ci	  to that serial port.
3628c2ecf20Sopenharmony_ci
3638c2ecf20Sopenharmony_ci	  Even if you say Y here, the currently visible virtual console
3648c2ecf20Sopenharmony_ci	  (/dev/tty0) will still be used as the system console by default, but
3658c2ecf20Sopenharmony_ci	  you can alter that using a kernel command line option such as
3668c2ecf20Sopenharmony_ci	  "console=ttyS1". (Try "man bootparam" or see the documentation of
3678c2ecf20Sopenharmony_ci	  your boot loader (silo) about how to pass options to the kernel at
3688c2ecf20Sopenharmony_ci	  boot time.)
3698c2ecf20Sopenharmony_ci
3708c2ecf20Sopenharmony_ci	  If you don't have a graphics card installed and you say Y here, the
3718c2ecf20Sopenharmony_ci	  kernel will automatically use the first serial line, /dev/ttyS0, as
3728c2ecf20Sopenharmony_ci	  system console.
3738c2ecf20Sopenharmony_ci
3748c2ecf20Sopenharmony_ci	  If unsure, say N.
3758c2ecf20Sopenharmony_ci
3768c2ecf20Sopenharmony_ciconfig SPARC_LEON
3778c2ecf20Sopenharmony_ci	bool "Sparc Leon processor family"
3788c2ecf20Sopenharmony_ci	depends on SPARC32
3798c2ecf20Sopenharmony_ci	select USB_EHCI_BIG_ENDIAN_MMIO
3808c2ecf20Sopenharmony_ci	select USB_EHCI_BIG_ENDIAN_DESC
3818c2ecf20Sopenharmony_ci	select USB_UHCI_BIG_ENDIAN_MMIO
3828c2ecf20Sopenharmony_ci	select USB_UHCI_BIG_ENDIAN_DESC
3838c2ecf20Sopenharmony_ci	help
3848c2ecf20Sopenharmony_ci	  If you say Y here if you are running on a SPARC-LEON processor.
3858c2ecf20Sopenharmony_ci	  The LEON processor is a synthesizable VHDL model of the
3868c2ecf20Sopenharmony_ci	  SPARC-v8 standard. LEON is  part of the GRLIB collection of
3878c2ecf20Sopenharmony_ci	  IP cores that are distributed under GPL. GRLIB can be downloaded
3888c2ecf20Sopenharmony_ci	  from www.gaisler.com. You can download a sparc-linux cross-compilation
3898c2ecf20Sopenharmony_ci	  toolchain at www.gaisler.com.
3908c2ecf20Sopenharmony_ci
3918c2ecf20Sopenharmony_ciif SPARC_LEON
3928c2ecf20Sopenharmony_cimenu "U-Boot options"
3938c2ecf20Sopenharmony_ci
3948c2ecf20Sopenharmony_ciconfig UBOOT_LOAD_ADDR
3958c2ecf20Sopenharmony_ci	hex "uImage Load Address"
3968c2ecf20Sopenharmony_ci	default 0x40004000
3978c2ecf20Sopenharmony_ci	help
3988c2ecf20Sopenharmony_ci	 U-Boot kernel load address, the address in physical address space
3998c2ecf20Sopenharmony_ci	 where u-boot will place the Linux kernel before booting it.
4008c2ecf20Sopenharmony_ci	 This address is normally the base address of main memory + 0x4000.
4018c2ecf20Sopenharmony_ci
4028c2ecf20Sopenharmony_ciconfig UBOOT_FLASH_ADDR
4038c2ecf20Sopenharmony_ci	hex "uImage.o Load Address"
4048c2ecf20Sopenharmony_ci	default 0x00080000
4058c2ecf20Sopenharmony_ci	help
4068c2ecf20Sopenharmony_ci	 Optional setting only affecting the uImage.o ELF-image used to
4078c2ecf20Sopenharmony_ci	 download the uImage file to the target using a ELF-loader other than
4088c2ecf20Sopenharmony_ci	 U-Boot. It may for example be used to download an uImage to FLASH with
4098c2ecf20Sopenharmony_ci	 the GRMON utility before even starting u-boot.
4108c2ecf20Sopenharmony_ci
4118c2ecf20Sopenharmony_ciconfig UBOOT_ENTRY_ADDR
4128c2ecf20Sopenharmony_ci	hex "uImage Entry Address"
4138c2ecf20Sopenharmony_ci	default 0xf0004000
4148c2ecf20Sopenharmony_ci	help
4158c2ecf20Sopenharmony_ci	 Do not change this unless you know what you're doing. This is
4168c2ecf20Sopenharmony_ci	 hardcoded by the SPARC32 and LEON port.
4178c2ecf20Sopenharmony_ci
4188c2ecf20Sopenharmony_ci	 This is the virtual address u-boot jumps to when booting the Linux
4198c2ecf20Sopenharmony_ci	 Kernel.
4208c2ecf20Sopenharmony_ci
4218c2ecf20Sopenharmony_ciendmenu
4228c2ecf20Sopenharmony_ciendif
4238c2ecf20Sopenharmony_ci
4248c2ecf20Sopenharmony_ciendmenu
4258c2ecf20Sopenharmony_ci
4268c2ecf20Sopenharmony_cimenu "Bus options (PCI etc.)"
4278c2ecf20Sopenharmony_ciconfig SBUS
4288c2ecf20Sopenharmony_ci	bool
4298c2ecf20Sopenharmony_ci	default y
4308c2ecf20Sopenharmony_ci
4318c2ecf20Sopenharmony_ciconfig SBUSCHAR
4328c2ecf20Sopenharmony_ci	bool
4338c2ecf20Sopenharmony_ci	default y
4348c2ecf20Sopenharmony_ci
4358c2ecf20Sopenharmony_ciconfig SUN_LDOMS
4368c2ecf20Sopenharmony_ci	bool "Sun Logical Domains support"
4378c2ecf20Sopenharmony_ci	depends on SPARC64
4388c2ecf20Sopenharmony_ci	help
4398c2ecf20Sopenharmony_ci	  Say Y here is you want to support virtual devices via
4408c2ecf20Sopenharmony_ci	  Logical Domains.
4418c2ecf20Sopenharmony_ci
4428c2ecf20Sopenharmony_ciconfig PCIC_PCI
4438c2ecf20Sopenharmony_ci	bool
4448c2ecf20Sopenharmony_ci	depends on PCI && SPARC32 && !SPARC_LEON
4458c2ecf20Sopenharmony_ci	default y
4468c2ecf20Sopenharmony_ci
4478c2ecf20Sopenharmony_ciconfig LEON_PCI
4488c2ecf20Sopenharmony_ci	bool
4498c2ecf20Sopenharmony_ci	depends on PCI && SPARC_LEON
4508c2ecf20Sopenharmony_ci	default y
4518c2ecf20Sopenharmony_ci
4528c2ecf20Sopenharmony_ciconfig SPARC_GRPCI1
4538c2ecf20Sopenharmony_ci	bool "GRPCI Host Bridge Support"
4548c2ecf20Sopenharmony_ci	depends on LEON_PCI
4558c2ecf20Sopenharmony_ci	default y
4568c2ecf20Sopenharmony_ci	help
4578c2ecf20Sopenharmony_ci	  Say Y here to include the GRPCI Host Bridge Driver. The GRPCI
4588c2ecf20Sopenharmony_ci	  PCI host controller is typically found in GRLIB SPARC32/LEON
4598c2ecf20Sopenharmony_ci	  systems. The driver has one property (all_pci_errors) controlled
4608c2ecf20Sopenharmony_ci	  from the bootloader that makes the GRPCI to generate interrupts
4618c2ecf20Sopenharmony_ci	  on detected PCI Parity and System errors.
4628c2ecf20Sopenharmony_ci
4638c2ecf20Sopenharmony_ciconfig SPARC_GRPCI2
4648c2ecf20Sopenharmony_ci	bool "GRPCI2 Host Bridge Support"
4658c2ecf20Sopenharmony_ci	depends on LEON_PCI
4668c2ecf20Sopenharmony_ci	default y
4678c2ecf20Sopenharmony_ci	help
4688c2ecf20Sopenharmony_ci	  Say Y here to include the GRPCI2 Host Bridge Driver.
4698c2ecf20Sopenharmony_ci
4708c2ecf20Sopenharmony_ciconfig SUN_OPENPROMFS
4718c2ecf20Sopenharmony_ci	tristate "Openprom tree appears in /proc/openprom"
4728c2ecf20Sopenharmony_ci	help
4738c2ecf20Sopenharmony_ci	  If you say Y, the OpenPROM device tree will be available as a
4748c2ecf20Sopenharmony_ci	  virtual file system, which you can mount to /proc/openprom by "mount
4758c2ecf20Sopenharmony_ci	  -t openpromfs none /proc/openprom".
4768c2ecf20Sopenharmony_ci
4778c2ecf20Sopenharmony_ci	  To compile the /proc/openprom support as a module, choose M here: the
4788c2ecf20Sopenharmony_ci	  module will be called openpromfs.
4798c2ecf20Sopenharmony_ci
4808c2ecf20Sopenharmony_ci	  Only choose N if you know in advance that you will not need to modify
4818c2ecf20Sopenharmony_ci	  OpenPROM settings on the running system.
4828c2ecf20Sopenharmony_ci
4838c2ecf20Sopenharmony_ci# Makefile helpers
4848c2ecf20Sopenharmony_ciconfig SPARC64_PCI
4858c2ecf20Sopenharmony_ci	bool
4868c2ecf20Sopenharmony_ci	default y
4878c2ecf20Sopenharmony_ci	depends on SPARC64 && PCI
4888c2ecf20Sopenharmony_ci
4898c2ecf20Sopenharmony_ciconfig SPARC64_PCI_MSI
4908c2ecf20Sopenharmony_ci	bool
4918c2ecf20Sopenharmony_ci	default y
4928c2ecf20Sopenharmony_ci	depends on SPARC64_PCI && PCI_MSI
4938c2ecf20Sopenharmony_ci
4948c2ecf20Sopenharmony_ciendmenu
4958c2ecf20Sopenharmony_ci
4968c2ecf20Sopenharmony_ciconfig COMPAT
4978c2ecf20Sopenharmony_ci	bool
4988c2ecf20Sopenharmony_ci	depends on SPARC64
4998c2ecf20Sopenharmony_ci	default y
5008c2ecf20Sopenharmony_ci	select COMPAT_BINFMT_ELF if BINFMT_ELF
5018c2ecf20Sopenharmony_ci	select HAVE_UID16
5028c2ecf20Sopenharmony_ci	select ARCH_WANT_OLD_COMPAT_IPC
5038c2ecf20Sopenharmony_ci	select COMPAT_OLD_SIGACTION
5048c2ecf20Sopenharmony_ci
5058c2ecf20Sopenharmony_ciconfig SYSVIPC_COMPAT
5068c2ecf20Sopenharmony_ci	bool
5078c2ecf20Sopenharmony_ci	depends on COMPAT && SYSVIPC
5088c2ecf20Sopenharmony_ci	default y
5098c2ecf20Sopenharmony_ci
5108c2ecf20Sopenharmony_cisource "drivers/sbus/char/Kconfig"
511