Linux-libre 3.16.85-gnu
[librecmc/linux-libre.git] / arch / hexagon / Kconfig
1 # Hexagon configuration
2 comment "Linux Kernel Configuration for Hexagon"
3
4 config HEXAGON
5         def_bool y
6         select HAVE_OPROFILE
7         # Other pending projects/to-do items.
8         # select HAVE_REGS_AND_STACK_ACCESS_API
9         # select HAVE_HW_BREAKPOINT if PERF_EVENTS
10         # select ARCH_HAS_CPU_IDLE_WAIT
11         # select ARCH_WANT_OPTIONAL_GPIOLIB
12         # select ARCH_REQUIRE_GPIOLIB
13         # select HAVE_CLK
14         # select GENERIC_PENDING_IRQ if SMP
15         select GENERIC_ATOMIC64
16         select HAVE_PERF_EVENTS
17         # GENERIC_ALLOCATOR is used by dma_alloc_coherent()
18         select GENERIC_ALLOCATOR
19         select GENERIC_IRQ_SHOW
20         select HAVE_ARCH_KGDB
21         select HAVE_ARCH_TRACEHOOK
22         select NO_IOPORT_MAP
23         select GENERIC_IOMAP
24         select GENERIC_SMP_IDLE_THREAD
25         select STACKTRACE_SUPPORT
26         select KTIME_SCALAR
27         select GENERIC_CLOCKEVENTS
28         select GENERIC_CLOCKEVENTS_BROADCAST
29         select MODULES_USE_ELF_RELA
30         select GENERIC_CPU_DEVICES
31         select HAVE_DMA_ATTRS
32         ---help---
33           Qualcomm Hexagon is a processor architecture designed for high
34           performance and low power across a wide variety of applications.
35
36 config HEXAGON_PHYS_OFFSET
37         def_bool y
38         ---help---
39           Platforms that don't load the kernel at zero set this.
40
41 config FRAME_POINTER
42         def_bool y
43
44 config LOCKDEP_SUPPORT
45         def_bool y
46
47 config PCI
48         def_bool n
49
50 config EARLY_PRINTK
51         def_bool y
52
53 config MMU
54         def_bool y
55
56 config TRACE_IRQFLAGS_SUPPORT
57         def_bool y
58
59 config GENERIC_CSUM
60         def_bool y
61
62 #
63 # Use the generic interrupt handling code in kernel/irq/:
64 #
65 config GENERIC_IRQ_PROBE
66         def_bool y
67
68 config NEED_SG_DMA_LENGTH
69         def_bool y
70
71 config RWSEM_GENERIC_SPINLOCK
72         def_bool n
73
74 config RWSEM_XCHGADD_ALGORITHM
75         def_bool y
76
77 config GENERIC_HWEIGHT
78         def_bool y
79
80 config STACKTRACE_SUPPORT
81         def_bool y
82         select STACKTRACE
83
84 config GENERIC_BUG
85         def_bool y
86         depends on BUG
87
88 menu "Machine selection"
89
90 choice
91         prompt "System type"
92         default HEXAGON_COMET
93
94 config HEXAGON_COMET
95         bool "Comet Board"
96         ---help---
97           Support for the Comet platform.
98
99 endchoice
100
101 config HEXAGON_ARCH_VERSION
102         int "Architecture version"
103         default 2
104
105 config CMDLINE
106         string "Default kernel command string"
107         default ""
108         help
109           On some platforms, there is currently no way for the boot loader
110           to pass arguments to the kernel. For these, you should supply some
111           command-line options at build time by entering them here.  At a
112           minimum, you should specify the memory size and the root device
113           (e.g., mem=64M root=/dev/nfs).
114
115 config SMP
116         bool "Multi-Processing support"
117         ---help---
118           Enables SMP support in the kernel.  If unsure, say "Y"
119
120 config NR_CPUS
121         int "Maximum number of CPUs" if SMP
122         range 2 6 if SMP
123         default "1" if !SMP
124         default "6" if SMP
125         ---help---
126           This allows you to specify the maximum number of CPUs which this
127           kernel will support.  The maximum supported value is 6 and the
128           minimum value which makes sense is 2.
129
130           This is purely to save memory - each supported CPU adds
131           approximately eight kilobytes to the kernel image.
132
133 choice
134         prompt "Kernel page size"
135         default PAGE_SIZE_4KB
136         ---help---
137           Changes the default page size; use with caution.
138
139 config PAGE_SIZE_4KB
140         bool "4KB"
141
142 config PAGE_SIZE_16KB
143         bool "16KB"
144
145 config PAGE_SIZE_64KB
146         bool "64KB"
147
148 config PAGE_SIZE_256KB
149         bool "256KB"
150
151 endchoice
152
153 source "mm/Kconfig"
154
155 source "kernel/Kconfig.hz"
156
157 endmenu
158
159 source "init/Kconfig"
160 source "kernel/Kconfig.freezer"
161 source "drivers/Kconfig"
162 source "fs/Kconfig"
163
164 menu "Executable File Formats"
165 source "fs/Kconfig.binfmt"
166 endmenu
167
168 source "net/Kconfig"
169 source "security/Kconfig"
170 source "crypto/Kconfig"
171 source "lib/Kconfig"
172
173 menu "Kernel hacking"
174 source "lib/Kconfig.debug"
175 endmenu