3 select ARCH_32BIT_OFF_T
4 select ARCH_HAS_SYNC_DMA_FOR_CPU
5 select ARCH_HAS_SYNC_DMA_FOR_DEVICE
6 select ARCH_USE_BUILTIN_BSWAP
7 select ARCH_USE_QUEUED_RWLOCKS if NR_CPUS>2
11 select DMA_DIRECT_REMAP
13 select HANDLE_DOMAIN_IRQ
14 select DW_APB_TIMER_OF
15 select GENERIC_LIB_ASHLDI3
16 select GENERIC_LIB_ASHRDI3
17 select GENERIC_LIB_LSHRDI3
18 select GENERIC_LIB_MULDI3
19 select GENERIC_LIB_CMPDI2
20 select GENERIC_LIB_UCMPDI2
21 select GENERIC_ALLOCATOR
22 select GENERIC_ATOMIC64
23 select GENERIC_CLOCKEVENTS
24 select GENERIC_CPU_DEVICES
25 select GENERIC_IRQ_CHIP
26 select GENERIC_IRQ_PROBE
27 select GENERIC_IRQ_SHOW
28 select GENERIC_IRQ_MULTI_HANDLER
29 select GENERIC_SCHED_CLOCK
30 select GENERIC_SMP_IDLE_THREAD
31 select HAVE_ARCH_TRACEHOOK
32 select HAVE_FUNCTION_TRACER
33 select HAVE_FUNCTION_GRAPH_TRACER
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
44 select OF_EARLY_FLATTREE
45 select PERF_USE_VMALLOC if CPU_CK610
48 select USB_ARCH_HAS_EHCI
49 select USB_ARCH_HAS_OHCI
51 config CPU_HAS_CACHEV2
66 For SMP, CPU needs "ldex&stex" instrcutions to atomic operations.
68 config CPU_NEED_TLBSYNC
71 config CPU_NEED_SOFTALIGN
74 config CPU_NO_USER_BKPT
77 For abiv2 we couldn't use "trap 1" as user space bkpt in gdbserver, because
78 abiv2 is 16/32bit instruction set and "trap 1" is 32bit.
79 So we need a 16bit instruction as user space bkpt, and it will cause an illegal
80 instruction exception.
81 In kernel we parse the *regs->pc to determine whether to send SIGTRAP or not.
83 config GENERIC_CALIBRATE_DELAY
89 config GENERIC_HWEIGHT
95 config RWSEM_GENERIC_SPINLOCK
98 config STACKTRACE_SUPPORT
104 config TRACE_IRQFLAGS_SUPPORT
109 default "128" if (CPU_CK610 || CPU_CK807 || CPU_CK810)
110 default "1024" if (CPU_CK860)
114 default "8" if (CPU_CK610 || CPU_CK807 || CPU_CK810)
115 default "12" if (CPU_CK860)
117 config L1_CACHE_SHIFT
119 default "4" if (CPU_CK610)
120 default "5" if (CPU_CK807 || CPU_CK810)
121 default "6" if (CPU_CK860)
123 menu "Processor type and features"
130 bool "CSKY CPU ck610"
131 select CPU_NEED_TLBSYNC
132 select CPU_NEED_SOFTALIGN
133 select CPU_NO_USER_BKPT
136 bool "CSKY CPU ck810"
138 select CPU_NEED_TLBSYNC
141 bool "CSKY CPU ck807"
145 bool "CSKY CPU ck860"
147 select CPU_HAS_CACHEV2
148 select CPU_HAS_LDSTEX
153 prompt "C-SKY PMU type"
154 depends on PERF_EVENTS
155 depends on CPU_CK807 || CPU_CK810 || CPU_CK860
161 bool "Performance Monitoring Unit Ver.1"
166 prompt "Power Manager Instruction (wait/doze/stop)"
183 bool "CPU has VDSP coprocessor"
184 depends on CPU_HAS_FPU && CPU_HAS_FPUV2
187 bool "CPU has FPU coprocessor"
188 depends on CPU_CK807 || CPU_CK810 || CPU_CK860
191 bool "CPU has Trusted Execution Environment"
195 bool "Symmetric Multi-Processing (SMP) support for C-SKY"
200 int "Maximum number of CPUs (2-32)"
206 bool "High Memory Support"
207 depends on !CPU_CK610
210 config FORCE_MAX_ZONEORDER
211 int "Maximum zone order"
215 hex "DRAM start addr (the same with memory-section in dts)"
219 bool "Support for hot-pluggable CPUs"
220 select GENERIC_IRQ_MIGRATION
223 Say Y here to allow turning CPUs off and on. CPUs can be
224 controlled through /sys/devices/system/cpu/cpu1/hotplug/target.
226 Say N if you want to disable CPU hotplug.
229 source "kernel/Kconfig.hz"