Kconfig 24 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858
  1. if ETRAX_ARCH_V32
  2. config ETRAX_ETHERNET
  3. bool "Ethernet support"
  4. depends on ETRAX_ARCH_V32
  5. select NET_ETHERNET
  6. select MII
  7. help
  8. This option enables the ETRAX FS built-in 10/100Mbit Ethernet
  9. controller.
  10. config ETRAX_NO_PHY
  11. bool "PHY not present"
  12. depends on ETRAX_ETHERNET
  13. default N
  14. help
  15. This option disables all MDIO communication with an ethernet
  16. transceiver connected to the MII interface. This option shall
  17. typically be enabled if the MII interface is connected to a
  18. switch. This option should normally be disabled. If enabled,
  19. speed and duplex will be locked to 100 Mbit and full duplex.
  20. config ETRAX_ETHERNET_IFACE0
  21. depends on ETRAX_ETHERNET
  22. bool "Enable network interface 0"
  23. config ETRAX_ETHERNET_IFACE1
  24. depends on (ETRAX_ETHERNET && ETRAXFS)
  25. bool "Enable network interface 1 (uses DMA6 and DMA7)"
  26. config ETRAX_ETHERNET_GBIT
  27. depends on (ETRAX_ETHERNET && CRIS_MACH_ARTPEC3)
  28. bool "Enable gigabit Ethernet support"
  29. choice
  30. prompt "Eth0 led group"
  31. depends on ETRAX_ETHERNET_IFACE0
  32. default ETRAX_ETH0_USE_LEDGRP0
  33. config ETRAX_ETH0_USE_LEDGRP0
  34. bool "Use LED grp 0"
  35. depends on ETRAX_NBR_LED_GRP_ONE || ETRAX_NBR_LED_GRP_TWO
  36. help
  37. Use LED grp 0 for eth0
  38. config ETRAX_ETH0_USE_LEDGRP1
  39. bool "Use LED grp 1"
  40. depends on ETRAX_NBR_LED_GRP_TWO
  41. help
  42. Use LED grp 1 for eth0
  43. config ETRAX_ETH0_USE_LEDGRPNULL
  44. bool "Use no LEDs for eth0"
  45. help
  46. Use no LEDs for eth0
  47. endchoice
  48. choice
  49. prompt "Eth1 led group"
  50. depends on ETRAX_ETHERNET_IFACE1
  51. default ETRAX_ETH1_USE_LEDGRP1
  52. config ETRAX_ETH1_USE_LEDGRP0
  53. bool "Use LED grp 0"
  54. depends on ETRAX_NBR_LED_GRP_ONE || ETRAX_NBR_LED_GRP_TWO
  55. help
  56. Use LED grp 0 for eth1
  57. config ETRAX_ETH1_USE_LEDGRP1
  58. bool "Use LED grp 1"
  59. depends on ETRAX_NBR_LED_GRP_TWO
  60. help
  61. Use LED grp 1 for eth1
  62. config ETRAX_ETH1_USE_LEDGRPNULL
  63. bool "Use no LEDs for eth1"
  64. help
  65. Use no LEDs for eth1
  66. endchoice
  67. config ETRAXFS_SERIAL
  68. bool "Serial-port support"
  69. depends on ETRAX_ARCH_V32
  70. select SERIAL_CORE
  71. select SERIAL_CORE_CONSOLE
  72. help
  73. Enables the ETRAX FS serial driver for ser0 (ttyS0)
  74. You probably want this enabled.
  75. config ETRAX_RS485
  76. bool "RS-485 support"
  77. depends on ETRAXFS_SERIAL
  78. help
  79. Enables support for RS-485 serial communication.
  80. config ETRAX_RS485_DISABLE_RECEIVER
  81. bool "Disable serial receiver"
  82. depends on ETRAX_RS485
  83. help
  84. It is necessary to disable the serial receiver to avoid serial
  85. loopback. Not all products are able to do this in software only.
  86. config ETRAX_SERIAL_PORT0
  87. bool "Serial port 0 enabled"
  88. depends on ETRAXFS_SERIAL
  89. help
  90. Enables the ETRAX FS serial driver for ser0 (ttyS0)
  91. Normally you want this on. You can control what DMA channels to use
  92. if you do not need DMA to something else.
  93. ser0 can use dma4 or dma6 for output and dma5 or dma7 for input.
  94. choice
  95. prompt "Ser0 default port type "
  96. depends on ETRAX_SERIAL_PORT0
  97. default ETRAX_SERIAL_PORT0_TYPE_232
  98. help
  99. Type of serial port.
  100. config ETRAX_SERIAL_PORT0_TYPE_232
  101. bool "Ser0 is a RS-232 port"
  102. help
  103. Configure serial port 0 to be a RS-232 port.
  104. config ETRAX_SERIAL_PORT0_TYPE_485HD
  105. bool "Ser0 is a half duplex RS-485 port"
  106. depends on ETRAX_RS485
  107. help
  108. Configure serial port 0 to be a half duplex (two wires) RS-485 port.
  109. config ETRAX_SERIAL_PORT0_TYPE_485FD
  110. bool "Ser0 is a full duplex RS-485 port"
  111. depends on ETRAX_RS485
  112. help
  113. Configure serial port 0 to be a full duplex (four wires) RS-485 port.
  114. endchoice
  115. config ETRAX_SER0_DTR_BIT
  116. string "Ser 0 DTR bit (empty = not used)"
  117. depends on ETRAX_SERIAL_PORT0
  118. config ETRAX_SER0_RI_BIT
  119. string "Ser 0 RI bit (empty = not used)"
  120. depends on ETRAX_SERIAL_PORT0
  121. config ETRAX_SER0_DSR_BIT
  122. string "Ser 0 DSR bit (empty = not used)"
  123. depends on ETRAX_SERIAL_PORT0
  124. config ETRAX_SER0_CD_BIT
  125. string "Ser 0 CD bit (empty = not used)"
  126. depends on ETRAX_SERIAL_PORT0
  127. config ETRAX_SERIAL_PORT1
  128. bool "Serial port 1 enabled"
  129. depends on ETRAXFS_SERIAL
  130. help
  131. Enables the ETRAX FS serial driver for ser1 (ttyS1).
  132. choice
  133. prompt "Ser1 default port type"
  134. depends on ETRAX_SERIAL_PORT1
  135. default ETRAX_SERIAL_PORT1_TYPE_232
  136. help
  137. Type of serial port.
  138. config ETRAX_SERIAL_PORT1_TYPE_232
  139. bool "Ser1 is a RS-232 port"
  140. help
  141. Configure serial port 1 to be a RS-232 port.
  142. config ETRAX_SERIAL_PORT1_TYPE_485HD
  143. bool "Ser1 is a half duplex RS-485 port"
  144. depends on ETRAX_RS485
  145. help
  146. Configure serial port 1 to be a half duplex (two wires) RS-485 port.
  147. config ETRAX_SERIAL_PORT1_TYPE_485FD
  148. bool "Ser1 is a full duplex RS-485 port"
  149. depends on ETRAX_RS485
  150. help
  151. Configure serial port 1 to be a full duplex (four wires) RS-485 port.
  152. endchoice
  153. config ETRAX_SER1_DTR_BIT
  154. string "Ser 1 DTR bit (empty = not used)"
  155. depends on ETRAX_SERIAL_PORT1
  156. config ETRAX_SER1_RI_BIT
  157. string "Ser 1 RI bit (empty = not used)"
  158. depends on ETRAX_SERIAL_PORT1
  159. config ETRAX_SER1_DSR_BIT
  160. string "Ser 1 DSR bit (empty = not used)"
  161. depends on ETRAX_SERIAL_PORT1
  162. config ETRAX_SER1_CD_BIT
  163. string "Ser 1 CD bit (empty = not used)"
  164. depends on ETRAX_SERIAL_PORT1
  165. config ETRAX_SERIAL_PORT2
  166. bool "Serial port 2 enabled"
  167. depends on ETRAXFS_SERIAL
  168. help
  169. Enables the ETRAX FS serial driver for ser2 (ttyS2).
  170. choice
  171. prompt "Ser2 default port type"
  172. depends on ETRAX_SERIAL_PORT2
  173. default ETRAX_SERIAL_PORT2_TYPE_232
  174. help
  175. What DMA channel to use for ser2
  176. config ETRAX_SERIAL_PORT2_TYPE_232
  177. bool "Ser2 is a RS-232 port"
  178. help
  179. Configure serial port 2 to be a RS-232 port.
  180. config ETRAX_SERIAL_PORT2_TYPE_485HD
  181. bool "Ser2 is a half duplex RS-485 port"
  182. depends on ETRAX_RS485
  183. help
  184. Configure serial port 2 to be a half duplex (two wires) RS-485 port.
  185. config ETRAX_SERIAL_PORT2_TYPE_485FD
  186. bool "Ser2 is a full duplex RS-485 port"
  187. depends on ETRAX_RS485
  188. help
  189. Configure serial port 2 to be a full duplex (four wires) RS-485 port.
  190. endchoice
  191. config ETRAX_SER2_DTR_BIT
  192. string "Ser 2 DTR bit (empty = not used)"
  193. depends on ETRAX_SERIAL_PORT2
  194. config ETRAX_SER2_RI_BIT
  195. string "Ser 2 RI bit (empty = not used)"
  196. depends on ETRAX_SERIAL_PORT2
  197. config ETRAX_SER2_DSR_BIT
  198. string "Ser 2 DSR bit (empty = not used)"
  199. depends on ETRAX_SERIAL_PORT2
  200. config ETRAX_SER2_CD_BIT
  201. string "Ser 2 CD bit (empty = not used)"
  202. depends on ETRAX_SERIAL_PORT2
  203. config ETRAX_SERIAL_PORT3
  204. bool "Serial port 3 enabled"
  205. depends on ETRAXFS_SERIAL
  206. help
  207. Enables the ETRAX FS serial driver for ser3 (ttyS3).
  208. choice
  209. prompt "Ser3 default port type"
  210. depends on ETRAX_SERIAL_PORT3
  211. default ETRAX_SERIAL_PORT3_TYPE_232
  212. help
  213. What DMA channel to use for ser3.
  214. config ETRAX_SERIAL_PORT3_TYPE_232
  215. bool "Ser3 is a RS-232 port"
  216. help
  217. Configure serial port 3 to be a RS-232 port.
  218. config ETRAX_SERIAL_PORT3_TYPE_485HD
  219. bool "Ser3 is a half duplex RS-485 port"
  220. depends on ETRAX_RS485
  221. help
  222. Configure serial port 3 to be a half duplex (two wires) RS-485 port.
  223. config ETRAX_SERIAL_PORT3_TYPE_485FD
  224. bool "Ser3 is a full duplex RS-485 port"
  225. depends on ETRAX_RS485
  226. help
  227. Configure serial port 3 to be a full duplex (four wires) RS-485 port.
  228. endchoice
  229. config ETRAX_SER3_DTR_BIT
  230. string "Ser 3 DTR bit (empty = not used)"
  231. depends on ETRAX_SERIAL_PORT3
  232. config ETRAX_SER3_RI_BIT
  233. string "Ser 3 RI bit (empty = not used)"
  234. depends on ETRAX_SERIAL_PORT3
  235. config ETRAX_SER3_DSR_BIT
  236. string "Ser 3 DSR bit (empty = not used)"
  237. depends on ETRAX_SERIAL_PORT3
  238. config ETRAX_SER3_CD_BIT
  239. string "Ser 3 CD bit (empty = not used)"
  240. depends on ETRAX_SERIAL_PORT3
  241. config ETRAX_SERIAL_PORT4
  242. bool "Serial port 4 enabled"
  243. depends on ETRAXFS_SERIAL && CRIS_MACH_ARTPEC3
  244. help
  245. Enables the ETRAX FS serial driver for ser4 (ttyS4).
  246. choice
  247. prompt "Ser4 default port type"
  248. depends on ETRAX_SERIAL_PORT4
  249. default ETRAX_SERIAL_PORT4_TYPE_232
  250. help
  251. What DMA channel to use for ser4.
  252. config ETRAX_SERIAL_PORT4_TYPE_232
  253. bool "Ser4 is a RS-232 port"
  254. help
  255. Configure serial port 4 to be a RS-232 port.
  256. config ETRAX_SERIAL_PORT4_TYPE_485HD
  257. bool "Ser4 is a half duplex RS-485 port"
  258. depends on ETRAX_RS485
  259. help
  260. Configure serial port 4 to be a half duplex (two wires) RS-485 port.
  261. config ETRAX_SERIAL_PORT4_TYPE_485FD
  262. bool "Ser4 is a full duplex RS-485 port"
  263. depends on ETRAX_RS485
  264. help
  265. Configure serial port 4 to be a full duplex (four wires) RS-485 port.
  266. endchoice
  267. choice
  268. prompt "Ser4 DMA in channel "
  269. depends on ETRAX_SERIAL_PORT4
  270. default ETRAX_SERIAL_PORT4_NO_DMA_IN
  271. help
  272. What DMA channel to use for ser4.
  273. config ETRAX_SERIAL_PORT4_NO_DMA_IN
  274. bool "Ser4 uses no DMA for input"
  275. help
  276. Do not use DMA for ser4 input.
  277. config ETRAX_SERIAL_PORT4_DMA9_IN
  278. bool "Ser4 uses DMA9 for input"
  279. depends on ETRAX_SERIAL_PORT4
  280. help
  281. Enables the DMA9 input channel for ser4 (ttyS4).
  282. If you do not enable DMA, an interrupt for each character will be
  283. used when receiveing data.
  284. Normally you want to use DMA, unless you use the DMA channel for
  285. something else.
  286. endchoice
  287. config ETRAX_SER4_DTR_BIT
  288. string "Ser 4 DTR bit (empty = not used)"
  289. depends on ETRAX_SERIAL_PORT4
  290. config ETRAX_SER4_RI_BIT
  291. string "Ser 4 RI bit (empty = not used)"
  292. depends on ETRAX_SERIAL_PORT4
  293. config ETRAX_SER4_DSR_BIT
  294. string "Ser 4 DSR bit (empty = not used)"
  295. depends on ETRAX_SERIAL_PORT4
  296. config ETRAX_SER3_CD_BIT
  297. string "Ser 4 CD bit (empty = not used)"
  298. depends on ETRAX_SERIAL_PORT4
  299. config ETRAX_RS485
  300. bool "RS-485 support"
  301. depends on ETRAXFS_SERIAL
  302. help
  303. Enables support for RS-485 serial communication. For a primer on
  304. RS-485, see <http://www.hw.cz/english/docs/rs485/rs485.html>.
  305. config ETRAX_RS485_DISABLE_RECEIVER
  306. bool "Disable serial receiver"
  307. depends on ETRAX_RS485
  308. help
  309. It is necessary to disable the serial receiver to avoid serial
  310. loopback. Not all products are able to do this in software only.
  311. config ETRAX_SYNCHRONOUS_SERIAL
  312. bool "Synchronous serial-port support"
  313. depends on ETRAX_ARCH_V32
  314. help
  315. Enables the ETRAX FS synchronous serial driver.
  316. config ETRAX_SYNCHRONOUS_SERIAL_PORT0
  317. bool "Synchronous serial port 0 enabled"
  318. depends on ETRAX_SYNCHRONOUS_SERIAL
  319. help
  320. Enabled synchronous serial port 0.
  321. config ETRAX_SYNCHRONOUS_SERIAL0_DMA
  322. bool "Enable DMA on synchronous serial port 0."
  323. depends on ETRAX_SYNCHRONOUS_SERIAL_PORT0
  324. help
  325. A synchronous serial port can run in manual or DMA mode.
  326. Selecting this option will make it run in DMA mode.
  327. config ETRAX_SYNCHRONOUS_SERIAL_PORT1
  328. bool "Synchronous serial port 1 enabled"
  329. depends on ETRAX_SYNCHRONOUS_SERIAL && ETRAXFS
  330. help
  331. Enabled synchronous serial port 1.
  332. config ETRAX_SYNCHRONOUS_SERIAL1_DMA
  333. bool "Enable DMA on synchronous serial port 1."
  334. depends on ETRAX_SYNCHRONOUS_SERIAL_PORT1
  335. help
  336. A synchronous serial port can run in manual or DMA mode.
  337. Selecting this option will make it run in DMA mode.
  338. config ETRAX_AXISFLASHMAP
  339. bool "Axis flash-map support"
  340. depends on ETRAX_ARCH_V32
  341. select MTD
  342. select MTD_CFI
  343. select MTD_CFI_AMDSTD
  344. select MTD_JEDECPROBE
  345. select MTD_CHAR
  346. select MTD_BLOCK
  347. select MTD_PARTITIONS
  348. select MTD_CONCAT
  349. select MTD_COMPLEX_MAPPINGS
  350. help
  351. This option enables MTD mapping of flash devices. Needed to use
  352. flash memories. If unsure, say Y.
  353. config ETRAX_AXISFLASHMAP_MTD0WHOLE
  354. bool "MTD0 is whole boot flash device"
  355. depends on ETRAX_AXISFLASHMAP
  356. default N
  357. help
  358. When this option is not set, mtd0 refers to the first partition
  359. on the boot flash device. When set, mtd0 refers to the whole
  360. device, with mtd1 referring to the first partition etc.
  361. config ETRAX_PTABLE_SECTOR
  362. int "Byte-offset of partition table sector"
  363. depends on ETRAX_AXISFLASHMAP
  364. default "65536"
  365. help
  366. Byte-offset of the partition table in the first flash chip.
  367. The default value is 64kB and should not be changed unless
  368. you know exactly what you are doing. The only valid reason
  369. for changing this is when the flash block size is bigger
  370. than 64kB (e.g. when using two parallel 16 bit flashes).
  371. config ETRAX_NANDFLASH
  372. bool "NAND flash support"
  373. depends on ETRAX_ARCH_V32
  374. select MTD_NAND
  375. select MTD_NAND_IDS
  376. help
  377. This option enables MTD mapping of NAND flash devices. Needed to use
  378. NAND flash memories. If unsure, say Y.
  379. config ETRAX_NANDBOOT
  380. bool "Boot from NAND flash"
  381. depends on ETRAX_NANDFLASH
  382. help
  383. This options enables booting from NAND flash devices.
  384. Say Y if your boot code, kernel and root file system is in
  385. NAND flash. Say N if they are in NOR flash.
  386. config ETRAX_I2C
  387. bool "I2C driver"
  388. depends on ETRAX_ARCH_V32
  389. help
  390. This option enables the I2C driver used by e.g. the RTC driver.
  391. config ETRAX_V32_I2C_DATA_PORT
  392. string "I2C data pin"
  393. depends on ETRAX_I2C
  394. help
  395. The pin to use for I2C data.
  396. config ETRAX_V32_I2C_CLK_PORT
  397. string "I2C clock pin"
  398. depends on ETRAX_I2C
  399. help
  400. The pin to use for I2C clock.
  401. config ETRAX_GPIO
  402. bool "GPIO support"
  403. depends on ETRAX_ARCH_V32
  404. ---help---
  405. Enables the ETRAX general port device (major 120, minors 0-4).
  406. You can use this driver to access the general port bits. It supports
  407. these ioctl's:
  408. #include <linux/etraxgpio.h>
  409. fd = open("/dev/gpioa", O_RDWR); // or /dev/gpiob
  410. ioctl(fd, _IO(ETRAXGPIO_IOCTYPE, IO_SETBITS), bits_to_set);
  411. ioctl(fd, _IO(ETRAXGPIO_IOCTYPE, IO_CLRBITS), bits_to_clear);
  412. err = ioctl(fd, _IO(ETRAXGPIO_IOCTYPE, IO_READ_INBITS), &val);
  413. Remember that you need to setup the port directions appropriately in
  414. the General configuration.
  415. config ETRAX_VIRTUAL_GPIO
  416. bool "Virtual GPIO support"
  417. depends on ETRAX_GPIO
  418. help
  419. Enables the virtual Etrax general port device (major 120, minor 6).
  420. It uses an I/O expander for the I2C-bus.
  421. config ETRAX_VIRTUAL_GPIO_INTERRUPT_PA_PIN
  422. int "Virtual GPIO interrupt pin on PA pin"
  423. range 0 7
  424. depends on ETRAX_VIRTUAL_GPIO
  425. help
  426. The pin to use on PA for virtual gpio interrupt.
  427. config ETRAX_PA_CHANGEABLE_DIR
  428. hex "PA user changeable dir mask"
  429. depends on ETRAX_GPIO
  430. default "0x00" if ETRAXFS
  431. default "0x00000000" if !ETRAXFS
  432. help
  433. This is a bitmask (8 bits) with information of what bits in PA that a
  434. user can change direction on using ioctl's.
  435. Bit set = changeable.
  436. You probably want 0 here, but it depends on your hardware.
  437. config ETRAX_PA_CHANGEABLE_BITS
  438. hex "PA user changeable bits mask"
  439. depends on ETRAX_GPIO
  440. default "0x00" if ETRAXFS
  441. default "0x00000000" if !ETRAXFS
  442. help
  443. This is a bitmask (8 bits) with information of what bits in PA
  444. that a user can change the value on using ioctl's.
  445. Bit set = changeable.
  446. config ETRAX_PB_CHANGEABLE_DIR
  447. hex "PB user changeable dir mask"
  448. depends on ETRAX_GPIO
  449. default "0x00000" if ETRAXFS
  450. default "0x00000000" if !ETRAXFS
  451. help
  452. This is a bitmask (18 bits) with information of what bits in PB
  453. that a user can change direction on using ioctl's.
  454. Bit set = changeable.
  455. You probably want 0 here, but it depends on your hardware.
  456. config ETRAX_PB_CHANGEABLE_BITS
  457. hex "PB user changeable bits mask"
  458. depends on ETRAX_GPIO
  459. default "0x00000" if ETRAXFS
  460. default "0x00000000" if !ETRAXFS
  461. help
  462. This is a bitmask (18 bits) with information of what bits in PB
  463. that a user can change the value on using ioctl's.
  464. Bit set = changeable.
  465. config ETRAX_PC_CHANGEABLE_DIR
  466. hex "PC user changeable dir mask"
  467. depends on ETRAX_GPIO
  468. default "0x00000" if ETRAXFS
  469. default "0x00000000" if !ETRAXFS
  470. help
  471. This is a bitmask (18 bits) with information of what bits in PC
  472. that a user can change direction on using ioctl's.
  473. Bit set = changeable.
  474. You probably want 0 here, but it depends on your hardware.
  475. config ETRAX_PC_CHANGEABLE_BITS
  476. hex "PC user changeable bits mask"
  477. depends on ETRAX_GPIO
  478. default "0x00000" if ETRAXFS
  479. default "0x00000000" if ETRAXFS
  480. help
  481. This is a bitmask (18 bits) with information of what bits in PC
  482. that a user can change the value on using ioctl's.
  483. Bit set = changeable.
  484. config ETRAX_PD_CHANGEABLE_DIR
  485. hex "PD user changeable dir mask"
  486. depends on ETRAX_GPIO && ETRAXFS
  487. default "0x00000"
  488. help
  489. This is a bitmask (18 bits) with information of what bits in PD
  490. that a user can change direction on using ioctl's.
  491. Bit set = changeable.
  492. You probably want 0x00000 here, but it depends on your hardware.
  493. config ETRAX_PD_CHANGEABLE_BITS
  494. hex "PD user changeable bits mask"
  495. depends on ETRAX_GPIO && ETRAXFS
  496. default "0x00000"
  497. help
  498. This is a bitmask (18 bits) with information of what bits in PD
  499. that a user can change the value on using ioctl's.
  500. Bit set = changeable.
  501. config ETRAX_PE_CHANGEABLE_DIR
  502. hex "PE user changeable dir mask"
  503. depends on ETRAX_GPIO && ETRAXFS
  504. default "0x00000"
  505. help
  506. This is a bitmask (18 bits) with information of what bits in PE
  507. that a user can change direction on using ioctl's.
  508. Bit set = changeable.
  509. You probably want 0x00000 here, but it depends on your hardware.
  510. config ETRAX_PE_CHANGEABLE_BITS
  511. hex "PE user changeable bits mask"
  512. depends on ETRAX_GPIO && ETRAXFS
  513. default "0x00000"
  514. help
  515. This is a bitmask (18 bits) with information of what bits in PE
  516. that a user can change the value on using ioctl's.
  517. Bit set = changeable.
  518. config ETRAX_PV_CHANGEABLE_DIR
  519. hex "PV user changeable dir mask"
  520. depends on ETRAX_VIRTUAL_GPIO
  521. default "0x0000"
  522. help
  523. This is a bitmask (16 bits) with information of what bits in PV
  524. that a user can change direction on using ioctl's.
  525. Bit set = changeable.
  526. You probably want 0x0000 here, but it depends on your hardware.
  527. config ETRAX_PV_CHANGEABLE_BITS
  528. hex "PV user changeable bits mask"
  529. depends on ETRAX_VIRTUAL_GPIO
  530. default "0x0000"
  531. help
  532. This is a bitmask (16 bits) with information of what bits in PV
  533. that a user can change the value on using ioctl's.
  534. Bit set = changeable.
  535. config ETRAX_CARDBUS
  536. bool "Cardbus support"
  537. depends on ETRAX_ARCH_V32
  538. select HOTPLUG
  539. help
  540. Enabled the ETRAX Cardbus driver.
  541. config PCI
  542. bool
  543. depends on ETRAX_CARDBUS
  544. default y
  545. select HAVE_GENERIC_DMA_COHERENT
  546. config ETRAX_IOP_FW_LOAD
  547. tristate "IO-processor hotplug firmware loading support"
  548. depends on ETRAX_ARCH_V32
  549. select FW_LOADER
  550. help
  551. Enables IO-processor hotplug firmware loading support.
  552. config ETRAX_STREAMCOPROC
  553. tristate "Stream co-processor driver enabled"
  554. depends on ETRAX_ARCH_V32
  555. help
  556. This option enables a driver for the stream co-processor
  557. for cryptographic operations.
  558. source drivers/mmc/Kconfig
  559. config ETRAX_MMC_IOP
  560. tristate "MMC/SD host driver using IO-processor"
  561. depends on ETRAX_ARCH_V32 && MMC
  562. help
  563. This option enables the SD/MMC host controller interface.
  564. The host controller is implemented using the built in
  565. IO-Processor. Only the SPU is used in this implementation.
  566. config ETRAX_SPI_MMC
  567. # Make this one of several "choices" (possible simultaneously but
  568. # suggested uniquely) when an IOP driver emerges for "real" MMC/SD
  569. # protocol support.
  570. tristate
  571. depends on !ETRAX_MMC_IOP
  572. default MMC
  573. select SPI
  574. select MMC_SPI
  575. select ETRAX_SPI_MMC_BOARD
  576. # For the parts that can't be a module (due to restrictions in
  577. # framework elsewhere).
  578. config ETRAX_SPI_MMC_BOARD
  579. boolean
  580. default n
  581. # While the board info is MMC_SPI only, the drivers are written to be
  582. # independent of MMC_SPI, so we'll keep SPI non-dependent on the
  583. # MMC_SPI config choices (well, except for a single depends-on-line
  584. # for the board-info file until a separate non-MMC SPI board file
  585. # emerges).
  586. # FIXME: When that happens, we'll need to be able to ask for and
  587. # configure non-MMC SPI ports together with MMC_SPI ports (if multiple
  588. # SPI ports are enabled).
  589. config SPI_ETRAX_SSER
  590. tristate
  591. depends on SPI_MASTER && ETRAX_ARCH_V32 && EXPERIMENTAL
  592. select SPI_BITBANG
  593. help
  594. This enables using an synchronous serial (sser) port as a
  595. SPI master controller on Axis ETRAX FS and later. The
  596. driver can be configured to use any sser port.
  597. config SPI_ETRAX_GPIO
  598. tristate
  599. depends on SPI_MASTER && ETRAX_ARCH_V32 && EXPERIMENTAL
  600. select SPI_BITBANG
  601. help
  602. This enables using GPIO pins port as a SPI master controller
  603. on Axis ETRAX FS and later. The driver can be configured to
  604. use any GPIO pins.
  605. config ETRAX_SPI_SSER0
  606. tristate "SPI using synchronous serial port 0 (sser0)"
  607. depends on ETRAX_SPI_MMC
  608. default m if MMC_SPI=m
  609. default y if MMC_SPI=y
  610. default y if MMC_SPI=n
  611. select SPI_ETRAX_SSER
  612. help
  613. Say Y for an MMC/SD socket connected to synchronous serial port 0,
  614. or for devices using the SPI protocol on that port. Say m if you
  615. want to build it as a module, which will be named spi_crisv32_sser.
  616. (You need to select MMC separately.)
  617. config ETRAX_SPI_SSER0_DMA
  618. bool "DMA for SPI on sser0 enabled"
  619. depends on ETRAX_SPI_SSER0
  620. depends on !ETRAX_SERIAL_PORT1_DMA4_OUT && !ETRAX_SERIAL_PORT1_DMA5_IN
  621. default y
  622. help
  623. Say Y if using DMA (dma4/dma5) for SPI on synchronous serial port 0.
  624. config ETRAX_SPI_MMC_CD_SSER0_PIN
  625. string "MMC/SD card detect pin for SPI on sser0"
  626. depends on ETRAX_SPI_SSER0 && MMC_SPI
  627. default "pd11"
  628. help
  629. The pin to use for SD/MMC card detect. This pin should be pulled up
  630. and grounded when a card is present. If defined as " " (space), no
  631. pin is selected. A card must then always be inserted for proper
  632. action.
  633. config ETRAX_SPI_MMC_WP_SSER0_PIN
  634. string "MMC/SD card write-protect pin for SPI on sser0"
  635. depends on ETRAX_SPI_SSER0 && MMC_SPI
  636. default "pd10"
  637. help
  638. The pin to use for the SD/MMC write-protect signal for a memory
  639. card. If defined as " " (space), the card is considered writable.
  640. config ETRAX_SPI_SSER1
  641. tristate "SPI using synchronous serial port 1 (sser1)"
  642. depends on ETRAX_SPI_MMC
  643. default m if MMC_SPI=m && ETRAX_SPI_SSER0=n
  644. default y if MMC_SPI=y && ETRAX_SPI_SSER0=n
  645. default y if MMC_SPI=n && ETRAX_SPI_SSER0=n
  646. select SPI_ETRAX_SSER
  647. help
  648. Say Y for an MMC/SD socket connected to synchronous serial port 1,
  649. or for devices using the SPI protocol on that port. Say m if you
  650. want to build it as a module, which will be named spi_crisv32_sser.
  651. (You need to select MMC separately.)
  652. config ETRAX_SPI_SSER1_DMA
  653. bool "DMA for SPI on sser1 enabled"
  654. depends on ETRAX_SPI_SSER1 && !ETRAX_ETHERNET_IFACE1
  655. depends on !ETRAX_SERIAL_PORT0_DMA6_OUT && !ETRAX_SERIAL_PORT0_DMA7_IN
  656. default y
  657. help
  658. Say Y if using DMA (dma6/dma7) for SPI on synchronous serial port 1.
  659. config ETRAX_SPI_MMC_CD_SSER1_PIN
  660. string "MMC/SD card detect pin for SPI on sser1"
  661. depends on ETRAX_SPI_SSER1 && MMC_SPI
  662. default "pd12"
  663. help
  664. The pin to use for SD/MMC card detect. This pin should be pulled up
  665. and grounded when a card is present. If defined as " " (space), no
  666. pin is selected. A card must then always be inserted for proper
  667. action.
  668. config ETRAX_SPI_MMC_WP_SSER1_PIN
  669. string "MMC/SD card write-protect pin for SPI on sser1"
  670. depends on ETRAX_SPI_SSER1 && MMC_SPI
  671. default "pd9"
  672. help
  673. The pin to use for the SD/MMC write-protect signal for a memory
  674. card. If defined as " " (space), the card is considered writable.
  675. config ETRAX_SPI_GPIO
  676. tristate "Bitbanged SPI using gpio pins"
  677. depends on ETRAX_SPI_MMC
  678. select SPI_ETRAX_GPIO
  679. default m if MMC_SPI=m && ETRAX_SPI_SSER0=n && ETRAX_SPI_SSER1=n
  680. default y if MMC_SPI=y && ETRAX_SPI_SSER0=n && ETRAX_SPI_SSER1=n
  681. default y if MMC_SPI=n && ETRAX_SPI_SSER0=n && ETRAX_SPI_SSER1=n
  682. help
  683. Say Y for an MMC/SD socket connected to general I/O pins (but not
  684. a complete synchronous serial ports), or for devices using the SPI
  685. protocol on general I/O pins. Slow and slows down the system.
  686. Say m to build it as a module, which will be called spi_crisv32_gpio.
  687. (You need to select MMC separately.)
  688. # The default match that of sser0, only because that's how it was tested.
  689. config ETRAX_SPI_CS_PIN
  690. string "SPI chip select pin"
  691. depends on ETRAX_SPI_GPIO
  692. default "pc3"
  693. help
  694. The pin to use for SPI chip select.
  695. config ETRAX_SPI_CLK_PIN
  696. string "SPI clock pin"
  697. depends on ETRAX_SPI_GPIO
  698. default "pc1"
  699. help
  700. The pin to use for the SPI clock.
  701. config ETRAX_SPI_DATAIN_PIN
  702. string "SPI MISO (data in) pin"
  703. depends on ETRAX_SPI_GPIO
  704. default "pc16"
  705. help
  706. The pin to use for SPI data in from the device.
  707. config ETRAX_SPI_DATAOUT_PIN
  708. string "SPI MOSI (data out) pin"
  709. depends on ETRAX_SPI_GPIO
  710. default "pc0"
  711. help
  712. The pin to use for SPI data out to the device.
  713. config ETRAX_SPI_MMC_CD_GPIO_PIN
  714. string "MMC/SD card detect pin for SPI using gpio (space for none)"
  715. depends on ETRAX_SPI_GPIO && MMC_SPI
  716. default "pd11"
  717. help
  718. The pin to use for SD/MMC card detect. This pin should be pulled up
  719. and grounded when a card is present. If defined as " " (space), no
  720. pin is selected. A card must then always be inserted for proper
  721. action.
  722. config ETRAX_SPI_MMC_WP_GPIO_PIN
  723. string "MMC/SD card write-protect pin for SPI using gpio (space for none)"
  724. depends on ETRAX_SPI_GPIO && MMC_SPI
  725. default "pd10"
  726. help
  727. The pin to use for the SD/MMC write-protect signal for a memory
  728. card. If defined as " " (space), the card is considered writable.
  729. # Avoid choices causing non-working configs by conditionalizing the inclusion.
  730. if ETRAX_SPI_MMC
  731. source drivers/spi/Kconfig
  732. endif
  733. endif