1b2441318SGreg Kroah-Hartman# SPDX-License-Identifier: GPL-2.0 22fc8483fSLey Foon Tanconfig NIOS2 32fc8483fSLey Foon Tan def_bool y 4942fa985SYury Norov select ARCH_32BIT_OFF_T 5*fa7e2247SChristoph Hellwig select ARCH_HAS_DMA_PREP_COHERENT 625622e04SChristoph Hellwig select ARCH_HAS_SYNC_DMA_FOR_CPU 725622e04SChristoph Hellwig select ARCH_HAS_SYNC_DMA_FOR_DEVICE 8*fa7e2247SChristoph Hellwig select ARCH_HAS_DMA_SET_UNCACHED 917c46a6aSChristoph Hellwig select ARCH_NO_SWAP 10bb0eb050SDaniel Lezcano select TIMER_OF 112fc8483fSLey Foon Tan select GENERIC_ATOMIC64 122fc8483fSLey Foon Tan select GENERIC_CLOCKEVENTS 132fc8483fSLey Foon Tan select GENERIC_CPU_DEVICES 142fc8483fSLey Foon Tan select GENERIC_IRQ_PROBE 152fc8483fSLey Foon Tan select GENERIC_IRQ_SHOW 167f1e6141SLey Foon Tan select GENERIC_STRNCPY_FROM_USER 177f1e6141SLey Foon Tan select GENERIC_STRNLEN_USER 182fc8483fSLey Foon Tan select HAVE_ARCH_TRACEHOOK 19d16d2be1SLey Foon Tan select HAVE_ARCH_KGDB 202fc8483fSLey Foon Tan select IRQ_DOMAIN 212fc8483fSLey Foon Tan select MODULES_USE_ELF_RELA 222fc8483fSLey Foon Tan select OF 232fc8483fSLey Foon Tan select OF_EARLY_FLATTREE 242fc8483fSLey Foon Tan select SOC_BUS 252fc8483fSLey Foon Tan select SPARSE_IRQ 262fc8483fSLey Foon Tan select USB_ARCH_HAS_HCD if USB_SUPPORT 27fff7fb0bSZhaoxiu Zeng select CPU_NO_EFFICIENT_FFS 286137fed0SPeter Zijlstra select MMU_GATHER_NO_RANGE if MMU 292fc8483fSLey Foon Tan 302fc8483fSLey Foon Tanconfig GENERIC_CSUM 312fc8483fSLey Foon Tan def_bool y 322fc8483fSLey Foon Tan 332fc8483fSLey Foon Tanconfig GENERIC_HWEIGHT 342fc8483fSLey Foon Tan def_bool y 352fc8483fSLey Foon Tan 362fc8483fSLey Foon Tanconfig GENERIC_CALIBRATE_DELAY 372fc8483fSLey Foon Tan def_bool y 382fc8483fSLey Foon Tan 392fc8483fSLey Foon Tanconfig NO_IOPORT_MAP 402fc8483fSLey Foon Tan def_bool y 412fc8483fSLey Foon Tan 422fc8483fSLey Foon Tanconfig FPU 432fc8483fSLey Foon Tan def_bool n 442fc8483fSLey Foon Tan 452fc8483fSLey Foon Tanconfig TRACE_IRQFLAGS_SUPPORT 462fc8483fSLey Foon Tan def_bool n 472fc8483fSLey Foon Tan 482fc8483fSLey Foon Tanmenu "Kernel features" 492fc8483fSLey Foon Tan 502fc8483fSLey Foon Tansource "kernel/Kconfig.hz" 512fc8483fSLey Foon Tan 522fc8483fSLey Foon Tanconfig FORCE_MAX_ZONEORDER 532fc8483fSLey Foon Tan int "Maximum zone order" 542fc8483fSLey Foon Tan range 9 20 552fc8483fSLey Foon Tan default "11" 562fc8483fSLey Foon Tan help 572fc8483fSLey Foon Tan The kernel memory allocator divides physically contiguous memory 582fc8483fSLey Foon Tan blocks into "zones", where each zone is a power of two number of 592fc8483fSLey Foon Tan pages. This option selects the largest power of two that the kernel 602fc8483fSLey Foon Tan keeps in the memory allocator. If you need to allocate very large 612fc8483fSLey Foon Tan blocks of physically contiguous memory, then you may need to 622fc8483fSLey Foon Tan increase this value. 632fc8483fSLey Foon Tan 642fc8483fSLey Foon Tan This config option is actually maximum order plus one. For example, 652fc8483fSLey Foon Tan a value of 11 means that the largest free memory block is 2^10 pages. 662fc8483fSLey Foon Tan 672fc8483fSLey Foon Tanendmenu 682fc8483fSLey Foon Tan 692fc8483fSLey Foon Tansource "arch/nios2/platform/Kconfig.platform" 702fc8483fSLey Foon Tan 712fc8483fSLey Foon Tanmenu "Processor type and features" 722fc8483fSLey Foon Tan 732fc8483fSLey Foon Tanconfig MMU 742fc8483fSLey Foon Tan def_bool y 752fc8483fSLey Foon Tan 766e5c8f5fSTobias Klauserconfig NR_CPUS 776e5c8f5fSTobias Klauser int 786e5c8f5fSTobias Klauser default "1" 796e5c8f5fSTobias Klauser 802fc8483fSLey Foon Tanconfig NIOS2_ALIGNMENT_TRAP 812fc8483fSLey Foon Tan bool "Catch alignment trap" 822fc8483fSLey Foon Tan default y 832fc8483fSLey Foon Tan help 842fc8483fSLey Foon Tan Nios II CPUs cannot fetch/store data which is not bus aligned, 852fc8483fSLey Foon Tan i.e., a 2 or 4 byte fetch must start at an address divisible by 862fc8483fSLey Foon Tan 2 or 4. Any non-aligned load/store instructions will be trapped and 872fc8483fSLey Foon Tan emulated in software if you say Y here, which has a performance 882fc8483fSLey Foon Tan impact. 892fc8483fSLey Foon Tan 902fc8483fSLey Foon Tancomment "Boot options" 912fc8483fSLey Foon Tan 922fc8483fSLey Foon Tanconfig CMDLINE_BOOL 932fc8483fSLey Foon Tan bool "Default bootloader kernel arguments" 942fc8483fSLey Foon Tan default y 952fc8483fSLey Foon Tan 962fc8483fSLey Foon Tanconfig CMDLINE 972fc8483fSLey Foon Tan string "Default kernel command string" 982fc8483fSLey Foon Tan default "" 992fc8483fSLey Foon Tan depends on CMDLINE_BOOL 1002fc8483fSLey Foon Tan help 1012fc8483fSLey Foon Tan On some platforms, there is currently no way for the boot loader to 1022fc8483fSLey Foon Tan pass arguments to the kernel. For these platforms, you can supply 1032fc8483fSLey Foon Tan some command-line options at build time by entering them here. In 1042fc8483fSLey Foon Tan other cases you can specify kernel args so that you don't have 1052fc8483fSLey Foon Tan to set them up in board prom initialization routines. 1062fc8483fSLey Foon Tan 1072fc8483fSLey Foon Tanconfig CMDLINE_FORCE 1082fc8483fSLey Foon Tan bool "Force default kernel command string" 1092fc8483fSLey Foon Tan depends on CMDLINE_BOOL 1102fc8483fSLey Foon Tan help 1112fc8483fSLey Foon Tan Set this to have arguments from the default kernel command string 1122fc8483fSLey Foon Tan override those passed by the boot loader. 1132fc8483fSLey Foon Tan 1142fc8483fSLey Foon Tanconfig NIOS2_CMDLINE_IGNORE_DTB 1152fc8483fSLey Foon Tan bool "Ignore kernel command string from DTB" 1162b2b4074STobias Klauser depends on CMDLINE_BOOL 1172fc8483fSLey Foon Tan depends on !CMDLINE_FORCE 1182fc8483fSLey Foon Tan default y 1192fc8483fSLey Foon Tan help 1202fc8483fSLey Foon Tan Set this to ignore the bootargs property from the devicetree's 1212fc8483fSLey Foon Tan chosen node and fall back to CMDLINE if nothing is passed. 1222fc8483fSLey Foon Tan 1232fc8483fSLey Foon Tanconfig NIOS2_PASS_CMDLINE 1242fc8483fSLey Foon Tan bool "Passed kernel command line from u-boot" 1252fc8483fSLey Foon Tan help 1262fc8483fSLey Foon Tan Use bootargs env variable from u-boot for kernel command line. 1272fc8483fSLey Foon Tan will override "Default kernel command string". 1282fc8483fSLey Foon Tan Say N if you are unsure. 1292fc8483fSLey Foon Tan 13001623627SLey Foon Tanconfig NIOS2_BOOT_LINK_OFFSET 13101623627SLey Foon Tan hex "Link address offset for booting" 13201623627SLey Foon Tan default "0x00500000" 13301623627SLey Foon Tan help 13401623627SLey Foon Tan This option allows you to set the link address offset of the zImage. 13501623627SLey Foon Tan This can be useful if you are on a board which has a small amount of 13601623627SLey Foon Tan memory. 13701623627SLey Foon Tan 1382fc8483fSLey Foon Tanendmenu 1392fc8483fSLey Foon Tan 1402fc8483fSLey Foon Tanmenu "Advanced setup" 1412fc8483fSLey Foon Tan 1422fc8483fSLey Foon Tanconfig ADVANCED_OPTIONS 1432fc8483fSLey Foon Tan bool "Prompt for advanced kernel configuration options" 1442fc8483fSLey Foon Tan 1452fc8483fSLey Foon Tancomment "Default settings for advanced configuration options are used" 1462fc8483fSLey Foon Tan depends on !ADVANCED_OPTIONS 1472fc8483fSLey Foon Tan 1482fc8483fSLey Foon Tanconfig NIOS2_KERNEL_MMU_REGION_BASE_BOOL 1492fc8483fSLey Foon Tan bool "Set custom kernel MMU region base address" 1502fc8483fSLey Foon Tan depends on ADVANCED_OPTIONS 1512fc8483fSLey Foon Tan help 1522fc8483fSLey Foon Tan This option allows you to set the virtual address of the kernel MMU region. 1532fc8483fSLey Foon Tan 1542fc8483fSLey Foon Tan Say N here unless you know what you are doing. 1552fc8483fSLey Foon Tan 1562fc8483fSLey Foon Tanconfig NIOS2_KERNEL_MMU_REGION_BASE 1572fc8483fSLey Foon Tan hex "Virtual base address of the kernel MMU region " if NIOS2_KERNEL_MMU_REGION_BASE_BOOL 1582fc8483fSLey Foon Tan default "0x80000000" 1592fc8483fSLey Foon Tan help 1602fc8483fSLey Foon Tan This option allows you to set the virtual base address of the kernel MMU region. 1612fc8483fSLey Foon Tan 1622fc8483fSLey Foon Tanconfig NIOS2_KERNEL_REGION_BASE_BOOL 1632fc8483fSLey Foon Tan bool "Set custom kernel region base address" 1642fc8483fSLey Foon Tan depends on ADVANCED_OPTIONS 1652fc8483fSLey Foon Tan help 1662fc8483fSLey Foon Tan This option allows you to set the virtual address of the kernel region. 1672fc8483fSLey Foon Tan 1682fc8483fSLey Foon Tan Say N here unless you know what you are doing. 1692fc8483fSLey Foon Tan 1702fc8483fSLey Foon Tanconfig NIOS2_KERNEL_REGION_BASE 1712fc8483fSLey Foon Tan hex "Virtual base address of the kernel region " if NIOS2_KERNEL_REGION_BASE_BOOL 1722fc8483fSLey Foon Tan default "0xc0000000" 1732fc8483fSLey Foon Tan 1742fc8483fSLey Foon Tanconfig NIOS2_IO_REGION_BASE_BOOL 1752fc8483fSLey Foon Tan bool "Set custom I/O region base address" 1762fc8483fSLey Foon Tan depends on ADVANCED_OPTIONS 1772fc8483fSLey Foon Tan help 1782fc8483fSLey Foon Tan This option allows you to set the virtual address of the I/O region. 1792fc8483fSLey Foon Tan 1802fc8483fSLey Foon Tan Say N here unless you know what you are doing. 1812fc8483fSLey Foon Tan 1822fc8483fSLey Foon Tanconfig NIOS2_IO_REGION_BASE 1832fc8483fSLey Foon Tan hex "Virtual base address of the I/O region" if NIOS2_IO_REGION_BASE_BOOL 1842fc8483fSLey Foon Tan default "0xe0000000" 1852fc8483fSLey Foon Tan 1862fc8483fSLey Foon Tanendmenu 187