| config 64BIT | |
| bool "64-bit kernel" if "$(ARCH)" = "sparc" | |
| default "$(ARCH)" = "sparc64" | |
| help | |
| SPARC is a family of RISC microprocessors designed and marketed by | |
| Sun Microsystems, incorporated. They are very widely found in Sun | |
| workstations and clones. | |
| Say yes to build a 64-bit kernel - formerly known as sparc64 | |
| Say no to build a 32-bit kernel - formerly known as sparc | |
| config SPARC | |
| bool | |
| default y | |
| select ARCH_MIGHT_HAVE_PC_PARPORT if SPARC64 && PCI | |
| select ARCH_MIGHT_HAVE_PC_SERIO | |
| select OF | |
| select OF_PROMTREE | |
| select HAVE_IDE | |
| select HAVE_OPROFILE | |
| select HAVE_ARCH_KGDB if !SMP || SPARC64 | |
| select HAVE_ARCH_TRACEHOOK | |
| select HAVE_EXIT_THREAD | |
| select SYSCTL_EXCEPTION_TRACE | |
| select RTC_CLASS | |
| select RTC_DRV_M48T59 | |
| select RTC_SYSTOHC | |
| select HAVE_ARCH_JUMP_LABEL if SPARC64 | |
| select GENERIC_IRQ_SHOW | |
| select ARCH_WANT_IPC_PARSE_VERSION | |
| select GENERIC_PCI_IOMAP | |
| select HAVE_NMI_WATCHDOG if SPARC64 | |
| select HAVE_CBPF_JIT if SPARC32 | |
| select HAVE_EBPF_JIT if SPARC64 | |
| select HAVE_DEBUG_BUGVERBOSE | |
| select GENERIC_SMP_IDLE_THREAD | |
| select GENERIC_CLOCKEVENTS | |
| select GENERIC_STRNCPY_FROM_USER | |
| select GENERIC_STRNLEN_USER | |
| select MODULES_USE_ELF_RELA | |
| select ODD_RT_SIGACTION | |
| select OLD_SIGSUSPEND | |
| select ARCH_HAS_SG_CHAIN | |
| select CPU_NO_EFFICIENT_FFS | |
| select LOCKDEP_SMALL if LOCKDEP | |
| select NEED_DMA_MAP_STATE | |
| select NEED_SG_DMA_LENGTH | |
| select HAVE_MEMBLOCK | |
| select NO_BOOTMEM | |
| config SPARC32 | |
| def_bool !64BIT | |
| select ARCH_HAS_SYNC_DMA_FOR_CPU | |
| select DMA_NONCOHERENT_OPS | |
| select GENERIC_ATOMIC64 | |
| select CLZ_TAB | |
| select HAVE_UID16 | |
| select OLD_SIGACTION | |
| config SPARC64 | |
| def_bool 64BIT | |
| select HAVE_FUNCTION_TRACER | |
| select HAVE_FUNCTION_GRAPH_TRACER | |
| select HAVE_KRETPROBES | |
| select HAVE_KPROBES | |
| select HAVE_RCU_TABLE_FREE if SMP | |
| select HAVE_MEMBLOCK_NODE_MAP | |
| select HAVE_ARCH_TRANSPARENT_HUGEPAGE | |
| select HAVE_DYNAMIC_FTRACE | |
| select HAVE_FTRACE_MCOUNT_RECORD | |
| select HAVE_SYSCALL_TRACEPOINTS | |
| select HAVE_CONTEXT_TRACKING | |
| select HAVE_DEBUG_KMEMLEAK | |
| select IOMMU_HELPER | |
| select SPARSE_IRQ | |
| select RTC_DRV_CMOS | |
| select RTC_DRV_BQ4802 | |
| select RTC_DRV_SUN4V | |
| select RTC_DRV_STARFIRE | |
| select HAVE_PERF_EVENTS | |
| select PERF_USE_VMALLOC | |
| select IRQ_PREFLOW_FASTEOI | |
| select ARCH_HAVE_NMI_SAFE_CMPXCHG | |
| select HAVE_C_RECORDMCOUNT | |
| select HAVE_ARCH_AUDITSYSCALL | |
| select ARCH_SUPPORTS_ATOMIC_RMW | |
| select HAVE_NMI | |
| select HAVE_REGS_AND_STACK_ACCESS_API | |
| select ARCH_USE_QUEUED_RWLOCKS | |
| select ARCH_USE_QUEUED_SPINLOCKS | |
| select GENERIC_TIME_VSYSCALL | |
| select ARCH_CLOCKSOURCE_DATA | |
| select ARCH_HAS_PTE_SPECIAL | |
| config ARCH_DEFCONFIG | |
| string | |
| default "arch/sparc/configs/sparc32_defconfig" if SPARC32 | |
| default "arch/sparc/configs/sparc64_defconfig" if SPARC64 | |
| config ARCH_PROC_KCORE_TEXT | |
| def_bool y | |
| config CPU_BIG_ENDIAN | |
| def_bool y | |
| config ARCH_ATU | |
| bool | |
| default y if SPARC64 | |
| config STACKTRACE_SUPPORT | |
| bool | |
| default y if SPARC64 | |
| config LOCKDEP_SUPPORT | |
| bool | |
| default y if SPARC64 | |
| config ARCH_HIBERNATION_POSSIBLE | |
| def_bool y if SPARC64 | |
| config AUDIT_ARCH | |
| bool | |
| default y | |
| config HAVE_SETUP_PER_CPU_AREA | |
| def_bool y if SPARC64 | |
| config NEED_PER_CPU_EMBED_FIRST_CHUNK | |
| def_bool y if SPARC64 | |
| config NEED_PER_CPU_PAGE_FIRST_CHUNK | |
| def_bool y if SPARC64 | |
| config MMU | |
| bool | |
| default y | |
| config HIGHMEM | |
| bool | |
| default y if SPARC32 | |
| config ZONE_DMA | |
| bool | |
| default y if SPARC32 | |
| config GENERIC_ISA_DMA | |
| bool | |
| default y if SPARC32 | |
| config ARCH_SUPPORTS_DEBUG_PAGEALLOC | |
| def_bool y if SPARC64 | |
| config PGTABLE_LEVELS | |
| default 4 if 64BIT | |
| default 3 | |
| config ARCH_SUPPORTS_UPROBES | |
| def_bool y if SPARC64 | |
| menu "Processor type and features" | |
| config SMP | |
| bool "Symmetric multi-processing support" | |
| ---help--- | |
| This enables support for systems with more than one CPU. If you have | |
| a system with only one CPU, say N. If you have a system with more | |
| than one CPU, say Y. | |
| If you say N here, the kernel will run on uni- and multiprocessor | |
| machines, but will use only one CPU of a multiprocessor machine. If | |
| you say Y here, the kernel will run on many, but not all, | |
| uniprocessor machines. On a uniprocessor machine, the kernel | |
| will run faster if you say N here. | |
| People using multiprocessor machines who say Y here should also say | |
| Y to "Enhanced Real Time Clock Support", below. The "Advanced Power | |
| Management" code will be disabled if you say Y here. | |
| See also <file:Documentation/lockup-watchdogs.txt> and the SMP-HOWTO | |
| available at <http://www.tldp.org/docs.html#howto>. | |
| If you don't know what to do here, say N. | |
| config NR_CPUS | |
| int "Maximum number of CPUs" | |
| depends on SMP | |
| range 2 32 if SPARC32 | |
| range 2 4096 if SPARC64 | |
| default 32 if SPARC32 | |
| default 4096 if SPARC64 | |
| source kernel/Kconfig.hz | |
| config RWSEM_GENERIC_SPINLOCK | |
| bool | |
| default y if SPARC32 | |
| config RWSEM_XCHGADD_ALGORITHM | |
| bool | |
| default y if SPARC64 | |
| config GENERIC_HWEIGHT | |
| bool | |
| default y | |
| config GENERIC_CALIBRATE_DELAY | |
| bool | |
| default y | |
| config ARCH_MAY_HAVE_PC_FDC | |
| bool | |
| default y | |
| config EMULATED_CMPXCHG | |
| bool | |
| default y if SPARC32 | |
| help | |
| Sparc32 does not have a CAS instruction like sparc64. cmpxchg() | |
| is emulated, and therefore it is not completely atomic. | |
| # Makefile helpers | |
| config SPARC32_SMP | |
| bool | |
| default y | |
| depends on SPARC32 && SMP | |
| config SPARC64_SMP | |
| bool | |
| default y | |
| depends on SPARC64 && SMP | |
| config EARLYFB | |
| bool "Support for early boot text console" | |
| default y | |
| depends on SPARC64 | |
| help | |
| Say Y here to enable a faster early framebuffer boot console. | |
| config SECCOMP | |
| bool "Enable seccomp to safely compute untrusted bytecode" | |
| depends on SPARC64 && PROC_FS | |
| default y | |
| help | |
| This kernel feature is useful for number crunching applications | |
| that may need to compute untrusted bytecode during their | |
| execution. By using pipes or other transports made available to | |
| the process as file descriptors supporting the read/write | |
| syscalls, it's possible to isolate those applications in | |
| their own address space using seccomp. Once seccomp is | |
| enabled via /proc/<pid>/seccomp, it cannot be disabled | |
| and the task is only allowed to execute a few safe syscalls | |
| defined by each seccomp mode. | |
| If unsure, say Y. Only embedded should say N here. | |
| config HOTPLUG_CPU | |
| bool "Support for hot-pluggable CPUs" | |
| depends on SPARC64 && SMP | |
| help | |
| Say Y here to experiment with turning CPUs off and on. CPUs | |
| can be controlled through /sys/devices/system/cpu/cpu#. | |
| Say N if you want to disable CPU hotplug. | |
| if SPARC64 | |
| source "drivers/cpufreq/Kconfig" | |
| endif | |
| config US3_MC | |
| tristate "UltraSPARC-III Memory Controller driver" | |
| depends on SPARC64 | |
| default y | |
| help | |
| This adds a driver for the UltraSPARC-III memory controller. | |
| Loading this driver allows exact mnemonic strings to be | |
| printed in the event of a memory error, so that the faulty DIMM | |
| on the motherboard can be matched to the error. | |
| If in doubt, say Y, as this information can be very useful. | |
| # Global things across all Sun machines. | |
| config GENERIC_LOCKBREAK | |
| bool | |
| default y | |
| depends on SPARC64 && SMP && PREEMPT | |
| config NUMA | |
| bool "NUMA support" | |
| depends on SPARC64 && SMP | |
| config NODES_SHIFT | |
| int "Maximum NUMA Nodes (as a power of 2)" | |
| range 4 5 if SPARC64 | |
| default "5" | |
| depends on NEED_MULTIPLE_NODES | |
| help | |
| Specify the maximum number of NUMA Nodes available on the target | |
| system. Increases memory reserved to accommodate various tables. | |
| # Some NUMA nodes have memory ranges that span | |
| # other nodes. Even though a pfn is valid and | |
| # between a node's start and end pfns, it may not | |
| # reside on that node. See memmap_init_zone() | |
| # for details. | |
| config NODES_SPAN_OTHER_NODES | |
| def_bool y | |
| depends on NEED_MULTIPLE_NODES | |
| config ARCH_SELECT_MEMORY_MODEL | |
| def_bool y if SPARC64 | |
| config ARCH_SPARSEMEM_ENABLE | |
| def_bool y if SPARC64 | |
| select SPARSEMEM_VMEMMAP_ENABLE | |
| config ARCH_SPARSEMEM_DEFAULT | |
| def_bool y if SPARC64 | |
| config FORCE_MAX_ZONEORDER | |
| int "Maximum zone order" | |
| default "13" | |
| help | |
| The kernel memory allocator divides physically contiguous memory | |
| blocks into "zones", where each zone is a power of two number of | |
| pages. This option selects the largest power of two that the kernel | |
| keeps in the memory allocator. If you need to allocate very large | |
| blocks of physically contiguous memory, then you may need to | |
| increase this value. | |
| This config option is actually maximum order plus one. For example, | |
| a value of 13 means that the largest free memory block is 2^12 pages. | |
| if SPARC64 | |
| source "kernel/power/Kconfig" | |
| endif | |
| config SCHED_SMT | |
| bool "SMT (Hyperthreading) scheduler support" | |
| depends on SPARC64 && SMP | |
| default y | |
| help | |
| SMT scheduler support improves the CPU scheduler's decision making | |
| when dealing with SPARC cpus at a cost of slightly increased overhead | |
| in some places. If unsure say N here. | |
| config SCHED_MC | |
| bool "Multi-core scheduler support" | |
| depends on SPARC64 && SMP | |
| default y | |
| help | |
| Multi-core scheduler support improves the CPU scheduler's decision | |
| making when dealing with multi-core CPU chips at a cost of slightly | |
| increased overhead in some places. If unsure say N here. | |
| config CMDLINE_BOOL | |
| bool "Default bootloader kernel arguments" | |
| depends on SPARC64 | |
| config CMDLINE | |
| string "Initial kernel command string" | |
| depends on CMDLINE_BOOL | |
| default "console=ttyS0,9600 root=/dev/sda1" | |
| help | |
| Say Y here if you want to be able to pass default arguments to | |
| the kernel. This will be overridden by the bootloader, if you | |
| use one (such as SILO). This is most useful if you want to boot | |
| a kernel from TFTP, and want default options to be available | |
| with having them passed on the command line. | |
| NOTE: This option WILL override the PROM bootargs setting! | |
| config SUN_PM | |
| bool | |
| default y if SPARC32 | |
| help | |
| Enable power management and CPU standby features on supported | |
| SPARC platforms. | |
| config SPARC_LED | |
| tristate "Sun4m LED driver" | |
| depends on SPARC32 | |
| help | |
| This driver toggles the front-panel LED on sun4m systems | |
| in a user-specifiable manner. Its state can be probed | |
| by reading /proc/led and its blinking mode can be changed | |
| via writes to /proc/led | |
| config SERIAL_CONSOLE | |
| bool | |
| depends on SPARC32 | |
| default y | |
| ---help--- | |
| If you say Y here, it will be possible to use a serial port as the | |
| system console (the system console is the device which receives all | |
| kernel messages and warnings and which allows logins in single user | |
| mode). This could be useful if some terminal or printer is connected | |
| to that serial port. | |
| Even if you say Y here, the currently visible virtual console | |
| (/dev/tty0) will still be used as the system console by default, but | |
| you can alter that using a kernel command line option such as | |
| "console=ttyS1". (Try "man bootparam" or see the documentation of | |
| your boot loader (silo) about how to pass options to the kernel at | |
| boot time.) | |
| If you don't have a graphics card installed and you say Y here, the | |
| kernel will automatically use the first serial line, /dev/ttyS0, as | |
| system console. | |
| If unsure, say N. | |
| config SPARC_LEON | |
| bool "Sparc Leon processor family" | |
| depends on SPARC32 | |
| select USB_EHCI_BIG_ENDIAN_MMIO | |
| select USB_EHCI_BIG_ENDIAN_DESC | |
| select USB_UHCI_BIG_ENDIAN_MMIO | |
| select USB_UHCI_BIG_ENDIAN_DESC | |
| ---help--- | |
| If you say Y here if you are running on a SPARC-LEON processor. | |
| The LEON processor is a synthesizable VHDL model of the | |
| SPARC-v8 standard. LEON is part of the GRLIB collection of | |
| IP cores that are distributed under GPL. GRLIB can be downloaded | |
| from www.gaisler.com. You can download a sparc-linux cross-compilation | |
| toolchain at www.gaisler.com. | |
| if SPARC_LEON | |
| menu "U-Boot options" | |
| config UBOOT_LOAD_ADDR | |
| hex "uImage Load Address" | |
| default 0x40004000 | |
| ---help--- | |
| U-Boot kernel load address, the address in physical address space | |
| where u-boot will place the Linux kernel before booting it. | |
| This address is normally the base address of main memory + 0x4000. | |
| config UBOOT_FLASH_ADDR | |
| hex "uImage.o Load Address" | |
| default 0x00080000 | |
| ---help--- | |
| Optional setting only affecting the uImage.o ELF-image used to | |
| download the uImage file to the target using a ELF-loader other than | |
| U-Boot. It may for example be used to download an uImage to FLASH with | |
| the GRMON utility before even starting u-boot. | |
| config UBOOT_ENTRY_ADDR | |
| hex "uImage Entry Address" | |
| default 0xf0004000 | |
| ---help--- | |
| Do not change this unless you know what you're doing. This is | |
| hardcoded by the SPARC32 and LEON port. | |
| This is the virtual address u-boot jumps to when booting the Linux | |
| Kernel. | |
| endmenu | |
| endif | |
| endmenu | |
| menu "Bus options (PCI etc.)" | |
| config SBUS | |
| bool | |
| default y | |
| config SBUSCHAR | |
| bool | |
| default y | |
| config SUN_LDOMS | |
| bool "Sun Logical Domains support" | |
| depends on SPARC64 | |
| help | |
| Say Y here is you want to support virtual devices via | |
| Logical Domains. | |
| config PCI | |
| bool "Support for PCI and PS/2 keyboard/mouse" | |
| help | |
| Find out whether your system includes a PCI bus. PCI is the name of | |
| a bus system, i.e. the way the CPU talks to the other stuff inside | |
| your box. If you say Y here, the kernel will include drivers and | |
| infrastructure code to support PCI bus devices. | |
| CONFIG_PCI is needed for all JavaStation's (including MrCoffee), | |
| CP-1200, JavaEngine-1, Corona, Red October, and Serengeti SGSC. | |
| All of these platforms are extremely obscure, so say N if unsure. | |
| config PCI_DOMAINS | |
| def_bool PCI if SPARC64 | |
| config PCI_SYSCALL | |
| def_bool PCI | |
| config PCIC_PCI | |
| bool | |
| depends on PCI && SPARC32 && !SPARC_LEON | |
| default y | |
| config LEON_PCI | |
| bool | |
| depends on PCI && SPARC_LEON | |
| default y | |
| config SPARC_GRPCI1 | |
| bool "GRPCI Host Bridge Support" | |
| depends on LEON_PCI | |
| default y | |
| help | |
| Say Y here to include the GRPCI Host Bridge Driver. The GRPCI | |
| PCI host controller is typically found in GRLIB SPARC32/LEON | |
| systems. The driver has one property (all_pci_errors) controlled | |
| from the bootloader that makes the GRPCI to generate interrupts | |
| on detected PCI Parity and System errors. | |
| config SPARC_GRPCI2 | |
| bool "GRPCI2 Host Bridge Support" | |
| depends on LEON_PCI | |
| default y | |
| help | |
| Say Y here to include the GRPCI2 Host Bridge Driver. | |
| source "drivers/pci/Kconfig" | |
| source "drivers/pcmcia/Kconfig" | |
| config SUN_OPENPROMFS | |
| tristate "Openprom tree appears in /proc/openprom" | |
| help | |
| If you say Y, the OpenPROM device tree will be available as a | |
| virtual file system, which you can mount to /proc/openprom by "mount | |
| -t openpromfs none /proc/openprom". | |
| To compile the /proc/openprom support as a module, choose M here: the | |
| module will be called openpromfs. | |
| Only choose N if you know in advance that you will not need to modify | |
| OpenPROM settings on the running system. | |
| # Makefile helpers | |
| config SPARC64_PCI | |
| bool | |
| default y | |
| depends on SPARC64 && PCI | |
| config SPARC64_PCI_MSI | |
| bool | |
| default y | |
| depends on SPARC64_PCI && PCI_MSI | |
| endmenu | |
| config COMPAT | |
| bool | |
| depends on SPARC64 | |
| default y | |
| select COMPAT_BINFMT_ELF | |
| select HAVE_UID16 | |
| select ARCH_WANT_OLD_COMPAT_IPC | |
| select COMPAT_OLD_SIGACTION | |
| config SYSVIPC_COMPAT | |
| bool | |
| depends on COMPAT && SYSVIPC | |
| default y | |
| source "drivers/sbus/char/Kconfig" |