Kconfig 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144
  1. # SPDX-License-Identifier: GPL-2.0
  2. # Hexagon configuration
  3. comment "Linux Kernel Configuration for Hexagon"
  4. config HEXAGON
  5. def_bool y
  6. select ARCH_32BIT_OFF_T
  7. select ARCH_HAS_SYNC_DMA_FOR_DEVICE
  8. select ARCH_NO_PREEMPT
  9. select DMA_GLOBAL_POOL
  10. # Other pending projects/to-do items.
  11. # select HAVE_REGS_AND_STACK_ACCESS_API
  12. # select HAVE_HW_BREAKPOINT if PERF_EVENTS
  13. # select ARCH_HAS_CPU_IDLE_WAIT
  14. # select GPIOLIB
  15. # select HAVE_CLK
  16. # select GENERIC_PENDING_IRQ if SMP
  17. select GENERIC_ATOMIC64
  18. select HAVE_PERF_EVENTS
  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 NEED_SG_DMA_LENGTH
  25. select NO_IOPORT_MAP
  26. select GENERIC_IOMAP
  27. select GENERIC_SMP_IDLE_THREAD
  28. select STACKTRACE_SUPPORT
  29. select GENERIC_CLOCKEVENTS_BROADCAST
  30. select LOCK_MM_AND_FIND_VMA
  31. select MODULES_USE_ELF_RELA
  32. select GENERIC_CPU_DEVICES
  33. select ARCH_WANT_LD_ORPHAN_WARN
  34. select TRACE_IRQFLAGS_SUPPORT
  35. help
  36. Qualcomm Hexagon is a processor architecture designed for high
  37. performance and low power across a wide variety of applications.
  38. config HEXAGON_PHYS_OFFSET
  39. def_bool y
  40. help
  41. Platforms that don't load the kernel at zero set this.
  42. config FRAME_POINTER
  43. def_bool y
  44. config LOCKDEP_SUPPORT
  45. def_bool y
  46. config EARLY_PRINTK
  47. def_bool y
  48. config MMU
  49. def_bool y
  50. config GENERIC_CSUM
  51. def_bool y
  52. #
  53. # Use the generic interrupt handling code in kernel/irq/:
  54. #
  55. config GENERIC_IRQ_PROBE
  56. def_bool y
  57. config GENERIC_HWEIGHT
  58. def_bool y
  59. config STACKTRACE_SUPPORT
  60. def_bool y
  61. select STACKTRACE
  62. config GENERIC_BUG
  63. def_bool y
  64. depends on BUG
  65. menu "Machine selection"
  66. choice
  67. prompt "System type"
  68. default HEXAGON_COMET
  69. config HEXAGON_COMET
  70. bool "Comet Board"
  71. help
  72. Support for the Comet platform.
  73. endchoice
  74. config HEXAGON_ARCH_VERSION
  75. int "Architecture version"
  76. default 2
  77. config CMDLINE
  78. string "Default kernel command string"
  79. default ""
  80. help
  81. On some platforms, there is currently no way for the boot loader
  82. to pass arguments to the kernel. For these, you should supply some
  83. command-line options at build time by entering them here. At a
  84. minimum, you should specify the memory size and the root device
  85. (e.g., mem=64M root=/dev/nfs).
  86. config SMP
  87. bool "Multi-Processing support"
  88. help
  89. Enables SMP support in the kernel. If unsure, say "Y"
  90. config NR_CPUS
  91. int "Maximum number of CPUs" if SMP
  92. range 2 6 if SMP
  93. default "1" if !SMP
  94. default "6" if SMP
  95. help
  96. This allows you to specify the maximum number of CPUs which this
  97. kernel will support. The maximum supported value is 6 and the
  98. minimum value which makes sense is 2.
  99. This is purely to save memory - each supported CPU adds
  100. approximately eight kilobytes to the kernel image.
  101. choice
  102. prompt "Kernel page size"
  103. default PAGE_SIZE_4KB
  104. help
  105. Changes the default page size; use with caution.
  106. config PAGE_SIZE_4KB
  107. bool "4KB"
  108. config PAGE_SIZE_16KB
  109. bool "16KB"
  110. config PAGE_SIZE_64KB
  111. bool "64KB"
  112. config PAGE_SIZE_256KB
  113. bool "256KB"
  114. endchoice
  115. source "kernel/Kconfig.hz"
  116. endmenu