diff options
author | Stefan Richter <stefanr@s5r6.in-berlin.de> | 2009-06-16 16:36:34 -0400 |
---|---|---|
committer | Stefan Richter <stefanr@s5r6.in-berlin.de> | 2009-06-21 04:53:26 -0400 |
commit | 0c53decdd0a9f9c459ccabe0b5f79660bde5375b (patch) | |
tree | b0956ec994028dc65e1e7ce51d05862018971e15 | |
parent | 00635b8ee2b5650fd01f5602ecfa289db336b570 (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/Kconfig | 52 | ||||
-rw-r--r-- | drivers/ieee1394/Kconfig | 19 |
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 @@ | |||
1 | comment "A new alternative FireWire stack is available with EXPERIMENTAL=y" | 1 | comment "You can enable one or both FireWire driver stacks." |
2 | depends on EXPERIMENTAL=n | 2 | comment "See the help texts for more information." |
3 | |||
4 | comment "Enable only one of the two stacks, unless you know what you are doing" | ||
5 | depends on EXPERIMENTAL | ||
6 | 3 | ||
7 | config FIREWIRE | 4 | config 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 | ||
27 | config FIREWIRE_OHCI | 28 | config 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 | ||
60 | config FIREWIRE_OHCI_DEBUG | 54 | config FIREWIRE_OHCI_DEBUG |
61 | bool | 55 | bool |
@@ -79,13 +73,15 @@ config FIREWIRE_SBP2 | |||
79 | configuration section. | 73 | configuration section. |
80 | 74 | ||
81 | config FIREWIRE_NET | 75 | config 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" | |||
4 | source "drivers/firewire/Kconfig" | 4 | source "drivers/firewire/Kconfig" |
5 | 5 | ||
6 | config IEEE1394 | 6 | config 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 | ||
56 | comment "PCILynx controller requires I2C" | 49 | comment "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 | ||
107 | config IEEE1394_ETH1394 | 100 | config 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 |