Merge git://git.infradead.org/mtd-2.6
[linux-2.6] / drivers / ieee1394 / Kconfig
1 menu "IEEE 1394 (FireWire) support"
2         depends on PCI || BROKEN
3
4 source "drivers/firewire/Kconfig"
5
6 config IEEE1394
7         tristate "Legacy alternative FireWire driver stack"
8         depends on PCI || BROKEN
9         help
10           IEEE 1394 describes a high performance serial bus, which is also
11           known as FireWire(tm) or i.Link(tm) and is used for connecting all
12           sorts of devices (most notably digital video cameras) to your
13           computer.
14
15           If you have FireWire hardware and want to use it, say Y here.  This
16           is the core support only, you will also need to select a driver for
17           your IEEE 1394 adapter.
18
19           To compile this driver as a module, say M here: the
20           module will be called ieee1394.
21
22 config IEEE1394_OHCI1394
23         tristate "OHCI-1394 controllers"
24         depends on PCI && IEEE1394
25         help
26           Enable this driver if you have an IEEE 1394 controller based on the
27           OHCI-1394 specification. The current driver is only tested with OHCI
28           chipsets made by Texas Instruments and NEC. Most third-party vendors
29           use one of these chipsets.  It should work with any OHCI-1394
30           compliant card, however.
31
32           To compile this driver as a module, say M here: the
33           module will be called ohci1394.
34
35           NOTE:
36           If you want to install firewire-ohci and ohci1394 together, you
37           should configure them only as modules and blacklist the driver(s)
38           which you don't want to have auto-loaded.  Add either
39
40               blacklist firewire-ohci
41           or
42               blacklist ohci1394
43               blacklist video1394
44               blacklist dv1394
45
46           to /etc/modprobe.conf or /etc/modprobe.d/* and update modprobe.conf
47           depending on your distribution.
48
49 comment "PCILynx controller requires I2C"
50         depends on IEEE1394 && I2C=n
51
52 config IEEE1394_PCILYNX
53         tristate "PCILynx controller"
54         depends on PCI && IEEE1394 && I2C
55         select I2C_ALGOBIT
56         help
57           Say Y here if you have an IEEE-1394 controller with the Texas
58           Instruments PCILynx chip.  Note: this driver is written for revision
59           2 of this chip and may not work with revision 0.
60
61           To compile this driver as a module, say M here: the
62           module will be called pcilynx.
63
64           Only some old and now very rare PCI and CardBus cards and
65           PowerMacs G3 B&W contain the PCILynx controller.  Therefore
66           almost everybody can say N here.
67
68 comment "SBP-2 support (for storage devices) requires SCSI"
69         depends on IEEE1394 && SCSI=n
70
71 config IEEE1394_SBP2
72         tristate "Storage devices (SBP-2 protocol)"
73         depends on IEEE1394 && SCSI
74         help
75           This option enables you to use SBP-2 devices connected to an IEEE
76           1394 bus.  SBP-2 devices include storage devices like harddisks and
77           DVD drives, also some other FireWire devices like scanners.
78
79           You should also enable support for disks, CD-ROMs, etc. in the SCSI
80           configuration section.
81
82 config IEEE1394_SBP2_PHYS_DMA
83         bool "Enable replacement for physical DMA in SBP2"
84         depends on IEEE1394_SBP2 && VIRT_TO_BUS && EXPERIMENTAL
85         help
86           This builds sbp2 for use with non-OHCI host adapters which do not
87           support physical DMA or for when ohci1394 is run with phys_dma=0.
88           Physical DMA is data movement without assistance of the drivers'
89           interrupt handlers.  This option includes the interrupt handlers
90           that are required in absence of this hardware feature.
91
92           This option is buggy and currently broken on some architectures.
93           If unsure, say N.
94
95 config IEEE1394_ETH1394_ROM_ENTRY
96         depends on IEEE1394
97         bool
98         default n
99
100 config IEEE1394_ETH1394
101         tristate "IP networking over 1394 (experimental)"
102         depends on IEEE1394 && EXPERIMENTAL && INET
103         select IEEE1394_ETH1394_ROM_ENTRY
104         help
105           This driver implements a functional majority of RFC 2734: IPv4 over
106           1394.  It will provide IP connectivity with implementations of RFC
107           2734 found on other operating systems.  It will not communicate with
108           older versions of this driver found in stock kernels prior to 2.6.3.
109           This driver is still considered experimental.  It does not yet support
110           MCAP, therefore multicast support is significantly limited.
111
112           The module is called eth1394 although it does not emulate Ethernet.
113
114 config IEEE1394_RAWIO
115         tristate "raw1394 userspace interface"
116         depends on IEEE1394
117         help
118           This option adds support for the raw1394 device file which enables
119           direct communication of user programs with IEEE 1394 devices
120           (isochronous and asynchronous).  Almost all application programs
121           which access FireWire require this option.
122
123           To compile this driver as a module, say M here: the module will be
124           called raw1394.
125
126 config IEEE1394_VIDEO1394
127         tristate "video1394 userspace interface"
128         depends on IEEE1394 && IEEE1394_OHCI1394
129         help
130           This option adds support for the video1394 device files which enable
131           isochronous communication of user programs with IEEE 1394 devices,
132           especially video capture or export.  This interface is used by all
133           libdc1394 based programs and by several other programs, in addition to
134           the raw1394 interface.  It is generally not required for DV capture.
135
136           To compile this driver as a module, say M here: the module will be
137           called video1394.
138
139 config IEEE1394_DV1394
140         tristate "dv1394 userspace interface (deprecated)"
141         depends on IEEE1394 && IEEE1394_OHCI1394
142         help
143           The dv1394 driver is unsupported and may be removed from Linux in a
144           future release.  Its functionality is now provided by raw1394 together
145           with libraries such as libiec61883.
146
147 config IEEE1394_VERBOSEDEBUG
148         bool "Excessive debugging output"
149         depends on IEEE1394
150         help
151           If you say Y here, you will get very verbose debugging logs from the
152           ieee1394 drivers, including sent and received packet headers.  This
153           will quickly result in large amounts of data sent to the system log.
154
155           Say Y if you really need the debugging output.  Everyone else says N.
156
157 endmenu