aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStefan Richter <stefanr@s5r6.in-berlin.de>2009-06-16 16:36:34 -0400
committerStefan Richter <stefanr@s5r6.in-berlin.de>2009-06-21 04:53:26 -0400
commit0c53decdd0a9f9c459ccabe0b5f79660bde5375b (patch)
treeb0956ec994028dc65e1e7ce51d05862018971e15
parent00635b8ee2b5650fd01f5602ecfa289db336b570 (diff)
firewire: new stack is no longer experimental
The new stack is now recommended over the old one if used for industrial video (IIDC/DCAM) or for storage devices (SBP-2) due to better performance, improved compatibility, added features, and security. It should also be functionally on par with and is more secure than the old ieee1394 stack in the use case of consumer video devices. IP-over-1394 support for the new stack is currently emerging, and a backend of the firedtv DVB driver to the new stack should be available soon. The one remaining area where the old stack is still required are audio devices, as the new stack is not yet able to support the FFADO FireWire audio framework. Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
-rw-r--r--drivers/firewire/Kconfig52
-rw-r--r--drivers/ieee1394/Kconfig19
2 files changed, 30 insertions, 41 deletions
diff --git a/drivers/firewire/Kconfig b/drivers/firewire/Kconfig
index d6b1721e52ab..13efcd362072 100644
--- a/drivers/firewire/Kconfig
+++ b/drivers/firewire/Kconfig
@@ -1,28 +1,29 @@
1comment "A new alternative FireWire stack is available with EXPERIMENTAL=y" 1comment "You can enable one or both FireWire driver stacks."
2 depends on EXPERIMENTAL=n 2comment "See the help texts for more information."
3
4comment "Enable only one of the two stacks, unless you know what you are doing"
5 depends on EXPERIMENTAL
6 3
7config FIREWIRE 4config FIREWIRE
8 tristate "New FireWire stack, EXPERIMENTAL" 5 tristate "FireWire driver stack"
9 depends on EXPERIMENTAL
10 select CRC_ITU_T 6 select CRC_ITU_T
11 help 7 help
12 This is the "Juju" FireWire stack, a new alternative implementation 8 This is the new-generation IEEE 1394 (FireWire) driver stack
13 designed for robustness and simplicity. You can build either this 9 a.k.a. Juju, a new implementation designed for robustness and
14 stack, or the old stack (the ieee1394 driver, ohci1394 etc.) or both. 10 simplicity.
15 Please read http://ieee1394.wiki.kernel.org/index.php/Juju_Migration 11 See http://ieee1394.wiki.kernel.org/index.php/Juju_Migration
16 before you enable the new stack. 12 for information about migration from the older Linux 1394 stack
13 to the new driver stack.
17 14
18 To compile this driver as a module, say M here: the module will be 15 To compile this driver as a module, say M here: the module will be
19 called firewire-core. 16 called firewire-core.
20 17
21 This module functionally replaces ieee1394, raw1394, and video1394. 18 This module functionally replaces ieee1394, raw1394, and video1394.
22 To access it from application programs, you generally need at least 19 To access it from application programs, you generally need at least
23 libraw1394 version 2. IIDC/DCAM applications also need libdc1394 20 libraw1394 v2. IIDC/DCAM applications need libdc1394 v2.
24 version 2. No libraries are required to access storage devices 21 No libraries are required to access storage devices through the
25 through the firewire-sbp2 driver. 22 firewire-sbp2 driver.
23
24 NOTE:
25 FireWire audio devices currently require the old drivers (ieee1394,
26 ohci1394, raw1394).
26 27
27config FIREWIRE_OHCI 28config FIREWIRE_OHCI
28 tristate "OHCI-1394 controllers" 29 tristate "OHCI-1394 controllers"
@@ -37,11 +38,9 @@ config FIREWIRE_OHCI
37 stack. 38 stack.
38 39
39 NOTE: 40 NOTE:
40 41 If you want to install firewire-ohci and ohci1394 together, you
41 You should only build either firewire-ohci or the old ohci1394 driver, 42 should configure them only as modules and blacklist the driver(s)
42 but not both. If you nevertheless want to install both, you should 43 which you don't want to have auto-loaded. Add either
43 configure them only as modules and blacklist the driver(s) which you
44 don't want to have auto-loaded. Add either
45 44
46 blacklist firewire-ohci 45 blacklist firewire-ohci
47 or 46 or
@@ -50,12 +49,7 @@ config FIREWIRE_OHCI
50 blacklist dv1394 49 blacklist dv1394
51 50
52 to /etc/modprobe.conf or /etc/modprobe.d/* and update modprobe.conf 51 to /etc/modprobe.conf or /etc/modprobe.d/* and update modprobe.conf
53 depending on your distribution. The latter two modules should be 52 depending on your distribution.
54 blacklisted together with ohci1394 because they depend on ohci1394.
55
56 If you have an old modprobe which doesn't implement the blacklist
57 directive, use "install modulename /bin/true" for the modules to be
58 blacklisted.
59 53
60config FIREWIRE_OHCI_DEBUG 54config FIREWIRE_OHCI_DEBUG
61 bool 55 bool
@@ -79,13 +73,15 @@ config FIREWIRE_SBP2
79 configuration section. 73 configuration section.
80 74
81config FIREWIRE_NET 75config FIREWIRE_NET
82 tristate "IP networking over 1394" 76 tristate "IP networking over 1394 (EXPERIMENTAL)"
83 depends on FIREWIRE && INET 77 depends on FIREWIRE && INET && EXPERIMENTAL
84 help 78 help
85 This enables IPv4 over IEEE 1394, providing IP connectivity with 79 This enables IPv4 over IEEE 1394, providing IP connectivity with
86 other implementations of RFC 2734 as found on several operating 80 other implementations of RFC 2734 as found on several operating
87 systems. Multicast support is currently limited. 81 systems. Multicast support is currently limited.
88 82
83 NOTE, this driver is not stable yet!
84
89 To compile this driver as a module, say M here: The module will be 85 To compile this driver as a module, say M here: The module will be
90 called firewire-net. It replaces eth1394 of the classic IEEE 1394 86 called firewire-net. It replaces eth1394 of the classic IEEE 1394
91 stack. 87 stack.
diff --git a/drivers/ieee1394/Kconfig b/drivers/ieee1394/Kconfig
index 584245881f4a..f102fcc7e52a 100644
--- a/drivers/ieee1394/Kconfig
+++ b/drivers/ieee1394/Kconfig
@@ -4,7 +4,7 @@ menu "IEEE 1394 (FireWire) support"
4source "drivers/firewire/Kconfig" 4source "drivers/firewire/Kconfig"
5 5
6config IEEE1394 6config IEEE1394
7 tristate "Stable FireWire stack" 7 tristate "Legacy alternative FireWire driver stack"
8 depends on PCI || BROKEN 8 depends on PCI || BROKEN
9 help 9 help
10 IEEE 1394 describes a high performance serial bus, which is also 10 IEEE 1394 describes a high performance serial bus, which is also
@@ -33,11 +33,9 @@ config IEEE1394_OHCI1394
33 module will be called ohci1394. 33 module will be called ohci1394.
34 34
35 NOTE: 35 NOTE:
36 36 If you want to install firewire-ohci and ohci1394 together, you
37 You should only build either ohci1394 or the new firewire-ohci driver, 37 should configure them only as modules and blacklist the driver(s)
38 but not both. If you nevertheless want to install both, you should 38 which you don't want to have auto-loaded. Add either
39 configure them only as modules and blacklist the driver(s) which you
40 don't want to have auto-loaded. Add either
41 39
42 blacklist firewire-ohci 40 blacklist firewire-ohci
43 or 41 or
@@ -46,12 +44,7 @@ config IEEE1394_OHCI1394
46 blacklist dv1394 44 blacklist dv1394
47 45
48 to /etc/modprobe.conf or /etc/modprobe.d/* and update modprobe.conf 46 to /etc/modprobe.conf or /etc/modprobe.d/* and update modprobe.conf
49 depending on your distribution. The latter two modules should be 47 depending on your distribution.
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 48
56comment "PCILynx controller requires I2C" 49comment "PCILynx controller requires I2C"
57 depends on IEEE1394 && I2C=n 50 depends on IEEE1394 && I2C=n
@@ -105,7 +98,7 @@ config IEEE1394_ETH1394_ROM_ENTRY
105 default n 98 default n
106 99
107config IEEE1394_ETH1394 100config IEEE1394_ETH1394
108 tristate "IP networking over 1394" 101 tristate "IP networking over 1394 (experimental)"
109 depends on IEEE1394 && EXPERIMENTAL && INET 102 depends on IEEE1394 && EXPERIMENTAL && INET
110 select IEEE1394_ETH1394_ROM_ENTRY 103 select IEEE1394_ETH1394_ROM_ENTRY
111 help 104 help