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