Merge master.kernel.org:/home/rmk/linux-2.6-serial
[linux-2.6] / drivers / ieee1394 / Kconfig
1 # -*- shell-script -*-
2
3 menu "IEEE 1394 (FireWire) support"
4
5 config IEEE1394
6         tristate "IEEE 1394 (FireWire) support"
7         depends on PCI || BROKEN
8         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
22 comment "Subsystem Options"
23         depends on IEEE1394
24
25 config 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
38 config 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
52 config 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
60 config 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
69 config 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
81 comment "Device Drivers"
82         depends on IEEE1394
83
84 comment "Texas Instruments PCILynx requires I2C"
85         depends on IEEE1394 && I2C=n
86
87 config 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
99 config 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
112 comment "Protocol Drivers"
113         depends on IEEE1394
114
115 config 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
123 config IEEE1394_SBP2
124         tristate "SBP-2 support (Harddisks etc.)"
125         depends on IEEE1394 && SCSI && (PCI || BROKEN)
126         help
127           This option enables you to use SBP-2 devices connected to your IEEE
128           1394 bus.  SBP-2 devices include harddrives and DVD devices.
129
130 config IEEE1394_SBP2_PHYS_DMA
131         bool "Enable replacement for physical DMA in SBP2"
132         depends on IEEE1394 && IEEE1394_SBP2 && EXPERIMENTAL && (X86_32 || PPC_32)
133         help
134           This builds sbp2 for use with non-OHCI host adapters which do not
135           support physical DMA or for when ohci1394 is run with phys_dma=0.
136           Physical DMA is data movement without assistence of the drivers'
137           interrupt handlers.  This option includes the interrupt handlers
138           that are required in absence of this hardware feature.
139
140           This option is buggy and currently broken on some architectures.
141           If unsure, say N.
142
143 config IEEE1394_ETH1394
144         tristate "Ethernet over 1394"
145         depends on IEEE1394 && EXPERIMENTAL && INET
146         select IEEE1394_CONFIG_ROM_IP1394
147         select IEEE1394_EXTRA_CONFIG_ROMS
148         help
149           This driver implements a functional majority of RFC 2734: IPv4 over
150           1394.  It will provide IP connectivity with implementations of RFC
151           2734 found on other operating systems.  It will not communicate with
152           older versions of this driver found in stock kernels prior to 2.6.3.
153           This driver is still considered experimental.  It does not yet support
154           MCAP, therefore multicast support is significantly limited.
155
156 config IEEE1394_DV1394
157         tristate "OHCI-DV I/O support"
158         depends on IEEE1394 && IEEE1394_OHCI1394
159         help
160           This driver allows you to transmit and receive DV (digital video)
161           streams on an OHCI-1394 card using a simple frame-oriented
162           interface.
163
164           The user-space API for dv1394 is documented in dv1394.h.
165
166           To compile this driver as a module, say M here: the
167           module will be called dv1394.
168
169 config IEEE1394_RAWIO
170         tristate "Raw IEEE1394 I/O support"
171         depends on IEEE1394
172         help
173           Say Y here if you want support for the raw device. This is generally
174           a good idea, so you should say Y here. The raw device enables
175           direct communication of user programs with the IEEE 1394 bus and
176           thus with the attached peripherals.
177
178           To compile this driver as a module, say M here: the
179           module will be called raw1394.
180
181 endmenu