blob: 2769e505f051530cb676cf60df41b59a34161ceb [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001# -*- shell-script -*-
2
3menu "IEEE 1394 (FireWire) support"
4
5config IEEE1394
6 tristate "IEEE 1394 (FireWire) support"
Stefan Richter09a9a452006-06-25 05:46:44 -07007 depends on PCI || BROKEN
Linus Torvalds1da177e2005-04-16 15:20:36 -07008 select NET
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
22comment "Subsystem Options"
23 depends on IEEE1394
24
25config IEEE1394_VERBOSEDEBUG
26 bool "Excessive debugging output"
27 depends on IEEE1394
28 help
29 If you say Y here, you will get very verbose debugging logs from
30 the subsystem which includes a dump of the header of every sent
31 and received packet. This can amount to a high amount of data
32 collected in a very short time which is usually also saved to
33 disk by the system logging daemons.
34
35 Say Y if you really want or need the debugging output, everyone
36 else says N.
37
38config IEEE1394_OUI_DB
39 bool "OUI Database built-in"
40 depends on IEEE1394
41 help
42 If you say Y here, then an OUI list (vendor unique ID's) will be
43 compiled into the ieee1394 module. This doesn't really do much
44 except being able to display the vendor of a hardware node. The
45 downside is that it adds about 300k to the size of the module,
46 or kernel (depending on whether you compile ieee1394 as a
47 module, or static in the kernel).
48
49 This option is not needed for userspace programs like gscanbus
50 to show this information.
51
52config IEEE1394_EXTRA_CONFIG_ROMS
53 bool "Build in extra config rom entries for certain functionality"
54 depends on IEEE1394
55 help
56 Some IEEE1394 functionality depends on extra config rom entries
57 being available in the host adapters CSR. These options will
58 allow you to choose which ones.
59
60config IEEE1394_CONFIG_ROM_IP1394
61 bool "IP-1394 Entry"
62 depends on IEEE1394_EXTRA_CONFIG_ROMS && IEEE1394
63 help
64 Adds an entry for using IP-over-1394. If you want to use your
65 IEEE1394 bus as a network for IP systems (including interacting
66 with MacOSX and WinXP IP-over-1394), enable this option and the
67 eth1394 option below.
68
Ben Collins1934b8b2005-07-09 20:01:23 -040069config IEEE1394_EXPORT_FULL_API
70 bool "Export all symbols of ieee1394's API"
71 depends on IEEE1394
72 default n
73 help
74 Export all symbols of ieee1394's driver programming interface, even
75 those that are not currently used by the standard IEEE 1394 drivers.
76
77 This option does not affect the interface to userspace applications.
78 Say Y here if you want to compile externally developed drivers that
79 make extended use of ieee1394's API. It is otherwise safe to say N.
80
Linus Torvalds1da177e2005-04-16 15:20:36 -070081comment "Device Drivers"
82 depends on IEEE1394
83
84comment "Texas Instruments PCILynx requires I2C"
85 depends on IEEE1394 && I2C=n
86
87config IEEE1394_PCILYNX
88 tristate "Texas Instruments PCILynx support"
89 depends on PCI && IEEE1394 && I2C
90 select I2C_ALGOBIT
91 help
92 Say Y here if you have an IEEE-1394 controller with the Texas
93 Instruments PCILynx chip. Note: this driver is written for revision
94 2 of this chip and may not work with revision 0.
95
96 To compile this driver as a module, say M here: the
97 module will be called pcilynx.
98
Linus Torvalds1da177e2005-04-16 15:20:36 -070099config IEEE1394_OHCI1394
100 tristate "OHCI-1394 support"
101 depends on PCI && IEEE1394
102 help
103 Enable this driver if you have an IEEE 1394 controller based on the
104 OHCI-1394 specification. The current driver is only tested with OHCI
105 chipsets made by Texas Instruments and NEC. Most third-party vendors
106 use one of these chipsets. It should work with any OHCI-1394
107 compliant card, however.
108
109 To compile this driver as a module, say M here: the
110 module will be called ohci1394.
111
112comment "Protocol Drivers"
113 depends on IEEE1394
114
115config IEEE1394_VIDEO1394
116 tristate "OHCI-1394 Video support"
117 depends on IEEE1394 && IEEE1394_OHCI1394
118 help
119 This option enables video device usage for OHCI-1394 cards. Enable
120 this option only if you have an IEEE 1394 video device connected to
121 an OHCI-1394 card.
122
Stefan Richterb8092892006-08-30 18:22:00 +0200123comment "SBP-2 support (for storage devices) requires SCSI"
124 depends on IEEE1394 && SCSI=n
125
Linus Torvalds1da177e2005-04-16 15:20:36 -0700126config IEEE1394_SBP2
127 tristate "SBP-2 support (Harddisks etc.)"
128 depends on IEEE1394 && SCSI && (PCI || BROKEN)
129 help
Stefan Richterb8092892006-08-30 18:22:00 +0200130 This option enables you to use SBP-2 devices connected to an IEEE
131 1394 bus. SBP-2 devices include storage devices like harddisks and
132 DVD drives, also some other FireWire devices like scanners.
133
134 You should also enable support for disks, CD-ROMs, etc. in the SCSI
135 configuration section.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700136
137config IEEE1394_SBP2_PHYS_DMA
Ben Collinsbccbccd2006-06-12 18:14:36 -0400138 bool "Enable replacement for physical DMA in SBP2"
Ben Collinsdd082c62006-06-12 18:15:40 -0400139 depends on IEEE1394 && IEEE1394_SBP2 && EXPERIMENTAL && (X86_32 || PPC_32)
Ben Collinsbccbccd2006-06-12 18:14:36 -0400140 help
141 This builds sbp2 for use with non-OHCI host adapters which do not
142 support physical DMA or for when ohci1394 is run with phys_dma=0.
143 Physical DMA is data movement without assistence of the drivers'
144 interrupt handlers. This option includes the interrupt handlers
145 that are required in absence of this hardware feature.
146
147 This option is buggy and currently broken on some architectures.
148 If unsure, say N.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700149
150config IEEE1394_ETH1394
151 tristate "Ethernet over 1394"
152 depends on IEEE1394 && EXPERIMENTAL && INET
153 select IEEE1394_CONFIG_ROM_IP1394
154 select IEEE1394_EXTRA_CONFIG_ROMS
155 help
156 This driver implements a functional majority of RFC 2734: IPv4 over
157 1394. It will provide IP connectivity with implementations of RFC
158 2734 found on other operating systems. It will not communicate with
159 older versions of this driver found in stock kernels prior to 2.6.3.
160 This driver is still considered experimental. It does not yet support
161 MCAP, therefore multicast support is significantly limited.
162
163config IEEE1394_DV1394
164 tristate "OHCI-DV I/O support"
165 depends on IEEE1394 && IEEE1394_OHCI1394
166 help
167 This driver allows you to transmit and receive DV (digital video)
168 streams on an OHCI-1394 card using a simple frame-oriented
169 interface.
170
171 The user-space API for dv1394 is documented in dv1394.h.
172
173 To compile this driver as a module, say M here: the
174 module will be called dv1394.
175
176config IEEE1394_RAWIO
177 tristate "Raw IEEE1394 I/O support"
178 depends on IEEE1394
179 help
180 Say Y here if you want support for the raw device. This is generally
181 a good idea, so you should say Y here. The raw device enables
182 direct communication of user programs with the IEEE 1394 bus and
183 thus with the attached peripherals.
184
185 To compile this driver as a module, say M here: the
186 module will be called raw1394.
187
Linus Torvalds1da177e2005-04-16 15:20:36 -0700188endmenu