blob: d89b3efb98d11c2028edfbd5a746463e0abacd17 [file] [log] [blame]
Catalin Marinas8c2c3df2012-04-20 14:45:54 +01001config ARM64
2 def_bool y
3 select ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE
Will Deacon6212a512012-11-07 14:16:28 +00004 select ARCH_WANT_COMPAT_IPC_PARSE_VERSION
Deepak Saxena7ca2ef32012-09-22 10:33:36 -07005 select COMMON_CLK
Catalin Marinas8c2c3df2012-04-20 14:45:54 +01006 select GENERIC_CLOCKEVENTS
7 select GENERIC_HARDIRQS_NO_DEPRECATED
8 select GENERIC_IOMAP
9 select GENERIC_IRQ_PROBE
10 select GENERIC_IRQ_SHOW
Catalin Marinas59dc67b2012-09-10 16:11:46 +010011 select GENERIC_KERNEL_EXECVE
Catalin Marinasc34501d2012-10-05 12:31:20 +010012 select GENERIC_KERNEL_THREAD
Catalin Marinas8c2c3df2012-04-20 14:45:54 +010013 select GENERIC_SMP_IDLE_THREAD
14 select GENERIC_TIME_VSYSCALL
15 select HARDIRQS_SW_RESEND
16 select HAVE_ARCH_TRACEHOOK
Catalin Marinas9b2a60c2012-10-08 16:28:13 -070017 select HAVE_DEBUG_BUGVERBOSE
Catalin Marinasb69ec422012-10-08 16:28:11 -070018 select HAVE_DEBUG_KMEMLEAK
Catalin Marinas8c2c3df2012-04-20 14:45:54 +010019 select HAVE_DMA_API_DEBUG
20 select HAVE_DMA_ATTRS
21 select HAVE_GENERIC_DMA_COHERENT
22 select HAVE_GENERIC_HARDIRQS
23 select HAVE_HW_BREAKPOINT if PERF_EVENTS
24 select HAVE_IRQ_WORK
25 select HAVE_MEMBLOCK
26 select HAVE_PERF_EVENTS
27 select HAVE_SPARSE_IRQ
28 select IRQ_DOMAIN
Catalin Marinasfea2aca2012-10-16 11:26:57 +010029 select MODULES_USE_ELF_RELA
Catalin Marinas8c2c3df2012-04-20 14:45:54 +010030 select NO_BOOTMEM
31 select OF
32 select OF_EARLY_FLATTREE
33 select PERF_USE_VMALLOC
34 select RTC_LIB
35 select SPARSE_IRQ
Catalin Marinas7ac57a82012-10-08 16:28:16 -070036 select SYSCTL_EXCEPTION_TRACE
Catalin Marinas8c2c3df2012-04-20 14:45:54 +010037 help
38 ARM 64-bit (AArch64) Linux support.
39
40config 64BIT
41 def_bool y
42
43config ARCH_PHYS_ADDR_T_64BIT
44 def_bool y
45
46config MMU
47 def_bool y
48
49config NO_IOPORT
50 def_bool y
51
52config STACKTRACE_SUPPORT
53 def_bool y
54
55config LOCKDEP_SUPPORT
56 def_bool y
57
58config TRACE_IRQFLAGS_SUPPORT
59 def_bool y
60
61config GENERIC_LOCKBREAK
62 def_bool y
63 depends on SMP && PREEMPT
64
65config RWSEM_GENERIC_SPINLOCK
66 def_bool y
67
68config GENERIC_HWEIGHT
69 def_bool y
70
71config GENERIC_CSUM
72 def_bool y
73
74config GENERIC_CALIBRATE_DELAY
75 def_bool y
76
77config ZONE_DMA32
78 def_bool y
79
80config ARCH_DMA_ADDR_T_64BIT
81 def_bool y
82
83config NEED_DMA_MAP_STATE
84 def_bool y
85
86config NEED_SG_DMA_LENGTH
87 def_bool y
88
89config SWIOTLB
90 def_bool y
91
92config IOMMU_HELPER
93 def_bool SWIOTLB
94
95source "init/Kconfig"
96
97source "kernel/Kconfig.freezer"
98
99menu "System Type"
100
101endmenu
102
103menu "Bus support"
104
105config ARM_AMBA
106 bool
107
108endmenu
109
110menu "Kernel Features"
111
112source "kernel/time/Kconfig"
113
114config ARM64_64K_PAGES
115 bool "Enable 64KB pages support"
116 help
117 This feature enables 64KB pages support (4KB by default)
118 allowing only two levels of page tables and faster TLB
119 look-up. AArch32 emulation is not available when this feature
120 is enabled.
121
122config SMP
123 bool "Symmetric Multi-Processing"
124 select USE_GENERIC_SMP_HELPERS
125 help
126 This enables support for systems with more than one CPU. If
127 you say N here, the kernel will run on single and
128 multiprocessor machines, but will use only one CPU of a
129 multiprocessor machine. If you say Y here, the kernel will run
130 on many, but not all, single processor machines. On a single
131 processor machine, the kernel will run faster if you say N
132 here.
133
134 If you don't know what to do here, say N.
135
136config NR_CPUS
137 int "Maximum number of CPUs (2-32)"
138 range 2 32
139 depends on SMP
140 default "4"
141
142source kernel/Kconfig.preempt
143
144config HZ
145 int
146 default 100
147
148config ARCH_HAS_HOLES_MEMORYMODEL
149 def_bool y if SPARSEMEM
150
151config ARCH_SPARSEMEM_ENABLE
152 def_bool y
153 select SPARSEMEM_VMEMMAP_ENABLE
154
155config ARCH_SPARSEMEM_DEFAULT
156 def_bool ARCH_SPARSEMEM_ENABLE
157
158config ARCH_SELECT_MEMORY_MODEL
159 def_bool ARCH_SPARSEMEM_ENABLE
160
161config HAVE_ARCH_PFN_VALID
162 def_bool ARCH_HAS_HOLES_MEMORYMODEL || !SPARSEMEM
163
164config HW_PERF_EVENTS
165 bool "Enable hardware performance counter support for perf events"
166 depends on PERF_EVENTS
167 default y
168 help
169 Enable hardware performance counter support for perf events. If
170 disabled, perf events will use software events only.
171
172source "mm/Kconfig"
173
174endmenu
175
176menu "Boot options"
177
178config CMDLINE
179 string "Default kernel command string"
180 default ""
181 help
182 Provide a set of default command-line options at build time by
183 entering them here. As a minimum, you should specify the the
184 root device (e.g. root=/dev/nfs).
185
186config CMDLINE_FORCE
187 bool "Always use the default kernel command string"
188 help
189 Always use the default kernel command string, even if the boot
190 loader passes other arguments to the kernel.
191 This is useful if you cannot or don't want to change the
192 command-line options your boot loader passes to the kernel.
193
194endmenu
195
196menu "Userspace binary formats"
197
198source "fs/Kconfig.binfmt"
199
200config COMPAT
201 bool "Kernel support for 32-bit EL0"
202 depends on !ARM64_64K_PAGES
203 select COMPAT_BINFMT_ELF
Catalin Marinasaf1839e2012-10-08 16:28:08 -0700204 select HAVE_UID16
Catalin Marinas8c2c3df2012-04-20 14:45:54 +0100205 help
206 This option enables support for a 32-bit EL0 running under a 64-bit
207 kernel at EL1. AArch32-specific components such as system calls,
208 the user helper functions, VFP support and the ptrace interface are
209 handled appropriately by the kernel.
210
211 If you want to execute 32-bit userspace applications, say Y.
212
213config SYSVIPC_COMPAT
214 def_bool y
215 depends on COMPAT && SYSVIPC
216
217endmenu
218
219source "net/Kconfig"
220
221source "drivers/Kconfig"
222
223source "fs/Kconfig"
224
225source "arch/arm64/Kconfig.debug"
226
227source "security/Kconfig"
228
229source "crypto/Kconfig"
230
231source "lib/Kconfig"