blob: 95f45f9b8e5efc67abc26ce53817bb8e398742f2 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001menu "IEEE 1394 (FireWire) support"
Martin Schwidefskyeeca7a32007-05-10 15:45:56 +02002 depends on PCI || BROKEN
Linus Torvalds1da177e2005-04-16 15:20:36 -07003
Stefan Richter22a38e722006-12-31 17:20:20 +01004source "drivers/firewire/Kconfig"
5
Linus Torvalds1da177e2005-04-16 15:20:36 -07006config IEEE1394
Stefan Richter9499fe22008-06-16 01:39:28 +02007 tristate "Stable FireWire stack"
Stefan Richter09a9a452006-06-25 05:46:44 -07008 depends on PCI || BROKEN
Linus Torvalds1da177e2005-04-16 15:20:36 -07009 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
Stefan Richter9499fe22008-06-16 01:39:28 +020022config IEEE1394_OHCI1394
23 tristate "OHCI-1394 controllers"
24 depends on PCI && IEEE1394
Linus Torvalds1da177e2005-04-16 15:20:36 -070025 help
Stefan Richter9499fe22008-06-16 01:39:28 +020026 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.
Linus Torvalds1da177e2005-04-16 15:20:36 -070031
Stefan Richter9499fe22008-06-16 01:39:28 +020032 To compile this driver as a module, say M here: the
33 module will be called ohci1394.
Linus Torvalds1da177e2005-04-16 15:20:36 -070034
Stefan Richter9499fe22008-06-16 01:39:28 +020035 NOTE:
Linus Torvalds1da177e2005-04-16 15:20:36 -070036
Stefan Richter9499fe22008-06-16 01:39:28 +020037 You should only build either ohci1394 or the new firewire-ohci driver,
38 but not both. If you nevertheless want to install both, you should
39 configure them only as modules and blacklist the driver(s) which you
40 don't want to have auto-loaded. Add either
41
42 blacklist firewire-ohci
43 or
44 blacklist ohci1394
45 blacklist video1394
46 blacklist dv1394
47
48 to /etc/modprobe.conf or /etc/modprobe.d/* and update modprobe.conf
49 depending on your distribution. The latter two modules should be
50 blacklisted together with ohci1394 because they depend on ohci1394.
51
52 If you have an old modprobe which doesn't implement the blacklist
53 directive, use "install modulename /bin/true" for the modules to be
54 blacklisted.
55
56comment "PCILynx controller requires I2C"
Linus Torvalds1da177e2005-04-16 15:20:36 -070057 depends on IEEE1394 && I2C=n
58
59config IEEE1394_PCILYNX
Stefan Richter9499fe22008-06-16 01:39:28 +020060 tristate "PCILynx controller"
Linus Torvalds1da177e2005-04-16 15:20:36 -070061 depends on PCI && IEEE1394 && I2C
62 select I2C_ALGOBIT
63 help
64 Say Y here if you have an IEEE-1394 controller with the Texas
65 Instruments PCILynx chip. Note: this driver is written for revision
66 2 of this chip and may not work with revision 0.
67
68 To compile this driver as a module, say M here: the
69 module will be called pcilynx.
70
Stefan Richter3f94aa42007-04-21 20:54:37 +020071 Only some old and now very rare PCI and CardBus cards and
72 PowerMacs G3 B&W contain the PCILynx controller. Therefore
73 almost everybody can say N here.
74
Stefan Richterb8092892006-08-30 18:22:00 +020075comment "SBP-2 support (for storage devices) requires SCSI"
76 depends on IEEE1394 && SCSI=n
77
Linus Torvalds1da177e2005-04-16 15:20:36 -070078config IEEE1394_SBP2
Stefan Richter9499fe22008-06-16 01:39:28 +020079 tristate "Storage devices (SBP-2 protocol)"
Stefan Richter9b7d9c02006-11-22 21:44:34 +010080 depends on IEEE1394 && SCSI
Linus Torvalds1da177e2005-04-16 15:20:36 -070081 help
Stefan Richterb8092892006-08-30 18:22:00 +020082 This option enables you to use SBP-2 devices connected to an IEEE
83 1394 bus. SBP-2 devices include storage devices like harddisks and
84 DVD drives, also some other FireWire devices like scanners.
85
86 You should also enable support for disks, CD-ROMs, etc. in the SCSI
87 configuration section.
Linus Torvalds1da177e2005-04-16 15:20:36 -070088
89config IEEE1394_SBP2_PHYS_DMA
Ben Collinsbccbccd2006-06-12 18:14:36 -040090 bool "Enable replacement for physical DMA in SBP2"
Stefan Richtere4f8cac2007-07-21 17:51:22 +020091 depends on IEEE1394_SBP2 && VIRT_TO_BUS && EXPERIMENTAL
Ben Collinsbccbccd2006-06-12 18:14:36 -040092 help
93 This builds sbp2 for use with non-OHCI host adapters which do not
94 support physical DMA or for when ohci1394 is run with phys_dma=0.
Matt LaPlante09509602006-10-03 22:31:37 +020095 Physical DMA is data movement without assistance of the drivers'
Ben Collinsbccbccd2006-06-12 18:14:36 -040096 interrupt handlers. This option includes the interrupt handlers
97 that are required in absence of this hardware feature.
98
99 This option is buggy and currently broken on some architectures.
100 If unsure, say N.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700101
Stefan Richter70093cf2007-03-27 01:36:50 +0200102config IEEE1394_ETH1394_ROM_ENTRY
103 depends on IEEE1394
104 bool
105 default n
106
Linus Torvalds1da177e2005-04-16 15:20:36 -0700107config IEEE1394_ETH1394
Stefan Richter70093cf2007-03-27 01:36:50 +0200108 tristate "IP over 1394"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700109 depends on IEEE1394 && EXPERIMENTAL && INET
Stefan Richter70093cf2007-03-27 01:36:50 +0200110 select IEEE1394_ETH1394_ROM_ENTRY
Linus Torvalds1da177e2005-04-16 15:20:36 -0700111 help
112 This driver implements a functional majority of RFC 2734: IPv4 over
113 1394. It will provide IP connectivity with implementations of RFC
114 2734 found on other operating systems. It will not communicate with
115 older versions of this driver found in stock kernels prior to 2.6.3.
116 This driver is still considered experimental. It does not yet support
117 MCAP, therefore multicast support is significantly limited.
118
Stefan Richter70093cf2007-03-27 01:36:50 +0200119 The module is called eth1394 although it does not emulate Ethernet.
120
Stefan Richter9499fe22008-06-16 01:39:28 +0200121config IEEE1394_RAWIO
122 tristate "raw1394 userspace interface"
123 depends on IEEE1394
124 help
125 This option adds support for the raw1394 device file which enables
126 direct communication of user programs with IEEE 1394 devices
127 (isochronous and asynchronous). Almost all application programs
128 which access FireWire require this option.
129
130 To compile this driver as a module, say M here: the module will be
131 called raw1394.
132
133config IEEE1394_VIDEO1394
134 tristate "video1394 userspace interface"
135 depends on IEEE1394 && IEEE1394_OHCI1394
136 help
137 This option adds support for the video1394 device files which enable
138 isochronous communication of user programs with IEEE 1394 devices,
139 especially video capture or export. This interface is used by all
140 libdc1394 based programs and by several other programs, in addition to
141 the raw1394 interface. It is generally not required for DV capture.
142
143 To compile this driver as a module, say M here: the module will be
144 called video1394.
145
Linus Torvalds1da177e2005-04-16 15:20:36 -0700146config IEEE1394_DV1394
Stefan Richter9499fe22008-06-16 01:39:28 +0200147 tristate "dv1394 userspace interface (deprecated)"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700148 depends on IEEE1394 && IEEE1394_OHCI1394
149 help
Stefan Richter199c1162007-03-22 00:40:06 +0100150 The dv1394 driver is unsupported and may be removed from Linux in a
151 future release. Its functionality is now provided by raw1394 together
152 with libraries such as libiec61883.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700153
Stefan Richter9499fe22008-06-16 01:39:28 +0200154config IEEE1394_VERBOSEDEBUG
155 bool "Excessive debugging output"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700156 depends on IEEE1394
157 help
Stefan Richter9499fe22008-06-16 01:39:28 +0200158 If you say Y here, you will get very verbose debugging logs from the
159 ieee1394 drivers, including sent and received packet headers. This
160 will quickly result in large amounts of data sent to the system log.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700161
Stefan Richter9499fe22008-06-16 01:39:28 +0200162 Say Y if you really need the debugging output. Everyone else says N.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700163
Linus Torvalds1da177e2005-04-16 15:20:36 -0700164endmenu