Linux 4.19-rc7
[linux-2.6/btrfs-unstable.git] / arch / unicore32 / Kconfig
blob60eae744d8fd0112d39dc0bbbe13a48e30790726
1 # SPDX-License-Identifier: GPL-2.0
2 config UNICORE32
3         def_bool y
4         select ARCH_HAS_DEVMEM_IS_ALLOWED
5         select ARCH_MIGHT_HAVE_PC_PARPORT
6         select ARCH_MIGHT_HAVE_PC_SERIO
7         select HAVE_MEMBLOCK
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 VIRT_TO_BUS
15         select ARCH_HAVE_CUSTOM_GPIO_H
16         select GENERIC_FIND_FIRST_BIT
17         select GENERIC_IRQ_PROBE
18         select GENERIC_IRQ_SHOW
19         select ARCH_WANT_FRAME_POINTERS
20         select GENERIC_IOMAP
21         select MODULES_USE_ELF_REL
22         select NEED_DMA_MAP_STATE
23         select SWIOTLB
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/>.
30 config GENERIC_CSUM
31         def_bool y
33 config NO_IOPORT_MAP
34         bool
36 config STACKTRACE_SUPPORT
37         def_bool y
39 config LOCKDEP_SUPPORT
40         def_bool y
42 config RWSEM_GENERIC_SPINLOCK
43         def_bool y
45 config RWSEM_XCHGADD_ALGORITHM
46         bool
48 config ARCH_HAS_ILOG2_U32
49         bool
51 config ARCH_HAS_ILOG2_U64
52         bool
54 config GENERIC_HWEIGHT
55         def_bool y
57 config GENERIC_CALIBRATE_DELAY
58         def_bool y
60 config ARCH_MAY_HAVE_PC_FDC
61         bool
63 config ZONE_DMA
64         def_bool y
66 menu "System Type"
68 config MMU
69         def_bool y
71 config ARCH_FPGA
72         bool
74 config ARCH_PUV3
75         def_bool y
76         select CPU_UCV2
77         select GENERIC_CLOCKEVENTS
78         select HAVE_CLK
79         select GPIOLIB
81 # CONFIGs for ARCH_PUV3
83 if ARCH_PUV3
85 choice
86         prompt "Board Selection"
87         default PUV3_DB0913
89 config PUV3_FPGA_DLX200
90         select ARCH_FPGA
91         bool "FPGA board"
93 config PUV3_DB0913
94         bool "DEBUG board (0913)"
96 config PUV3_NB0916
97         bool "NetBook board (0916)"
98         select PWM
99         select PWM_PUV3
101 config PUV3_SMW0919
102         bool "Security Mini-Workstation board (0919)"
104 endchoice
106 config PUV3_PM
107         def_bool y if !ARCH_FPGA
109 endif
111 source "arch/unicore32/mm/Kconfig"
113 comment "Floating point support"
115 config UNICORE_FPU_F64
116         def_bool y if !ARCH_FPGA
118 endmenu
120 menu "Bus support"
122 config PCI
123         bool "PCI Support"
124         help
125           Find out whether you have a PCI motherboard. PCI is the name of a
126           bus system, i.e. the way the CPU talks to the other stuff inside
127           your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
128           VESA. If you have PCI, say Y, otherwise N.
130 source "drivers/pci/Kconfig"
132 source "drivers/pcmcia/Kconfig"
134 endmenu
136 menu "Kernel Features"
138 source "kernel/Kconfig.hz"
140 config LEDS
141         def_bool y
142         depends on GPIOLIB
144 config ALIGNMENT_TRAP
145         def_bool y
146         help
147           Unicore processors can not fetch/store information which is not
148           naturally aligned on the bus, i.e., a 4 byte fetch must start at an
149           address divisible by 4. On 32-bit Unicore processors, these non-aligned
150           fetch/store instructions will be emulated in software if you say
151           here, which has a severe performance impact. This is necessary for
152           correct operation of some network protocols. With an IP-only
153           configuration it is safe to say N, otherwise say Y.
155 endmenu
157 menu "Boot options"
159 config CMDLINE
160         string "Default kernel command string"
161         default ""
163 config CMDLINE_FORCE
164         bool "Always use the default kernel command string"
165         depends on CMDLINE != ""
166         help
167           Always use the default kernel command string, even if the boot
168           loader passes other arguments to the kernel.
169           This is useful if you cannot or don't want to change the
170           command-line options your boot loader passes to the kernel.
172           If unsure, say N.
174 endmenu
176 menu "Power management options"
178 source "kernel/power/Kconfig"
180 source "drivers/cpufreq/Kconfig"
182 config ARCH_SUSPEND_POSSIBLE
183         def_bool y if !ARCH_FPGA
185 config ARCH_HIBERNATION_POSSIBLE
186         def_bool y if !ARCH_FPGA
188 endmenu
190 if ARCH_PUV3
192 config PUV3_GPIO
193         bool
194         depends on !ARCH_FPGA
195         select GPIO_SYSFS
196         default y
198 if PUV3_NB0916
200 menu "PKUnity NetBook-0916 Features"
202 config I2C_BATTERY_BQ27200
203         tristate "I2C Battery BQ27200 Support"
204         select I2C_PUV3
205         select POWER_SUPPLY
206         select BATTERY_BQ27XXX
208 config I2C_EEPROM_AT24
209         tristate "I2C EEPROMs AT24 support"
210         select I2C_PUV3
211         select EEPROM_AT24
213 config LCD_BACKLIGHT
214         tristate "LCD Backlight support"
215         select BACKLIGHT_LCD_SUPPORT
216         select BACKLIGHT_PWM
218 endmenu
220 endif
222 endif