Merge tag 'armsoc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
[sfrench/cifs-2.6.git] / arch / cris / arch-v10 / Kconfig
1 # SPDX-License-Identifier: GPL-2.0
2 if ETRAX_ARCH_V10
3
4 menu "CRIS v10 options"
5
6 # ETRAX 100LX v1 has a MMU "feature" requiring a low mapping
7 config CRIS_LOW_MAP
8         bool
9         depends on ETRAX_ARCH_V10 && ETRAX100LX
10         default y
11
12 config ETRAX_DRAM_VIRTUAL_BASE
13         hex
14         depends on ETRAX_ARCH_V10
15         default "c0000000" if !ETRAX100LX
16         default "60000000" if ETRAX100LX
17
18 choice
19         prompt "Product LED port"
20         depends on ETRAX_ARCH_V10
21         default ETRAX_PA_LEDS
22
23 config ETRAX_PA_LEDS
24         bool "Port-PA-LEDs"
25         help
26           The ETRAX network driver is responsible for flashing LED's when
27           packets arrive and are sent.  It uses macros defined in
28           <file:arch/cris/include/asm/io.h>, and those macros are defined after
29           what YOU choose in this option.  The actual bits used are configured
30           separately.  Select this if the LEDs are on port PA.  Some products
31           put the leds on PB or a memory-mapped latch (CSP0) instead.
32
33 config ETRAX_PB_LEDS
34         bool "Port-PB-LEDs"
35         help
36           The ETRAX network driver is responsible for flashing LED's when
37           packets arrive and are sent.  It uses macros defined in
38           <file:arch/cris/include/asm/io.h>, and those macros are defined after
39           what YOU choose in this option.  The actual bits used are configured
40           separately.  Select this if the LEDs are on port PB.  Some products
41           put the leds on PA or a memory-mapped latch (CSP0) instead.
42
43 config ETRAX_CSP0_LEDS
44         bool "Port-CSP0-LEDs"
45         help
46           The ETRAX network driver is responsible for flashing LED's when
47           packets arrive and are sent. It uses macros defined in
48           <file:arch/cris/include/asm/io.h>, and those macros are defined after
49           what YOU choose in this option.  The actual bits used are configured
50           separately.  Select this if the LEDs are on a memory-mapped latch
51           using chip select CSP0, this is mapped at 0x90000000.
52           Some products put the leds on PA or PB instead.
53
54 config ETRAX_NO_LEDS
55         bool "None"
56         help
57           Select this option if you don't have any LED at all.
58
59 endchoice
60
61 config ETRAX_LED1G
62         int "First green LED bit"
63         depends on ETRAX_ARCH_V10 && !ETRAX_NO_LEDS
64         default "2"
65         help
66           Bit to use for the first green LED.
67           Most Axis products use bit 2 here.
68
69 config ETRAX_LED1R
70         int "First red LED bit"
71         depends on ETRAX_ARCH_V10 && !ETRAX_NO_LEDS
72         default "3"
73         help
74           Bit to use for the first red LED.
75           Most Axis products use bit 3 here.
76           For products with only one controllable LED,
77           set this to same as CONFIG_ETRAX_LED1G (normally 2).
78
79 config ETRAX_LED2G
80         int "Second green LED bit"
81         depends on ETRAX_ARCH_V10 && !ETRAX_NO_LEDS
82         default "4"
83         help
84           Bit to use for the second green LED. The "Active" LED.
85           Most Axis products use bit 4 here.
86           For products with only one controllable LED,
87           set this to same as CONFIG_ETRAX_LED1G (normally 2).
88
89 config ETRAX_LED2R
90         int "Second red LED bit"
91         depends on ETRAX_ARCH_V10 && !ETRAX_NO_LEDS
92         default "5"
93         help
94           Bit to use for the second red LED.
95           Most Axis products use bit 5 here.
96           For products with only one controllable LED,
97           set this to same as CONFIG_ETRAX_LED1G (normally 2).
98
99 config ETRAX_LED3G
100         int "Third green LED bit"
101         depends on ETRAX_ARCH_V10 && !ETRAX_NO_LEDS
102         default "2"
103         help
104           Bit to use for the third green LED. The "Drive" LED.
105           For products with only one or two controllable LEDs,
106           set this to same as CONFIG_ETRAX_LED1G (normally 2).
107
108 config ETRAX_LED3R
109         int "Third red LED bit"
110         depends on ETRAX_ARCH_V10 && !ETRAX_NO_LEDS
111         default "2"
112         help
113           Bit to use for the third red LED.
114           For products with only one or two controllable LEDs,
115           set this to same as CONFIG_ETRAX_LED1G (normally 2).
116
117 config ETRAX_LED4R
118         int "Fourth red LED bit"
119         depends on ETRAX_CSP0_LEDS
120         default "2"
121         help
122           Bit to use for the fourth red LED.
123           For products with only one or two controllable LEDs,
124           set this to same as CONFIG_ETRAX_LED1G (normally 2).
125
126 config ETRAX_LED4G
127         int "Fourth green LED bit"
128         depends on ETRAX_CSP0_LEDS
129         default "2"
130         help
131           Bit to use for the fourth green LED.
132           For products with only one or two controllable LEDs,
133           set this to same as CONFIG_ETRAX_LED1G (normally 2).
134
135 config ETRAX_LED5R
136         int "Fifth red LED bit"
137         depends on ETRAX_CSP0_LEDS
138         default "2"
139         help
140           Bit to use for the fifth red LED.
141           For products with only one or two controllable LEDs,
142           set this to same as CONFIG_ETRAX_LED1G (normally 2).
143
144 config ETRAX_LED5G
145         int "Fifth green LED bit"
146         depends on ETRAX_CSP0_LEDS
147         default "2"
148         help
149           Bit to use for the fifth green LED.
150           For products with only one or two controllable LEDs,
151           set this to same as CONFIG_ETRAX_LED1G (normally 2).
152
153 config ETRAX_LED6R
154         int "Sixth red LED bit"
155         depends on ETRAX_CSP0_LEDS
156         default "2"
157         help
158           Bit to use for the sixth red LED.
159           For products with only one or two controllable LEDs,
160           set this to same as CONFIG_ETRAX_LED1G (normally 2).
161
162 config ETRAX_LED6G
163         int "Sixth green LED bit"
164         depends on ETRAX_CSP0_LEDS
165         default "2"
166         help
167           Bit to use for the sixth green LED. The "Drive" LED.
168           For products with only one or two controllable LEDs,
169           set this to same as CONFIG_ETRAX_LED1G (normally 2).
170
171 config ETRAX_LED7R
172         int "Seventh red LED bit"
173         depends on ETRAX_CSP0_LEDS
174         default "2"
175         help
176           Bit to use for the seventh red LED.
177           For products with only one or two controllable LEDs,
178           set this to same as CONFIG_ETRAX_LED1G (normally 2).
179
180 config ETRAX_LED7G
181         int "Seventh green LED bit"
182         depends on ETRAX_CSP0_LEDS
183         default "2"
184         help
185           Bit to use for the seventh green LED.
186           For products with only one or two controllable LEDs,
187           set this to same as CONFIG_ETRAX_LED1G (normally 2).
188
189 config ETRAX_LED8Y
190         int "Eighth yellow LED bit"
191         depends on ETRAX_CSP0_LEDS
192         default "2"
193         help
194           Bit to use for the eighth yellow LED. The "Drive" LED.
195           For products with only one or two controllable LEDs,
196           set this to same as CONFIG_ETRAX_LED1G (normally 2).
197
198 config ETRAX_LED9Y
199         int "Ninth yellow LED bit"
200         depends on ETRAX_CSP0_LEDS
201         default "2"
202         help
203           Bit to use for the ninth yellow LED.
204           For products with only one or two controllable LEDs,
205           set this to same as CONFIG_ETRAX_LED1G (normally 2).
206
207 config ETRAX_LED10Y
208         int "Tenth yellow LED bit"
209         depends on ETRAX_CSP0_LEDS
210         default "2"
211         help
212           Bit to use for the tenth yellow LED.
213           For products with only one or two controllable LEDs,
214           set this to same as CONFIG_ETRAX_LED1G (normally 2).
215
216 config ETRAX_LED11Y
217         int "Eleventh yellow LED bit"
218         depends on ETRAX_CSP0_LEDS
219         default "2"
220         help
221           Bit to use for the eleventh yellow LED.
222           For products with only one or two controllable LEDs,
223           set this to same as CONFIG_ETRAX_LED1G (normally 2).
224
225 config ETRAX_LED12R
226         int "Twelfth red LED bit"
227         depends on ETRAX_CSP0_LEDS
228         default "2"
229         help
230           Bit to use for the twelfth red LED.
231           For products with only one or two controllable LEDs,
232           set this to same as CONFIG_ETRAX_LED1G (normally 2).
233
234
235 choice
236         prompt "Product rescue-port"
237         depends on ETRAX_ARCH_V10
238         default ETRAX_RESCUE_SER0
239
240 config ETRAX_RESCUE_SER0
241         bool "Serial-0"
242         help
243           Select one of the four serial ports as a rescue port.  The default
244           is port 0.
245
246 config ETRAX_RESCUE_SER1
247         bool "Serial-1"
248         help
249           Use serial port 1 as the rescue port.
250
251 config ETRAX_RESCUE_SER2
252         bool "Serial-2"
253         help
254           Use serial port 2 as the rescue port.
255
256 config ETRAX_RESCUE_SER3
257         bool "Serial-3"
258         help
259           Use serial port 3 as the rescue port.
260
261 endchoice
262
263 config ETRAX_DEF_R_WAITSTATES
264         hex "R_WAITSTATES"
265         depends on ETRAX_ARCH_V10
266         default "95a6"
267         help
268           Waitstates for SRAM, Flash and peripherals (not DRAM).  95f8 is a
269           good choice for most Axis products...
270
271 config ETRAX_DEF_R_BUS_CONFIG
272         hex "R_BUS_CONFIG"
273         depends on ETRAX_ARCH_V10
274         default "104"
275         help
276           Assorted bits controlling write mode, DMA burst length etc.  104 is
277           a good choice for most Axis products...
278
279 config ETRAX_SDRAM
280         bool "SDRAM support"
281         depends on ETRAX_ARCH_V10
282         help
283           Enable this if you use SDRAM chips and configure
284           R_SDRAM_CONFIG and R_SDRAM_TIMING as well.
285
286 config ETRAX_DEF_R_DRAM_CONFIG
287         hex "R_DRAM_CONFIG"
288         depends on ETRAX_ARCH_V10 && !ETRAX_SDRAM
289         default "1a200040"
290         help
291           The R_DRAM_CONFIG register specifies everything on how the DRAM
292           chips in the system are connected to the ETRAX CPU.  This is
293           different depending on the manufacturer, chip type and number of
294           chips.  So this value often needs to be different for each Axis
295           product.
296
297 config ETRAX_DEF_R_DRAM_TIMING
298         hex "R_DRAM_TIMING"
299         depends on ETRAX_ARCH_V10 && !ETRAX_SDRAM
300         default "5611"
301         help
302           Different DRAM chips have different speeds.  Current Axis products
303           use 50ns DRAM chips which can use the timing: 5611.
304
305 config ETRAX_DEF_R_SDRAM_CONFIG
306         hex "R_SDRAM_CONFIG"
307         depends on ETRAX_ARCH_V10 && ETRAX_SDRAM
308         default "d2fa7878"
309         help
310           The R_SDRAM_CONFIG register specifies everything on how the SDRAM
311           chips in the system are connected to the ETRAX CPU.  This is
312           different depending on the manufacturer, chip type and number of
313           chips.  So this value often needs to be different for each Axis
314           product.
315
316 config ETRAX_DEF_R_SDRAM_TIMING
317         hex "R_SDRAM_TIMING"
318         depends on ETRAX_ARCH_V10 && ETRAX_SDRAM
319         default "80004801"
320         help
321           Different SDRAM chips have different timing.
322
323 config ETRAX_DEF_R_PORT_PA_DIR
324         hex "R_PORT_PA_DIR"
325         depends on ETRAX_ARCH_V10
326         default "1c"
327         help
328           Configures the direction of general port A bits.  1 is out, 0 is in.
329           This is often totally different depending on the product used.
330           There are some guidelines though - if you know that only LED's are
331           connected to port PA, then they are usually connected to bits 2-4
332           and you can therefore use 1c.  On other boards which don't have the
333           LED's at the general ports, these bits are used for all kinds of
334           stuff.  If you don't know what to use, it is always safe to put all
335           as inputs, although floating inputs isn't good.
336
337 config ETRAX_DEF_R_PORT_PA_DATA
338         hex "R_PORT_PA_DATA"
339         depends on ETRAX_ARCH_V10
340         default "00"
341         help
342           Configures the initial data for the general port A bits.  Most
343           products should use 00 here.
344
345 config ETRAX_DEF_R_PORT_PB_CONFIG
346         hex "R_PORT_PB_CONFIG"
347         depends on ETRAX_ARCH_V10
348         default "00"
349         help
350           Configures the type of the general port B bits.  1 is chip select,
351           0 is port.  Most products should use 00 here.
352
353 config ETRAX_DEF_R_PORT_PB_DIR
354         hex "R_PORT_PB_DIR"
355         depends on ETRAX_ARCH_V10
356         default "00"
357         help
358           Configures the direction of general port B bits. 1 is out, 0 is in.
359           This is often totally different depending on the product used.  Bits
360           0 and 1 on port PB are usually used for I2C communication, but the
361           kernel I2C driver sets the appropriate directions itself so you
362           don't need to take that into consideration when setting this option.
363           If you don't know what to use, it is always safe to put all as
364           inputs.
365
366 config ETRAX_DEF_R_PORT_PB_DATA
367         hex "R_PORT_PB_DATA"
368         depends on ETRAX_ARCH_V10
369         default "ff"
370         help
371           Configures the initial data for the general port A bits.  Most
372           products should use FF here.
373
374 config ETRAX_SOFT_SHUTDOWN
375         bool "Software Shutdown Support"
376         depends on ETRAX_ARCH_V10
377         help
378           Enable this if ETRAX is used with a power-supply that can be turned
379           off and on with PS_ON signal. Gives the possibility to detect
380           powerbutton and then do a power off after unmounting disks.
381
382 config ETRAX_SHUTDOWN_BIT
383         int "Shutdown bit on port CSP0"
384         depends on ETRAX_SOFT_SHUTDOWN
385         default "12"
386         help
387           Configure what pin on CSPO-port that is used for controlling power
388           supply.
389
390 config ETRAX_POWERBUTTON_BIT
391         int "Power button bit on port G"
392         depends on ETRAX_SOFT_SHUTDOWN
393         default "25"
394         help
395           Configure where power button is connected.
396
397 endmenu
398
399 endif