Root/arch/sparc/Kconfig

1config 64BIT
2    bool "64-bit kernel" if ARCH = "sparc"
3    default ARCH = "sparc64"
4    help
5      SPARC is a family of RISC microprocessors designed and marketed by
6      Sun Microsystems, incorporated. They are very widely found in Sun
7      workstations and clones.
8
9      Say yes to build a 64-bit kernel - formerly known as sparc64
10      Say no to build a 32-bit kernel - formerly known as sparc
11
12config SPARC
13    bool
14    default y
15    select OF
16    select OF_PROMTREE
17    select HAVE_IDE
18    select HAVE_OPROFILE
19    select HAVE_ARCH_KGDB if !SMP || SPARC64
20    select HAVE_ARCH_TRACEHOOK
21    select ARCH_WANT_OPTIONAL_GPIOLIB
22    select RTC_CLASS
23    select RTC_DRV_M48T59
24    select HAVE_IRQ_WORK
25    select HAVE_DMA_ATTRS
26    select HAVE_DMA_API_DEBUG
27    select HAVE_ARCH_JUMP_LABEL
28
29config SPARC32
30    def_bool !64BIT
31
32config SPARC64
33    def_bool 64BIT
34    select ARCH_SUPPORTS_MSI
35    select HAVE_FUNCTION_TRACER
36    select HAVE_FUNCTION_GRAPH_TRACER
37    select HAVE_FUNCTION_GRAPH_FP_TEST
38    select HAVE_FUNCTION_TRACE_MCOUNT_TEST
39    select HAVE_KRETPROBES
40    select HAVE_KPROBES
41    select HAVE_MEMBLOCK
42    select HAVE_SYSCALL_WRAPPERS
43    select HAVE_DYNAMIC_FTRACE
44    select HAVE_FTRACE_MCOUNT_RECORD
45    select HAVE_SYSCALL_TRACEPOINTS
46    select USE_GENERIC_SMP_HELPERS if SMP
47    select RTC_DRV_CMOS
48    select RTC_DRV_BQ4802
49    select RTC_DRV_SUN4V
50    select RTC_DRV_STARFIRE
51    select HAVE_PERF_EVENTS
52    select PERF_USE_VMALLOC
53
54config ARCH_DEFCONFIG
55    string
56    default "arch/sparc/configs/sparc32_defconfig" if SPARC32
57    default "arch/sparc/configs/sparc64_defconfig" if SPARC64
58
59# CONFIG_BITS can be used at source level to get 32/64 bits
60config BITS
61    int
62    default 32 if SPARC32
63    default 64 if SPARC64
64
65config ARCH_USES_GETTIMEOFFSET
66    bool
67    default y if SPARC32
68
69config GENERIC_CMOS_UPDATE
70    bool
71    default y
72
73config GENERIC_CLOCKEVENTS
74    bool
75    default y if SPARC64
76
77config IOMMU_HELPER
78    bool
79    default y if SPARC64
80
81config QUICKLIST
82    bool
83    default y if SPARC64
84
85config STACKTRACE_SUPPORT
86    bool
87    default y if SPARC64
88
89config LOCKDEP_SUPPORT
90    bool
91    default y if SPARC64
92
93config HAVE_LATENCYTOP_SUPPORT
94    bool
95    default y if SPARC64
96
97config AUDIT_ARCH
98    bool
99    default y
100
101config HAVE_SETUP_PER_CPU_AREA
102    def_bool y if SPARC64
103
104config NEED_PER_CPU_EMBED_FIRST_CHUNK
105    def_bool y if SPARC64
106
107config NEED_PER_CPU_PAGE_FIRST_CHUNK
108    def_bool y if SPARC64
109
110config GENERIC_HARDIRQS_NO__DO_IRQ
111    bool
112    def_bool y if SPARC64
113
114config MMU
115    bool
116    default y
117
118config HIGHMEM
119    bool
120    default y if SPARC32
121
122config ZONE_DMA
123    bool
124    default y if SPARC32
125
126config NEED_DMA_MAP_STATE
127    def_bool y
128
129config NEED_SG_DMA_LENGTH
130    def_bool y
131
132config GENERIC_ISA_DMA
133    bool
134    default y if SPARC32
135
136config GENERIC_GPIO
137    bool
138    help
139      Generic GPIO API support
140
141config ARCH_NO_VIRT_TO_BUS
142    def_bool y
143
144config ARCH_SUPPORTS_DEBUG_PAGEALLOC
145    def_bool y if SPARC64
146
147source "init/Kconfig"
148
149source "kernel/Kconfig.freezer"
150
151menu "Processor type and features"
152
153config SMP
154    bool "Symmetric multi-processing support (does not work on sun4/sun4c)"
155    ---help---
156      This enables support for systems with more than one CPU. If you have
157      a system with only one CPU, say N. If you have a system with more
158      than one CPU, say Y.
159
160      If you say N here, the kernel will run on single and multiprocessor
161      machines, but will use only one CPU of a multiprocessor machine. If
162      you say Y here, the kernel will run on many, but not all,
163      singleprocessor machines. On a singleprocessor machine, the kernel
164      will run faster if you say N here.
165
166      People using multiprocessor machines who say Y here should also say
167      Y to "Enhanced Real Time Clock Support", below. The "Advanced Power
168      Management" code will be disabled if you say Y here.
169
170      See also <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO
171      available at <http://www.tldp.org/docs.html#howto>.
172
173      If you don't know what to do here, say N.
174
175config NR_CPUS
176    int "Maximum number of CPUs"
177    depends on SMP
178    range 2 32 if SPARC32
179    range 2 1024 if SPARC64
180    default 32 if SPARC32
181    default 64 if SPARC64
182
183source kernel/Kconfig.hz
184
185config RWSEM_GENERIC_SPINLOCK
186    bool
187    default y if SPARC32
188
189config RWSEM_XCHGADD_ALGORITHM
190    bool
191    default y if SPARC64
192
193config GENERIC_FIND_NEXT_BIT
194    bool
195    default y
196
197config GENERIC_HWEIGHT
198    bool
199    default y if !ULTRA_HAS_POPULATION_COUNT
200
201config GENERIC_CALIBRATE_DELAY
202    bool
203    default y
204
205config ARCH_MAY_HAVE_PC_FDC
206    bool
207    default y
208
209config EMULATED_CMPXCHG
210    bool
211    default y if SPARC32
212    help
213      Sparc32 does not have a CAS instruction like sparc64. cmpxchg()
214      is emulated, and therefore it is not completely atomic.
215
216# Makefile helpers
217config SPARC32_SMP
218    bool
219    default y
220    depends on SPARC32 && SMP
221
222config SPARC64_SMP
223    bool
224    default y
225    depends on SPARC64 && SMP
226
227config EARLYFB
228    bool "Support for early boot text console"
229    default y
230    depends on SPARC64
231    help
232      Say Y here to enable a faster early framebuffer boot console.
233
234choice
235    prompt "Kernel page size" if SPARC64
236    default SPARC64_PAGE_SIZE_8KB
237
238config SPARC64_PAGE_SIZE_8KB
239    bool "8KB"
240    help
241      This lets you select the page size of the kernel.
242
243      8KB and 64KB work quite well, since SPARC ELF sections
244      provide for up to 64KB alignment.
245
246      If you don't know what to do, choose 8KB.
247
248config SPARC64_PAGE_SIZE_64KB
249    bool "64KB"
250
251endchoice
252
253config SECCOMP
254    bool "Enable seccomp to safely compute untrusted bytecode"
255    depends on SPARC64 && PROC_FS
256    default y
257    help
258      This kernel feature is useful for number crunching applications
259      that may need to compute untrusted bytecode during their
260      execution. By using pipes or other transports made available to
261      the process as file descriptors supporting the read/write
262      syscalls, it's possible to isolate those applications in
263      their own address space using seccomp. Once seccomp is
264      enabled via /proc/<pid>/seccomp, it cannot be disabled
265      and the task is only allowed to execute a few safe syscalls
266      defined by each seccomp mode.
267
268      If unsure, say Y. Only embedded should say N here.
269
270config HOTPLUG_CPU
271    bool "Support for hot-pluggable CPUs"
272    depends on SPARC64 && SMP
273    select HOTPLUG
274    help
275      Say Y here to experiment with turning CPUs off and on. CPUs
276      can be controlled through /sys/devices/system/cpu/cpu#.
277      Say N if you want to disable CPU hotplug.
278
279config GENERIC_HARDIRQS
280    bool
281    default y if SPARC64
282
283source "kernel/time/Kconfig"
284
285if SPARC64
286source "drivers/cpufreq/Kconfig"
287
288config US3_FREQ
289    tristate "UltraSPARC-III CPU Frequency driver"
290    depends on CPU_FREQ
291    select CPU_FREQ_TABLE
292    help
293      This adds the CPUFreq driver for UltraSPARC-III processors.
294
295      For details, take a look at <file:Documentation/cpu-freq>.
296
297      If in doubt, say N.
298
299config US2E_FREQ
300    tristate "UltraSPARC-IIe CPU Frequency driver"
301    depends on CPU_FREQ
302    select CPU_FREQ_TABLE
303    help
304      This adds the CPUFreq driver for UltraSPARC-IIe processors.
305
306      For details, take a look at <file:Documentation/cpu-freq>.
307
308      If in doubt, say N.
309
310endif
311
312config US3_MC
313    tristate "UltraSPARC-III Memory Controller driver"
314    depends on SPARC64
315    default y
316    help
317      This adds a driver for the UltraSPARC-III memory controller.
318      Loading this driver allows exact mnemonic strings to be
319      printed in the event of a memory error, so that the faulty DIMM
320      on the motherboard can be matched to the error.
321
322      If in doubt, say Y, as this information can be very useful.
323
324# Global things across all Sun machines.
325config GENERIC_LOCKBREAK
326    bool
327    default y
328    depends on SPARC64 && SMP && PREEMPT
329
330choice
331    prompt "SPARC64 Huge TLB Page Size"
332    depends on SPARC64 && HUGETLB_PAGE
333    default HUGETLB_PAGE_SIZE_4MB
334
335config HUGETLB_PAGE_SIZE_4MB
336    bool "4MB"
337
338config HUGETLB_PAGE_SIZE_512K
339    bool "512K"
340
341config HUGETLB_PAGE_SIZE_64K
342    depends on !SPARC64_PAGE_SIZE_64KB
343    bool "64K"
344
345endchoice
346
347config NUMA
348    bool "NUMA support"
349    depends on SPARC64 && SMP
350
351config NODES_SHIFT
352    int
353    default "4"
354    depends on NEED_MULTIPLE_NODES
355
356# Some NUMA nodes have memory ranges that span
357# other nodes. Even though a pfn is valid and
358# between a node's start and end pfns, it may not
359# reside on that node. See memmap_init_zone()
360# for details.
361config NODES_SPAN_OTHER_NODES
362    def_bool y
363    depends on NEED_MULTIPLE_NODES
364
365config ARCH_POPULATES_NODE_MAP
366    def_bool y if SPARC64
367
368config ARCH_SELECT_MEMORY_MODEL
369    def_bool y if SPARC64
370
371config ARCH_SPARSEMEM_ENABLE
372    def_bool y if SPARC64
373    select SPARSEMEM_VMEMMAP_ENABLE
374
375config ARCH_SPARSEMEM_DEFAULT
376    def_bool y if SPARC64
377
378source "mm/Kconfig"
379
380config SCHED_SMT
381    bool "SMT (Hyperthreading) scheduler support"
382    depends on SPARC64 && SMP
383    default y
384    help
385      SMT scheduler support improves the CPU scheduler's decision making
386      when dealing with SPARC cpus at a cost of slightly increased overhead
387      in some places. If unsure say N here.
388
389config SCHED_MC
390    bool "Multi-core scheduler support"
391    depends on SPARC64 && SMP
392    default y
393    help
394      Multi-core scheduler support improves the CPU scheduler's decision
395      making when dealing with multi-core CPU chips at a cost of slightly
396      increased overhead in some places. If unsure say N here.
397
398if SPARC64
399source "kernel/Kconfig.preempt"
400endif
401
402config CMDLINE_BOOL
403    bool "Default bootloader kernel arguments"
404    depends on SPARC64
405
406config CMDLINE
407    string "Initial kernel command string"
408    depends on CMDLINE_BOOL
409    default "console=ttyS0,9600 root=/dev/sda1"
410    help
411      Say Y here if you want to be able to pass default arguments to
412      the kernel. This will be overridden by the bootloader, if you
413      use one (such as SILO). This is most useful if you want to boot
414      a kernel from TFTP, and want default options to be available
415      with having them passed on the command line.
416
417      NOTE: This option WILL override the PROM bootargs setting!
418
419config SUN_PM
420    bool
421    default y if SPARC32
422    help
423      Enable power management and CPU standby features on supported
424      SPARC platforms.
425
426config SPARC_LED
427    tristate "Sun4m LED driver"
428    depends on SPARC32
429    help
430      This driver toggles the front-panel LED on sun4m systems
431      in a user-specifiable manner. Its state can be probed
432      by reading /proc/led and its blinking mode can be changed
433      via writes to /proc/led
434
435config SERIAL_CONSOLE
436    bool
437    depends on SPARC32
438    default y
439    ---help---
440      If you say Y here, it will be possible to use a serial port as the
441      system console (the system console is the device which receives all
442      kernel messages and warnings and which allows logins in single user
443      mode). This could be useful if some terminal or printer is connected
444      to that serial port.
445
446      Even if you say Y here, the currently visible virtual console
447      (/dev/tty0) will still be used as the system console by default, but
448      you can alter that using a kernel command line option such as
449      "console=ttyS1". (Try "man bootparam" or see the documentation of
450      your boot loader (silo) about how to pass options to the kernel at
451      boot time.)
452
453      If you don't have a graphics card installed and you say Y here, the
454      kernel will automatically use the first serial line, /dev/ttyS0, as
455      system console.
456
457      If unsure, say N.
458
459config SPARC_LEON
460    bool "Sparc Leon processor family"
461    depends on SPARC32
462    ---help---
463      If you say Y here if you are running on a SPARC-LEON processor.
464      The LEON processor is a synthesizable VHDL model of the
465      SPARC-v8 standard. LEON is part of the GRLIB collection of
466      IP cores that are distributed under GPL. GRLIB can be downloaded
467      from www.gaisler.com. You can download a sparc-linux cross-compilation
468      toolchain at www.gaisler.com.
469
470endmenu
471
472menu "Bus options (PCI etc.)"
473config SBUS
474    bool
475    default y
476
477config SBUSCHAR
478    bool
479    default y
480
481config SUN_LDOMS
482    bool "Sun Logical Domains support"
483    depends on SPARC64
484    help
485      Say Y here is you want to support virtual devices via
486      Logical Domains.
487
488config PCI
489    bool "Support for PCI and PS/2 keyboard/mouse"
490    help
491      Find out whether your system includes a PCI bus. PCI is the name of
492      a bus system, i.e. the way the CPU talks to the other stuff inside
493      your box. If you say Y here, the kernel will include drivers and
494      infrastructure code to support PCI bus devices.
495
496      CONFIG_PCI is needed for all JavaStation's (including MrCoffee),
497      CP-1200, JavaEngine-1, Corona, Red October, and Serengeti SGSC.
498      All of these platforms are extremely obscure, so say N if unsure.
499
500config PCI_DOMAINS
501    def_bool PCI if SPARC64
502
503config PCI_SYSCALL
504    def_bool PCI
505
506source "drivers/pci/Kconfig"
507
508source "drivers/pcmcia/Kconfig"
509
510config SUN_OPENPROMFS
511    tristate "Openprom tree appears in /proc/openprom"
512    help
513      If you say Y, the OpenPROM device tree will be available as a
514      virtual file system, which you can mount to /proc/openprom by "mount
515      -t openpromfs none /proc/openprom".
516
517      To compile the /proc/openprom support as a module, choose M here: the
518      module will be called openpromfs.
519
520      Only choose N if you know in advance that you will not need to modify
521      OpenPROM settings on the running system.
522
523# Makefile helpers
524config SPARC32_PCI
525    bool
526    default y
527    depends on SPARC32 && PCI
528
529config SPARC64_PCI
530    bool
531    default y
532    depends on SPARC64 && PCI
533
534endmenu
535
536menu "Executable file formats"
537
538source "fs/Kconfig.binfmt"
539
540config COMPAT
541    bool
542    depends on SPARC64
543    default y
544    select COMPAT_BINFMT_ELF
545
546config SYSVIPC_COMPAT
547    bool
548    depends on COMPAT && SYSVIPC
549    default y
550
551endmenu
552
553source "net/Kconfig"
554
555source "drivers/Kconfig"
556
557source "drivers/sbus/char/Kconfig"
558
559source "fs/Kconfig"
560
561source "arch/sparc/Kconfig.debug"
562
563source "security/Kconfig"
564
565source "crypto/Kconfig"
566
567source "lib/Kconfig"
568

Archive Download this file



interactive