Merge tag 'backlight-next-4.21' of git://git.kernel.org/pub/scm/linux/kernel/git...
[linux-2.6-microblaze.git] / arch / csky / Kconfig
1 config CSKY
2         def_bool y
3         select ARCH_HAS_SYNC_DMA_FOR_CPU
4         select ARCH_HAS_SYNC_DMA_FOR_DEVICE
5         select ARCH_USE_BUILTIN_BSWAP
6         select ARCH_USE_QUEUED_RWLOCKS if NR_CPUS>2
7         select COMMON_CLK
8         select CLKSRC_MMIO
9         select CLKSRC_OF
10         select DMA_DIRECT_REMAP
11         select IRQ_DOMAIN
12         select HANDLE_DOMAIN_IRQ
13         select DW_APB_TIMER_OF
14         select GENERIC_LIB_ASHLDI3
15         select GENERIC_LIB_ASHRDI3
16         select GENERIC_LIB_LSHRDI3
17         select GENERIC_LIB_MULDI3
18         select GENERIC_LIB_CMPDI2
19         select GENERIC_LIB_UCMPDI2
20         select GENERIC_ALLOCATOR
21         select GENERIC_ATOMIC64
22         select GENERIC_CLOCKEVENTS
23         select GENERIC_CPU_DEVICES
24         select GENERIC_IRQ_CHIP
25         select GENERIC_IRQ_PROBE
26         select GENERIC_IRQ_SHOW
27         select GENERIC_IRQ_MULTI_HANDLER
28         select GENERIC_SCHED_CLOCK
29         select GENERIC_SMP_IDLE_THREAD
30         select HAVE_ARCH_TRACEHOOK
31         select HAVE_FUNCTION_TRACER
32         select HAVE_FUNCTION_GRAPH_TRACER
33         select HAVE_GENERIC_DMA_COHERENT
34         select HAVE_KERNEL_GZIP
35         select HAVE_KERNEL_LZO
36         select HAVE_KERNEL_LZMA
37         select HAVE_PERF_EVENTS
38         select HAVE_C_RECORDMCOUNT
39         select HAVE_DMA_API_DEBUG
40         select HAVE_DMA_CONTIGUOUS
41         select MAY_HAVE_SPARSE_IRQ
42         select MODULES_USE_ELF_RELA if MODULES
43         select OF
44         select OF_EARLY_FLATTREE
45         select OF_RESERVED_MEM
46         select PERF_USE_VMALLOC if CPU_CK610
47         select RTC_LIB
48         select TIMER_OF
49         select USB_ARCH_HAS_EHCI
50         select USB_ARCH_HAS_OHCI
51
52 config CPU_HAS_CACHEV2
53         bool
54
55 config CPU_HAS_FPUV2
56         bool
57
58 config CPU_HAS_HILO
59         bool
60
61 config CPU_HAS_TLBI
62         bool
63
64 config CPU_HAS_LDSTEX
65         bool
66         help
67           For SMP, CPU needs "ldex&stex" instrcutions to atomic operations.
68
69 config CPU_NEED_TLBSYNC
70         bool
71
72 config CPU_NEED_SOFTALIGN
73         bool
74
75 config CPU_NO_USER_BKPT
76         bool
77         help
78           For abiv2 we couldn't use "trap 1" as user space bkpt in gdbserver, because
79           abiv2 is 16/32bit instruction set and "trap 1" is 32bit.
80           So we need a 16bit instruction as user space bkpt, and it will cause an illegal
81           instruction exception.
82           In kernel we parse the *regs->pc to determine whether to send SIGTRAP or not.
83
84 config GENERIC_CALIBRATE_DELAY
85         def_bool y
86
87 config GENERIC_CSUM
88         def_bool y
89
90 config GENERIC_HWEIGHT
91         def_bool y
92
93 config MMU
94         def_bool y
95
96 config RWSEM_GENERIC_SPINLOCK
97         def_bool y
98
99 config STACKTRACE_SUPPORT
100         def_bool y
101
102 config TIME_LOW_RES
103         def_bool y
104
105 config TRACE_IRQFLAGS_SUPPORT
106         def_bool y
107
108 config CPU_TLB_SIZE
109         int
110         default "128"   if (CPU_CK610 || CPU_CK807 || CPU_CK810)
111         default "1024"  if (CPU_CK860)
112
113 config CPU_ASID_BITS
114         int
115         default "8"     if (CPU_CK610 || CPU_CK807 || CPU_CK810)
116         default "12"    if (CPU_CK860)
117
118 config L1_CACHE_SHIFT
119         int
120         default "4"     if (CPU_CK610)
121         default "5"     if (CPU_CK807 || CPU_CK810)
122         default "6"     if (CPU_CK860)
123
124 menu "Processor type and features"
125
126 choice
127         prompt "CPU MODEL"
128         default CPU_CK807
129
130 config CPU_CK610
131         bool "CSKY CPU ck610"
132         select CPU_NEED_TLBSYNC
133         select CPU_NEED_SOFTALIGN
134         select CPU_NO_USER_BKPT
135
136 config CPU_CK810
137         bool "CSKY CPU ck810"
138         select CPU_HAS_HILO
139         select CPU_NEED_TLBSYNC
140
141 config CPU_CK807
142         bool "CSKY CPU ck807"
143         select CPU_HAS_HILO
144
145 config CPU_CK860
146         bool "CSKY CPU ck860"
147         select CPU_HAS_TLBI
148         select CPU_HAS_CACHEV2
149         select CPU_HAS_LDSTEX
150         select CPU_HAS_FPUV2
151 endchoice
152
153 choice
154         prompt "C-SKY PMU type"
155         depends on PERF_EVENTS
156         depends on CPU_CK807 || CPU_CK810 || CPU_CK860
157
158 config CPU_PMU_NONE
159         bool "None"
160
161 config CSKY_PMU_V1
162         bool "Performance Monitoring Unit Ver.1"
163
164 endchoice
165
166 choice
167         prompt "Power Manager Instruction (wait/doze/stop)"
168         default CPU_PM_NONE
169
170 config CPU_PM_NONE
171         bool "None"
172
173 config CPU_PM_WAIT
174         bool "wait"
175
176 config CPU_PM_DOZE
177         bool "doze"
178
179 config CPU_PM_STOP
180         bool "stop"
181 endchoice
182
183 config CPU_HAS_VDSP
184         bool "CPU has VDSP coprocessor"
185         depends on CPU_HAS_FPU && CPU_HAS_FPUV2
186
187 config CPU_HAS_FPU
188         bool "CPU has FPU coprocessor"
189         depends on CPU_CK807 || CPU_CK810 || CPU_CK860
190
191 config CPU_HAS_TEE
192         bool "CPU has Trusted Execution Environment"
193         depends on CPU_CK810
194
195 config SMP
196         bool "Symmetric Multi-Processing (SMP) support for C-SKY"
197         depends on CPU_CK860
198         default n
199
200 config NR_CPUS
201         int "Maximum number of CPUs (2-32)"
202         range 2 32
203         depends on SMP
204         default "2"
205
206 config HIGHMEM
207         bool "High Memory Support"
208         depends on !CPU_CK610
209         default y
210
211 config FORCE_MAX_ZONEORDER
212         int "Maximum zone order"
213         default "11"
214
215 config RAM_BASE
216         hex "DRAM start addr (the same with memory-section in dts)"
217         default 0x0
218
219 config HOTPLUG_CPU
220         bool "Support for hot-pluggable CPUs"
221         select GENERIC_IRQ_MIGRATION
222         depends on SMP
223         help
224           Say Y here to allow turning CPUs off and on. CPUs can be
225           controlled through /sys/devices/system/cpu/cpu1/hotplug/target.
226
227           Say N if you want to disable CPU hotplug.
228 endmenu
229
230 source "kernel/Kconfig.hz"