Merge tag 'devicetree-for-5.1' of git://git.kernel.org/pub/scm/linux/kernel/git/robh...
[linux-2.6-block.git] / arch / unicore32 / Kconfig
1 # SPDX-License-Identifier: GPL-2.0
2 config UNICORE32
3         def_bool y
4         select ARCH_32BIT_OFF_T
5         select ARCH_HAS_DEVMEM_IS_ALLOWED
6         select ARCH_MIGHT_HAVE_PC_PARPORT
7         select ARCH_MIGHT_HAVE_PC_SERIO
8         select HAVE_GENERIC_DMA_COHERENT
9         select HAVE_KERNEL_GZIP
10         select HAVE_KERNEL_BZIP2
11         select GENERIC_ATOMIC64
12         select HAVE_KERNEL_LZO
13         select HAVE_KERNEL_LZMA
14         select HAVE_PCI
15         select VIRT_TO_BUS
16         select ARCH_HAVE_CUSTOM_GPIO_H
17         select GENERIC_FIND_FIRST_BIT
18         select GENERIC_IRQ_PROBE
19         select GENERIC_IRQ_SHOW
20         select ARCH_WANT_FRAME_POINTERS
21         select GENERIC_IOMAP
22         select MODULES_USE_ELF_REL
23         select NEED_DMA_MAP_STATE
24         help
25           UniCore-32 is 32-bit Instruction Set Architecture,
26           including a series of low-power-consumption RISC chip
27           designs licensed by PKUnity Ltd.
28           Please see web page at <http://www.pkunity.com/>.
29
30 config GENERIC_CSUM
31         def_bool y
32
33 config NO_IOPORT_MAP
34         bool
35
36 config STACKTRACE_SUPPORT
37         def_bool y
38
39 config LOCKDEP_SUPPORT
40         def_bool y
41
42 config RWSEM_GENERIC_SPINLOCK
43         def_bool y
44
45 config RWSEM_XCHGADD_ALGORITHM
46         bool
47
48 config ARCH_HAS_ILOG2_U32
49         bool
50
51 config ARCH_HAS_ILOG2_U64
52         bool
53
54 config GENERIC_HWEIGHT
55         def_bool y
56
57 config GENERIC_CALIBRATE_DELAY
58         def_bool y
59
60 config ARCH_MAY_HAVE_PC_FDC
61         bool
62
63 config ZONE_DMA
64         def_bool y
65
66 menu "System Type"
67
68 config MMU
69         def_bool y
70
71 config ARCH_FPGA
72         bool
73
74 config ARCH_PUV3
75         def_bool y
76         select CPU_UCV2
77         select GENERIC_CLOCKEVENTS
78         select HAVE_CLK
79         select GPIOLIB
80
81 # CONFIGs for ARCH_PUV3
82
83 if ARCH_PUV3
84
85 choice
86         prompt "Board Selection"
87         default PUV3_DB0913
88
89 config PUV3_FPGA_DLX200
90         select ARCH_FPGA
91         bool "FPGA board"
92
93 config PUV3_DB0913
94         bool "DEBUG board (0913)"
95
96 config PUV3_NB0916
97         bool "NetBook board (0916)"
98         select PWM
99         select PWM_PUV3
100
101 config PUV3_SMW0919
102         bool "Security Mini-Workstation board (0919)"
103
104 endchoice
105
106 config PUV3_PM
107         def_bool y if !ARCH_FPGA
108
109 endif
110
111 source "arch/unicore32/mm/Kconfig"
112
113 comment "Floating point support"
114
115 config UNICORE_FPU_F64
116         def_bool y if !ARCH_FPGA
117
118 endmenu
119
120 menu "Kernel Features"
121
122 source "kernel/Kconfig.hz"
123
124 config LEDS
125         def_bool y
126         depends on GPIOLIB
127
128 config ALIGNMENT_TRAP
129         def_bool y
130         help
131           Unicore processors can not fetch/store information which is not
132           naturally aligned on the bus, i.e., a 4 byte fetch must start at an
133           address divisible by 4. On 32-bit Unicore processors, these non-aligned
134           fetch/store instructions will be emulated in software if you say
135           here, which has a severe performance impact. This is necessary for
136           correct operation of some network protocols. With an IP-only
137           configuration it is safe to say N, otherwise say Y.
138
139 endmenu
140
141 menu "Boot options"
142
143 config CMDLINE
144         string "Default kernel command string"
145         default ""
146
147 config CMDLINE_FORCE
148         bool "Always use the default kernel command string"
149         depends on CMDLINE != ""
150         help
151           Always use the default kernel command string, even if the boot
152           loader passes other arguments to the kernel.
153           This is useful if you cannot or don't want to change the
154           command-line options your boot loader passes to the kernel.
155
156           If unsure, say N.
157
158 endmenu
159
160 menu "Power management options"
161
162 source "kernel/power/Kconfig"
163
164 source "drivers/cpufreq/Kconfig"
165
166 config ARCH_SUSPEND_POSSIBLE
167         def_bool y if !ARCH_FPGA
168
169 config ARCH_HIBERNATION_POSSIBLE
170         def_bool y if !ARCH_FPGA
171
172 endmenu
173
174 if ARCH_PUV3
175
176 config PUV3_GPIO
177         bool
178         depends on !ARCH_FPGA
179         select GPIO_SYSFS
180         default y
181
182 if PUV3_NB0916
183
184 menu "PKUnity NetBook-0916 Features"
185
186 config I2C_BATTERY_BQ27200
187         tristate "I2C Battery BQ27200 Support"
188         select I2C_PUV3
189         select POWER_SUPPLY
190         select BATTERY_BQ27XXX
191
192 config I2C_EEPROM_AT24
193         tristate "I2C EEPROMs AT24 support"
194         select I2C_PUV3
195         select EEPROM_AT24
196
197 config LCD_BACKLIGHT
198         tristate "LCD Backlight support"
199         select BACKLIGHT_LCD_SUPPORT
200         select BACKLIGHT_PWM
201
202 endmenu
203
204 endif
205
206 endif