ARM: shmobile: sh73a0: div4 clocks must check the kick bit before changing rate
[firefly-linux-kernel-4.4.55.git] / arch / arm / mach-shmobile / Kconfig
1 if ARCH_SHMOBILE
2
3 comment "SH-Mobile System Type"
4
5 config ARCH_SH7372
6         bool "SH-Mobile AP4 (SH7372)"
7         select ARCH_WANT_OPTIONAL_GPIOLIB
8         select ARM_CPU_SUSPEND if PM || CPU_IDLE
9         select CPU_V7
10         select SH_CLK_CPG
11
12 config ARCH_SH73A0
13         bool "SH-Mobile AG5 (R8A73A00)"
14         select ARCH_WANT_OPTIONAL_GPIOLIB
15         select ARM_GIC
16         select CPU_V7
17         select I2C
18         select SH_CLK_CPG
19         select RENESAS_INTC_IRQPIN
20
21 config ARCH_R8A73A4
22         bool "R-Mobile APE6 (R8A73A40)"
23         select ARCH_WANT_OPTIONAL_GPIOLIB
24         select ARM_GIC
25         select CPU_V7
26         select ARM_ARCH_TIMER
27         select SH_CLK_CPG
28         select RENESAS_IRQC
29
30 config ARCH_R8A7740
31         bool "R-Mobile A1 (R8A77400)"
32         select ARCH_WANT_OPTIONAL_GPIOLIB
33         select ARM_GIC
34         select CPU_V7
35         select SH_CLK_CPG
36         select RENESAS_INTC_IRQPIN
37
38 config ARCH_R8A7778
39         bool "R-Car M1A (R8A77781)"
40         select CPU_V7
41         select SH_CLK_CPG
42         select ARM_GIC
43
44 config ARCH_R8A7779
45         bool "R-Car H1 (R8A77790)"
46         select ARCH_WANT_OPTIONAL_GPIOLIB
47         select ARM_GIC
48         select CPU_V7
49         select SH_CLK_CPG
50         select USB_ARCH_HAS_EHCI
51         select USB_ARCH_HAS_OHCI
52         select RENESAS_INTC_IRQPIN
53
54 config ARCH_R8A7790
55         bool "R-Car H2 (R8A77900)"
56         select ARCH_WANT_OPTIONAL_GPIOLIB
57         select ARM_GIC
58         select CPU_V7
59         select ARM_ARCH_TIMER
60         select SH_CLK_CPG
61         select RENESAS_IRQC
62
63 config ARCH_EMEV2
64         bool "Emma Mobile EV2"
65         select ARCH_WANT_OPTIONAL_GPIOLIB
66         select ARM_GIC
67         select CPU_V7
68
69 comment "SH-Mobile Board Type"
70
71 config MACH_AP4EVB
72         bool "AP4EVB board"
73         depends on ARCH_SH7372
74         select ARCH_REQUIRE_GPIOLIB
75         select REGULATOR_FIXED_VOLTAGE if REGULATOR
76         select SH_LCD_MIPI_DSI
77         select SND_SOC_AK4642 if SND_SIMPLE_CARD
78
79 choice
80         prompt "AP4EVB LCD panel selection"
81         default AP4EVB_QHD
82         depends on MACH_AP4EVB
83
84 config AP4EVB_QHD
85         bool "MIPI-DSI QHD (960x540)"
86
87 config AP4EVB_WVGA
88         bool "Parallel WVGA (800x480)"
89
90 endchoice
91
92 config MACH_AG5EVM
93         bool "AG5EVM board"
94         depends on ARCH_SH73A0
95         select ARCH_REQUIRE_GPIOLIB
96         select REGULATOR_FIXED_VOLTAGE if REGULATOR
97         select SH_LCD_MIPI_DSI
98
99 config MACH_APE6EVM
100         bool "APE6EVM board"
101         depends on ARCH_R8A73A4
102         select USE_OF
103
104 config MACH_MACKEREL
105         bool "mackerel board"
106         depends on ARCH_SH7372
107         select ARCH_REQUIRE_GPIOLIB
108         select REGULATOR_FIXED_VOLTAGE if REGULATOR
109         select SND_SOC_AK4642 if SND_SIMPLE_CARD
110         select USE_OF
111
112 config MACH_KOTA2
113         bool "KOTA2 board"
114         depends on ARCH_SH73A0
115         select ARCH_REQUIRE_GPIOLIB
116         select REGULATOR_FIXED_VOLTAGE if REGULATOR
117
118 config MACH_BONITO
119         bool "bonito board"
120         depends on ARCH_R8A7740
121         select ARCH_REQUIRE_GPIOLIB
122         select REGULATOR_FIXED_VOLTAGE if REGULATOR
123
124 config MACH_ARMADILLO800EVA
125         bool "Armadillo-800 EVA board"
126         depends on ARCH_R8A7740
127         select ARCH_REQUIRE_GPIOLIB
128         select REGULATOR_FIXED_VOLTAGE if REGULATOR
129         select SND_SOC_WM8978 if SND_SIMPLE_CARD
130         select USE_OF
131
132 config MACH_BOCKW
133         bool "BOCK-W platform"
134         depends on ARCH_R8A7778
135         select ARCH_REQUIRE_GPIOLIB
136         select RENESAS_INTC_IRQPIN
137         select USE_OF
138
139 config MACH_MARZEN
140         bool "MARZEN board"
141         depends on ARCH_R8A7779
142         select ARCH_REQUIRE_GPIOLIB
143         select REGULATOR_FIXED_VOLTAGE if REGULATOR
144
145 config MACH_MARZEN_REFERENCE
146         bool "MARZEN board - Reference Device Tree Implementation"
147         depends on ARCH_R8A7779
148         select ARCH_REQUIRE_GPIOLIB
149         select REGULATOR_FIXED_VOLTAGE if REGULATOR
150         select USE_OF
151         ---help---
152            Use reference implementation of Marzen board support
153            which makes use of device tree at the expense
154            of not supporting a number of devices.
155
156            This is intended to aid developers
157
158 config MACH_LAGER
159         bool "Lager board"
160         depends on ARCH_R8A7790
161         select USE_OF
162
163 config MACH_KZM9D
164         bool "KZM9D board"
165         depends on ARCH_EMEV2
166         select REGULATOR_FIXED_VOLTAGE if REGULATOR
167         select USE_OF
168
169 config MACH_KZM9G
170         bool "KZM-A9-GT board"
171         depends on ARCH_SH73A0
172         select ARCH_HAS_CPUFREQ
173         select ARCH_HAS_OPP
174         select ARCH_REQUIRE_GPIOLIB
175         select REGULATOR_FIXED_VOLTAGE if REGULATOR
176         select SND_SOC_AK4642 if SND_SIMPLE_CARD
177         select USE_OF
178
179 config MACH_KZM9G_REFERENCE
180         bool "KZM-A9-GT board - Reference Device Tree Implementation"
181         depends on ARCH_SH73A0
182         select ARCH_REQUIRE_GPIOLIB
183         select REGULATOR_FIXED_VOLTAGE if REGULATOR
184         select SND_SOC_AK4642 if SND_SIMPLE_CARD
185         select USE_OF
186         ---help---
187            Use reference implementation of KZM-A9-GT board support
188            which makes as greater use of device tree at the expense
189            of not supporting a number of devices.
190
191            This is intended to aid developers
192
193 comment "SH-Mobile System Configuration"
194
195 config CPU_HAS_INTEVT
196         bool
197         default y
198
199 menu "Memory configuration"
200
201 config MEMORY_START
202         hex "Physical memory start address"
203         default "0x40000000" if MACH_AP4EVB || MACH_AG5EVM || \
204                                 MACH_MACKEREL || MACH_BONITO || \
205                                 MACH_ARMADILLO800EVA || MACH_APE6EVM || \
206                                 MACH_LAGER
207         default "0x41000000" if MACH_KOTA2
208         default "0x00000000"
209         ---help---
210           Tweak this only when porting to a new machine which does not
211           already have a defconfig. Changing it from the known correct
212           value on any of the known systems will only lead to disaster.
213
214 config MEMORY_SIZE
215         hex "Physical memory size"
216         default "0x80000000" if MACH_LAGER
217         default "0x40000000" if MACH_APE6EVM
218         default "0x20000000" if MACH_AG5EVM || MACH_BONITO || \
219                                 MACH_ARMADILLO800EVA
220         default "0x1e000000" if MACH_KOTA2
221         default "0x10000000" if MACH_AP4EVB || MACH_MACKEREL
222         default "0x04000000"
223         help
224           This sets the default memory size assumed by your kernel. It can
225           be overridden as normal by the 'mem=' argument on the kernel command
226           line.
227
228 endmenu
229
230 menu "Timer and clock configuration"
231
232 config SHMOBILE_TIMER_HZ
233         int "Kernel HZ (jiffies per second)"
234         range 32 1024
235         default "128"
236         help
237           Allows the configuration of the timer frequency. It is customary
238           to have the timer interrupt run at 1000 Hz or 100 Hz, but in the
239           case of low timer frequencies other values may be more suitable.
240           SH-Mobile systems using a 32768 Hz RCLK for clock events may want
241           to select a HZ value such as 128 that can evenly divide RCLK.
242           A HZ value that does not divide evenly may cause timer drift.
243
244 config SH_TIMER_CMT
245         bool "CMT timer driver"
246         default y
247         help
248           This enables build of the CMT timer driver.
249
250 config SH_TIMER_TMU
251         bool "TMU timer driver"
252         default y
253         help
254           This enables build of the TMU timer driver.
255
256 config EM_TIMER_STI
257         bool "STI timer driver"
258         default y
259         help
260           This enables build of the STI timer driver.
261
262 endmenu
263
264 config SH_CLK_CPG
265         bool
266
267 source "drivers/sh/Kconfig"
268
269 endif