18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0 28c2ecf20Sopenharmony_ci# Hexagon configuration 38c2ecf20Sopenharmony_cicomment "Linux Kernel Configuration for Hexagon" 48c2ecf20Sopenharmony_ci 58c2ecf20Sopenharmony_ciconfig HEXAGON 68c2ecf20Sopenharmony_ci def_bool y 78c2ecf20Sopenharmony_ci select ARCH_32BIT_OFF_T 88c2ecf20Sopenharmony_ci select ARCH_HAS_SYNC_DMA_FOR_DEVICE 98c2ecf20Sopenharmony_ci select ARCH_NO_PREEMPT 108c2ecf20Sopenharmony_ci select HAVE_OPROFILE 118c2ecf20Sopenharmony_ci # Other pending projects/to-do items. 128c2ecf20Sopenharmony_ci # select HAVE_REGS_AND_STACK_ACCESS_API 138c2ecf20Sopenharmony_ci # select HAVE_HW_BREAKPOINT if PERF_EVENTS 148c2ecf20Sopenharmony_ci # select ARCH_HAS_CPU_IDLE_WAIT 158c2ecf20Sopenharmony_ci # select GPIOLIB 168c2ecf20Sopenharmony_ci # select HAVE_CLK 178c2ecf20Sopenharmony_ci # select GENERIC_PENDING_IRQ if SMP 188c2ecf20Sopenharmony_ci select GENERIC_ATOMIC64 198c2ecf20Sopenharmony_ci select HAVE_PERF_EVENTS 208c2ecf20Sopenharmony_ci # GENERIC_ALLOCATOR is used by dma_alloc_coherent() 218c2ecf20Sopenharmony_ci select GENERIC_ALLOCATOR 228c2ecf20Sopenharmony_ci select GENERIC_IRQ_SHOW 238c2ecf20Sopenharmony_ci select HAVE_ARCH_KGDB 248c2ecf20Sopenharmony_ci select HAVE_ARCH_TRACEHOOK 258c2ecf20Sopenharmony_ci select NEED_SG_DMA_LENGTH 268c2ecf20Sopenharmony_ci select NO_IOPORT_MAP 278c2ecf20Sopenharmony_ci select GENERIC_IOMAP 288c2ecf20Sopenharmony_ci select GENERIC_SMP_IDLE_THREAD 298c2ecf20Sopenharmony_ci select STACKTRACE_SUPPORT 308c2ecf20Sopenharmony_ci select GENERIC_CLOCKEVENTS 318c2ecf20Sopenharmony_ci select GENERIC_CLOCKEVENTS_BROADCAST 328c2ecf20Sopenharmony_ci select MODULES_USE_ELF_RELA 338c2ecf20Sopenharmony_ci select GENERIC_CPU_DEVICES 348c2ecf20Sopenharmony_ci select SET_FS 358c2ecf20Sopenharmony_ci select ARCH_WANT_LD_ORPHAN_WARN 368c2ecf20Sopenharmony_ci help 378c2ecf20Sopenharmony_ci Qualcomm Hexagon is a processor architecture designed for high 388c2ecf20Sopenharmony_ci performance and low power across a wide variety of applications. 398c2ecf20Sopenharmony_ci 408c2ecf20Sopenharmony_ciconfig HEXAGON_PHYS_OFFSET 418c2ecf20Sopenharmony_ci def_bool y 428c2ecf20Sopenharmony_ci help 438c2ecf20Sopenharmony_ci Platforms that don't load the kernel at zero set this. 448c2ecf20Sopenharmony_ci 458c2ecf20Sopenharmony_ciconfig FRAME_POINTER 468c2ecf20Sopenharmony_ci def_bool y 478c2ecf20Sopenharmony_ci 488c2ecf20Sopenharmony_ciconfig LOCKDEP_SUPPORT 498c2ecf20Sopenharmony_ci def_bool y 508c2ecf20Sopenharmony_ci 518c2ecf20Sopenharmony_ciconfig EARLY_PRINTK 528c2ecf20Sopenharmony_ci def_bool y 538c2ecf20Sopenharmony_ci 548c2ecf20Sopenharmony_ciconfig MMU 558c2ecf20Sopenharmony_ci def_bool y 568c2ecf20Sopenharmony_ci 578c2ecf20Sopenharmony_ciconfig TRACE_IRQFLAGS_SUPPORT 588c2ecf20Sopenharmony_ci def_bool y 598c2ecf20Sopenharmony_ci 608c2ecf20Sopenharmony_ciconfig GENERIC_CSUM 618c2ecf20Sopenharmony_ci def_bool y 628c2ecf20Sopenharmony_ci 638c2ecf20Sopenharmony_ci# 648c2ecf20Sopenharmony_ci# Use the generic interrupt handling code in kernel/irq/: 658c2ecf20Sopenharmony_ci# 668c2ecf20Sopenharmony_ciconfig GENERIC_IRQ_PROBE 678c2ecf20Sopenharmony_ci def_bool y 688c2ecf20Sopenharmony_ci 698c2ecf20Sopenharmony_ciconfig GENERIC_HWEIGHT 708c2ecf20Sopenharmony_ci def_bool y 718c2ecf20Sopenharmony_ci 728c2ecf20Sopenharmony_ciconfig STACKTRACE_SUPPORT 738c2ecf20Sopenharmony_ci def_bool y 748c2ecf20Sopenharmony_ci select STACKTRACE 758c2ecf20Sopenharmony_ci 768c2ecf20Sopenharmony_ciconfig GENERIC_BUG 778c2ecf20Sopenharmony_ci def_bool y 788c2ecf20Sopenharmony_ci depends on BUG 798c2ecf20Sopenharmony_ci 808c2ecf20Sopenharmony_cimenu "Machine selection" 818c2ecf20Sopenharmony_ci 828c2ecf20Sopenharmony_cichoice 838c2ecf20Sopenharmony_ci prompt "System type" 848c2ecf20Sopenharmony_ci default HEXAGON_COMET 858c2ecf20Sopenharmony_ci 868c2ecf20Sopenharmony_ciconfig HEXAGON_COMET 878c2ecf20Sopenharmony_ci bool "Comet Board" 888c2ecf20Sopenharmony_ci help 898c2ecf20Sopenharmony_ci Support for the Comet platform. 908c2ecf20Sopenharmony_ci 918c2ecf20Sopenharmony_ciendchoice 928c2ecf20Sopenharmony_ci 938c2ecf20Sopenharmony_ciconfig HEXAGON_ARCH_VERSION 948c2ecf20Sopenharmony_ci int "Architecture version" 958c2ecf20Sopenharmony_ci default 2 968c2ecf20Sopenharmony_ci 978c2ecf20Sopenharmony_ciconfig CMDLINE 988c2ecf20Sopenharmony_ci string "Default kernel command string" 998c2ecf20Sopenharmony_ci default "" 1008c2ecf20Sopenharmony_ci help 1018c2ecf20Sopenharmony_ci On some platforms, there is currently no way for the boot loader 1028c2ecf20Sopenharmony_ci to pass arguments to the kernel. For these, you should supply some 1038c2ecf20Sopenharmony_ci command-line options at build time by entering them here. At a 1048c2ecf20Sopenharmony_ci minimum, you should specify the memory size and the root device 1058c2ecf20Sopenharmony_ci (e.g., mem=64M root=/dev/nfs). 1068c2ecf20Sopenharmony_ci 1078c2ecf20Sopenharmony_ciconfig SMP 1088c2ecf20Sopenharmony_ci bool "Multi-Processing support" 1098c2ecf20Sopenharmony_ci help 1108c2ecf20Sopenharmony_ci Enables SMP support in the kernel. If unsure, say "Y" 1118c2ecf20Sopenharmony_ci 1128c2ecf20Sopenharmony_ciconfig NR_CPUS 1138c2ecf20Sopenharmony_ci int "Maximum number of CPUs" if SMP 1148c2ecf20Sopenharmony_ci range 2 6 if SMP 1158c2ecf20Sopenharmony_ci default "1" if !SMP 1168c2ecf20Sopenharmony_ci default "6" if SMP 1178c2ecf20Sopenharmony_ci help 1188c2ecf20Sopenharmony_ci This allows you to specify the maximum number of CPUs which this 1198c2ecf20Sopenharmony_ci kernel will support. The maximum supported value is 6 and the 1208c2ecf20Sopenharmony_ci minimum value which makes sense is 2. 1218c2ecf20Sopenharmony_ci 1228c2ecf20Sopenharmony_ci This is purely to save memory - each supported CPU adds 1238c2ecf20Sopenharmony_ci approximately eight kilobytes to the kernel image. 1248c2ecf20Sopenharmony_ci 1258c2ecf20Sopenharmony_cichoice 1268c2ecf20Sopenharmony_ci prompt "Kernel page size" 1278c2ecf20Sopenharmony_ci default PAGE_SIZE_4KB 1288c2ecf20Sopenharmony_ci help 1298c2ecf20Sopenharmony_ci Changes the default page size; use with caution. 1308c2ecf20Sopenharmony_ci 1318c2ecf20Sopenharmony_ciconfig PAGE_SIZE_4KB 1328c2ecf20Sopenharmony_ci bool "4KB" 1338c2ecf20Sopenharmony_ci 1348c2ecf20Sopenharmony_ciconfig PAGE_SIZE_16KB 1358c2ecf20Sopenharmony_ci bool "16KB" 1368c2ecf20Sopenharmony_ci 1378c2ecf20Sopenharmony_ciconfig PAGE_SIZE_64KB 1388c2ecf20Sopenharmony_ci bool "64KB" 1398c2ecf20Sopenharmony_ci 1408c2ecf20Sopenharmony_ciconfig PAGE_SIZE_256KB 1418c2ecf20Sopenharmony_ci bool "256KB" 1428c2ecf20Sopenharmony_ci 1438c2ecf20Sopenharmony_ciendchoice 1448c2ecf20Sopenharmony_ci 1458c2ecf20Sopenharmony_cisource "kernel/Kconfig.hz" 1468c2ecf20Sopenharmony_ci 1478c2ecf20Sopenharmony_ciendmenu 148