1 # SPDX-License-Identifier: GPL-2.0-only 1 # SPDX-License-Identifier: GPL-2.0-only 2 config CSKY !! 2 config 64BIT 3 def_bool y !! 3 bool "64-bit kernel" if "$(ARCH)" = "sparc" >> 4 default "$(ARCH)" = "sparc64" >> 5 help >> 6 SPARC is a family of RISC microprocessors designed and marketed by >> 7 Sun Microsystems, incorporated. They are very widely found in Sun >> 8 workstations and clones. >> 9 >> 10 Say yes to build a 64-bit kernel - formerly known as sparc64 >> 11 Say no to build a 32-bit kernel - formerly known as sparc >> 12 >> 13 config SPARC >> 14 bool >> 15 default y >> 16 select ARCH_MIGHT_HAVE_PC_PARPORT if SPARC64 && PCI >> 17 select ARCH_MIGHT_HAVE_PC_SERIO >> 18 select OF >> 19 select OF_PROMTREE >> 20 select HAVE_ASM_MODVERSIONS >> 21 select HAVE_IDE >> 22 select HAVE_OPROFILE >> 23 select HAVE_ARCH_KGDB if !SMP || SPARC64 >> 24 select HAVE_ARCH_TRACEHOOK >> 25 select HAVE_EXIT_THREAD >> 26 select HAVE_PCI >> 27 select SYSCTL_EXCEPTION_TRACE >> 28 select RTC_CLASS >> 29 select RTC_DRV_M48T59 >> 30 select RTC_SYSTOHC >> 31 select HAVE_ARCH_JUMP_LABEL if SPARC64 >> 32 select GENERIC_IRQ_SHOW >> 33 select ARCH_WANT_IPC_PARSE_VERSION >> 34 select GENERIC_PCI_IOMAP >> 35 select HAVE_NMI_WATCHDOG if SPARC64 >> 36 select HAVE_CBPF_JIT if SPARC32 >> 37 select HAVE_EBPF_JIT if SPARC64 >> 38 select HAVE_DEBUG_BUGVERBOSE >> 39 select GENERIC_SMP_IDLE_THREAD >> 40 select GENERIC_CLOCKEVENTS >> 41 select GENERIC_STRNCPY_FROM_USER >> 42 select GENERIC_STRNLEN_USER >> 43 select MODULES_USE_ELF_RELA >> 44 select PCI_SYSCALL if PCI >> 45 select ODD_RT_SIGACTION >> 46 select OLD_SIGSUSPEND >> 47 select CPU_NO_EFFICIENT_FFS >> 48 select LOCKDEP_SMALL if LOCKDEP >> 49 select NEED_DMA_MAP_STATE >> 50 select NEED_SG_DMA_LENGTH >> 51 >> 52 config SPARC32 >> 53 def_bool !64BIT 4 select ARCH_32BIT_OFF_T 54 select ARCH_32BIT_OFF_T 5 select ARCH_HAS_CPU_CACHE_ALIASING !! 55 select ARCH_HAS_CPU_FINALIZE_INIT if !SMP 6 select ARCH_HAS_DMA_PREP_COHERENT << 7 select ARCH_HAS_GCOV_PROFILE_ALL << 8 select ARCH_HAS_SYNC_DMA_FOR_CPU 56 select ARCH_HAS_SYNC_DMA_FOR_CPU 9 select ARCH_HAS_SYNC_DMA_FOR_DEVICE << 10 select ARCH_USE_BUILTIN_BSWAP << 11 select ARCH_USE_QUEUED_RWLOCKS << 12 select ARCH_USE_QUEUED_SPINLOCKS << 13 select ARCH_HAS_CURRENT_STACK_POINTER << 14 select ARCH_INLINE_READ_LOCK if !PREEM << 15 select ARCH_INLINE_READ_LOCK_BH if !PR << 16 select ARCH_INLINE_READ_LOCK_IRQ if !P << 17 select ARCH_INLINE_READ_LOCK_IRQSAVE i << 18 select ARCH_INLINE_READ_UNLOCK if !PRE << 19 select ARCH_INLINE_READ_UNLOCK_BH if ! << 20 select ARCH_INLINE_READ_UNLOCK_IRQ if << 21 select ARCH_INLINE_READ_UNLOCK_IRQREST << 22 select ARCH_INLINE_WRITE_LOCK if !PREE << 23 select ARCH_INLINE_WRITE_LOCK_BH if !P << 24 select ARCH_INLINE_WRITE_LOCK_IRQ if ! << 25 select ARCH_INLINE_WRITE_LOCK_IRQSAVE << 26 select ARCH_INLINE_WRITE_UNLOCK if !PR << 27 select ARCH_INLINE_WRITE_UNLOCK_BH if << 28 select ARCH_INLINE_WRITE_UNLOCK_IRQ if << 29 select ARCH_INLINE_WRITE_UNLOCK_IRQRES << 30 select ARCH_INLINE_SPIN_TRYLOCK if !PR << 31 select ARCH_INLINE_SPIN_TRYLOCK_BH if << 32 select ARCH_INLINE_SPIN_LOCK if !PREEM << 33 select ARCH_INLINE_SPIN_LOCK_BH if !PR << 34 select ARCH_INLINE_SPIN_LOCK_IRQ if !P << 35 select ARCH_INLINE_SPIN_LOCK_IRQSAVE i << 36 select ARCH_INLINE_SPIN_UNLOCK if !PRE << 37 select ARCH_INLINE_SPIN_UNLOCK_BH if ! << 38 select ARCH_INLINE_SPIN_UNLOCK_IRQ if << 39 select ARCH_INLINE_SPIN_UNLOCK_IRQREST << 40 select ARCH_NEED_CMPXCHG_1_EMU << 41 select ARCH_WANT_FRAME_POINTERS if !CP << 42 select ARCH_WANT_DEFAULT_TOPDOWN_MMAP_ << 43 select COMMON_CLK << 44 select CLKSRC_MMIO << 45 select CSKY_MPINTC if CPU_CK860 << 46 select CSKY_MP_TIMER if CPU_CK860 << 47 select CSKY_APB_INTC << 48 select DMA_DIRECT_REMAP << 49 select IRQ_DOMAIN << 50 select DW_APB_TIMER_OF << 51 select GENERIC_IOREMAP << 52 select GENERIC_LIB_ASHLDI3 << 53 select GENERIC_LIB_ASHRDI3 << 54 select GENERIC_LIB_LSHRDI3 << 55 select GENERIC_LIB_MULDI3 << 56 select GENERIC_LIB_CMPDI2 << 57 select GENERIC_LIB_UCMPDI2 << 58 select GENERIC_ALLOCATOR << 59 select GENERIC_ATOMIC64 57 select GENERIC_ATOMIC64 60 select GENERIC_CPU_DEVICES !! 58 select CLZ_TAB 61 select GENERIC_IRQ_CHIP !! 59 select HAVE_UID16 62 select GENERIC_IRQ_PROBE !! 60 select OLD_SIGACTION 63 select GENERIC_IRQ_SHOW !! 61 64 select GENERIC_IRQ_MULTI_HANDLER !! 62 config SPARC64 65 select GENERIC_SCHED_CLOCK !! 63 def_bool 64BIT 66 select GENERIC_SMP_IDLE_THREAD << 67 select GENERIC_TIME_VSYSCALL << 68 select GENERIC_VDSO_32 << 69 select GENERIC_GETTIMEOFDAY << 70 select GX6605S_TIMER if CPU_CK610 << 71 select HAVE_ARCH_TRACEHOOK << 72 select HAVE_ARCH_AUDITSYSCALL << 73 select HAVE_ARCH_JUMP_LABEL if !CPU_CK << 74 select HAVE_ARCH_JUMP_LABEL_RELATIVE << 75 select HAVE_ARCH_MMAP_RND_BITS << 76 select HAVE_ARCH_SECCOMP_FILTER << 77 select HAVE_CONTEXT_TRACKING_USER << 78 select HAVE_VIRT_CPU_ACCOUNTING_GEN << 79 select HAVE_DEBUG_BUGVERBOSE << 80 select HAVE_DEBUG_KMEMLEAK << 81 select HAVE_DYNAMIC_FTRACE << 82 select HAVE_DYNAMIC_FTRACE_WITH_REGS << 83 select HAVE_GENERIC_VDSO << 84 select HAVE_FUNCTION_TRACER 64 select HAVE_FUNCTION_TRACER 85 select HAVE_FUNCTION_GRAPH_TRACER 65 select HAVE_FUNCTION_GRAPH_TRACER 86 select HAVE_FUNCTION_ERROR_INJECTION !! 66 select HAVE_KRETPROBES >> 67 select HAVE_KPROBES >> 68 select HAVE_RCU_TABLE_FREE if SMP >> 69 select HAVE_MEMBLOCK_NODE_MAP >> 70 select HAVE_ARCH_TRANSPARENT_HUGEPAGE >> 71 select HAVE_DYNAMIC_FTRACE 87 select HAVE_FTRACE_MCOUNT_RECORD 72 select HAVE_FTRACE_MCOUNT_RECORD 88 select HAVE_KERNEL_GZIP !! 73 select HAVE_SYSCALL_TRACEPOINTS 89 select HAVE_KERNEL_LZO !! 74 select HAVE_CONTEXT_TRACKING 90 select HAVE_KERNEL_LZMA !! 75 select HAVE_DEBUG_KMEMLEAK 91 select HAVE_KPROBES if !CPU_CK610 !! 76 select IOMMU_HELPER 92 select HAVE_KPROBES_ON_FTRACE if !CPU_ !! 77 select SPARSE_IRQ 93 select HAVE_KRETPROBES if !CPU_CK610 !! 78 select RTC_DRV_CMOS 94 select HAVE_PAGE_SIZE_4KB !! 79 select RTC_DRV_BQ4802 >> 80 select RTC_DRV_SUN4V >> 81 select RTC_DRV_STARFIRE 95 select HAVE_PERF_EVENTS 82 select HAVE_PERF_EVENTS 96 select HAVE_PERF_REGS !! 83 select PERF_USE_VMALLOC 97 select HAVE_PERF_USER_STACK_DUMP !! 84 select IRQ_PREFLOW_FASTEOI 98 select HAVE_DMA_CONTIGUOUS !! 85 select ARCH_HAVE_NMI_SAFE_CMPXCHG >> 86 select HAVE_C_RECORDMCOUNT >> 87 select HAVE_ARCH_AUDITSYSCALL >> 88 select ARCH_SUPPORTS_ATOMIC_RMW >> 89 select HAVE_NMI 99 select HAVE_REGS_AND_STACK_ACCESS_API 90 select HAVE_REGS_AND_STACK_ACCESS_API 100 select HAVE_STACKPROTECTOR !! 91 select ARCH_USE_QUEUED_RWLOCKS 101 select HAVE_SYSCALL_TRACEPOINTS !! 92 select ARCH_USE_QUEUED_SPINLOCKS 102 select HOTPLUG_CORE_SYNC_DEAD if HOTPL !! 93 select GENERIC_TIME_VSYSCALL 103 select LOCK_MM_AND_FIND_VMA !! 94 select ARCH_CLOCKSOURCE_DATA 104 select MAY_HAVE_SPARSE_IRQ !! 95 select ARCH_HAS_PTE_SPECIAL 105 select MODULES_USE_ELF_RELA if MODULES !! 96 select PCI_DOMAINS if PCI 106 select OF !! 97 select ARCH_HAS_GIGANTIC_PAGE 107 select OF_EARLY_FLATTREE !! 98 108 select PERF_USE_VMALLOC if CPU_CK610 !! 99 config ARCH_DEFCONFIG 109 select RTC_LIB !! 100 string 110 select TIMER_OF !! 101 default "arch/sparc/configs/sparc32_defconfig" if SPARC32 111 select GENERIC_PCI_IOMAP !! 102 default "arch/sparc/configs/sparc64_defconfig" if SPARC64 112 select HAVE_PCI << 113 select PCI_DOMAINS_GENERIC if PCI << 114 select PCI_SYSCALL if PCI << 115 select PCI_MSI if PCI << 116 select TRACE_IRQFLAGS_SUPPORT << 117 103 118 config LOCKDEP_SUPPORT !! 104 config ARCH_PROC_KCORE_TEXT 119 def_bool y 105 def_bool y 120 106 121 config ARCH_SUPPORTS_UPROBES !! 107 config CPU_BIG_ENDIAN 122 def_bool y if !CPU_CK610 !! 108 def_bool y 123 109 124 config CPU_HAS_CACHEV2 !! 110 config ARCH_ATU 125 bool 111 bool >> 112 default y if SPARC64 126 113 127 config CPU_HAS_FPUV2 !! 114 config STACKTRACE_SUPPORT 128 bool 115 bool >> 116 default y if SPARC64 129 117 130 config CPU_HAS_HILO !! 118 config LOCKDEP_SUPPORT 131 bool 119 bool >> 120 default y if SPARC64 >> 121 >> 122 config ARCH_HIBERNATION_POSSIBLE >> 123 def_bool y if SPARC64 132 124 133 config CPU_HAS_TLBI !! 125 config AUDIT_ARCH 134 bool 126 bool >> 127 default y >> 128 >> 129 config HAVE_SETUP_PER_CPU_AREA >> 130 def_bool y if SPARC64 >> 131 >> 132 config NEED_PER_CPU_EMBED_FIRST_CHUNK >> 133 def_bool y if SPARC64 >> 134 >> 135 config NEED_PER_CPU_PAGE_FIRST_CHUNK >> 136 def_bool y if SPARC64 135 137 136 config CPU_HAS_LDSTEX !! 138 config MMU 137 bool 139 bool 138 help !! 140 default y 139 For SMP, CPU needs "ldex&stex" instr << 140 141 141 config CPU_NEED_TLBSYNC !! 142 config HIGHMEM 142 bool 143 bool >> 144 default y if SPARC32 143 145 144 config CPU_NEED_SOFTALIGN !! 146 config ZONE_DMA 145 bool 147 bool >> 148 default y if SPARC32 146 149 147 config CPU_NO_USER_BKPT !! 150 config GENERIC_ISA_DMA 148 bool 151 bool 149 help !! 152 default y if SPARC32 150 For abiv2 we couldn't use "trap 1" a << 151 abiv2 is 16/32bit instruction set an << 152 So we need a 16bit instruction as us << 153 instruction exception. << 154 In kernel we parse the *regs->pc to << 155 153 156 config GENERIC_CALIBRATE_DELAY !! 154 config ARCH_SUPPORTS_DEBUG_PAGEALLOC 157 def_bool y !! 155 def_bool y if SPARC64 158 156 159 config GENERIC_CSUM !! 157 config PGTABLE_LEVELS 160 def_bool y !! 158 default 4 if 64BIT >> 159 default 3 >> 160 >> 161 config ARCH_SUPPORTS_UPROBES >> 162 def_bool y if SPARC64 >> 163 >> 164 menu "Processor type and features" >> 165 >> 166 config SMP >> 167 bool "Symmetric multi-processing support" >> 168 ---help--- >> 169 This enables support for systems with more than one CPU. If you have >> 170 a system with only one CPU, say N. If you have a system with more >> 171 than one CPU, say Y. >> 172 >> 173 If you say N here, the kernel will run on uni- and multiprocessor >> 174 machines, but will use only one CPU of a multiprocessor machine. If >> 175 you say Y here, the kernel will run on many, but not all, >> 176 uniprocessor machines. On a uniprocessor machine, the kernel >> 177 will run faster if you say N here. >> 178 >> 179 People using multiprocessor machines who say Y here should also say >> 180 Y to "Enhanced Real Time Clock Support", below. The "Advanced Power >> 181 Management" code will be disabled if you say Y here. >> 182 >> 183 See also <file:Documentation/admin-guide/lockup-watchdogs.rst> and the SMP-HOWTO >> 184 available at <http://www.tldp.org/docs.html#howto>. >> 185 >> 186 If you don't know what to do here, say N. >> 187 >> 188 config NR_CPUS >> 189 int "Maximum number of CPUs" >> 190 depends on SMP >> 191 range 2 32 if SPARC32 >> 192 range 2 4096 if SPARC64 >> 193 default 32 if SPARC32 >> 194 default 4096 if SPARC64 >> 195 >> 196 source "kernel/Kconfig.hz" 161 197 162 config GENERIC_HWEIGHT 198 config GENERIC_HWEIGHT 163 def_bool y !! 199 bool >> 200 default y 164 201 165 config MMU !! 202 config GENERIC_CALIBRATE_DELAY 166 def_bool y !! 203 bool >> 204 default y 167 205 168 config STACKTRACE_SUPPORT !! 206 config ARCH_MAY_HAVE_PC_FDC 169 def_bool y !! 207 bool >> 208 default y >> 209 >> 210 config EMULATED_CMPXCHG >> 211 bool >> 212 default y if SPARC32 >> 213 help >> 214 Sparc32 does not have a CAS instruction like sparc64. cmpxchg() >> 215 is emulated, and therefore it is not completely atomic. 170 216 171 config TIME_LOW_RES !! 217 # Makefile helpers >> 218 config SPARC32_SMP >> 219 bool >> 220 default y >> 221 depends on SPARC32 && SMP >> 222 >> 223 config SPARC64_SMP >> 224 bool >> 225 default y >> 226 depends on SPARC64 && SMP >> 227 >> 228 config EARLYFB >> 229 bool "Support for early boot text console" >> 230 default y >> 231 depends on SPARC64 >> 232 help >> 233 Say Y here to enable a faster early framebuffer boot console. >> 234 >> 235 config SECCOMP >> 236 bool "Enable seccomp to safely compute untrusted bytecode" >> 237 depends on SPARC64 && PROC_FS >> 238 default y >> 239 help >> 240 This kernel feature is useful for number crunching applications >> 241 that may need to compute untrusted bytecode during their >> 242 execution. By using pipes or other transports made available to >> 243 the process as file descriptors supporting the read/write >> 244 syscalls, it's possible to isolate those applications in >> 245 their own address space using seccomp. Once seccomp is >> 246 enabled via /proc/<pid>/seccomp, it cannot be disabled >> 247 and the task is only allowed to execute a few safe syscalls >> 248 defined by each seccomp mode. >> 249 >> 250 If unsure, say Y. Only embedded should say N here. >> 251 >> 252 config HOTPLUG_CPU >> 253 bool "Support for hot-pluggable CPUs" >> 254 depends on SPARC64 && SMP >> 255 help >> 256 Say Y here to experiment with turning CPUs off and on. CPUs >> 257 can be controlled through /sys/devices/system/cpu/cpu#. >> 258 Say N if you want to disable CPU hotplug. >> 259 >> 260 if SPARC64 >> 261 source "drivers/cpufreq/Kconfig" >> 262 endif >> 263 >> 264 config US3_MC >> 265 tristate "UltraSPARC-III Memory Controller driver" >> 266 depends on SPARC64 >> 267 default y >> 268 help >> 269 This adds a driver for the UltraSPARC-III memory controller. >> 270 Loading this driver allows exact mnemonic strings to be >> 271 printed in the event of a memory error, so that the faulty DIMM >> 272 on the motherboard can be matched to the error. >> 273 >> 274 If in doubt, say Y, as this information can be very useful. >> 275 >> 276 # Global things across all Sun machines. >> 277 config GENERIC_LOCKBREAK >> 278 bool >> 279 default y >> 280 depends on SPARC64 && SMP && PREEMPT >> 281 >> 282 config NUMA >> 283 bool "NUMA support" >> 284 depends on SPARC64 && SMP >> 285 >> 286 config NODES_SHIFT >> 287 int "Maximum NUMA Nodes (as a power of 2)" >> 288 range 4 5 if SPARC64 >> 289 default "5" >> 290 depends on NEED_MULTIPLE_NODES >> 291 help >> 292 Specify the maximum number of NUMA Nodes available on the target >> 293 system. Increases memory reserved to accommodate various tables. >> 294 >> 295 # Some NUMA nodes have memory ranges that span >> 296 # other nodes. Even though a pfn is valid and >> 297 # between a node's start and end pfns, it may not >> 298 # reside on that node. See memmap_init_zone() >> 299 # for details. >> 300 config NODES_SPAN_OTHER_NODES 172 def_bool y 301 def_bool y >> 302 depends on NEED_MULTIPLE_NODES 173 303 174 config CPU_ASID_BITS !! 304 config ARCH_SPARSEMEM_ENABLE 175 int !! 305 def_bool y if SPARC64 176 default "8" if (CPU_CK610 || CPU_C !! 306 select SPARSEMEM_VMEMMAP_ENABLE 177 default "12" if (CPU_CK860) !! 307 178 !! 308 config ARCH_SPARSEMEM_DEFAULT 179 config L1_CACHE_SHIFT !! 309 def_bool y if SPARC64 180 int !! 310 181 default "4" if (CPU_CK610) !! 311 config FORCE_MAX_ZONEORDER 182 default "5" if (CPU_CK807 || CPU_C !! 312 int "Maximum zone order" 183 default "6" if (CPU_CK860) !! 313 default "13" 184 !! 314 help 185 config ARCH_MMAP_RND_BITS_MIN !! 315 The kernel memory allocator divides physically contiguous memory 186 default 8 !! 316 blocks into "zones", where each zone is a power of two number of 187 !! 317 pages. This option selects the largest power of two that the kernel 188 # max bits determined by the following formula !! 318 keeps in the memory allocator. If you need to allocate very large 189 # VA_BITS - PAGE_SHIFT - 3 !! 319 blocks of physically contiguous memory, then you may need to 190 config ARCH_MMAP_RND_BITS_MAX !! 320 increase this value. 191 default 17 << 192 321 193 menu "Processor type and features" !! 322 This config option is actually maximum order plus one. For example, >> 323 a value of 13 means that the largest free memory block is 2^12 pages. 194 324 195 choice !! 325 if SPARC64 || COMPILE_TEST 196 prompt "CPU MODEL" !! 326 source "kernel/power/Kconfig" 197 default CPU_CK807 << 198 << 199 config CPU_CK610 << 200 bool "CSKY CPU ck610" << 201 select CPU_NEED_TLBSYNC << 202 select CPU_NEED_SOFTALIGN << 203 select CPU_NO_USER_BKPT << 204 << 205 config CPU_CK810 << 206 bool "CSKY CPU ck810" << 207 select CPU_HAS_HILO << 208 select CPU_NEED_TLBSYNC << 209 << 210 config CPU_CK807 << 211 bool "CSKY CPU ck807" << 212 select CPU_HAS_HILO << 213 << 214 config CPU_CK860 << 215 bool "CSKY CPU ck860" << 216 select CPU_HAS_TLBI << 217 select CPU_HAS_CACHEV2 << 218 select CPU_HAS_LDSTEX << 219 select CPU_HAS_FPUV2 << 220 endchoice << 221 << 222 choice << 223 prompt "PAGE OFFSET" << 224 default PAGE_OFFSET_80000000 << 225 << 226 config PAGE_OFFSET_80000000 << 227 bool "PAGE OFFSET 2G (user:kernel = 2: << 228 << 229 config PAGE_OFFSET_A0000000 << 230 bool "PAGE OFFSET 2.5G (user:kernel = << 231 endchoice << 232 << 233 config PAGE_OFFSET << 234 hex << 235 default 0x80000000 if PAGE_OFFSET_8000 << 236 default 0xa0000000 if PAGE_OFFSET_A000 << 237 choice << 238 << 239 prompt "C-SKY PMU type" << 240 depends on PERF_EVENTS << 241 depends on CPU_CK807 || CPU_CK810 || C << 242 << 243 config CPU_PMU_NONE << 244 bool "None" << 245 << 246 config CSKY_PMU_V1 << 247 bool "Performance Monitoring Unit Ver. << 248 << 249 endchoice << 250 << 251 choice << 252 prompt "Power Manager Instruction (wai << 253 default CPU_PM_NONE << 254 << 255 config CPU_PM_NONE << 256 bool "None" << 257 << 258 config CPU_PM_WAIT << 259 bool "wait" << 260 << 261 config CPU_PM_DOZE << 262 bool "doze" << 263 << 264 config CPU_PM_STOP << 265 bool "stop" << 266 endchoice << 267 << 268 menuconfig HAVE_TCM << 269 bool "Tightly-Coupled/Sram Memory" << 270 depends on !COMPILE_TEST << 271 help << 272 The implementation are not only used << 273 but also used by sram on SOC bus. It << 274 software interface, so that old tcm << 275 re-used directly. << 276 << 277 if HAVE_TCM << 278 config ITCM_RAM_BASE << 279 hex "ITCM ram base" << 280 default 0xffffffff << 281 << 282 config ITCM_NR_PAGES << 283 int "Page count of ITCM size: NR*4KB" << 284 range 1 256 << 285 default 32 << 286 << 287 config HAVE_DTCM << 288 bool "DTCM Support" << 289 << 290 config DTCM_RAM_BASE << 291 hex "DTCM ram base" << 292 depends on HAVE_DTCM << 293 default 0xffffffff << 294 << 295 config DTCM_NR_PAGES << 296 int "Page count of DTCM size: NR*4KB" << 297 depends on HAVE_DTCM << 298 range 1 256 << 299 default 32 << 300 endif 327 endif 301 328 302 config CPU_HAS_VDSP !! 329 config SCHED_SMT 303 bool "CPU has VDSP coprocessor" !! 330 bool "SMT (Hyperthreading) scheduler support" 304 depends on CPU_HAS_FPU && CPU_HAS_FPUV !! 331 depends on SPARC64 && SMP 305 !! 332 default y 306 config CPU_HAS_FPU !! 333 help 307 bool "CPU has FPU coprocessor" !! 334 SMT scheduler support improves the CPU scheduler's decision making 308 depends on CPU_CK807 || CPU_CK810 || C !! 335 when dealing with SPARC cpus at a cost of slightly increased overhead 309 !! 336 in some places. If unsure say N here. 310 config CPU_HAS_ICACHE_INS !! 337 311 bool "CPU has Icache invalidate instru !! 338 config SCHED_MC 312 depends on CPU_HAS_CACHEV2 !! 339 bool "Multi-core scheduler support" 313 !! 340 depends on SPARC64 && SMP 314 config CPU_HAS_TEE !! 341 default y 315 bool "CPU has Trusted Execution Enviro !! 342 help 316 depends on CPU_CK810 !! 343 Multi-core scheduler support improves the CPU scheduler's decision >> 344 making when dealing with multi-core CPU chips at a cost of slightly >> 345 increased overhead in some places. If unsure say N here. >> 346 >> 347 config CMDLINE_BOOL >> 348 bool "Default bootloader kernel arguments" >> 349 depends on SPARC64 >> 350 >> 351 config CMDLINE >> 352 string "Initial kernel command string" >> 353 depends on CMDLINE_BOOL >> 354 default "console=ttyS0,9600 root=/dev/sda1" >> 355 help >> 356 Say Y here if you want to be able to pass default arguments to >> 357 the kernel. This will be overridden by the bootloader, if you >> 358 use one (such as SILO). This is most useful if you want to boot >> 359 a kernel from TFTP, and want default options to be available >> 360 with having them passed on the command line. 317 361 318 config SMP !! 362 NOTE: This option WILL override the PROM bootargs setting! 319 bool "Symmetric Multi-Processing (SMP) << 320 depends on CPU_CK860 << 321 default n << 322 363 323 config NR_CPUS !! 364 config SUN_PM 324 int "Maximum number of CPUs (2-32)" !! 365 bool 325 range 2 32 !! 366 default y if SPARC32 326 depends on SMP !! 367 help 327 default "4" !! 368 Enable power management and CPU standby features on supported >> 369 SPARC platforms. 328 370 329 config HIGHMEM !! 371 config SPARC_LED 330 bool "High Memory Support" !! 372 tristate "Sun4m LED driver" 331 depends on !CPU_CK610 !! 373 depends on SPARC32 332 select KMAP_LOCAL !! 374 help >> 375 This driver toggles the front-panel LED on sun4m systems >> 376 in a user-specifiable manner. Its state can be probed >> 377 by reading /proc/led and its blinking mode can be changed >> 378 via writes to /proc/led >> 379 >> 380 config SERIAL_CONSOLE >> 381 bool >> 382 depends on SPARC32 333 default y 383 default y >> 384 ---help--- >> 385 If you say Y here, it will be possible to use a serial port as the >> 386 system console (the system console is the device which receives all >> 387 kernel messages and warnings and which allows logins in single user >> 388 mode). This could be useful if some terminal or printer is connected >> 389 to that serial port. >> 390 >> 391 Even if you say Y here, the currently visible virtual console >> 392 (/dev/tty0) will still be used as the system console by default, but >> 393 you can alter that using a kernel command line option such as >> 394 "console=ttyS1". (Try "man bootparam" or see the documentation of >> 395 your boot loader (silo) about how to pass options to the kernel at >> 396 boot time.) >> 397 >> 398 If you don't have a graphics card installed and you say Y here, the >> 399 kernel will automatically use the first serial line, /dev/ttyS0, as >> 400 system console. >> 401 >> 402 If unsure, say N. >> 403 >> 404 config SPARC_LEON >> 405 bool "Sparc Leon processor family" >> 406 depends on SPARC32 >> 407 select USB_EHCI_BIG_ENDIAN_MMIO >> 408 select USB_EHCI_BIG_ENDIAN_DESC >> 409 select USB_UHCI_BIG_ENDIAN_MMIO >> 410 select USB_UHCI_BIG_ENDIAN_DESC >> 411 ---help--- >> 412 If you say Y here if you are running on a SPARC-LEON processor. >> 413 The LEON processor is a synthesizable VHDL model of the >> 414 SPARC-v8 standard. LEON is part of the GRLIB collection of >> 415 IP cores that are distributed under GPL. GRLIB can be downloaded >> 416 from www.gaisler.com. You can download a sparc-linux cross-compilation >> 417 toolchain at www.gaisler.com. >> 418 >> 419 if SPARC_LEON >> 420 menu "U-Boot options" >> 421 >> 422 config UBOOT_LOAD_ADDR >> 423 hex "uImage Load Address" >> 424 default 0x40004000 >> 425 ---help--- >> 426 U-Boot kernel load address, the address in physical address space >> 427 where u-boot will place the Linux kernel before booting it. >> 428 This address is normally the base address of main memory + 0x4000. >> 429 >> 430 config UBOOT_FLASH_ADDR >> 431 hex "uImage.o Load Address" >> 432 default 0x00080000 >> 433 ---help--- >> 434 Optional setting only affecting the uImage.o ELF-image used to >> 435 download the uImage file to the target using a ELF-loader other than >> 436 U-Boot. It may for example be used to download an uImage to FLASH with >> 437 the GRMON utility before even starting u-boot. >> 438 >> 439 config UBOOT_ENTRY_ADDR >> 440 hex "uImage Entry Address" >> 441 default 0xf0004000 >> 442 ---help--- >> 443 Do not change this unless you know what you're doing. This is >> 444 hardcoded by the SPARC32 and LEON port. 334 445 335 config DRAM_BASE !! 446 This is the virtual address u-boot jumps to when booting the Linux 336 hex "DRAM start addr (the same with me !! 447 Kernel. 337 default 0x0 << 338 448 339 config HOTPLUG_CPU !! 449 endmenu 340 bool "Support for hot-pluggable CPUs" !! 450 endif 341 select GENERIC_IRQ_MIGRATION !! 451 342 depends on SMP !! 452 endmenu >> 453 >> 454 menu "Bus options (PCI etc.)" >> 455 config SBUS >> 456 bool >> 457 default y >> 458 >> 459 config SBUSCHAR >> 460 bool >> 461 default y >> 462 >> 463 config SUN_LDOMS >> 464 bool "Sun Logical Domains support" >> 465 depends on SPARC64 343 help 466 help 344 Say Y here to allow turning CPUs off !! 467 Say Y here is you want to support virtual devices via 345 controlled through /sys/devices/syst !! 468 Logical Domains. 346 469 347 Say N if you want to disable CPU hot !! 470 config PCIC_PCI >> 471 bool >> 472 depends on PCI && SPARC32 && !SPARC_LEON >> 473 default y >> 474 >> 475 config LEON_PCI >> 476 bool >> 477 depends on PCI && SPARC_LEON >> 478 default y 348 479 349 config HAVE_EFFICIENT_UNALIGNED_STRING_OPS !! 480 config SPARC_GRPCI1 350 bool "Enable EFFICIENT_UNALIGNED_STRIN !! 481 bool "GRPCI Host Bridge Support" 351 depends on CPU_CK807 || CPU_CK810 || C !! 482 depends on LEON_PCI >> 483 default y 352 help 484 help 353 Say Y here to enable EFFICIENT_UNALI !! 485 Say Y here to include the GRPCI Host Bridge Driver. The GRPCI 354 deal with unaligned access by hardwa !! 486 PCI host controller is typically found in GRLIB SPARC32/LEON >> 487 systems. The driver has one property (all_pci_errors) controlled >> 488 from the bootloader that makes the GRPCI to generate interrupts >> 489 on detected PCI Parity and System errors. >> 490 >> 491 config SPARC_GRPCI2 >> 492 bool "GRPCI2 Host Bridge Support" >> 493 depends on LEON_PCI >> 494 default y >> 495 help >> 496 Say Y here to include the GRPCI2 Host Bridge Driver. >> 497 >> 498 config SUN_OPENPROMFS >> 499 tristate "Openprom tree appears in /proc/openprom" >> 500 help >> 501 If you say Y, the OpenPROM device tree will be available as a >> 502 virtual file system, which you can mount to /proc/openprom by "mount >> 503 -t openpromfs none /proc/openprom". >> 504 >> 505 To compile the /proc/openprom support as a module, choose M here: the >> 506 module will be called openpromfs. >> 507 >> 508 Only choose N if you know in advance that you will not need to modify >> 509 OpenPROM settings on the running system. >> 510 >> 511 # Makefile helpers >> 512 config SPARC64_PCI >> 513 bool >> 514 default y >> 515 depends on SPARC64 && PCI >> 516 >> 517 config SPARC64_PCI_MSI >> 518 bool >> 519 default y >> 520 depends on SPARC64_PCI && PCI_MSI 355 521 356 endmenu 522 endmenu 357 523 358 source "arch/csky/Kconfig.platforms" !! 524 config COMPAT >> 525 bool >> 526 depends on SPARC64 >> 527 default y >> 528 select COMPAT_BINFMT_ELF if BINFMT_ELF >> 529 select HAVE_UID16 >> 530 select ARCH_WANT_OLD_COMPAT_IPC >> 531 select COMPAT_OLD_SIGACTION >> 532 >> 533 config SYSVIPC_COMPAT >> 534 bool >> 535 depends on COMPAT && SYSVIPC >> 536 default y 359 537 360 source "kernel/Kconfig.hz" !! 538 source "drivers/sbus/char/Kconfig"
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.