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