xref: /linux/Documentation/driver-api/firewire.rst (revision 3a39d672e7f48b8d6b91a09afa4b55352773b4b5)
1ea2ae0ecSRandy Dunlap===========================================
2ea2ae0ecSRandy DunlapFirewire (IEEE 1394) driver Interface Guide
3ea2ae0ecSRandy Dunlap===========================================
4ea2ae0ecSRandy Dunlap
5ea2ae0ecSRandy DunlapIntroduction and Overview
6ea2ae0ecSRandy Dunlap=========================
7ea2ae0ecSRandy Dunlap
82f4830efSTakashi SakamotoThe Linux FireWire subsystem adds some interfaces into the Linux system to
92f4830efSTakashi Sakamoto use/maintain+any resource on IEEE 1394 bus.
102f4830efSTakashi Sakamoto
112f4830efSTakashi SakamotoThe main purpose of these interfaces is to access address space on each node
122f4830efSTakashi Sakamotoon IEEE 1394 bus by ISO/IEC 13213 (IEEE 1212) procedure, and to control
132f4830efSTakashi Sakamotoisochronous resources on the bus by IEEE 1394 procedure.
142f4830efSTakashi Sakamoto
152f4830efSTakashi SakamotoTwo types of interfaces are added, according to consumers of the interface. A
162f4830efSTakashi Sakamotoset of userspace interfaces is available via `firewire character devices`. A set
172f4830efSTakashi Sakamotoof kernel interfaces is available via exported symbols in `firewire-core` module.
18ea2ae0ecSRandy Dunlap
19ea2ae0ecSRandy DunlapFirewire char device data structures
20ea2ae0ecSRandy Dunlap====================================
21ea2ae0ecSRandy Dunlap
22b0ac702fSRandy Dunlap.. include:: ../ABI/stable/firewire-cdev
232f4830efSTakashi Sakamoto    :literal:
242f4830efSTakashi Sakamoto
25ea2ae0ecSRandy Dunlap.. kernel-doc:: include/uapi/linux/firewire-cdev.h
26ea2ae0ecSRandy Dunlap    :internal:
27ea2ae0ecSRandy Dunlap
28ea2ae0ecSRandy DunlapFirewire device probing and sysfs interfaces
29ea2ae0ecSRandy Dunlap============================================
30ea2ae0ecSRandy Dunlap
31b0ac702fSRandy Dunlap.. include:: ../ABI/stable/sysfs-bus-firewire
322f4830efSTakashi Sakamoto    :literal:
332f4830efSTakashi Sakamoto
34ea2ae0ecSRandy Dunlap.. kernel-doc:: drivers/firewire/core-device.c
35ea2ae0ecSRandy Dunlap    :export:
36ea2ae0ecSRandy Dunlap
37ea2ae0ecSRandy DunlapFirewire core transaction interfaces
38ea2ae0ecSRandy Dunlap====================================
39ea2ae0ecSRandy Dunlap
40ea2ae0ecSRandy Dunlap.. kernel-doc:: drivers/firewire/core-transaction.c
41ea2ae0ecSRandy Dunlap    :export:
42ea2ae0ecSRandy Dunlap
43ea2ae0ecSRandy DunlapFirewire Isochronous I/O interfaces
44ea2ae0ecSRandy Dunlap===================================
45ea2ae0ecSRandy Dunlap
46*446216bdSTakashi Sakamoto.. kernel-doc:: include/linux/firewire.h
47*446216bdSTakashi Sakamoto   :functions: fw_iso_context_schedule_flush_completions
48ea2ae0ecSRandy Dunlap.. kernel-doc:: drivers/firewire/core-iso.c
49ea2ae0ecSRandy Dunlap   :export:
50ea2ae0ecSRandy Dunlap
51