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