Merge ../linus
[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 (deprecated)"
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 (deprecated)"
71         depends on IEEE1394
72         default n
73         help
74           This option will be removed soon.  Don't worry, say N.
75
76 comment "Device Drivers"
77         depends on IEEE1394
78
79 comment "Texas Instruments PCILynx requires I2C"
80         depends on IEEE1394 && I2C=n
81
82 config IEEE1394_PCILYNX
83         tristate "Texas Instruments PCILynx support"
84         depends on PCI && IEEE1394 && I2C
85         select I2C_ALGOBIT
86         help
87           Say Y here if you have an IEEE-1394 controller with the Texas
88           Instruments PCILynx chip.  Note: this driver is written for revision
89           2 of this chip and may not work with revision 0.
90
91           To compile this driver as a module, say M here: the
92           module will be called pcilynx.
93
94 config IEEE1394_OHCI1394
95         tristate "OHCI-1394 support"
96         depends on PCI && IEEE1394
97         help
98           Enable this driver if you have an IEEE 1394 controller based on the
99           OHCI-1394 specification. The current driver is only tested with OHCI
100           chipsets made by Texas Instruments and NEC. Most third-party vendors
101           use one of these chipsets.  It should work with any OHCI-1394
102           compliant card, however.
103
104           To compile this driver as a module, say M here: the
105           module will be called ohci1394.
106
107 comment "Protocol Drivers"
108         depends on IEEE1394
109
110 config IEEE1394_VIDEO1394
111         tristate "OHCI-1394 Video support"
112         depends on IEEE1394 && IEEE1394_OHCI1394
113         help
114           This option enables video device usage for OHCI-1394 cards.  Enable
115           this option only if you have an IEEE 1394 video device connected to
116           an OHCI-1394 card.
117
118 comment "SBP-2 support (for storage devices) requires SCSI"
119         depends on IEEE1394 && SCSI=n
120
121 config IEEE1394_SBP2
122         tristate "SBP-2 support (Harddisks etc.)"
123         depends on IEEE1394 && SCSI
124         help
125           This option enables you to use SBP-2 devices connected to an IEEE
126           1394 bus.  SBP-2 devices include storage devices like harddisks and
127           DVD drives, also some other FireWire devices like scanners.
128
129           You should also enable support for disks, CD-ROMs, etc. in the SCSI
130           configuration section.
131
132 config IEEE1394_SBP2_PHYS_DMA
133         bool "Enable replacement for physical DMA in SBP2"
134         depends on IEEE1394 && IEEE1394_SBP2 && EXPERIMENTAL && (X86_32 || PPC_32)
135         help
136           This builds sbp2 for use with non-OHCI host adapters which do not
137           support physical DMA or for when ohci1394 is run with phys_dma=0.
138           Physical DMA is data movement without assistance of the drivers'
139           interrupt handlers.  This option includes the interrupt handlers
140           that are required in absence of this hardware feature.
141
142           This option is buggy and currently broken on some architectures.
143           If unsure, say N.
144
145 config IEEE1394_ETH1394
146         tristate "Ethernet over 1394"
147         depends on IEEE1394 && EXPERIMENTAL && INET
148         select IEEE1394_CONFIG_ROM_IP1394
149         select IEEE1394_EXTRA_CONFIG_ROMS
150         help
151           This driver implements a functional majority of RFC 2734: IPv4 over
152           1394.  It will provide IP connectivity with implementations of RFC
153           2734 found on other operating systems.  It will not communicate with
154           older versions of this driver found in stock kernels prior to 2.6.3.
155           This driver is still considered experimental.  It does not yet support
156           MCAP, therefore multicast support is significantly limited.
157
158 config IEEE1394_DV1394
159         tristate "OHCI-DV I/O support (deprecated)"
160         depends on IEEE1394 && IEEE1394_OHCI1394
161         help
162           The dv1394 driver will be removed from Linux in a future release.
163           Its functionality is now provided by raw1394 together with libraries
164           such as libiec61883.
165
166 config IEEE1394_RAWIO
167         tristate "Raw IEEE1394 I/O support"
168         depends on IEEE1394
169         help
170           Say Y here if you want support for the raw device. This is generally
171           a good idea, so you should say Y here. The raw device enables
172           direct communication of user programs with the IEEE 1394 bus and
173           thus with the attached peripherals.
174
175           To compile this driver as a module, say M here: the
176           module will be called raw1394.
177
178 endmenu