| # SPDX-License-Identifier: GPL-2.0 |
| config NIOS2 |
| def_bool y |
| select ARCH_32BIT_OFF_T |
| select ARCH_HAS_DMA_PREP_COHERENT |
| select ARCH_HAS_SYNC_DMA_FOR_CPU |
| select ARCH_HAS_SYNC_DMA_FOR_DEVICE |
| select ARCH_HAS_DMA_SET_UNCACHED |
| select ARCH_NO_SWAP |
| select COMMON_CLK |
| select TIMER_OF |
| select GENERIC_ATOMIC64 |
| select GENERIC_CPU_DEVICES |
| select GENERIC_IRQ_PROBE |
| select GENERIC_IRQ_SHOW |
| select HAVE_ARCH_TRACEHOOK |
| select HAVE_ARCH_KGDB |
| select IRQ_DOMAIN |
| select LOCK_MM_AND_FIND_VMA |
| select MODULES_USE_ELF_RELA |
| select OF |
| select OF_EARLY_FLATTREE |
| select SOC_BUS |
| select SPARSE_IRQ |
| select USB_ARCH_HAS_HCD if USB_SUPPORT |
| select CPU_NO_EFFICIENT_FFS |
| select MMU_GATHER_NO_RANGE if MMU |
| |
| config GENERIC_CSUM |
| def_bool y |
| |
| config GENERIC_HWEIGHT |
| def_bool y |
| |
| config GENERIC_CALIBRATE_DELAY |
| def_bool y |
| |
| config NO_IOPORT_MAP |
| def_bool y |
| |
| config FPU |
| def_bool n |
| |
| menu "Kernel features" |
| |
| source "kernel/Kconfig.hz" |
| |
| config ARCH_FORCE_MAX_ORDER |
| int "Maximum zone order" |
| range 9 20 |
| default "11" |
| help |
| The kernel memory allocator divides physically contiguous memory |
| blocks into "zones", where each zone is a power of two number of |
| pages. This option selects the largest power of two that the kernel |
| keeps in the memory allocator. If you need to allocate very large |
| blocks of physically contiguous memory, then you may need to |
| increase this value. |
| |
| This config option is actually maximum order plus one. For example, |
| a value of 11 means that the largest free memory block is 2^10 pages. |
| |
| endmenu |
| |
| source "arch/nios2/platform/Kconfig.platform" |
| |
| menu "Processor type and features" |
| |
| config MMU |
| def_bool y |
| |
| config NR_CPUS |
| int |
| default "1" |
| |
| config NIOS2_ALIGNMENT_TRAP |
| bool "Catch alignment trap" |
| default y |
| help |
| Nios II CPUs cannot fetch/store data which is not bus aligned, |
| i.e., a 2 or 4 byte fetch must start at an address divisible by |
| 2 or 4. Any non-aligned load/store instructions will be trapped and |
| emulated in software if you say Y here, which has a performance |
| impact. |
| |
| comment "Boot options" |
| |
| config CMDLINE_BOOL |
| bool "Default bootloader kernel arguments" |
| default y |
| |
| config CMDLINE |
| string "Default kernel command string" |
| default "" |
| depends on CMDLINE_BOOL |
| help |
| On some platforms, there is currently no way for the boot loader to |
| pass arguments to the kernel. For these platforms, you can supply |
| some command-line options at build time by entering them here. In |
| other cases you can specify kernel args so that you don't have |
| to set them up in board prom initialization routines. |
| |
| config CMDLINE_FORCE |
| bool "Force default kernel command string" |
| depends on CMDLINE_BOOL |
| help |
| Set this to have arguments from the default kernel command string |
| override those passed by the boot loader. |
| |
| config NIOS2_CMDLINE_IGNORE_DTB |
| bool "Ignore kernel command string from DTB" |
| depends on CMDLINE_BOOL |
| depends on !CMDLINE_FORCE |
| default y |
| help |
| Set this to ignore the bootargs property from the devicetree's |
| chosen node and fall back to CMDLINE if nothing is passed. |
| |
| config NIOS2_PASS_CMDLINE |
| bool "Passed kernel command line from u-boot" |
| help |
| Use bootargs env variable from u-boot for kernel command line. |
| will override "Default kernel command string". |
| Say N if you are unsure. |
| |
| config NIOS2_BOOT_LINK_OFFSET |
| hex "Link address offset for booting" |
| default "0x00500000" |
| help |
| This option allows you to set the link address offset of the zImage. |
| This can be useful if you are on a board which has a small amount of |
| memory. |
| |
| endmenu |
| |
| menu "Advanced setup" |
| |
| config ADVANCED_OPTIONS |
| bool "Prompt for advanced kernel configuration options" |
| |
| comment "Default settings for advanced configuration options are used" |
| depends on !ADVANCED_OPTIONS |
| |
| config NIOS2_KERNEL_MMU_REGION_BASE_BOOL |
| bool "Set custom kernel MMU region base address" |
| depends on ADVANCED_OPTIONS |
| help |
| This option allows you to set the virtual address of the kernel MMU region. |
| |
| Say N here unless you know what you are doing. |
| |
| config NIOS2_KERNEL_MMU_REGION_BASE |
| hex "Virtual base address of the kernel MMU region " if NIOS2_KERNEL_MMU_REGION_BASE_BOOL |
| default "0x80000000" |
| help |
| This option allows you to set the virtual base address of the kernel MMU region. |
| |
| config NIOS2_KERNEL_REGION_BASE_BOOL |
| bool "Set custom kernel region base address" |
| depends on ADVANCED_OPTIONS |
| help |
| This option allows you to set the virtual address of the kernel region. |
| |
| Say N here unless you know what you are doing. |
| |
| config NIOS2_KERNEL_REGION_BASE |
| hex "Virtual base address of the kernel region " if NIOS2_KERNEL_REGION_BASE_BOOL |
| default "0xc0000000" |
| |
| config NIOS2_IO_REGION_BASE_BOOL |
| bool "Set custom I/O region base address" |
| depends on ADVANCED_OPTIONS |
| help |
| This option allows you to set the virtual address of the I/O region. |
| |
| Say N here unless you know what you are doing. |
| |
| config NIOS2_IO_REGION_BASE |
| hex "Virtual base address of the I/O region" if NIOS2_IO_REGION_BASE_BOOL |
| default "0xe0000000" |
| |
| endmenu |