1 # SPDX-License-Identifier: GPL-2.0-only
2 menu "IEEE 1394 (FireWire) support"
3 depends on PCI || COMPILE_TEST
4 # firewire-core does not depend on PCI but is
5 # not useful without PCI controller driver
8 tristate "FireWire driver stack"
11 This is the new-generation IEEE 1394 (FireWire) driver stack
12 a.k.a. Juju, a new implementation designed for robustness and
14 See http://ieee1394.docs.kernel.org/en/latest/migration.html
15 for information about migration from the older Linux 1394 stack
16 to the new driver stack.
18 To compile this driver as a module, say M here: the module will be
21 config FIREWIRE_KUNIT_UAPI_TEST
22 tristate "KUnit tests for layout of structure in UAPI" if !KUNIT_ALL_TESTS
23 depends on FIREWIRE && KUNIT
24 default KUNIT_ALL_TESTS
26 This builds the KUnit tests whether structures exposed to user
27 space have expected layout.
29 KUnit tests run during boot and output the results to the debug
30 log in TAP format (https://testanything.org/). Only useful for
31 kernel devs running KUnit test harness and are not for inclusion
32 into a production build.
34 For more information on KUnit and unit tests in general, refer
35 to the KUnit documentation in Documentation/dev-tools/kunit/.
37 config FIREWIRE_KUNIT_DEVICE_ATTRIBUTE_TEST
38 tristate "KUnit tests for device attributes" if !KUNIT_ALL_TESTS
39 depends on FIREWIRE && KUNIT
40 default KUNIT_ALL_TESTS
42 This builds the KUnit tests for device attribute for node and
45 KUnit tests run during boot and output the results to the debug
46 log in TAP format (https://testanything.org/). Only useful for
47 kernel devs running KUnit test harness and are not for inclusion
48 into a production build.
50 For more information on KUnit and unit tests in general, refer
51 to the KUnit documentation in Documentation/dev-tools/kunit/.
53 config FIREWIRE_KUNIT_PACKET_SERDES_TEST
54 tristate "KUnit tests for packet serialization/deserialization" if !KUNIT_ALL_TESTS
55 depends on FIREWIRE && KUNIT
56 default KUNIT_ALL_TESTS
58 This builds the KUnit tests for packet serialization and
61 KUnit tests run during boot and output the results to the debug
62 log in TAP format (https://testanything.org/). Only useful for
63 kernel devs running KUnit test harness and are not for inclusion
64 into a production build.
66 For more information on KUnit and unit tests in general, refer
67 to the KUnit documentation in Documentation/dev-tools/kunit/.
69 config FIREWIRE_KUNIT_SELF_ID_SEQUENCE_HELPER_TEST
70 tristate "KUnit tests for helpers of self ID sequence" if !KUNIT_ALL_TESTS
71 depends on FIREWIRE && KUNIT
72 default KUNIT_ALL_TESTS
74 This builds the KUnit tests for helpers of self ID sequence.
76 KUnit tests run during boot and output the results to the debug
77 log in TAP format (https://testanything.org/). Only useful for
78 kernel devs running KUnit test harness and are not for inclusion
79 into a production build.
81 For more information on KUnit and unit tests in general, refer
82 to the KUnit documentation in Documentation/dev-tools/kunit/.
85 tristate "OHCI-1394 controllers"
86 depends on PCI && FIREWIRE && MMU
88 Enable this driver if you have a FireWire controller based
89 on the OHCI specification. For all practical purposes, this
90 is the only chipset in use, so say Y here.
92 To compile this driver as a module, say M here: The module will be
95 config FIREWIRE_KUNIT_OHCI_SERDES_TEST
96 tristate "KUnit tests for serialization/deserialization of data in buffers/registers" if !KUNIT_ALL_TESTS
97 depends on FIREWIRE && KUNIT
98 default KUNIT_ALL_TESTS
100 This builds the KUnit tests to check serialization and deserialization
101 of data in buffers and registers defined in 1394 OHCI specification.
103 KUnit tests run during boot and output the results to the debug
104 log in TAP format (https://testanything.org/). Only useful for
105 kernel devs running KUnit test harness and are not for inclusion
106 into a production build.
108 For more information on KUnit and unit tests in general, refer
109 to the KUnit documentation in Documentation/dev-tools/kunit/.
112 tristate "Storage devices (SBP-2 protocol)"
113 depends on FIREWIRE && SCSI
115 This option enables you to use SBP-2 devices connected to a
116 FireWire bus. SBP-2 devices include storage devices like
117 harddisks and DVD drives, also some other FireWire devices
120 To compile this driver as a module, say M here: The module will be
121 called firewire-sbp2.
123 You should also enable support for disks, CD-ROMs, etc. in the SCSI
124 configuration section.
127 tristate "IP networking over 1394"
128 depends on FIREWIRE && INET
130 This enables IPv4/IPv6 over IEEE 1394, providing IP connectivity
131 with other implementations of RFC 2734/3146 as found on several
132 operating systems. Multicast support is currently limited.
134 To compile this driver as a module, say M here: The module will be
138 tristate "Nosy - a FireWire traffic sniffer for PCILynx cards"
141 Nosy is an IEEE 1394 packet sniffer that is used for protocol
142 analysis and in development of IEEE 1394 drivers, applications,
145 This driver lets you use a Texas Instruments PCILynx 1394 to PCI
146 link layer controller TSB12LV21/A/B as a low-budget bus analyzer.
147 PCILynx is a nowadays very rare IEEE 1394 controller which is
148 not OHCI 1394 compliant.
150 The following cards are known to be based on PCILynx or PCILynx-2:
151 IOI IOI-1394TT (PCI card), Unibrain Fireboard 400 PCI Lynx-2
152 (PCI card), Newer Technology FireWire 2 Go (CardBus card),
153 Apple Power Mac G3 blue & white and G4 with PCI graphics
154 (onboard controller).
156 To compile this driver as a module, say M here: The module will be
157 called nosy. Source code of a userspace interface to nosy, called
158 nosy-dump, can be found in tools/firewire/ of the kernel sources.