Kconfig 24 KB

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