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