diff options
| author | 2004-11-11 03:19:09 +0000 | |
|---|---|---|
| committer | 2004-11-11 03:19:09 +0000 | |
| commit | 940fabaf397c9bc9b6b5457bab45ef9913513248 (patch) | |
| tree | 410e4911c9e9b32b4c8520e29be72e05a086d476 /doc | |
| parent | revert kernel protocol version (diff) | |
reorganize and update documentation; fix compiler warning
git-svn-id: svn://svn.linux1394.org/libraw1394/trunk@144 53a565d1-3bb7-0310-b661-cf11e63c67ab
Diffstat (limited to 'doc')
| -rw-r--r-- | doc/libraw1394.sgml | 4508 |
1 files changed, 4156 insertions, 352 deletions
diff --git a/doc/libraw1394.sgml b/doc/libraw1394.sgml index fc54c91..da0109c 100644 --- a/doc/libraw1394.sgml +++ b/doc/libraw1394.sgml @@ -880,359 +880,4163 @@ <chapter id="functions"> <title>Function Reference</title> - <refentry> - <refmeta> - <refentrytitle>raw1394_new_handle</refentrytitle> - <manvolnum>3</manvolnum> - </refmeta> - - <refnamediv> - <refname>raw1394_new_handle</refname> - <refpurpose>create new handle</refpurpose> - </refnamediv> - - <refsynopsisdiv> - <funcsynopsis> - <funcprototype> - <funcdef>raw1394handle_t <function>raw1394_new_handle</function></funcdef> - <void> - </funcprototype> - </funcsynopsis> - </refsynopsisdiv> - - <refsect1> - <title>Description</title> - - <para> - Creates and returns a new handle. It is not allowed to use the same - handle in multiple threads or forked processes. It is allowed to - create and use multiple handles, however. Use one handle per thread - which needs it in the multithreaded case. - </para> - </refsect1> - - <refsect1> - <title>Return Value</title> - - <para> - Returns the created handle or <constant>NULL</constant> when - initialization fails. In the latter case <varname>errno</varname> - either contains some OS specific error code or <constant>0</constant> - if the error is that libraw1394 and raw1394 don't support each other's - protocol versions. - </para> - </refsect1> - </refentry> - - <refentry> - <refmeta> - <refentrytitle>raw1394_destroy_handle</refentrytitle> - <manvolnum>3</manvolnum> - </refmeta> - - <refnamediv> - <refname>raw1394_destroy_handle</refname> - <refpurpose>deallocate handle</refpurpose> - </refnamediv> - - <refsynopsisdiv> - <funcsynopsis> - <funcprototype> - <funcdef>void <function>raw1394_destroy_handle</function></funcdef> - <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> - </funcprototype> - </funcsynopsis> - </refsynopsisdiv> - - <refsect1> - <title>Arguments</title> - - <variablelist> - <varlistentry> - <term><parameter>handle</parameter></term> - <listitem> - <para>handle to be deallocated</para> - </listitem> - </varlistentry> - </variablelist> - </refsect1> - - <refsect1> - <title>Description</title> - - <para> - Closes connection with raw1394 on this handle and deallocates - everything associated with it. It is safe to pass - <constant>NULL</constant> as handle, nothing is done in this case. - </para> - </refsect1> - </refentry> - - <refentry> - <refmeta> - <refentrytitle>raw1394_get_port_info</refentrytitle> - <manvolnum>3</manvolnum> - </refmeta> - - <refnamediv> - <refname>raw1394_get_port_info</refname> - <refpurpose>get information about connected ports</refpurpose> - </refnamediv> - - <refsynopsisdiv> - <funcsynopsis> - <funcprototype> - <funcdef>int <function>raw1394_get_port_info</function></funcdef> - <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> - <paramdef>struct raw1394_port_info *<parameter>pinf</parameter></paramdef> - <paramdef>int <parameter>maxports</parameter></paramdef> - </funcprototype> - </funcsynopsis> - </refsynopsisdiv> - - <refsect1> - <title>Arguments</title> - - <variablelist> - <varlistentry> - <term><parameter>pinf</parameter></term> - <listitem> - <para>Pointer to an array of structure of type - <structname>raw1394_port_info</structname> which will be filled in - by the function.</para> - </listitem> - </varlistentry> - <varlistentry> - <term><parameter>maxports</parameter></term> - <listitem> - <para>Maximum number of <parameter>pinf</parameter> structures to - fill in. Zero is valid.</para> - </listitem> - </varlistentry> - </variablelist> - </refsect1> - - <refsect1> - <title>Return Value</title> - - <para> - The number of ports currently existing. - </para> - </refsect1> - - <refsect1> - <title>Description</title> - - <para> - Before you can set which port to use, you use this function to find - out which ports exist. The <structname>raw1394_port_info</structname> - structure looks like this: - - <programlisting> -struct <structname>raw1394_portinfo</structname> { - int <structfield>nodes</structfield>; - char <structfield>name</structfield>[32]; -}; - </programlisting> - </para> - - <para> - The field <structfield>nodes</structfield> contains the number of - nodes that are currently connected to that port, the field - <structfield>name</structfield> contains the name of the hardware - type. If your program is interactive, you should present the user - with this list to let them decide which port to use. A - non-interactive program (and probably interactive ones, too) should - provide a command line option to choose the port. - </para> - </refsect1> - </refentry> - - - <refentry> - <refmeta> - <refentrytitle>raw1394_get_fd</refentrytitle> - <manvolnum>3</manvolnum> - </refmeta> - - <refnamediv> - <refname>raw1394_get_fd</refname> - <refpurpose>get the communication file descriptor</refpurpose> - </refnamediv> - - <refsynopsisdiv> - <funcsynopsis> - <funcprototype> - <funcdef>int <function>raw1394_get_fd</function></funcdef> - <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> - </funcprototype> - </funcsynopsis> - </refsynopsisdiv> - - <refsect1> - <title>Arguments</title> - - <variablelist> - <varlistentry> - <term><parameter>handle</parameter></term> - <listitem> - <para>handle of which the fd is to be returned from</para> - </listitem> - </varlistentry> - </variablelist> - </refsect1> - - <refsect1> - <title>Description</title> - - <para> - Returns the fd used for communication with the raw1394 kernel module. - This can be used for - <function>select()</function>/<function>poll()</function> calls if you - wait on other fds or can be integrated into another event loop - (e.g. from a GUI application framework). It can also be used to - set/remove the <constant>O_NONBLOCK</constant> flag using - <function>fcntl()</function> to modify the block behaviour in - <function>raw1394_loop_iterate()</function>. It must not be used for - anything else. - </para> - </refsect1> - - <refsect1> - <title>Return Value</title> - - <para> - The fd of the communication stream. Invalid fds may be returned - before a port was set using <function>raw1394_set_port()</function>. - </para> - </refsect1> - </refentry> - - <refentry> - <refmeta> - <refentrytitle>raw1394_(get|set)_userdata</refentrytitle> - <manvolnum>3</manvolnum> - </refmeta> - - <refnamediv> - <refname>raw1394_get_userdata</refname> - <refname>raw1394_set_userdata</refname> - <refpurpose>associate user data with a handle</refpurpose> - </refnamediv> - - <refsynopsisdiv> - <funcsynopsis> - <funcprototype> - <funcdef>void *<function>raw1394_get_userdata</function></funcdef> - <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> - </funcprototype> - <funcprototype> - <funcdef>void <function>raw1394_set_userdata</function></funcdef> - <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> - </funcprototype> - </funcsynopsis> - </refsynopsisdiv> - - <refsect1> - <title>Arguments</title> - - <variablelist> - <varlistentry> - <term><parameter>handle</parameter></term> - <listitem> - <para>handle associated with the user data</para> - </listitem> - </varlistentry> - </variablelist> - </refsect1> - - <refsect1> - <title>Description</title> - - <para> - Allows to associate one void pointer with a handle. libraw1394 does - not care about the data, it just stores it in the handle allowing it - to be retrieved at any time. This can be useful when multiple handles - are used, so that callbacks can identify the handle. - </para> - </refsect1> - - <refsect1> - <title>Return Value</title> - - <para> - <function>raw1394_get_userdata()</function> returns the void pointer - associated with the handle. - </para> - </refsect1> - </refentry> - - <refentry> - <refmeta> - <refentrytitle>raw1394_get_(local_id|irm_id|nodecount)</refentrytitle> - <manvolnum>3</manvolnum> - </refmeta> - - <refnamediv> - <refname>raw1394_get_local_id</refname> - <refname>raw1394_get_irm_id</refname> - <refname>raw1394_get_nodecount</refname> - <refpurpose>return basic information about the bus</refpurpose> - </refnamediv> - - <refsynopsisdiv> - <funcsynopsis> - <funcprototype> - <funcdef>nodeid_t <function>raw1394_get_local_id</function></funcdef> - <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> - </funcprototype> - <funcprototype> - <funcdef>nodeid_t <function>raw1394_get_irm_id</function></funcdef> - <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> - </funcprototype> - <funcprototype> - <funcdef>int <function>raw1394_get_nodecount</function></funcdef> - <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> - </funcprototype> - </funcsynopsis> - </refsynopsisdiv> - - <refsect1> - <title>Arguments</title> - - <variablelist> - <varlistentry> - <term><parameter>handle</parameter></term> - <listitem> - <para>handle associated with a 1394 bus</para> - </listitem> - </varlistentry> - </variablelist> - </refsect1> - - <refsect1> - <title>Description</title> - - <para> - These functions return information about the 1394 bus the handle is - associated with. The values that can be queried through these - functions can change with every bus reset. - </para> - </refsect1> - - <refsect1> - <title>Return Value</title> +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-iso-xmit-init">raw1394_iso_xmit_init</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_iso_xmit_init</refname> + <refpurpose> + initialize isochronous transmission + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>int <function>raw1394_iso_xmit_init </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + <paramdef>raw1394_iso_xmit_handler_t <parameter>handler</parameter></paramdef> + <paramdef>unsigned int <parameter>buf_packets</parameter></paramdef> + <paramdef>unsigned int <parameter>max_packet_size</parameter></paramdef> + <paramdef>unsigned char <parameter>channel</parameter></paramdef> + <paramdef>enum raw1394_iso_speed <parameter>speed</parameter></paramdef> + <paramdef>int <parameter>irq_interval</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>handler</parameter></term> + <listitem> + <para> + handler function for queueing packets + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>buf_packets</parameter></term> + <listitem> + <para> + number of isochronous packets to buffer + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>max_packet_size</parameter></term> + <listitem> + <para> + largest packet you need to handle, in bytes + (not including the isochronous header) + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>channel</parameter></term> + <listitem> + <para> + isochronous channel on which to transmit + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>speed</parameter></term> + <listitem> + <para> + speed at which to transmit + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>irq_interval</parameter></term> + <listitem> + <para> + maximum latency of wake-ups, in packets (-1 if you don't care) + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + Allocates all user and kernel resources necessary for isochronous transmission. + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-iso-recv-init">raw1394_iso_recv_init</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_iso_recv_init</refname> + <refpurpose> + initialize isochronous reception + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>int <function>raw1394_iso_recv_init </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + <paramdef>raw1394_iso_recv_handler_t <parameter>handler</parameter></paramdef> + <paramdef>unsigned int <parameter>buf_packets</parameter></paramdef> + <paramdef>unsigned int <parameter>max_packet_size</parameter></paramdef> + <paramdef>unsigned char <parameter>channel</parameter></paramdef> + <paramdef>enum raw1394_iso_dma_recv_mode <parameter>mode</parameter></paramdef> + <paramdef>int <parameter>irq_interval</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>handler</parameter></term> + <listitem> + <para> + handler function for receiving packets + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>buf_packets</parameter></term> + <listitem> + <para> + number of isochronous packets to buffer + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>max_packet_size</parameter></term> + <listitem> + <para> + largest packet you need to handle, in bytes (not including + the isochronous header) + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>channel</parameter></term> + <listitem> + <para> + isochronous channel to receive + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>mode</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>irq_interval</parameter></term> + <listitem> + <para> + maximum latency of wake-ups, in packets + (-1 if you don't care) + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + Allocates all user and kernel resources necessary for isochronous reception. + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-iso-multichannel-recv-init">raw1394_iso_multichannel_recv_init</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_iso_multichannel_recv_init</refname> + <refpurpose> + initialize multi-channel iso reception + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>int <function>raw1394_iso_multichannel_recv_init </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + <paramdef>raw1394_iso_recv_handler_t <parameter>handler</parameter></paramdef> + <paramdef>unsigned int <parameter>buf_packets</parameter></paramdef> + <paramdef>unsigned int <parameter>max_packet_size</parameter></paramdef> + <paramdef>int <parameter>irq_interval</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>handler</parameter></term> + <listitem> + <para> + handler function for receiving packets + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>buf_packets</parameter></term> + <listitem> + <para> + number of isochronous packets to buffer + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>max_packet_size</parameter></term> + <listitem> + <para> + largest packet you need to handle, in bytes (not including + the isochronous header) + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>irq_interval</parameter></term> + <listitem> + <para> + maximum latency of wake-ups, in packets (-1 if you don't care) + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + Allocates all user and kernel resources necessary for isochronous reception. + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-iso-recv-listen-channel">raw1394_iso_recv_listen_channel</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_iso_recv_listen_channel</refname> + <refpurpose> + listen to a specific channel in multi-channel mode + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>int <function>raw1394_iso_recv_listen_channel </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + <paramdef>unsigned char <parameter>channel</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>channel</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + listen/unlisten on a specific channel (multi-channel mode ONLY) + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-iso-recv-unlisten-channel">raw1394_iso_recv_unlisten_channel</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_iso_recv_unlisten_channel</refname> + <refpurpose> + stop listening to a specific channel in multi-channel mode + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>int <function>raw1394_iso_recv_unlisten_channel </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + <paramdef>unsigned char <parameter>channel</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>channel</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-iso-recv-set-channel-mask">raw1394_iso_recv_set_channel_mask</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_iso_recv_set_channel_mask</refname> + <refpurpose> + listen or unlisten to a whole bunch of channels at once + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>int <function>raw1394_iso_recv_set_channel_mask </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + <paramdef>u_int64_t <parameter>mask</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>mask</parameter></term> + <listitem> + <para> + 64-bit mask of channels, 1 means listen, 0 means unlisten, + channel 0 is LSB, channel 63 is MSB + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + for multi-channel reception mode only + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-iso-xmit-start">raw1394_iso_xmit_start</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_iso_xmit_start</refname> + <refpurpose> + begin isochronous transmission + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>int <function>raw1394_iso_xmit_start </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + <paramdef>int <parameter>start_on_cycle</parameter></paramdef> + <paramdef>int <parameter>prebuffer_packets</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>start_on_cycle</parameter></term> + <listitem> + <para> + isochronous cycle number on which to start + (-1 if you don't care) + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>prebuffer_packets</parameter></term> + <listitem> + <para> + number of packets to queue up before starting transmission + (-1 if you don't care) + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-iso-recv-start">raw1394_iso_recv_start</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_iso_recv_start</refname> + <refpurpose> + begin isochronous reception + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>int <function>raw1394_iso_recv_start </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + <paramdef>int <parameter>start_on_cycle</parameter></paramdef> + <paramdef>int <parameter>tag_mask</parameter></paramdef> + <paramdef>int <parameter>sync</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>start_on_cycle</parameter></term> + <listitem> + <para> + isochronous cycle number on which to start + (-1 if you don't care) + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>tag_mask</parameter></term> + <listitem> + <para> + mask of tag fields to match (-1 to receive all packets) + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>sync</parameter></term> + <listitem> + <para> + not used, reserved for future implementation + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-iso-xmit-write">raw1394_iso_xmit_write</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_iso_xmit_write</refname> + <refpurpose> + alternative blocking-write API for ISO transmission + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>int <function>raw1394_iso_xmit_write </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + <paramdef>unsigned char * <parameter>data</parameter></paramdef> + <paramdef>unsigned int <parameter>len</parameter></paramdef> + <paramdef>unsigned char <parameter>tag</parameter></paramdef> + <paramdef>unsigned char <parameter>sy</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>data</parameter></term> + <listitem> + <para> + pointer to packet data buffer + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>len</parameter></term> + <listitem> + <para> + length of packet, in bytes + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>tag</parameter></term> + <listitem> + <para> + tag field + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>sy</parameter></term> + <listitem> + <para> + sync field + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + <function>write</function> style API - do NOT use this if you have set an xmit_handler + if buffer is full, waits for more space UNLESS the file descriptor is + set to non-blocking, in which case <function>xmit_write</function> will return -1 with + errno = EAGAIN + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-iso-xmit-sync">raw1394_iso_xmit_sync</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_iso_xmit_sync</refname> + <refpurpose> + wait until all queued packets have been sent + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>int <function>raw1394_iso_xmit_sync </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-iso-recv-flush">raw1394_iso_recv_flush</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_iso_recv_flush</refname> + <refpurpose> + flush all already received iso packets from kernel into user space + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>int <function>raw1394_iso_recv_flush </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + If you specified an irq_interval > 1 in + iso_recv_init, you won't be notified for every single iso packet, but + for groups of them. Now e.g. if irq_interval is 100, and you were just + notified about iso packets and after them only 20 more packets arrived, + no notification will be generated (20 < 100). In the case that you know + that there should be more packets at this moment, you can call this + function and all iso packets which are already received by the kernel + will be flushed out to user space. + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-iso-stop">raw1394_iso_stop</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_iso_stop</refname> + <refpurpose> + halt isochronous transmission or reception + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>void <function>raw1394_iso_stop </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-iso-shutdown">raw1394_iso_shutdown</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_iso_shutdown</refname> + <refpurpose> + clean up and deallocate all resources for isochronous transmission or reception + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>void <function>raw1394_iso_shutdown </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-get-errcode">raw1394_get_errcode</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_get_errcode</refname> + <refpurpose> + return error code of async transaction + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>raw1394_errcode_t <function>raw1394_get_errcode </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + Returns the error code of the last <function>raw1394_read</function>, <function>raw1394_write</function>, + <function>raw1394_lock</function> or <function>raw1394_iso_write</function>. The error code is either an internal + error (i.e. not a bus error) or a combination of acknowledge code and + response code, as appropriate. + </para><para> + + Some macros are available to extract information from the error code, + <function>raw1394_errcode_to_errno</function> can be used to convert it to an errno number of + roughly the same meaning. + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-errcode-to-errno">raw1394_errcode_to_errno</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_errcode_to_errno</refname> + <refpurpose> + convert libraw1394 errcode to errno + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>int <function>raw1394_errcode_to_errno </function></funcdef> + <paramdef>raw1394_errcode_t <parameter>errcode</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>errcode</parameter></term> + <listitem> + <para> + the error code to convert + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + The error code as retrieved by <function>raw1394_get_errcode</function> is converted into a + roughly equivalent errno number and returned. <constant>0xdead</constant> is returned for an + illegal errcode. + </para><para> + + It is intended to be used to decide what to do (retry, give up, report error) + for those programs that aren't interested in details, since these get lost in + the conversion. However the returned errnos are equivalent in source code + meaning only, the associated text of e.g. <function>perror</function> is not necessarily + meaningful. + </para><para> + + Returned values are <constant>EAGAIN</constant> (retrying might succeed, also generation number + mismatch), <constant>EREMOTEIO</constant> (other node had internal problems), <constant>EPERM</constant> (operation + not allowed on this address, e.g. write on read-only location), <constant>EINVAL</constant> + (invalid argument) and <constant>EFAULT</constant> (invalid pointer). + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-new-handle">raw1394_new_handle</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_new_handle</refname> + <refpurpose> + create new handle + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>raw1394handle_t <function>raw1394_new_handle </function></funcdef> + <paramdef> <parameter>void</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>void</parameter></term> + <listitem> + <para> + no arguments + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + </para><para> + + Creates and returns a new handle which can (after being set up) control one + port. It is not allowed to use the same handle in multiple threads or forked + processes. It is allowed to create and use multiple handles, however. Use + one handle per thread which needs it in the multithreaded case. + </para><para> + + Returns the created handle or <constant>NULL</constant> when initialization fails. In the latter + case errno either contains some OS specific error code or <constant>0</constant> if the error is + that libraw1394 and raw1394 don't support each other's protocol versions. + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-destroy-handle">raw1394_destroy_handle</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_destroy_handle</refname> + <refpurpose> + deallocate handle + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>void <function>raw1394_destroy_handle </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + handle to deallocate + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + Closes connection with raw1394 on this handle and deallocates everything + associated with it. It is safe to pass <constant>NULL</constant> as handle, nothing is done in + this case. + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-new-handle-on-port">raw1394_new_handle_on_port</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_new_handle_on_port</refname> + <refpurpose> + create a new handle and bind it to a port + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>raw1394handle_t <function>raw1394_new_handle_on_port </function></funcdef> + <paramdef>int <parameter>port</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>port</parameter></term> + <listitem> + <para> + port to connect to (same as argument to <function>raw1394_set_port</function>) + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + Same as <function>raw1394_new_handle</function>, but also binds the handle to the + specified 1394 port. Equivalent to <function>raw1394_new_handle</function> followed by + <function>raw1394_get_port_info</function> and <function>raw1394_set_port</function>. Useful for + command-line programs that already know what port they want. If + <function>raw1394_set_port</function> returns ESTALE, retries automatically. + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-busreset-notify">raw1394_busreset_notify</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_busreset_notify</refname> + <refpurpose> + Switch off/on busreset-notification for handle + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>int <function>raw1394_busreset_notify </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + <paramdef>int <parameter>off_on_switch</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>off_on_switch</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>returns</title> + <para> + ==0 success + !=0 failure + off_on_switch .... RAW1394_NOTIFY_OFF or RAW1394_NOTIFY_ON + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-get-fd">raw1394_get_fd</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_get_fd</refname> + <refpurpose> + get the communication file descriptor + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>int <function>raw1394_get_fd </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + Returns the fd used for communication with the raw1394 kernel module. This + can be used for <function>select</function>/<function>poll</function> calls if you wait on other fds or can be + integrated into another event loop (e.g. from a GUI application framework). + It can also be used to set/remove the O_NONBLOCK flag using <function>fcntl</function> to modify + the blocking behaviour in <function>raw1394_loop_iterate</function>. It must not be used for + anything else. + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-set-userdata">raw1394_set_userdata</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_set_userdata</refname> + <refpurpose> + associate user data with a handle + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>void <function>raw1394_set_userdata </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + <paramdef>void * <parameter>data</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>data</parameter></term> + <listitem> + <para> + user data (pointer) + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + Allows to associate one void pointer with a handle. libraw1394 does not care + about the data, it just stores it in the handle allowing it to be retrieved + at any time with <function>raw1394_get_userdata</function>. This can be useful when multiple + handles are used, so that callbacks can identify the handle. + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-get-userdata">raw1394_get_userdata</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_get_userdata</refname> + <refpurpose> + retrieve user data from handle + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>void * <function>raw1394_get_userdata </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + Returns the user data pointer associated with the handle using + <function>raw1394_set_userdata</function>. + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-get-local-id">raw1394_get_local_id</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_get_local_id</refname> + <refpurpose> + get node ID of the current port + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>nodeid_t <function>raw1394_get_local_id </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + Returns the node ID of the local node connected to which the handle is + connected. This value can change with every bus reset. + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-get-irm-id">raw1394_get_irm_id</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_get_irm_id</refname> + <refpurpose> + get node ID of isochronous resource manager + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>nodeid_t <function>raw1394_get_irm_id </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + Returns the node ID of the isochronous resource manager of the bus the handle + is connected to. This value may change with every bus reset. + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-get-nodecount">raw1394_get_nodecount</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_get_nodecount</refname> + <refpurpose> + get number of nodes on the bus + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>int <function>raw1394_get_nodecount </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + Returns the number of nodes on the bus to which the handle is connected. + This value can change with every bus reset. Since the root node always has + the highest node ID, this number can be used to determine that ID (it's + LOCAL_BUS|(count-1)). + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-get-port-info">raw1394_get_port_info</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_get_port_info</refname> + <refpurpose> + get information about available ports + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>int <function>raw1394_get_port_info </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + <paramdef>struct raw1394_portinfo * <parameter>pinf</parameter></paramdef> + <paramdef>int <parameter>maxports</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>pinf</parameter></term> + <listitem> + <para> + pointer to an array of struct raw1394_portinfo + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>maxports</parameter></term> + <listitem> + <para> + number of elements in <parameter>pinf</parameter> + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + Before you can set which port to use, you have to use this function to find + out which ports exist. + </para><para> + + If your program is interactive, you should present the user with this list to + let them decide which port to use if there is more than one. A + non-interactive program (and probably interactive ones, too) should provide a + command line option to choose the port. + </para><para> + + Returns the number of ports and writes information about them into <parameter>pinf</parameter>, but + not into more than <parameter>maxports</parameter> elements. If <parameter>maxports</parameter> is <constant>0</constant>, <parameter>pinf</parameter> can be + <constant>NULL</constant>, too. + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-set-port">raw1394_set_port</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_set_port</refname> + <refpurpose> + choose port for handle + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>int <function>raw1394_set_port </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + <paramdef>int <parameter>port</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>port</parameter></term> + <listitem> + <para> + port to connect to (corresponds to index of struct raw1394_portinfo) + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + This function connects the handle to the port given (as queried with + <function>raw1394_get_port_info</function>). If successful, <function>raw1394_get_port_info</function> and + <function>raw1394_set_port</function> are not allowed to be called afterwards on this handle. + To make up for this, all the other functions (those handling asynchronous and + isochronous transmissions) can now be called. + </para><para> + + Returns <constant>0</constant> for success and -1 for failure with errno set appropriately. A + possible failure mode is with errno = <constant>ESTALE</constant>, in this case the configuration + has changed since the call to <function>raw1394_get_port_info</function> and it has to be called + again to update your view of the available ports. + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-reset-bus">raw1394_reset_bus</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_reset_bus</refname> + <refpurpose> + initiate bus reset + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>int <function>raw1394_reset_bus </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + This function initiates a bus reset on the connected port. Usually this is + not necessary and should be avoided, this function is here for low level bus + control and debugging. + </para> +</refsect1> +<refsect1> + <title>Returns</title> + <para> + <constant>0</constant> for success and -1 for failure with errno set appropriately. + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-reset-bus-new">raw1394_reset_bus_new</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_reset_bus_new</refname> + <refpurpose> + Reset the connected bus (with certain type). + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>int <function>raw1394_reset_bus_new </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + <paramdef>int <parameter>type</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>type</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>returns</title> + <para> + -1 failure + 0 success + type .... RAW1394_SHORT_RESET or RAW1394_LONG_RESET + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-loop-iterate">raw1394_loop_iterate</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_loop_iterate</refname> + <refpurpose> + get and process one event message + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>int <function>raw1394_loop_iterate </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + Get one new message through handle and process it with the registered message + handler. This function will return <constant>-1</constant> for an error or the return value of + the handler which got executed. The default handlers always return zero. + </para><para> + + Note that some other library functions may call this function multiple times + to wait for their completion, some handler return values may get lost if you + use these. + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-set-bus-reset-handler">raw1394_set_bus_reset_handler</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_set_bus_reset_handler</refname> + <refpurpose> + set bus reset handler + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>bus_reset_handler_t <function>raw1394_set_bus_reset_handler </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + <paramdef>bus_reset_handler_t <parameter>new_h</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>new_h</parameter></term> + <listitem> + <para> + pointer to new handler + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + Sets the handler to be called on every bus reset to <parameter>new_h</parameter> and returns the + old handler. The default handler just calls <function>raw1394_update_generation</function>. + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-get-generation">raw1394_get_generation</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_get_generation</refname> + <refpurpose> + get generation number of handle + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>unsigned int <function>raw1394_get_generation </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + This function returns the generation number associated with the handle. The + generation number is incremented on every bus reset, and every transaction + started by raw1394 is tagged with the stored generation number. If these + don't match, the transaction will abort with an error. + </para><para> + + The generation number of the handle is not automatically updated, + <function>raw1394_update_generation</function> has to be used for this. + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-update-generation">raw1394_update_generation</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_update_generation</refname> + <refpurpose> + set generation number of handle + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>void <function>raw1394_update_generation </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + <paramdef>unsigned int <parameter>generation</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>generation</parameter></term> + <listitem> + <para> + new generation number + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + This function sets the generation number of the handle to <parameter>gen</parameter>. All requests + that apply to a single node ID are tagged with this number and abort with an + error if that is different from the generation number kept in the kernel. + This avoids acting on the wrong node which may have changed its ID in a bus + reset. + </para><para> + + You should call this within your bus reset handler with an incremented value. + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-set-tag-handler">raw1394_set_tag_handler</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_set_tag_handler</refname> + <refpurpose> + set request completion handler + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>tag_handler_t <function>raw1394_set_tag_handler </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + <paramdef>tag_handler_t <parameter>new_h</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>new_h</parameter></term> + <listitem> + <para> + pointer to new handler + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + Sets the handler to be called whenever a request completes to <parameter>new_h</parameter> and + returns the old handler. The default handler interprets the tag as a pointer + to a &struct raw1394_reqhandle and calls the callback in there. + </para><para> + + Care must be taken when replacing the tag handler and calling the synchronous + versions of the transaction functions (i.e. <function>raw1394_read</function>, <function>raw1394_write</function>, + <function>raw1394_lock</function>, <function>raw1394_iso_write</function>) since these do pass pointers to &struct + raw1394_reqhandle as the tag and expect the callback to be invoked. + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-set-arm-tag-handler">raw1394_set_arm_tag_handler</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_set_arm_tag_handler</refname> + <refpurpose> + set the async request handler + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>arm_tag_handler_t <function>raw1394_set_arm_tag_handler </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + <paramdef>arm_tag_handler_t <parameter>new_h</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>new_h</parameter></term> + <listitem> + <para> + pointer to new handler + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + Set the handler that will be called when an async read/write/lock arm_request + arrived. The default action is to call the arm_callback in the + raw1394_arm_reqhandle pointed to by arm_tag. Returns old handler. + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-set-fcp-handler">raw1394_set_fcp_handler</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_set_fcp_handler</refname> + <refpurpose> + set FCP handler + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>fcp_handler_t <function>raw1394_set_fcp_handler </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + <paramdef>fcp_handler_t <parameter>new_h</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>new_h</parameter></term> + <listitem> + <para> + pointer to new handler + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + Function Control Protocol is defined in IEC 61883-1. + </para><para> + + Sets the handler to be called when either FCP command or FCP response + registers get written to <parameter>new_h</parameter> and returns the old handler. The default + handler does nothing. + </para><para> + + In order to actually get FCP events, you have to enable it with + <function>raw1394_start_fcp_listen</function> and can stop it with <function>raw1394_stop_fcp_listen</function>. + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-int">int</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>int</refname> + <refpurpose> + This is the general request handler + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>typedef <function>int </function></funcdef> + <paramdef>* <parameter>req_callback_t</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>req_callback_t</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + </para><para> + + It is used by the default tag handler + when a request completes, it calls the callback and passes it the data + pointer and the error code of the request. + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-int">int</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>int</refname> + <refpurpose> + This is the general arm-request handle + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>typedef <function>int </function></funcdef> + <paramdef>* <parameter>arm_req_callback_t</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>arm_req_callback_t</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + (arm = address range mapping) + It is used by the default arm-tag handler when a request has been + received, it calls the arm_callback. + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-arm-register">raw1394_arm_register</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_arm_register</refname> + <refpurpose> + register an AddressRangeMapping + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>int <function>raw1394_arm_register </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + <paramdef>nodeaddr_t <parameter>start</parameter></paramdef> + <paramdef>size_t <parameter>length</parameter></paramdef> + <paramdef>byte_t * <parameter>initial_value</parameter></paramdef> + <paramdef>octlet_t <parameter>arm_tag</parameter></paramdef> + <paramdef>arm_options_t <parameter>access_rights</parameter></paramdef> + <paramdef>arm_options_t <parameter>notification_options</parameter></paramdef> + <paramdef>arm_options_t <parameter>client_transactions</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>start</parameter></term> + <listitem> + <para> + identifies addressrange + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>length</parameter></term> + <listitem> + <para> + identifies addressrange + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>initial_value</parameter></term> + <listitem> + <para> + pointer to buffer containing (if necessary) initial value + NULL means undefined + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>arm_tag</parameter></term> + <listitem> + <para> + identifier for arm_tag_handler + (usually pointer to raw1394_arm_reqhandle) + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>access_rights</parameter></term> + <listitem> + <para> + access-rights for registered addressrange handled + by kernel-part. Value is one or more binary or of the + following flags - ARM_READ, ARM_WRITE, ARM_LOCK + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>notification_options</parameter></term> + <listitem> + <para> + identifies for which type of request you want + to be notified. Value is one or more binary or of the + following flags - ARM_READ, ARM_WRITE, ARM_LOCK + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>client_transactions</parameter></term> + <listitem> + <para> + identifies for which type of request you want + to handle the request by the client application. + for those requests no response will be generated, but + has to be generated by the application. + Value is one or more binary or of the + following flags - ARM_READ, ARM_WRITE, ARM_LOCK + For each bit set here, notification_options and + access_rights will be ignored. + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + ARM = Adress Range Mapping + </para> +</refsect1> +<refsect1> + <title>returns</title> + <para> + 0 ... success + <0 ... failure + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-arm-unregister">raw1394_arm_unregister</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_arm_unregister</refname> + <refpurpose> + unregister an AddressRangeMapping + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>int <function>raw1394_arm_unregister </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + <paramdef>nodeaddr_t <parameter>start</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>start</parameter></term> + <listitem> + <para> + identifies addressrange for unregistering + (value of start have to be the same value + used for registering this adressrange) + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>returns</title> + <para> + 0 ... success + <0 ... failure + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-arm-set-buf">raw1394_arm_set_buf</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_arm_set_buf</refname> + <refpurpose> + set the buffer of an AdressRangeMapping + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>int <function>raw1394_arm_set_buf </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + <paramdef>nodeaddr_t <parameter>start</parameter></paramdef> + <paramdef>size_t <parameter>length</parameter></paramdef> + <paramdef>void * <parameter>buf</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>start</parameter></term> + <listitem> + <para> + identifies addressrange + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>length</parameter></term> + <listitem> + <para> + identifies addressrange + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>buf</parameter></term> + <listitem> + <para> + pointer to buffer + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + This function copies <parameter>length</parameter> bytes from user memory area <parameter>buf</parameter> + to one ARM block in kernel memory area + with start offset <parameter>start</parameter>. + </para> +</refsect1> +<refsect1> + <title>returns</title> + <para> + 0 ... success + <0 ... failure, and errno - error code + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-arm-get-buf">raw1394_arm_get_buf</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_arm_get_buf</refname> + <refpurpose> + get the buffer of an AdressRangeMapping + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>int <function>raw1394_arm_get_buf </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + <paramdef>nodeaddr_t <parameter>start</parameter></paramdef> + <paramdef>size_t <parameter>length</parameter></paramdef> + <paramdef>void * <parameter>buf</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>start</parameter></term> + <listitem> + <para> + identifies addressrange + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>length</parameter></term> + <listitem> + <para> + identifies addressrange + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>buf</parameter></term> + <listitem> + <para> + pointer to buffer + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + This function copies <parameter>length</parameter> bytes from one + ARM block in kernel memory area with start offset <parameter>start</parameter> + to user memory area <parameter>buf</parameter> + </para> +</refsect1> +<refsect1> + <title>returns</title> + <para> + 0 ... success + <0 ... failure, and errno - error code + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-echo-request">raw1394_echo_request</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_echo_request</refname> + <refpurpose> + send an echo request to the driver + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>int <function>raw1394_echo_request </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + <paramdef>quadlet_t <parameter>data</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>data</parameter></term> + <listitem> + <para> + arbitrary data; raw1394_loop_iterate will return it + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + the driver then send back the + same request. raw1394_loop_iterate will return data as return value, + when it processes the echo. + </para> +</refsect1> +<refsect1> + <title>returns</title> + <para> + 0 .... success + <0 ... failure + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-wake-up">raw1394_wake_up</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_wake_up</refname> + <refpurpose> + wake up raw1394_loop_iterate + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>int <function>raw1394_wake_up </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + (or a blocking read from the device + file). actually this calls raw1394_echo_request with 0 as data. + </para> +</refsect1> +<refsect1> + <title>returns</title> + <para> + 0 .... success + <0 ... failure + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-phy-packet-write">raw1394_phy_packet_write</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_phy_packet_write</refname> + <refpurpose> + send physical request + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>int <function>raw1394_phy_packet_write </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + <paramdef>quadlet_t <parameter>data</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>data</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + examples of physical requests are linkon, physicalconfigurationpacket, etc. + </para> +</refsect1> +<refsect1> + <title>returns</title> + <para> + 0 .... success + <0 ... failure + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-start-read">raw1394_start_read</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_start_read</refname> + <refpurpose> + initiate a read transaction + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>int <function>raw1394_start_read </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + <paramdef>nodeid_t <parameter>node</parameter></paramdef> + <paramdef>nodeaddr_t <parameter>addr</parameter></paramdef> + <paramdef>size_t <parameter>length</parameter></paramdef> + <paramdef>quadlet_t * <parameter>buffer</parameter></paramdef> + <paramdef>unsigned long <parameter>tag</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>node</parameter></term> + <listitem> + <para> + target node + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>addr</parameter></term> + <listitem> + <para> + address to read from + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>length</parameter></term> + <listitem> + <para> + amount of data to read + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>buffer</parameter></term> + <listitem> + <para> + pointer to buffer where data will be saved + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>tag</parameter></term> + <listitem> + <para> + data to identify the request to completion handler + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + This function starts the specified read request and returns <constant>0</constant> for success + and a negative number for an error, in which case errno will be set. If + <parameter>length</parameter> is <constant>4</constant> a quadlet read is initiated and a block read otherwise. + </para><para> + + The transaction is only started, no success of the transaction is implied + with a successful return of this function. When the transaction completes, a + <function>raw1394_loop_iterate</function> will call the tag handler and pass it the tag and + error code of the transaction. <parameter>tag</parameter> should therefore be set to something + that uniquely identifies this transaction (e.g. a struct pointer casted to + unsigned long). + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-start-write">raw1394_start_write</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_start_write</refname> + <refpurpose> + initiate a write transaction + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>int <function>raw1394_start_write </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + <paramdef>nodeid_t <parameter>node</parameter></paramdef> + <paramdef>nodeaddr_t <parameter>addr</parameter></paramdef> + <paramdef>size_t <parameter>length</parameter></paramdef> + <paramdef>quadlet_t * <parameter>data</parameter></paramdef> + <paramdef>unsigned long <parameter>tag</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>node</parameter></term> + <listitem> + <para> + target node + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>addr</parameter></term> + <listitem> + <para> + address to write to + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>length</parameter></term> + <listitem> + <para> + amount of data to write + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>data</parameter></term> + <listitem> + <para> + pointer to data to be sent + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>tag</parameter></term> + <listitem> + <para> + data to identify the request to completion handler + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + This function starts the specified write request and returns <constant>0</constant> for success + and a negative number for an error, in which case errno will be set. If + <parameter>length</parameter> is <constant>4</constant> a quadlet write is initiated and a block write otherwise. + </para><para> + + The transaction is only started, no success of the transaction is implied + with a successful return of this function. When the transaction completes, a + <function>raw1394_loop_iterate</function> will call the tag handler and pass it the tag and + error code of the transaction. <parameter>tag</parameter> should therefore be set to something + that uniquely identifies this transaction (e.g. a struct pointer casted to + unsigned long). + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-start-lock">raw1394_start_lock</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_start_lock</refname> + <refpurpose> + initiate a 32-bit compare-swap lock transaction + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>int <function>raw1394_start_lock </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + <paramdef>nodeid_t <parameter>node</parameter></paramdef> + <paramdef>nodeaddr_t <parameter>addr</parameter></paramdef> + <paramdef>unsigned int <parameter>extcode</parameter></paramdef> + <paramdef>quadlet_t <parameter>data</parameter></paramdef> + <paramdef>quadlet_t <parameter>arg</parameter></paramdef> + <paramdef>quadlet_t * <parameter>result</parameter></paramdef> + <paramdef>unsigned long <parameter>tag</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>node</parameter></term> + <listitem> + <para> + target node + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>addr</parameter></term> + <listitem> + <para> + address to read from + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>extcode</parameter></term> + <listitem> + <para> + extended transaction code determining the lock operation + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>data</parameter></term> + <listitem> + <para> + data part of lock parameters + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>arg</parameter></term> + <listitem> + <para> + arg part of lock parameters + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>result</parameter></term> + <listitem> + <para> + address where return value will be written + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>tag</parameter></term> + <listitem> + <para> + data to identify the request to completion handler + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + This function starts the specified lock request and returns <constant>0</constant> for success + and a negative number for an error, in which case errno will be set. + </para><para> + + The transaction is only started, no success of the transaction is implied + with a successful return of this function. When the transaction completes, a + <function>raw1394_loop_iterate</function> will call the tag handler and pass it the tag and + error code of the transaction. <parameter>tag</parameter> should therefore be set to something + that uniquely identifies this transaction (e.g. a struct pointer casted to + unsigned long). + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-start-lock64">raw1394_start_lock64</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_start_lock64</refname> + <refpurpose> + initiate a 64-bit compare-swap lock transaction + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>int <function>raw1394_start_lock64 </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + <paramdef>nodeid_t <parameter>node</parameter></paramdef> + <paramdef>nodeaddr_t <parameter>addr</parameter></paramdef> + <paramdef>unsigned int <parameter>extcode</parameter></paramdef> + <paramdef>octlet_t <parameter>data</parameter></paramdef> + <paramdef>octlet_t <parameter>arg</parameter></paramdef> + <paramdef>octlet_t * <parameter>result</parameter></paramdef> + <paramdef>unsigned long <parameter>tag</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>node</parameter></term> + <listitem> + <para> + target node + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>addr</parameter></term> + <listitem> + <para> + address to read from + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>extcode</parameter></term> + <listitem> + <para> + extended transaction code determining the lock operation + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>data</parameter></term> + <listitem> + <para> + data part of lock parameters + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>arg</parameter></term> + <listitem> + <para> + arg part of lock parameters + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>result</parameter></term> + <listitem> + <para> + address where return value will be written + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>tag</parameter></term> + <listitem> + <para> + data to identify the request to completion handler + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + This function starts the specified lock request and returns <constant>0</constant> for success + and a negative number for an error, in which case errno will be set. + </para><para> + + The transaction is only started, no success of the transaction is implied + with a successful return of this function. When the transaction completes, a + <function>raw1394_loop_iterate</function> will call the tag handler and pass it the tag and + error code of the transaction. <parameter>tag</parameter> should therefore be set to something + that uniquely identifies this transaction (e.g. a struct pointer casted to + unsigned long). + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-start-async-stream">raw1394_start_async_stream</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_start_async_stream</refname> + <refpurpose> + initiate asynchronous stream + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>int <function>raw1394_start_async_stream </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + <paramdef>unsigned int <parameter>channel</parameter></paramdef> + <paramdef>unsigned int <parameter>tag</parameter></paramdef> + <paramdef>unsigned int <parameter>sy</parameter></paramdef> + <paramdef>unsigned int <parameter>speed</parameter></paramdef> + <paramdef>size_t <parameter>length</parameter></paramdef> + <paramdef>quadlet_t * <parameter>data</parameter></paramdef> + <paramdef>unsigned long <parameter>rawtag</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>channel</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>tag</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>sy</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>speed</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>length</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>data</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>rawtag</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + Passes custom tag. Use pointer to raw1394_reqhandle if you use the standard + tag handler. + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-start-async-send">raw1394_start_async_send</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_start_async_send</refname> + <refpurpose> + send an asynchronous packet + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>int <function>raw1394_start_async_send </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + <paramdef>size_t <parameter>length</parameter></paramdef> + <paramdef>size_t <parameter>header_length</parameter></paramdef> + <paramdef>unsigned int <parameter>expect_response</parameter></paramdef> + <paramdef>quadlet_t * <parameter>data</parameter></paramdef> + <paramdef>unsigned long <parameter>rawtag</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>length</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>header_length</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>expect_response</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>data</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>rawtag</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + This starts sending an arbitrary async packet. It gets an array of quadlets + consisting of header and data (without CRC in between). Header information + is always in machine byte order, data (data block as well as quadlet data + in a read response for data quadlet) shall be in big endian byte order. + expect_response indicates, if we expect a response (i.e. if we will get the + tag back after the packet was sent or after a response arrived). length is + the length of the complete packet (header_length + length of the data block). + The main purpose of this function is to send responses for incoming + transactions, that are handled by the application. + Do not use that function, unless you really know, what you do! Sending + corrupt packet may lead to weird results. + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-read">raw1394_read</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_read</refname> + <refpurpose> + send async read request to a node and wait for response. + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>int <function>raw1394_read </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + <paramdef>nodeid_t <parameter>node</parameter></paramdef> + <paramdef>nodeaddr_t <parameter>addr</parameter></paramdef> + <paramdef>size_t <parameter>length</parameter></paramdef> + <paramdef>quadlet_t * <parameter>buffer</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>node</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>addr</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>length</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>buffer</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + This does the complete transaction and will return when it's finished. It + will call <function>raw1394_loop_iterate</function> as often as necessary, return values of + handlers called will be therefore lost. + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-write">raw1394_write</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_write</refname> + <refpurpose> + send async write request to a node and wait for response. + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>int <function>raw1394_write </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + <paramdef>nodeid_t <parameter>node</parameter></paramdef> + <paramdef>nodeaddr_t <parameter>addr</parameter></paramdef> + <paramdef>size_t <parameter>length</parameter></paramdef> + <paramdef>quadlet_t * <parameter>data</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>node</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>addr</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>length</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>data</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + This does the complete transaction and will return when it's finished. It + will call <function>raw1394_loop_iterate</function> as often as necessary, return values of + handlers called will be therefore lost. + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-lock">raw1394_lock</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_lock</refname> + <refpurpose> + send 32-bit compare-swap lock request and wait for response. + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>int <function>raw1394_lock </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + <paramdef>nodeid_t <parameter>node</parameter></paramdef> + <paramdef>nodeaddr_t <parameter>addr</parameter></paramdef> + <paramdef>unsigned int <parameter>extcode</parameter></paramdef> + <paramdef>quadlet_t <parameter>data</parameter></paramdef> + <paramdef>quadlet_t <parameter>arg</parameter></paramdef> + <paramdef>quadlet_t * <parameter>result</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>node</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>addr</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>extcode</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>data</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>arg</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>result</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + This does the complete transaction and will return when it's finished. It + will call <function>raw1394_loop_iterate</function> as often as necessary, return values of + handlers called will be therefore lost. + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-lock64">raw1394_lock64</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_lock64</refname> + <refpurpose> + send 64-bit compare-swap lock request and wait for response. + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>int <function>raw1394_lock64 </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + <paramdef>nodeid_t <parameter>node</parameter></paramdef> + <paramdef>nodeaddr_t <parameter>addr</parameter></paramdef> + <paramdef>unsigned int <parameter>extcode</parameter></paramdef> + <paramdef>octlet_t <parameter>data</parameter></paramdef> + <paramdef>octlet_t <parameter>arg</parameter></paramdef> + <paramdef>octlet_t * <parameter>result</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>node</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>addr</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>extcode</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>data</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>arg</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>result</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + This does the complete transaction and will return when it's finished. It + will call <function>raw1394_loop_iterate</function> as often as necessary, return values of + handlers called will be therefore lost. + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-async-stream">raw1394_async_stream</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_async_stream</refname> + <refpurpose> + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>int <function>raw1394_async_stream </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + <paramdef>unsigned int <parameter>channel</parameter></paramdef> + <paramdef>unsigned int <parameter>tag</parameter></paramdef> + <paramdef>unsigned int <parameter>sy</parameter></paramdef> + <paramdef>unsigned int <parameter>speed</parameter></paramdef> + <paramdef>size_t <parameter>length</parameter></paramdef> + <paramdef>quadlet_t * <parameter>data</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>channel</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>tag</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>sy</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>speed</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>length</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>data</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-async-send">raw1394_async_send</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_async_send</refname> + <refpurpose> + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>int <function>raw1394_async_send </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + <paramdef>size_t <parameter>length</parameter></paramdef> + <paramdef>size_t <parameter>header_length</parameter></paramdef> + <paramdef>unsigned int <parameter>expect_response</parameter></paramdef> + <paramdef>quadlet_t * <parameter>data</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>length</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>header_length</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>expect_response</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>data</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-start-fcp-listen">raw1394_start_fcp_listen</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_start_fcp_listen</refname> + <refpurpose> + enable reception of FCP events + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>int <function>raw1394_start_fcp_listen </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + FCP = Function Control Protocol (see IEC 61883-1) + Enables the reception of FCP events (writes to the FCP_COMMAND or + FCP_RESPONSE address ranges) on <parameter>handle</parameter>. FCP requests are then passed to the + callback specified with <function>raw1394_set_fcp_handler</function>. + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-stop-fcp-listen">raw1394_stop_fcp_listen</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_stop_fcp_listen</refname> + <refpurpose> + disable reception of FCP events + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>int <function>raw1394_stop_fcp_listen </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + Stops the reception of FCP events (writes to the FCP_COMMAND or + FCP_RESPONSE address ranges) on <parameter>handle</parameter>. + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-get-libversion">raw1394_get_libversion</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_get_libversion</refname> + <refpurpose> + Returns the version string + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>const char * <function>raw1394_get_libversion </function></funcdef> + <paramdef> <parameter>void</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>void</parameter></term> + <listitem> + <para> + no arguments + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + </para><para> + + Instead, typically, one uses 'pkg-config --mod-version libraw1394' + Might be useful for an application. + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-update-config-rom">raw1394_update_config_rom</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_update_config_rom</refname> + <refpurpose> + updates the configuration rom of a host + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>int <function>raw1394_update_config_rom </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + <paramdef>const quadlet_t * <parameter>new_rom</parameter></paramdef> + <paramdef>size_t <parameter>size</parameter></paramdef> + <paramdef>unsigned char <parameter>rom_version</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>new_rom</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>size</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>rom_version</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + <parameter>rom_version</parameter> must be the current + version, otherwise it will fail with return value -1. + Return value -2 indicates that the new rom version is too big. + Return value 0 indicates success + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-get-config-rom">raw1394_get_config_rom</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_get_config_rom</refname> + <refpurpose> + reads the current version of the configuration rom of a host + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>int <function>raw1394_get_config_rom </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + <paramdef>quadlet_t * <parameter>buffer</parameter></paramdef> + <paramdef>size_t <parameter>buffersize</parameter></paramdef> + <paramdef>size_t * <parameter>rom_size</parameter></paramdef> + <paramdef>unsigned char * <parameter>rom_version</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>buffer</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>buffersize</parameter></term> + <listitem> + <para> + is the size of the buffer, <parameter>rom_size</parameter> + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>rom_size</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>rom_version</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + returns the size of the current rom image. <parameter>rom_version</parameter> is the + version number of the fetched rom. + return value -1 indicates, that the buffer was too small, + 0 indicates success. + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-int">int</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>int</refname> + <refpurpose> + DEPRECATED + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>typedef <function>int </function></funcdef> + <paramdef>* <parameter>iso_handler_t</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>iso_handler_t</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + DEPRECATED + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-set-iso-handler">raw1394_set_iso_handler</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_set_iso_handler</refname> + <refpurpose> + set isochronous packet handler (DEPRECATED) + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>iso_handler_t <function>raw1394_set_iso_handler </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + <paramdef>unsigned int <parameter>channel</parameter></paramdef> + <paramdef>iso_handler_t <parameter>new_h</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>channel</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>new_h</parameter></term> + <listitem> + <para> + pointer to new handler + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + DEPRECATED + </para><para> + + Sets the handler to be called when an isochronous packet is received to + <parameter>new_h</parameter> and returns the old handler. The default handler does nothing. + </para><para> + + In order to actually get iso packet events, receiving on a specific channel + first has to be enabled with <function>raw1394_start_iso_rcv</function> and can be stopped again + with <function>raw1394_stop_iso_rcv</function>. + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-start-iso-rcv">raw1394_start_iso_rcv</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_start_iso_rcv</refname> + <refpurpose> + enable isochronous receiving (DEPRECATED) + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>int <function>raw1394_start_iso_rcv </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + <paramdef>unsigned int <parameter>channel</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>channel</parameter></term> + <listitem> + <para> + channel number to start receiving on + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + DEPRECATED + </para><para> + + Enables the reception of isochronous packets in <parameter>channel</parameter> on <parameter>handle</parameter>. + Isochronous packets are then passed to the callback specified with + <function>raw1394_set_iso_handler</function>. + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-stop-iso-rcv">raw1394_stop_iso_rcv</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_stop_iso_rcv</refname> + <refpurpose> + stop isochronous receiving (DEPRECATED) + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>int <function>raw1394_stop_iso_rcv </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + <paramdef>unsigned int <parameter>channel</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>channel</parameter></term> + <listitem> + <para> + channel to stop receiving on + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + DEPRECATED + </para><para> + + Stops the reception of isochronous packets in <parameter>channel</parameter> on <parameter>handle</parameter>. + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-start-iso-write">raw1394_start_iso_write</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_start_iso_write</refname> + <refpurpose> + initiate an isochronous packet write (DEPRECATED) + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>int <function>raw1394_start_iso_write </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + <paramdef>unsigned int <parameter>channel</parameter></paramdef> + <paramdef>unsigned int <parameter>tag</parameter></paramdef> + <paramdef>unsigned int <parameter>sy</parameter></paramdef> + <paramdef>unsigned int <parameter>speed</parameter></paramdef> + <paramdef>size_t <parameter>length</parameter></paramdef> + <paramdef>quadlet_t * <parameter>data</parameter></paramdef> + <paramdef>unsigned long <parameter>rawtag</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>channel</parameter></term> + <listitem> + <para> + channel number on which to send on + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>tag</parameter></term> + <listitem> + <para> + data to be put into packet's tag field + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>sy</parameter></term> + <listitem> + <para> + data to be put into packet's sy field + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>speed</parameter></term> + <listitem> + <para> + speed at which to send + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>length</parameter></term> + <listitem> + <para> + amount of data to send + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>data</parameter></term> + <listitem> + <para> + pointer to data to send + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>rawtag</parameter></term> + <listitem> + <para> + data to identify the request to completion handler + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + DEPRECATED + </para><para> + + This function starts the specified isochronous packet transmission and + returns <constant>0</constant> for success and a negative number for an error, in which case + errno will be set. + </para><para> + + When the send completes, a <function>raw1394_loop_iterate</function> will call the tag handler + and pass it the tag and error code of the transaction. <parameter>tag</parameter> should therefore + be set to something that uniquely identifies this transaction (e.g. a struct + pointer casted to unsigned long). + </para><para> + + Isochronous packets are automatically + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> +<refentrytitle><phrase id="API-raw1394-iso-write">raw1394_iso_write</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_iso_write</refname> + <refpurpose> + DEPRECATED + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>int <function>raw1394_iso_write </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</parameter></paramdef> + <paramdef>unsigned int <parameter>channel</parameter></paramdef> + <paramdef>unsigned int <parameter>tag</parameter></paramdef> + <paramdef>unsigned int <parameter>sy</parameter></paramdef> + <paramdef>unsigned int <parameter>speed</parameter></paramdef> + <paramdef>size_t <parameter>length</parameter></paramdef> + <paramdef>quadlet_t * <parameter>data</parameter></paramdef> + </funcprototype></funcsynopsis> +</refsynopsisdiv> +<refsect1> + <title>Arguments</title> + <variablelist> + <varlistentry> + <term><parameter>handle</parameter></term> + <listitem> + <para> + libraw1394 handle + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>channel</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>tag</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>sy</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>speed</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>length</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>data</parameter></term> + <listitem> + <para> + -- undescribed -- + </para> + </listitem> + </varlistentry> + </variablelist> +</refsect1> +<refsect1> + <title>Description</title> + <para> + DEPRECATED + </para> +</refsect1> +</refentry> - <para> - <function>raw1394_get_local_id()</function> returns the node ID of the - local node (i.e. the hardware the driver is controlling directly). - <function>raw1394_get_irm_id()</function> returns the node ID of the - node that has become isochronous resource manager. - <function>raw1394_get_nodecount</function> returns the number of nodes - currently on the bus (including the local node). - </para> - </refsect1> - </refentry> </chapter> </book> |
