1config CSKY 2 def_bool y 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 8 select COMMON_CLK 9 select CLKSRC_MMIO 10 select CLKSRC_OF 11 select DMA_DIRECT_REMAP 12 select IRQ_DOMAIN 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 43 select OF 44 select OF_EARLY_FLATTREE 45 select PERF_USE_VMALLOC if CPU_CK610 46 select RTC_LIB 47 select TIMER_OF 48 select USB_ARCH_HAS_EHCI 49 select USB_ARCH_HAS_OHCI 50 51config CPU_HAS_CACHEV2 52 bool 53 54config CPU_HAS_FPUV2 55 bool 56 57config CPU_HAS_HILO 58 bool 59 60config CPU_HAS_TLBI 61 bool 62 63config CPU_HAS_LDSTEX 64 bool 65 help 66 For SMP, CPU needs "ldex&stex" instrcutions to atomic operations. 67 68config CPU_NEED_TLBSYNC 69 bool 70 71config CPU_NEED_SOFTALIGN 72 bool 73 74config CPU_NO_USER_BKPT 75 bool 76 help 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. 82 83config GENERIC_CALIBRATE_DELAY 84 def_bool y 85 86config GENERIC_CSUM 87 def_bool y 88 89config GENERIC_HWEIGHT 90 def_bool y 91 92config MMU 93 def_bool y 94 95config RWSEM_GENERIC_SPINLOCK 96 def_bool y 97 98config STACKTRACE_SUPPORT 99 def_bool y 100 101config TIME_LOW_RES 102 def_bool y 103 104config TRACE_IRQFLAGS_SUPPORT 105 def_bool y 106 107config CPU_TLB_SIZE 108 int 109 default "128" if (CPU_CK610 || CPU_CK807 || CPU_CK810) 110 default "1024" if (CPU_CK860) 111 112config CPU_ASID_BITS 113 int 114 default "8" if (CPU_CK610 || CPU_CK807 || CPU_CK810) 115 default "12" if (CPU_CK860) 116 117config L1_CACHE_SHIFT 118 int 119 default "4" if (CPU_CK610) 120 default "5" if (CPU_CK807 || CPU_CK810) 121 default "6" if (CPU_CK860) 122 123menu "Processor type and features" 124 125choice 126 prompt "CPU MODEL" 127 default CPU_CK807 128 129config CPU_CK610 130 bool "CSKY CPU ck610" 131 select CPU_NEED_TLBSYNC 132 select CPU_NEED_SOFTALIGN 133 select CPU_NO_USER_BKPT 134 135config CPU_CK810 136 bool "CSKY CPU ck810" 137 select CPU_HAS_HILO 138 select CPU_NEED_TLBSYNC 139 140config CPU_CK807 141 bool "CSKY CPU ck807" 142 select CPU_HAS_HILO 143 144config CPU_CK860 145 bool "CSKY CPU ck860" 146 select CPU_HAS_TLBI 147 select CPU_HAS_CACHEV2 148 select CPU_HAS_LDSTEX 149 select CPU_HAS_FPUV2 150endchoice 151 152choice 153 prompt "C-SKY PMU type" 154 depends on PERF_EVENTS 155 depends on CPU_CK807 || CPU_CK810 || CPU_CK860 156 157config CPU_PMU_NONE 158 bool "None" 159 160config CSKY_PMU_V1 161 bool "Performance Monitoring Unit Ver.1" 162 163endchoice 164 165choice 166 prompt "Power Manager Instruction (wait/doze/stop)" 167 default CPU_PM_NONE 168 169config CPU_PM_NONE 170 bool "None" 171 172config CPU_PM_WAIT 173 bool "wait" 174 175config CPU_PM_DOZE 176 bool "doze" 177 178config CPU_PM_STOP 179 bool "stop" 180endchoice 181 182config CPU_HAS_VDSP 183 bool "CPU has VDSP coprocessor" 184 depends on CPU_HAS_FPU && CPU_HAS_FPUV2 185 186config CPU_HAS_FPU 187 bool "CPU has FPU coprocessor" 188 depends on CPU_CK807 || CPU_CK810 || CPU_CK860 189 190config CPU_HAS_TEE 191 bool "CPU has Trusted Execution Environment" 192 depends on CPU_CK810 193 194config SMP 195 bool "Symmetric Multi-Processing (SMP) support for C-SKY" 196 depends on CPU_CK860 197 default n 198 199config NR_CPUS 200 int "Maximum number of CPUs (2-32)" 201 range 2 32 202 depends on SMP 203 default "2" 204 205config HIGHMEM 206 bool "High Memory Support" 207 depends on !CPU_CK610 208 default y 209 210config FORCE_MAX_ZONEORDER 211 int "Maximum zone order" 212 default "11" 213 214config RAM_BASE 215 hex "DRAM start addr (the same with memory-section in dts)" 216 default 0x0 217 218config HOTPLUG_CPU 219 bool "Support for hot-pluggable CPUs" 220 select GENERIC_IRQ_MIGRATION 221 depends on SMP 222 help 223 Say Y here to allow turning CPUs off and on. CPUs can be 224 controlled through /sys/devices/system/cpu/cpu1/hotplug/target. 225 226 Say N if you want to disable CPU hotplug. 227endmenu 228 229source "kernel/Kconfig.hz" 230