Documentation/ABI/stable/firewire-cdev

Source file repositories/reference/linux-study-clean/Documentation/ABI/stable/firewire-cdev

File Facts

System
Linux kernel
Corpus path
Documentation/ABI/stable/firewire-cdev
Extension
[no extension]
Size
4281 bytes
Lines
112
Domain
Support Tooling And Documentation
Bucket
Documentation
Inferred role
Support Tooling And Documentation: Documentation
Status
atlas-only

Why This File Exists

Repository support layer: documentation, build tooling, samples, user-space helper tools, generated initramfs support, licenses, and validation utilities.

Dependency Surface

Detected Declarations

Annotated Snippet

What:		/dev/fw[0-9]+
Date:		May 2007
KernelVersion:	2.6.22
Contact:	linux1394-devel@lists.sourceforge.net
Description:
		The character device files /dev/fw* are the interface between
		firewire-core and IEEE 1394 device drivers implemented in
		userspace.  The ioctl(2)- and read(2)-based ABI is defined and
		documented in <linux/firewire-cdev.h>.

		This ABI offers most of the features which firewire-core also
		exposes to kernelspace IEEE 1394 drivers.

		Each /dev/fw* is associated with one IEEE 1394 node, which can
		be remote or local nodes.  Operations on a /dev/fw* file have
		different scope:

		  - The 1394 node which is associated with the file:

			  - Asynchronous request transmission
			  - Get the Configuration ROM
			  - Query node ID
			  - Query maximum speed of the path between this node
			    and local node

		  - The 1394 bus (i.e. "card") to which the node is attached to:

			  - Isochronous stream transmission and reception
			  - Asynchronous stream transmission and reception
			  - Asynchronous broadcast request transmission
			  - PHY packet transmission and reception
			  - Allocate, reallocate, deallocate isochronous
			    resources (channels, bandwidth) at the bus's IRM
			  - Query node IDs of local node, root node, IRM, bus
			    manager
			  - Query cycle time
			  - Bus reset initiation, bus reset event reception

		  - All 1394 buses:

			  - Allocation of IEEE 1212 address ranges on the local
			    link layers, reception of inbound requests to such
			    an address range, asynchronous response transmission
			    to inbound requests
			  - Addition of descriptors or directories to the local
			    nodes' Configuration ROM

		Due to the different scope of operations and in order to let
		userland implement different access permission models, some
		operations are restricted to /dev/fw* files that are associated
		with a local node:

			  - Addition of descriptors or directories to the local
			    nodes' Configuration ROM
			  - PHY packet transmission and reception

		A /dev/fw* file remains associated with one particular node
		during its entire life time.  Bus topology changes, and hence
		node ID changes, are tracked by firewire-core.  ABI users do not
		need to be aware of topology.

		The following file operations are supported:

		open(2)
		    Currently the only useful flags are O_RDWR.

		ioctl(2)
		    Initiate various actions.  Some take immediate effect, others
		    are performed asynchronously while or after the ioctl returns.
		    See the inline documentation in <linux/firewire-cdev.h> for

Annotation

Implementation Notes