xref: /openbmc/linux/arch/arm/mach-shmobile/Kconfig (revision 95e9fd10)
1if ARCH_SHMOBILE
2
3comment "SH-Mobile System Type"
4
5config ARCH_SH7367
6	bool "SH-Mobile G3 (SH7367)"
7	select CPU_V6
8	select SH_CLK_CPG
9	select ARCH_WANT_OPTIONAL_GPIOLIB
10
11config ARCH_SH7377
12	bool "SH-Mobile G4 (SH7377)"
13	select CPU_V7
14	select SH_CLK_CPG
15	select ARCH_WANT_OPTIONAL_GPIOLIB
16
17config ARCH_SH7372
18	bool "SH-Mobile AP4 (SH7372)"
19	select CPU_V7
20	select SH_CLK_CPG
21	select ARCH_WANT_OPTIONAL_GPIOLIB
22	select ARM_CPU_SUSPEND if PM || CPU_IDLE
23
24config ARCH_SH73A0
25	bool "SH-Mobile AG5 (R8A73A00)"
26	select CPU_V7
27	select SH_CLK_CPG
28	select ARCH_WANT_OPTIONAL_GPIOLIB
29	select ARM_GIC
30	select I2C
31
32config ARCH_R8A7740
33	bool "R-Mobile A1 (R8A77400)"
34	select CPU_V7
35	select SH_CLK_CPG
36	select ARCH_WANT_OPTIONAL_GPIOLIB
37
38config ARCH_R8A7779
39	bool "R-Car H1 (R8A77790)"
40	select CPU_V7
41	select SH_CLK_CPG
42	select ARM_GIC
43	select ARCH_WANT_OPTIONAL_GPIOLIB
44
45config ARCH_EMEV2
46	bool "Emma Mobile EV2"
47	select CPU_V7
48	select ARM_GIC
49	select ARCH_WANT_OPTIONAL_GPIOLIB
50
51comment "SH-Mobile Board Type"
52
53config MACH_G3EVM
54	bool "G3EVM board"
55	depends on ARCH_SH7367
56	select ARCH_REQUIRE_GPIOLIB
57
58config MACH_G4EVM
59	bool "G4EVM board"
60	depends on ARCH_SH7377
61	select ARCH_REQUIRE_GPIOLIB
62	select REGULATOR_FIXED_VOLTAGE if REGULATOR
63
64config MACH_AP4EVB
65	bool "AP4EVB board"
66	depends on ARCH_SH7372
67	select ARCH_REQUIRE_GPIOLIB
68	select SH_LCD_MIPI_DSI
69	select SND_SOC_AK4642 if SND_SIMPLE_CARD
70	select REGULATOR_FIXED_VOLTAGE if REGULATOR
71
72choice
73	prompt "AP4EVB LCD panel selection"
74	default AP4EVB_QHD
75	depends on MACH_AP4EVB
76
77config AP4EVB_QHD
78	bool "MIPI-DSI QHD (960x540)"
79
80config AP4EVB_WVGA
81	bool "Parallel WVGA (800x480)"
82
83endchoice
84
85config MACH_AG5EVM
86	bool "AG5EVM board"
87	select ARCH_REQUIRE_GPIOLIB
88	select SH_LCD_MIPI_DSI
89	select REGULATOR_FIXED_VOLTAGE if REGULATOR
90	depends on ARCH_SH73A0
91
92config MACH_MACKEREL
93	bool "mackerel board"
94	depends on ARCH_SH7372
95	select ARCH_REQUIRE_GPIOLIB
96	select SND_SOC_AK4642 if SND_SIMPLE_CARD
97	select REGULATOR_FIXED_VOLTAGE if REGULATOR
98
99config MACH_KOTA2
100	bool "KOTA2 board"
101	select ARCH_REQUIRE_GPIOLIB
102	select REGULATOR_FIXED_VOLTAGE if REGULATOR
103	depends on ARCH_SH73A0
104
105config MACH_BONITO
106	bool "bonito board"
107	select ARCH_REQUIRE_GPIOLIB
108	select REGULATOR_FIXED_VOLTAGE if REGULATOR
109	depends on ARCH_R8A7740
110
111config MACH_ARMADILLO800EVA
112	bool "Armadillo-800 EVA board"
113	depends on ARCH_R8A7740
114	select ARCH_REQUIRE_GPIOLIB
115	select USE_OF
116	select REGULATOR_FIXED_VOLTAGE if REGULATOR
117	select SND_SOC_WM8978 if SND_SIMPLE_CARD
118
119config MACH_MARZEN
120	bool "MARZEN board"
121	depends on ARCH_R8A7779
122	select ARCH_REQUIRE_GPIOLIB
123	select REGULATOR_FIXED_VOLTAGE if REGULATOR
124
125config MACH_KZM9D
126	bool "KZM9D board"
127	depends on ARCH_EMEV2
128	select USE_OF
129	select REGULATOR_FIXED_VOLTAGE if REGULATOR
130
131config MACH_KZM9G
132	bool "KZM-A9-GT board"
133	depends on ARCH_SH73A0
134	select ARCH_REQUIRE_GPIOLIB
135	select USE_OF
136	select SND_SOC_AK4642 if SND_SIMPLE_CARD
137	select REGULATOR_FIXED_VOLTAGE if REGULATOR
138
139comment "SH-Mobile System Configuration"
140
141config CPU_HAS_INTEVT
142        bool
143	default y
144
145menu "Memory configuration"
146
147config MEMORY_START
148	hex "Physical memory start address"
149	default "0x50000000" if MACH_G3EVM
150	default "0x40000000" if MACH_G4EVM || MACH_AP4EVB || MACH_AG5EVM || \
151				MACH_MACKEREL || MACH_BONITO || \
152				MACH_ARMADILLO800EVA
153	default "0x41000000" if MACH_KOTA2
154	default "0x00000000"
155	---help---
156	  Tweak this only when porting to a new machine which does not
157	  already have a defconfig. Changing it from the known correct
158	  value on any of the known systems will only lead to disaster.
159
160config MEMORY_SIZE
161	hex "Physical memory size"
162	default "0x08000000" if MACH_G3EVM
163	default "0x08000000" if MACH_G4EVM
164	default "0x20000000" if MACH_AG5EVM || MACH_BONITO || \
165				MACH_ARMADILLO800EVA
166	default "0x1e000000" if MACH_KOTA2
167	default "0x10000000" if MACH_AP4EVB || MACH_MACKEREL
168	default "0x04000000"
169	help
170	  This sets the default memory size assumed by your kernel. It can
171	  be overridden as normal by the 'mem=' argument on the kernel command
172	  line.
173
174endmenu
175
176menu "Timer and clock configuration"
177
178config SHMOBILE_TIMER_HZ
179	int "Kernel HZ (jiffies per second)"
180	range 32 1024
181	default "128"
182	help
183	  Allows the configuration of the timer frequency. It is customary
184	  to have the timer interrupt run at 1000 Hz or 100 Hz, but in the
185	  case of low timer frequencies other values may be more suitable.
186	  SH-Mobile systems using a 32768 Hz RCLK for clock events may want
187	  to select a HZ value such as 128 that can evenly divide RCLK.
188	  A HZ value that does not divide evenly may cause timer drift.
189
190config SH_TIMER_CMT
191	bool "CMT timer driver"
192	default y
193	help
194	  This enables build of the CMT timer driver.
195
196config SH_TIMER_TMU
197	bool "TMU timer driver"
198	default y
199	help
200	  This enables build of the TMU timer driver.
201
202config EM_TIMER_STI
203	bool "STI timer driver"
204	default y
205	help
206	  This enables build of the STI timer driver.
207
208endmenu
209
210config SH_CLK_CPG
211	bool
212
213source "drivers/sh/Kconfig"
214
215endif
216