diff options
Diffstat (limited to 'drivers/spi/Kconfig')
-rw-r--r-- | drivers/spi/Kconfig | 109 |
1 files changed, 109 insertions, 0 deletions
diff --git a/drivers/spi/Kconfig b/drivers/spi/Kconfig new file mode 100644 index 000000000000..b77dbd63e596 --- /dev/null +++ b/drivers/spi/Kconfig | |||
@@ -0,0 +1,109 @@ | |||
1 | # | ||
2 | # SPI driver configuration | ||
3 | # | ||
4 | # NOTE: the reason this doesn't show SPI slave support is mostly that | ||
5 | # nobody's needed a slave side API yet. The master-role API is not | ||
6 | # fully appropriate there, so it'd need some thought to do well. | ||
7 | # | ||
8 | menu "SPI support" | ||
9 | |||
10 | config SPI | ||
11 | bool "SPI support" | ||
12 | help | ||
13 | The "Serial Peripheral Interface" is a low level synchronous | ||
14 | protocol. Chips that support SPI can have data transfer rates | ||
15 | up to several tens of Mbit/sec. Chips are addressed with a | ||
16 | controller and a chipselect. Most SPI slaves don't support | ||
17 | dynamic device discovery; some are even write-only or read-only. | ||
18 | |||
19 | SPI is widely used by microcontollers to talk with sensors, | ||
20 | eeprom and flash memory, codecs and various other controller | ||
21 | chips, analog to digital (and d-to-a) converters, and more. | ||
22 | MMC and SD cards can be accessed using SPI protocol; and for | ||
23 | DataFlash cards used in MMC sockets, SPI must always be used. | ||
24 | |||
25 | SPI is one of a family of similar protocols using a four wire | ||
26 | interface (select, clock, data in, data out) including Microwire | ||
27 | (half duplex), SSP, SSI, and PSP. This driver framework should | ||
28 | work with most such devices and controllers. | ||
29 | |||
30 | config SPI_DEBUG | ||
31 | boolean "Debug support for SPI drivers" | ||
32 | depends on SPI && DEBUG_KERNEL | ||
33 | help | ||
34 | Say "yes" to enable debug messaging (like dev_dbg and pr_debug), | ||
35 | sysfs, and debugfs support in SPI controller and protocol drivers. | ||
36 | |||
37 | # | ||
38 | # MASTER side ... talking to discrete SPI slave chips including microcontrollers | ||
39 | # | ||
40 | |||
41 | config SPI_MASTER | ||
42 | # boolean "SPI Master Support" | ||
43 | boolean | ||
44 | default SPI | ||
45 | help | ||
46 | If your system has an master-capable SPI controller (which | ||
47 | provides the clock and chipselect), you can enable that | ||
48 | controller and the protocol drivers for the SPI slave chips | ||
49 | that are connected. | ||
50 | |||
51 | comment "SPI Master Controller Drivers" | ||
52 | depends on SPI_MASTER | ||
53 | |||
54 | config SPI_BITBANG | ||
55 | tristate "Bitbanging SPI master" | ||
56 | depends on SPI_MASTER && EXPERIMENTAL | ||
57 | help | ||
58 | With a few GPIO pins, your system can bitbang the SPI protocol. | ||
59 | Select this to get SPI support through I/O pins (GPIO, parallel | ||
60 | port, etc). Or, some systems' SPI master controller drivers use | ||
61 | this code to manage the per-word or per-transfer accesses to the | ||
62 | hardware shift registers. | ||
63 | |||
64 | This is library code, and is automatically selected by drivers that | ||
65 | need it. You only need to select this explicitly to support driver | ||
66 | modules that aren't part of this kernel tree. | ||
67 | |||
68 | config SPI_BUTTERFLY | ||
69 | tristate "Parallel port adapter for AVR Butterfly (DEVELOPMENT)" | ||
70 | depends on SPI_MASTER && PARPORT && EXPERIMENTAL | ||
71 | select SPI_BITBANG | ||
72 | help | ||
73 | This uses a custom parallel port cable to connect to an AVR | ||
74 | Butterfly <http://www.atmel.com/products/avr/butterfly>, an | ||
75 | inexpensive battery powered microcontroller evaluation board. | ||
76 | This same cable can be used to flash new firmware. | ||
77 | |||
78 | config SPI_BUTTERFLY | ||
79 | tristate "Parallel port adapter for AVR Butterfly (DEVELOPMENT)" | ||
80 | depends on SPI_MASTER && PARPORT && EXPERIMENTAL | ||
81 | select SPI_BITBANG | ||
82 | help | ||
83 | This uses a custom parallel port cable to connect to an AVR | ||
84 | Butterfly <http://www.atmel.com/products/avr/butterfly>, an | ||
85 | inexpensive battery powered microcontroller evaluation board. | ||
86 | This same cable can be used to flash new firmware. | ||
87 | |||
88 | # | ||
89 | # Add new SPI master controllers in alphabetical order above this line | ||
90 | # | ||
91 | |||
92 | |||
93 | # | ||
94 | # There are lots of SPI device types, with sensors and memory | ||
95 | # being probably the most widely used ones. | ||
96 | # | ||
97 | comment "SPI Protocol Masters" | ||
98 | depends on SPI_MASTER | ||
99 | |||
100 | |||
101 | # | ||
102 | # Add new SPI protocol masters in alphabetical order above this line | ||
103 | # | ||
104 | |||
105 | |||
106 | # (slave support would go here) | ||
107 | |||
108 | endmenu # "SPI support" | ||
109 | |||