Linux-libre 4.14.82-gnu
[librecmc/linux-libre.git] / arch / cris / arch-v32 / drivers / Kconfig
1 # SPDX-License-Identifier: GPL-2.0
2 if ETRAX_ARCH_V32
3
4 config ETRAX_ETHERNET
5         bool "Ethernet support"
6         depends on ETRAX_ARCH_V32 && NETDEVICES
7         select MII
8         help
9           This option enables the ETRAX FS built-in 10/100Mbit Ethernet
10           controller.
11
12 config ETRAX_NO_PHY
13         bool "PHY not present"
14         depends on ETRAX_ETHERNET
15         help
16           This option disables all MDIO communication with an ethernet
17           transceiver connected to the MII interface. This option shall
18           typically be enabled if the MII interface is connected to a
19           switch. This option should normally be disabled. If enabled,
20           speed and duplex will be locked to 100 Mbit and full duplex.
21
22 config ETRAXFS_SERIAL
23         bool "Serial-port support"
24         depends on ETRAX_ARCH_V32
25         select SERIAL_CORE
26         select SERIAL_CORE_CONSOLE
27         help
28           Enables the ETRAX FS serial driver for ser0 (ttyS0)
29           You probably want this enabled.
30
31 config ETRAX_RS485
32         bool "RS-485 support"
33         depends on ETRAXFS_SERIAL
34         help
35           Enables support for RS-485 serial communication.
36
37 config ETRAX_RS485_DISABLE_RECEIVER
38         bool "Disable serial receiver"
39         depends on ETRAX_RS485
40         help
41           It is necessary to disable the serial receiver to avoid serial
42           loopback.  Not all products are able to do this in software only.
43
44 config ETRAX_SERIAL_PORT0
45         bool "Serial port 0 enabled"
46         depends on ETRAXFS_SERIAL
47         help
48           Enables the ETRAX FS serial driver for ser0 (ttyS0)
49           Normally you want this on. You can control what DMA channels to use
50           if you do not need DMA to something else.
51           ser0 can use dma4 or dma6 for output and dma5 or dma7 for input.
52
53 config ETRAX_SERIAL_PORT1
54         bool "Serial port 1 enabled"
55         depends on ETRAXFS_SERIAL
56         help
57           Enables the ETRAX FS serial driver for ser1 (ttyS1).
58
59 config ETRAX_SERIAL_PORT2
60         bool "Serial port 2 enabled"
61         depends on ETRAXFS_SERIAL
62         help
63           Enables the ETRAX FS serial driver for ser2 (ttyS2).
64
65 config ETRAX_SERIAL_PORT3
66         bool "Serial port 3 enabled"
67         depends on ETRAXFS_SERIAL
68         help
69           Enables the ETRAX FS serial driver for ser3 (ttyS3).
70
71 config ETRAX_SYNCHRONOUS_SERIAL
72         bool "Synchronous serial-port support"
73         depends on ETRAX_ARCH_V32
74         help
75           Enables the ETRAX FS synchronous serial driver.
76
77 config ETRAX_SYNCHRONOUS_SERIAL_PORT0
78          bool "Synchronous serial port 0 enabled"
79          depends on ETRAX_SYNCHRONOUS_SERIAL
80          help
81            Enabled synchronous serial port 0.
82
83 config ETRAX_SYNCHRONOUS_SERIAL0_DMA
84          bool "Enable DMA on synchronous serial port 0."
85          depends on ETRAX_SYNCHRONOUS_SERIAL_PORT0
86          help
87            A synchronous serial port can run in manual or DMA mode.
88            Selecting this option will make it run in DMA mode.
89
90 config ETRAX_SYNCHRONOUS_SERIAL_PORT1
91          bool "Synchronous serial port 1 enabled"
92          depends on ETRAX_SYNCHRONOUS_SERIAL && ETRAXFS
93          help
94            Enabled synchronous serial port 1.
95
96 config ETRAX_SYNCHRONOUS_SERIAL1_DMA
97          bool "Enable DMA on synchronous serial port 1."
98          depends on ETRAX_SYNCHRONOUS_SERIAL_PORT1
99          help
100            A synchronous serial port can run in manual or DMA mode.
101            Selecting this option will make it run in DMA mode.
102
103 config ETRAX_AXISFLASHMAP
104         bool "Axis flash-map support"
105         depends on ETRAX_ARCH_V32
106         select MTD
107         select MTD_CFI
108         select MTD_CFI_AMDSTD
109         select MTD_JEDECPROBE
110         select MTD_BLOCK
111         select MTD_COMPLEX_MAPPINGS
112         select MTD_MTDRAM
113         help
114           This option enables MTD mapping of flash devices.  Needed to use
115           flash memories.  If unsure, say Y.
116
117 config ETRAX_AXISFLASHMAP_MTD0WHOLE
118         bool "MTD0 is whole boot flash device"
119         depends on ETRAX_AXISFLASHMAP
120         help
121           When this option is not set, mtd0 refers to the first partition
122           on the boot flash device. When set, mtd0 refers to the whole
123           device, with mtd1 referring to the first partition etc.
124
125 config ETRAX_PTABLE_SECTOR
126         int "Byte-offset of partition table sector"
127         depends on ETRAX_AXISFLASHMAP
128         default "65536"
129         help
130           Byte-offset of the partition table in the first flash chip.
131           The default value is 64kB and should not be changed unless
132           you know exactly what you are doing. The only valid reason
133           for changing this is when the flash block size is bigger
134           than 64kB (e.g. when using two parallel 16 bit flashes).
135
136 config ETRAX_NANDFLASH
137         bool "NAND flash support"
138         depends on ETRAX_ARCH_V32
139         select MTD_NAND
140         help
141           This option enables MTD mapping of NAND flash devices.  Needed to use
142           NAND flash memories.  If unsure, say Y.
143
144 config ETRAX_NANDBOOT
145         bool "Boot from NAND flash"
146         depends on ETRAX_NANDFLASH
147         help
148           This options enables booting from NAND flash devices.
149           Say Y if your boot code, kernel and root file system is in
150           NAND flash. Say N if they are in NOR flash.
151
152 config ETRAX_CARDBUS
153         bool "Cardbus support"
154         depends on ETRAX_ARCH_V32
155         help
156          Enabled the ETRAX Cardbus driver.
157
158 config PCI
159        bool
160        depends on ETRAX_CARDBUS
161        default y
162        select HAVE_GENERIC_DMA_COHERENT
163
164 config ETRAX_IOP_FW_LOAD
165         tristate "IO-processor hotplug firmware loading support"
166         depends on ETRAX_ARCH_V32
167         select FW_LOADER
168         help
169           Enables IO-processor hotplug firmware loading support.
170
171 config ETRAX_STREAMCOPROC
172         tristate "Stream co-processor driver enabled"
173         depends on ETRAX_ARCH_V32
174         help
175           This option enables a driver for the stream co-processor
176           for cryptographic operations.
177
178 config ETRAX_MMC_IOP
179         tristate "MMC/SD host driver using IO-processor"
180         depends on ETRAX_ARCH_V32 && MMC
181         help
182           This option enables the SD/MMC host controller interface.
183           The host controller is implemented using the built in
184           IO-Processor. Only the SPU is used in this implementation.
185
186 config ETRAX_SPI_MMC
187 # Make this one of several "choices" (possible simultaneously but
188 # suggested uniquely) when an IOP driver emerges for "real" MMC/SD
189 # protocol support.
190         tristate
191         depends on !ETRAX_MMC_IOP
192         default MMC
193         select SPI
194         select MMC_SPI
195
196 # While the board info is MMC_SPI only, the drivers are written to be
197 # independent of MMC_SPI, so we'll keep SPI non-dependent on the
198 # MMC_SPI config choices (well, except for a single depends-on-line
199 # for the board-info file until a separate non-MMC SPI board file
200 # emerges).
201 # FIXME: When that happens, we'll need to be able to ask for and
202 # configure non-MMC SPI ports together with MMC_SPI ports (if multiple
203 # SPI ports are enabled).
204
205 config SPI_ETRAX_SSER
206         tristate
207         depends on SPI_MASTER && ETRAX_ARCH_V32
208         select SPI_BITBANG
209         help
210           This enables using an synchronous serial (sser) port as a
211           SPI master controller on Axis ETRAX FS and later.  The
212           driver can be configured to use any sser port.
213
214 config SPI_ETRAX_GPIO
215         tristate
216         depends on SPI_MASTER && ETRAX_ARCH_V32
217         select SPI_BITBANG
218         help
219           This enables using GPIO pins port as a SPI master controller
220           on Axis ETRAX FS and later.  The driver can be configured to
221           use any GPIO pins.
222
223 config ETRAX_SPI_SSER0
224         tristate "SPI using synchronous serial port 0 (sser0)"
225         depends on ETRAX_SPI_MMC
226         default m if MMC_SPI=m
227         default y if MMC_SPI=y
228         default y if MMC_SPI=n
229         select SPI_ETRAX_SSER
230         help
231           Say Y for an MMC/SD socket connected to synchronous serial port 0,
232           or for devices using the SPI protocol on that port.  Say m if you
233           want to build it as a module, which will be named spi_crisv32_sser.
234           (You need to select MMC separately.)
235
236 config ETRAX_SPI_SSER1
237         tristate "SPI using synchronous serial port 1 (sser1)"
238         depends on ETRAX_SPI_MMC
239         default m if MMC_SPI=m && ETRAX_SPI_SSER0=n
240         default y if MMC_SPI=y && ETRAX_SPI_SSER0=n
241         default y if MMC_SPI=n && ETRAX_SPI_SSER0=n
242         select SPI_ETRAX_SSER
243         help
244           Say Y for an MMC/SD socket connected to synchronous serial port 1,
245           or for devices using the SPI protocol on that port.  Say m if you
246           want to build it as a module, which will be named spi_crisv32_sser.
247           (You need to select MMC separately.)
248
249 config ETRAX_SPI_GPIO
250         tristate "Bitbanged SPI using gpio pins"
251         depends on ETRAX_SPI_MMC
252         select SPI_ETRAX_GPIO
253         default m if MMC_SPI=m && ETRAX_SPI_SSER0=n && ETRAX_SPI_SSER1=n
254         default y if MMC_SPI=y && ETRAX_SPI_SSER0=n && ETRAX_SPI_SSER1=n
255         default y if MMC_SPI=n && ETRAX_SPI_SSER0=n && ETRAX_SPI_SSER1=n
256         help
257           Say Y for an MMC/SD socket connected to general I/O pins (but not
258           a complete synchronous serial ports), or for devices using the SPI
259           protocol on general I/O pins.  Slow and slows down the system.
260           Say m to build it as a module, which will be called spi_crisv32_gpio.
261           (You need to select MMC separately.)
262
263 endif