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