mm: remove CONFIG_NO_BOOTMEM
[linux-2.6-block.git] / arch / nios2 / Kconfig
1 # SPDX-License-Identifier: GPL-2.0
2 config NIOS2
3         def_bool y
4         select ARCH_HAS_SYNC_DMA_FOR_CPU
5         select ARCH_HAS_SYNC_DMA_FOR_DEVICE
6         select ARCH_NO_SWAP
7         select DMA_DIRECT_OPS
8         select TIMER_OF
9         select GENERIC_ATOMIC64
10         select GENERIC_CLOCKEVENTS
11         select GENERIC_CPU_DEVICES
12         select GENERIC_IRQ_PROBE
13         select GENERIC_IRQ_SHOW
14         select GENERIC_STRNCPY_FROM_USER
15         select GENERIC_STRNLEN_USER
16         select HAVE_ARCH_TRACEHOOK
17         select HAVE_ARCH_KGDB
18         select IRQ_DOMAIN
19         select MODULES_USE_ELF_RELA
20         select OF
21         select OF_EARLY_FLATTREE
22         select SOC_BUS
23         select SPARSE_IRQ
24         select USB_ARCH_HAS_HCD if USB_SUPPORT
25         select CPU_NO_EFFICIENT_FFS
26         select HAVE_MEMBLOCK
27         select ARCH_DISCARD_MEMBLOCK
28
29 config GENERIC_CSUM
30         def_bool y
31
32 config GENERIC_HWEIGHT
33         def_bool y
34
35 config GENERIC_CALIBRATE_DELAY
36         def_bool y
37
38 config NO_IOPORT_MAP
39         def_bool y
40
41 config HAS_DMA
42         def_bool y
43
44 config FPU
45         def_bool n
46
47 config RWSEM_GENERIC_SPINLOCK
48         def_bool y
49
50 config TRACE_IRQFLAGS_SUPPORT
51         def_bool n
52
53 menu "Kernel features"
54
55 source "kernel/Kconfig.hz"
56
57 config FORCE_MAX_ZONEORDER
58         int "Maximum zone order"
59         range 9 20
60         default "11"
61         help
62           The kernel memory allocator divides physically contiguous memory
63           blocks into "zones", where each zone is a power of two number of
64           pages.  This option selects the largest power of two that the kernel
65           keeps in the memory allocator.  If you need to allocate very large
66           blocks of physically contiguous memory, then you may need to
67           increase this value.
68
69           This config option is actually maximum order plus one. For example,
70           a value of 11 means that the largest free memory block is 2^10 pages.
71
72 endmenu
73
74 source "arch/nios2/platform/Kconfig.platform"
75
76 menu "Processor type and features"
77
78 config MMU
79         def_bool y
80
81 config NR_CPUS
82         int
83         default "1"
84
85 config NIOS2_ALIGNMENT_TRAP
86         bool "Catch alignment trap"
87         default y
88         help
89           Nios II CPUs cannot fetch/store data which is not bus aligned,
90           i.e., a 2 or 4 byte fetch must start at an address divisible by
91           2 or 4. Any non-aligned load/store instructions will be trapped and
92           emulated in software if you say Y here, which has a performance
93           impact.
94
95 comment "Boot options"
96
97 config CMDLINE_BOOL
98         bool "Default bootloader kernel arguments"
99         default y
100
101 config CMDLINE
102         string "Default kernel command string"
103         default ""
104         depends on CMDLINE_BOOL
105         help
106           On some platforms, there is currently no way for the boot loader to
107           pass arguments to the kernel. For these platforms, you can supply
108           some command-line options at build time by entering them here.  In
109           other cases you can specify kernel args so that you don't have
110           to set them up in board prom initialization routines.
111
112 config CMDLINE_FORCE
113         bool "Force default kernel command string"
114         depends on CMDLINE_BOOL
115         help
116           Set this to have arguments from the default kernel command string
117           override those passed by the boot loader.
118
119 config NIOS2_CMDLINE_IGNORE_DTB
120         bool "Ignore kernel command string from DTB"
121         depends on CMDLINE_BOOL
122         depends on !CMDLINE_FORCE
123         default y
124         help
125           Set this to ignore the bootargs property from the devicetree's
126           chosen node and fall back to CMDLINE if nothing is passed.
127
128 config NIOS2_PASS_CMDLINE
129         bool "Passed kernel command line from u-boot"
130         default n
131         help
132           Use bootargs env variable from u-boot for kernel command line.
133           will override "Default kernel command string".
134           Say N if you are unsure.
135
136 config NIOS2_BOOT_LINK_OFFSET
137         hex "Link address offset for booting"
138         default "0x00500000"
139         help
140           This option allows you to set the link address offset of the zImage.
141           This can be useful if you are on a board which has a small amount of
142           memory.
143
144 endmenu
145
146 menu "Advanced setup"
147
148 config ADVANCED_OPTIONS
149         bool "Prompt for advanced kernel configuration options"
150
151 comment "Default settings for advanced configuration options are used"
152         depends on !ADVANCED_OPTIONS
153
154 config NIOS2_KERNEL_MMU_REGION_BASE_BOOL
155         bool "Set custom kernel MMU region base address"
156         depends on ADVANCED_OPTIONS
157         help
158           This option allows you to set the virtual address of the kernel MMU region.
159
160           Say N here unless you know what you are doing.
161
162 config NIOS2_KERNEL_MMU_REGION_BASE
163         hex "Virtual base address of the kernel MMU region " if NIOS2_KERNEL_MMU_REGION_BASE_BOOL
164         default "0x80000000"
165         help
166           This option allows you to set the virtual base address of the kernel MMU region.
167
168 config NIOS2_KERNEL_REGION_BASE_BOOL
169         bool "Set custom kernel region base address"
170         depends on ADVANCED_OPTIONS
171         help
172           This option allows you to set the virtual address of the kernel region.
173
174           Say N here unless you know what you are doing.
175
176 config NIOS2_KERNEL_REGION_BASE
177         hex "Virtual base address of the kernel region " if NIOS2_KERNEL_REGION_BASE_BOOL
178         default "0xc0000000"
179
180 config NIOS2_IO_REGION_BASE_BOOL
181         bool "Set custom I/O region base address"
182         depends on ADVANCED_OPTIONS
183         help
184           This option allows you to set the virtual address of the I/O region.
185
186           Say N here unless you know what you are doing.
187
188 config NIOS2_IO_REGION_BASE
189         hex "Virtual base address of the I/O region" if NIOS2_IO_REGION_BASE_BOOL
190         default "0xe0000000"
191
192 endmenu