Kconfig 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203
  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_OPS
  11. select DMA_NONCOHERENT_OPS
  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_GENERIC_DMA_COHERENT
  33. select HAVE_KERNEL_GZIP
  34. select HAVE_KERNEL_LZO
  35. select HAVE_KERNEL_LZMA
  36. select HAVE_C_RECORDMCOUNT
  37. select HAVE_DMA_API_DEBUG
  38. select HAVE_DMA_CONTIGUOUS
  39. select MAY_HAVE_SPARSE_IRQ
  40. select MODULES_USE_ELF_RELA if MODULES
  41. select OF
  42. select OF_EARLY_FLATTREE
  43. select OF_RESERVED_MEM
  44. select PERF_USE_VMALLOC
  45. select RTC_LIB
  46. select TIMER_OF
  47. select USB_ARCH_HAS_EHCI
  48. select USB_ARCH_HAS_OHCI
  49. config CPU_HAS_CACHEV2
  50. bool
  51. config CPU_HAS_FPUV2
  52. bool
  53. config CPU_HAS_HILO
  54. bool
  55. config CPU_HAS_TLBI
  56. bool
  57. config CPU_HAS_LDSTEX
  58. bool
  59. help
  60. For SMP, CPU needs "ldex&stex" instrcutions to atomic operations.
  61. config CPU_NEED_TLBSYNC
  62. bool
  63. config CPU_NEED_SOFTALIGN
  64. bool
  65. config CPU_NO_USER_BKPT
  66. bool
  67. help
  68. For abiv2 we couldn't use "trap 1" as user space bkpt in gdbserver, because
  69. abiv2 is 16/32bit instruction set and "trap 1" is 32bit.
  70. So we need a 16bit instruction as user space bkpt, and it will cause an illegal
  71. instruction exception.
  72. In kernel we parse the *regs->pc to determine whether to send SIGTRAP or not.
  73. config GENERIC_CALIBRATE_DELAY
  74. def_bool y
  75. config GENERIC_CSUM
  76. def_bool y
  77. config GENERIC_HWEIGHT
  78. def_bool y
  79. config MMU
  80. def_bool y
  81. config RWSEM_GENERIC_SPINLOCK
  82. def_bool y
  83. config TIME_LOW_RES
  84. def_bool y
  85. config TRACE_IRQFLAGS_SUPPORT
  86. def_bool y
  87. config CPU_TLB_SIZE
  88. int
  89. default "128" if (CPU_CK610 || CPU_CK807 || CPU_CK810)
  90. default "1024" if (CPU_CK860)
  91. config CPU_ASID_BITS
  92. int
  93. default "8" if (CPU_CK610 || CPU_CK807 || CPU_CK810)
  94. default "12" if (CPU_CK860)
  95. config L1_CACHE_SHIFT
  96. int
  97. default "4" if (CPU_CK610)
  98. default "5" if (CPU_CK807 || CPU_CK810)
  99. default "6" if (CPU_CK860)
  100. menu "Processor type and features"
  101. choice
  102. prompt "CPU MODEL"
  103. default CPU_CK807
  104. config CPU_CK610
  105. bool "CSKY CPU ck610"
  106. select CPU_NEED_TLBSYNC
  107. select CPU_NEED_SOFTALIGN
  108. select CPU_NO_USER_BKPT
  109. config CPU_CK810
  110. bool "CSKY CPU ck810"
  111. select CPU_HAS_HILO
  112. select CPU_NEED_TLBSYNC
  113. config CPU_CK807
  114. bool "CSKY CPU ck807"
  115. select CPU_HAS_HILO
  116. config CPU_CK860
  117. bool "CSKY CPU ck860"
  118. select CPU_HAS_TLBI
  119. select CPU_HAS_CACHEV2
  120. select CPU_HAS_LDSTEX
  121. select CPU_HAS_FPUV2
  122. endchoice
  123. choice
  124. prompt "Power Manager Instruction (wait/doze/stop)"
  125. default CPU_PM_NONE
  126. config CPU_PM_NONE
  127. bool "None"
  128. config CPU_PM_WAIT
  129. bool "wait"
  130. config CPU_PM_DOZE
  131. bool "doze"
  132. config CPU_PM_STOP
  133. bool "stop"
  134. endchoice
  135. config CPU_HAS_VDSP
  136. bool "CPU has VDSP coprocessor"
  137. depends on CPU_HAS_FPU && CPU_HAS_FPUV2
  138. config CPU_HAS_FPU
  139. bool "CPU has FPU coprocessor"
  140. depends on CPU_CK807 || CPU_CK810 || CPU_CK860
  141. config CPU_HAS_TEE
  142. bool "CPU has Trusted Execution Environment"
  143. depends on CPU_CK810
  144. config SMP
  145. bool "Symmetric Multi-Processing (SMP) support for C-SKY"
  146. depends on CPU_CK860
  147. default n
  148. config NR_CPUS
  149. int "Maximum number of CPUs (2-32)"
  150. range 2 32
  151. depends on SMP
  152. default "2"
  153. config HIGHMEM
  154. bool "High Memory Support"
  155. depends on !CPU_CK610
  156. default y
  157. config FORCE_MAX_ZONEORDER
  158. int "Maximum zone order"
  159. default "11"
  160. config RAM_BASE
  161. hex "DRAM start addr (the same with memory-section in dts)"
  162. default 0x0
  163. endmenu
  164. source "kernel/Kconfig.hz"