You can subscribe to this list here.
2000 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(7) |
Jul
(2) |
Aug
(4) |
Sep
(5) |
Oct
(1) |
Nov
(11) |
Dec
(2) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2001 |
Jan
(8) |
Feb
(8) |
Mar
(1) |
Apr
|
May
(13) |
Jun
(14) |
Jul
(1) |
Aug
(4) |
Sep
|
Oct
|
Nov
|
Dec
|
2002 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(3) |
Jul
|
Aug
|
Sep
|
Oct
(16) |
Nov
(4) |
Dec
|
2003 |
Jan
|
Feb
(1) |
Mar
(1) |
Apr
(3) |
May
|
Jun
|
Jul
(22) |
Aug
|
Sep
(5) |
Oct
(1) |
Nov
(3) |
Dec
(1) |
2004 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(4) |
Nov
(10) |
Dec
|
2005 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(2) |
Jul
(3) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2006 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(2) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(1) |
Nov
|
Dec
|
2007 |
Jan
|
Feb
(3) |
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(4) |
Nov
|
Dec
|
2008 |
Jan
|
Feb
|
Mar
(3) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: SVN U. <dde...@li...> - 2008-03-27 22:42:53
|
Author: ddennedy Date: 2008-03-27 14:32:51 -0700 (Thu, 27 Mar 2008) New Revision: 179 Modified: trunk/src/eventloop.c Log: src/eventloop.c: redo the undo (git-svn virgin at the controls) Modified: trunk/src/eventloop.c =================================================================== --- trunk/src/eventloop.c 2008-03-27 20:25:26 UTC (rev 178) +++ trunk/src/eventloop.c 2008-03-27 21:32:51 UTC (rev 179) @@ -21,6 +21,7 @@ #include <config.h> #include <unistd.h> #include <byteswap.h> +#include <errno.h> #include "raw1394.h" #include "kernel-raw1394.h" @@ -32,8 +33,8 @@ struct raw1394_request req; int retval = 0, channel; - if (read(handle->fd, &req, sizeof(req)) < 0) { - return -1; + while (read(handle->fd, &req, sizeof(req)) < 0) { + if (errno != EINTR) return -1; } switch (req.type) { |
From: SVN U. <dde...@li...> - 2008-03-27 21:35:30
|
Author: ddennedy Date: 2008-03-27 13:25:23 -0700 (Thu, 27 Mar 2008) New Revision: 177 Modified: trunk/src/eventloop.c Log: eventloop.c: apply patch from Jonas Bonn to retry read when failed with EINTR. This can occur when libraw1394 caller receives a signal while in this read and the caller is not using a signal handler set with signal(). Modified: trunk/src/eventloop.c =================================================================== --- trunk/src/eventloop.c 2007-10-14 01:56:13 UTC (rev 176) +++ trunk/src/eventloop.c 2008-03-27 20:25:23 UTC (rev 177) @@ -21,6 +21,7 @@ #include <config.h> #include <unistd.h> #include <byteswap.h> +#include <errno.h> #include "raw1394.h" #include "kernel-raw1394.h" @@ -32,8 +33,8 @@ struct raw1394_request req; int retval = 0, channel; - if (read(handle->fd, &req, sizeof(req)) < 0) { - return -1; + while (read(handle->fd, &req, sizeof(req)) < 0) { + if (errno != EINTR) return -1; } switch (req.type) { |
From: SVN U. <dde...@li...> - 2008-03-27 21:35:29
|
Author: ddennedy Date: 2008-03-27 13:25:26 -0700 (Thu, 27 Mar 2008) New Revision: 178 Modified: trunk/src/eventloop.c Log: eventloop.c: apply patch from Jonas Bonn to retrty read when failed with EINTR. This can occur when libraw1394 callera receives a signal while in the read and the caller is not using a signal handler set with signal(). Modified: trunk/src/eventloop.c =================================================================== --- trunk/src/eventloop.c 2008-03-27 20:25:23 UTC (rev 177) +++ trunk/src/eventloop.c 2008-03-27 20:25:26 UTC (rev 178) @@ -21,7 +21,6 @@ #include <config.h> #include <unistd.h> #include <byteswap.h> -#include <errno.h> #include "raw1394.h" #include "kernel-raw1394.h" @@ -33,8 +32,8 @@ struct raw1394_request req; int retval = 0, channel; - while (read(handle->fd, &req, sizeof(req)) < 0) { - if (errno != EINTR) return -1; + if (read(handle->fd, &req, sizeof(req)) < 0) { + return -1; } switch (req.type) { |
From: SVN U. <dde...@li...> - 2007-10-14 02:36:49
|
Author: ddennedy Date: 2007-10-13 18:56:13 -0700 (Sat, 13 Oct 2007) New Revision: 176 Added: tags/v1.3.0/ Log: tagged v1.3.0 Copied: tags/v1.3.0 (from rev 175, trunk) |
From: SVN U. <dde...@li...> - 2007-10-14 02:26:44
|
Author: ddennedy Date: 2007-10-13 18:46:08 -0700 (Sat, 13 Oct 2007) New Revision: 175 Modified: trunk/src/raw1394.h Log: fix documentation on raw1394_update_config_rom Modified: trunk/src/raw1394.h =================================================================== --- trunk/src/raw1394.h 2007-10-14 01:41:30 UTC (rev 174) +++ trunk/src/raw1394.h 2007-10-14 01:46:08 UTC (rev 175) @@ -1152,7 +1152,7 @@ * raw1394_update_config_rom - updates the configuration ROM of a host * @handle: libraw1394 handle * @new_rom: a pointer to the new ROM image - * @size: the size of the new ROM image in quadlets + * @size: the size of the new ROM image in bytes * @rom_version: the version numer of the current version, not the new * * @rom_version must be the current |
From: SVN U. <dde...@li...> - 2007-10-14 02:22:06
|
Author: ddennedy Date: 2007-10-13 18:41:30 -0700 (Sat, 13 Oct 2007) New Revision: 174 Modified: trunk/AUTHORS Log: add Pieter Palmers to AUTHORS as contributor Modified: trunk/AUTHORS =================================================================== --- trunk/AUTHORS 2007-10-14 01:35:16 UTC (rev 173) +++ trunk/AUTHORS 2007-10-14 01:41:30 UTC (rev 174) @@ -8,3 +8,4 @@ Christian Toegel <chr...@gm...> Dan Maas <dm...@ma...> Ben Collins <bco...@de...> +Pieter Palmers <pi...@jo...> |
From: SVN U. <dde...@li...> - 2007-10-14 02:15:53
|
Author: ddennedy Date: 2007-10-13 18:35:16 -0700 (Sat, 13 Oct 2007) New Revision: 173 Modified: trunk/NEWS Log: update release notes Modified: trunk/NEWS =================================================================== --- trunk/NEWS 2007-05-30 05:11:30 UTC (rev 172) +++ trunk/NEWS 2007-10-14 01:35:16 UTC (rev 173) @@ -1,3 +1,12 @@ +libraw1394 Release Notes + +Version 1.3.0: +- added raw1394_read_cycle_timer() as used by FFADO project. +- added support for environment variable RAW1394DEV to override default + device node /dev/raw1394. +- added --with-valgrind to configure script. +- other optimizations and bugfixes - see ChangeLog. + Version 1.2.1: - generate compiler warnings on deprecated functions (legacy isochronous). - bugfixes and optimizations. |
From: SVN U. <dde...@li...> - 2007-05-30 05:36:10
|
Author: ddennedy Date: 2007-05-29 22:11:30 -0700 (Tue, 29 May 2007) New Revision: 172 Modified: trunk/configure.ac trunk/src/readwrite.c Log: Apply patch from Jon Schewe <jon...@ho...> to make valgrind happy. Adds --with-valgrind configure option. Modified: trunk/configure.ac =================================================================== --- trunk/configure.ac 2007-02-17 02:30:13 UTC (rev 171) +++ trunk/configure.ac 2007-05-30 05:11:30 UTC (rev 172) @@ -24,6 +24,11 @@ AC_SUBST(lt_revision) AC_SUBST(lt_age) +dnl Check to see if valgrind is available +AC_ARG_WITH(valgrind, AC_HELP_STRING([--with-valgrind],[compile with valgrind support])) +if test x$with_valgrind = xyes ; then + AC_CHECK_HEADERS(valgrind/valgrind.h) +fi #CFLAGS=${CFLAGS:-"-Wall"} AC_OUTPUT([ Modified: trunk/src/readwrite.c =================================================================== --- trunk/src/readwrite.c 2007-02-17 02:30:13 UTC (rev 171) +++ trunk/src/readwrite.c 2007-05-30 05:11:30 UTC (rev 172) @@ -30,7 +30,16 @@ #include "kernel-raw1394.h" #include "raw1394_private.h" +#if HAVE_VALGRIND_VALGRIND_H +# include <valgrind/memcheck.h> +# ifndef VALGRIND_MAKE_MEM_DEFINED_IF_ADDRESSABLE +# Â define VALGRIND_MAKE_MEM_DEFINED_IF_ADDRESSABLE(m, n) do {} while(0) +# endif +#else +# define VALGRIND_MAKE_MEM_DEFINED_IF_ADDRESSABLE(m, n) do {} while(0) +#endif + int raw1394_start_read(struct raw1394_handle *handle, nodeid_t node, nodeaddr_t addr, size_t length, quadlet_t *buffer, unsigned long tag) @@ -218,13 +227,16 @@ &sd }; \ int err = 0 -#define SYNCFUNC_BODY \ +#define SYNCFUNC_BODY_WO_RETURN \ while (!sd.done) { \ if (err < 0) return err; \ err = raw1394_loop_iterate(handle); \ } \ handle->err = sd.errcode; \ - errno = raw1394_errcode_to_errno(sd.errcode); \ + errno = raw1394_errcode_to_errno(sd.errcode); + +#define SYNCFUNC_BODY \ + SYNCFUNC_BODY_WO_RETURN \ return (errno ? -1 : 0) int raw1394_read(struct raw1394_handle *handle, nodeid_t node, nodeaddr_t addr, @@ -235,7 +247,12 @@ err = raw1394_start_read(handle, node, addr, length, buffer, (unsigned long)&rh); - SYNCFUNC_BODY; + SYNCFUNC_BODY_WO_RETURN; + if(!errno) { + VALGRIND_MAKE_MEM_DEFINED_IF_ADDRESSABLE(buffer, length); + } + + return (errno ? -1 : 0); } int raw1394_write(struct raw1394_handle *handle, nodeid_t node, nodeaddr_t addr, @@ -258,7 +275,12 @@ err = raw1394_start_lock(handle, node, addr, extcode, data, arg, result, (unsigned long)&rh); - SYNCFUNC_BODY; + SYNCFUNC_BODY_WO_RETURN; + if(!errno) { + VALGRIND_MAKE_MEM_DEFINED_IF_ADDRESSABLE(result, sizeof(quadlet_t)); + } + + return (errno ? -1 : 0); } int raw1394_lock64(struct raw1394_handle *handle, nodeid_t node, nodeaddr_t addr, |
From: SVN U. <dde...@li...> - 2007-02-17 02:52:16
|
Author: ddennedy Date: 2007-02-16 18:30:13 -0800 (Fri, 16 Feb 2007) New Revision: 171 Modified: trunk/src/raw1394.h Log: add documentation about existence of RAW1394DEV Modified: trunk/src/raw1394.h =================================================================== --- trunk/src/raw1394.h 2007-02-17 02:24:16 UTC (rev 170) +++ trunk/src/raw1394.h 2007-02-17 02:30:13 UTC (rev 171) @@ -398,9 +398,14 @@ * processes. It is allowed to create and use multiple handles, however. Use * one handle per thread which needs it in the multithreaded case. * + * The default device node is /dev/raw1394, but one can override the default + * by setting environment variable RAW1394DEV. However, if RAW1394DEV points to + * a non-existant or invalid device node, then it also attempts to open the + * default device node. + * * Returns: the created handle or %NULL when initialization fails. In the latter - * case errno either contains some OS specific error code or %0 if the error is - * that libraw1394 and raw1394 don't support each other's protocol versions. + * case errno either contains some OS specific error code or EPROTO if + * libraw1394 and raw1394 don't support each other's protocol versions. **/ raw1394handle_t raw1394_new_handle(void); @@ -424,6 +429,11 @@ * command-line programs that already know what port they want. If * raw1394_set_port() returns ESTALE, retries automatically. * + * The default device node is /dev/raw1394, but one can override the default + * by setting environment variable RAW1394DEV. However, if RAW1394DEV points to + * a non-existant or invalid device node, then it also attempts to open the + * default device node. + * * Returns: the new handle on success or NULL on failure **/ raw1394handle_t raw1394_new_handle_on_port(int port); |
From: SVN U. <dde...@li...> - 2007-02-17 02:46:22
|
Author: ddennedy Date: 2007-02-16 18:24:16 -0800 (Fri, 16 Feb 2007) New Revision: 170 Modified: trunk/src/main.c Log: add support for RAW1394DEV environment variable to override default /dev/raw1394, but also attempt to failover to default. Modified: trunk/src/main.c =================================================================== --- trunk/src/main.c 2007-02-14 05:29:18 UTC (rev 169) +++ trunk/src/main.c 2007-02-17 02:24:16 UTC (rev 170) @@ -115,6 +115,7 @@ struct raw1394_handle *raw1394_new_handle(void) { struct raw1394_handle *handle; + const char *defaultDevice = "/dev/raw1394"; handle = malloc(sizeof(struct raw1394_handle)); if (!handle) { @@ -122,17 +123,31 @@ return NULL; } - handle->fd = open("/dev/raw1394", O_RDWR); + handle->fd = open(getenv("RAW1394DEV") ? getenv("RAW1394DEV"): defaultDevice, O_RDWR); if (handle->fd < 0) { - free(handle); - return NULL; + /* failover to default in attempt to idiot proof */ + handle->fd = open(defaultDevice, O_RDWR); + if (handle->fd < 0) { + free(handle); + return NULL; + } } handle->generation = init_rawdevice(handle); if (handle->generation == -1) { + /* failover to default in attempt to idiot proof */ close(handle->fd); - free(handle); - return NULL; + handle->fd = open(defaultDevice, O_RDWR); + if (handle->fd < 0) { + free(handle); + return NULL; + } + handle->generation = init_rawdevice(handle); + if (handle->generation == -1) { + close(handle->fd); + free(handle); + return NULL; + } } handle->err = 0; |
From: SVN U. <dde...@li...> - 2007-02-14 05:51:43
|
Author: ddennedy Date: 2007-02-13 21:29:18 -0800 (Tue, 13 Feb 2007) New Revision: 169 Modified: trunk/configure.ac trunk/src/ieee1394-ioctl.h trunk/src/iso.c trunk/src/kernel-raw1394.h trunk/src/main.c trunk/src/raw1394.h Log: added raw1394_read_cycle_timer, contributed by Pieter Palmers Modified: trunk/configure.ac =================================================================== --- trunk/configure.ac 2006-10-17 03:39:37 UTC (rev 168) +++ trunk/configure.ac 2007-02-14 05:29:18 UTC (rev 169) @@ -1,6 +1,6 @@ # process this file with autoconf to get a configure script -AC_INIT(libraw1394, 1.2.1) +AC_INIT(libraw1394, 1.3.0) AC_CONFIG_SRCDIR(src/raw1394.h) AM_CONFIG_HEADER(config.h) @@ -16,9 +16,9 @@ AC_C_BIGENDIAN # set the libtool so version numbers -lt_major=9 -lt_revision=1 -lt_age=1 +lt_major=10 +lt_revision=0 +lt_age=2 AC_SUBST(lt_major) AC_SUBST(lt_revision) Modified: trunk/src/ieee1394-ioctl.h =================================================================== --- trunk/src/ieee1394-ioctl.h 2006-10-17 03:39:37 UTC (rev 168) +++ trunk/src/ieee1394-ioctl.h 2007-02-14 05:29:18 UTC (rev 169) @@ -1,5 +1,7 @@ -/* Base file for all ieee1394 ioctl's. Linux-1394 has allocated base '#' - * with a range of 0x00-0x3f. */ +/* + * Base file for all ieee1394 ioctl's. + * Linux-1394 has allocated base '#' with a range of 0x00-0x3f. + */ #ifndef __IEEE1394_IOCTL_H #define __IEEE1394_IOCTL_H @@ -7,14 +9,6 @@ #include <linux/ioctl.h> #include <linux/types.h> - -/* AMDTP Gets 6 */ -#define AMDTP_IOC_CHANNEL _IOW('#', 0x00, struct amdtp_ioctl) -#define AMDTP_IOC_PLUG _IOW('#', 0x01, struct amdtp_ioctl) -#define AMDTP_IOC_PING _IOW('#', 0x02, struct amdtp_ioctl) -#define AMDTP_IOC_ZAP _IO ('#', 0x03) - - /* DV1394 Gets 10 */ /* Get the driver ready to transmit video. pass a struct dv1394_init* as @@ -104,8 +98,9 @@ _IOW ('#', 0x27, struct raw1394_iso_packets) #define RAW1394_IOC_ISO_XMIT_SYNC \ _IO ('#', 0x28) -#define RAW1394_IOC_ISO_RECV_FLUSH \ +#define RAW1394_IOC_ISO_RECV_FLUSH \ _IO ('#', 0x29) +#define RAW1394_IOC_GET_CYCLE_TIMER \ + _IOR ('#', 0x30, struct raw1394_cycle_timer) - #endif /* __IEEE1394_IOCTL_H */ Modified: trunk/src/iso.c =================================================================== --- trunk/src/iso.c 2006-10-17 03:39:37 UTC (rev 168) +++ trunk/src/iso.c 2007-02-14 05:29:18 UTC (rev 169) @@ -498,6 +498,20 @@ handle->iso_mode = ISO_INACTIVE; } +int raw1394_read_cycle_timer(raw1394handle_t handle, + u_int32_t *cycle_timer, u_int64_t *local_time) +{ + int err; + struct raw1394_cycle_timer ctr = { 0 }; + + err = ioctl(handle->fd, RAW1394_IOC_GET_CYCLE_TIMER, &ctr); + if (!err) { + *cycle_timer = ctr.cycle_timer; + *local_time = ctr.local_time; + } + return err; +} + static int _raw1394_iso_recv_packets(raw1394handle_t handle) { struct raw1394_iso_status *stat = &handle->iso_status; Modified: trunk/src/kernel-raw1394.h =================================================================== --- trunk/src/kernel-raw1394.h 2006-10-17 03:39:37 UTC (rev 168) +++ trunk/src/kernel-raw1394.h 2007-02-14 05:29:18 UTC (rev 169) @@ -177,4 +177,14 @@ __s16 xmit_cycle; }; +/* argument to RAW1394_IOC_GET_CYCLE_TIMER ioctl */ +struct raw1394_cycle_timer { + /* contents of Isochronous Cycle Timer register, + as in OHCI 1.1 clause 5.13 (also with non-OHCI hosts) */ + __u32 cycle_timer; + + /* local time in microseconds since Epoch, + simultaneously read with cycle timer */ + __u64 local_time; +}; #endif /* IEEE1394_RAW1394_H */ Modified: trunk/src/main.c =================================================================== --- trunk/src/main.c 2006-10-17 03:39:37 UTC (rev 168) +++ trunk/src/main.c 2007-02-14 05:29:18 UTC (rev 169) @@ -103,7 +103,7 @@ } if (req.error) { - errno = 0; + errno = EPROTO; return -1; } memset(h->buffer, 0, HBUF_SIZE); Modified: trunk/src/raw1394.h =================================================================== --- trunk/src/raw1394.h 2006-10-17 03:39:37 UTC (rev 168) +++ trunk/src/raw1394.h 2007-02-14 05:29:18 UTC (rev 169) @@ -118,7 +118,6 @@ RAW1394_MODIFY_FREE }; - #ifdef __cplusplus extern "C" { #endif @@ -328,6 +327,25 @@ **/ void raw1394_iso_shutdown(raw1394handle_t handle); +/** + * raw1394_get_cycle_timer - get the current value of the cycle timer + * @handle: libraw1394 handle + * @cycle_timer: buffer for Isochronous Cycle Timer + * @local_time: buffer for local system time in microseconds since Epoch + * + * Simultaneously reads the cycle timer register together with the system clock. + * + * Format of @cycle_timer, from MSB to LSB: 7 bits cycleSeconds (seconds, or + * number of cycleCount rollovers), 13 bits cycleCount (isochronous cycles, or + * cycleOffset rollovers), 12 bits cycleOffset (24.576 MHz clock ticks, not + * provided on some hardware). The union of cycleSeconds and cycleCount is the + * current cycle number. The nominal duration of a cycle is 125 microseconds. + * + * Returns: the error code of the ioctl, or 0 if successful. + **/ +int raw1394_read_cycle_timer(raw1394handle_t handle, + u_int32_t *cycle_timer, u_int64_t *local_time); + typedef int raw1394_errcode_t; #define raw1394_make_errcode(ack, rcode) (((ack) << 16) | rcode) #define raw1394_internal_err(errcode) ((errcode) < 0) |
From: SVN U. <dde...@li...> - 2006-10-17 04:58:11
|
Author: ddennedy Date: 2006-10-16 20:39:37 -0700 (Mon, 16 Oct 2006) New Revision: 168 Modified: trunk/src/main.c Log: bugfix segfault in raw1394_iso_shutdown on no iso activity due to not initializing raw1394_handle.iso_packet_infos to NULL in raw1394_new_handle Modified: trunk/src/main.c =================================================================== --- trunk/src/main.c 2006-05-09 04:27:38 UTC (rev 167) +++ trunk/src/main.c 2006-10-17 03:39:37 UTC (rev 168) @@ -140,8 +140,9 @@ handle->tag_handler = tag_handler_default; handle->arm_tag_handler = arm_tag_handler_default; memset(handle->iso_handler, 0, sizeof(handle->iso_handler)); - handle->iso_buffer = NULL; - handle->iso_mode = ISO_INACTIVE; + handle->iso_buffer = NULL; + handle->iso_mode = ISO_INACTIVE; + handle->iso_packet_infos = NULL; return handle; } |
From: SVN U. <dde...@li...> - 2006-05-09 04:41:03
|
Author: ddennedy Date: 2006-05-08 21:27:38 -0700 (Mon, 08 May 2006) New Revision: 167 Modified: trunk/src/iso.c Log: apply optimization patch from Pieter Palmers that removes modulo operator from high frequency isochronous code Modified: trunk/src/iso.c =================================================================== --- trunk/src/iso.c 2006-05-09 04:20:55 UTC (rev 166) +++ trunk/src/iso.c 2006-05-09 04:27:38 UTC (rev 167) @@ -22,6 +22,18 @@ #include "kernel-raw1394.h" #include "raw1394_private.h" +/* This implements + x = (x+1) % n + using a branch based implementation + */ +static inline int increment_and_wrap(int x, int n) +{ + ++x; + if (x >= n) + x = 0; + return x; +} + /* old ISO API - kept for backwards compatibility */ static int do_iso_listen(struct raw1394_handle *handle, int channel) @@ -328,9 +340,9 @@ /* advance packet cursors and cycle counter */ stat->n_packets--; - handle->next_packet = (handle->next_packet + 1) % stat->config.buf_packets; + handle->next_packet = increment_and_wrap(handle->next_packet, stat->config.buf_packets); if(stat->xmit_cycle != -1) - stat->xmit_cycle = (stat->xmit_cycle + 1) % 8000; + stat->xmit_cycle = increment_and_wrap(stat->xmit_cycle, 8000); packets.n_packets++; if(disp == RAW1394_ISO_DEFER) { @@ -416,9 +428,9 @@ return -1; stat->n_packets--; - handle->next_packet = (handle->next_packet + 1) % stat->config.buf_packets; + handle->next_packet = increment_and_wrap(handle->next_packet, stat->config.buf_packets); if(stat->xmit_cycle != -1) - stat->xmit_cycle = (stat->xmit_cycle + 1) % 8000; + stat->xmit_cycle = increment_and_wrap(stat->xmit_cycle, 8000); return 0; } |
From: SVN U. <dde...@li...> - 2006-05-09 04:34:24
|
Author: ddennedy Date: 2006-05-08 21:20:55 -0700 (Mon, 08 May 2006) New Revision: 166 Added: tags/v1.2.1/ Log: tagged latest release Copied: tags/v1.2.1 (from rev 165, trunk) Property changes on: tags/v1.2.1 ___________________________________________________________________ Name: branch-point + 165 |
From: SVN U. <dde...@li...> - 2005-07-04 04:04:28
|
Author: ddennedy Date: 2005-07-04 00:04:22 -0400 (Mon, 04 Jul 2005) New Revision: 160 Modified: trunk/src/iso.c Log: Fix raw1394_iso_xmit_write() to work with recent kernel change to raw1394 to fix bug with stalling on buffer underrun. Modified: trunk/src/iso.c =================================================================== --- trunk/src/iso.c 2005-07-04 03:00:50 UTC (rev 159) +++ trunk/src/iso.c 2005-07-04 04:04:22 UTC (rev 160) @@ -363,7 +363,7 @@ } /* wait until buffer space is available */ - while(handle->iso_status.n_packets == 0) { + while(handle->iso_status.n_packets <= 1) { /* if the file descriptor has been set non-blocking, return immediately */ if(fcntl(handle->fd, F_GETFL) & O_NONBLOCK) { |
From: SVN U. <dde...@li...> - 2005-07-04 03:26:53
|
Author: ddennedy Date: 2005-07-03 23:00:50 -0400 (Sun, 03 Jul 2005) New Revision: 159 Modified: trunk/src/iso.c trunk/src/raw1394.h Log: add sanity check to queuing of packets in rawiso xmit Modified: trunk/src/iso.c =================================================================== --- trunk/src/iso.c 2005-07-01 04:12:47 UTC (rev 158) +++ trunk/src/iso.c 2005-07-04 03:00:50 UTC (rev 159) @@ -269,7 +269,6 @@ return 0; } - static int _raw1394_iso_xmit_queue_packets(raw1394handle_t handle) { struct raw1394_iso_status *stat = &handle->iso_status; @@ -282,6 +281,10 @@ goto out; } + /* ensure stat->n_packets is sane */ + if (stat->n_packets > stat->config.buf_packets) + stat->n_packets = stat->config.buf_packets; + /* we could potentially send up to stat->n_packets packets */ packets.n_packets = 0; packets.infos = malloc(stat->n_packets * sizeof(struct raw1394_iso_packet_info)); Modified: trunk/src/raw1394.h =================================================================== --- trunk/src/raw1394.h 2005-07-01 04:12:47 UTC (rev 158) +++ trunk/src/raw1394.h 2005-07-04 03:00:50 UTC (rev 159) @@ -1207,7 +1207,9 @@ **/ iso_handler_t raw1394_set_iso_handler(raw1394handle_t handle, unsigned int channel, - iso_handler_t new_h); + iso_handler_t new_h) +__attribute__ ((deprecated)); + /** * raw1394_start_iso_rcv - enable isochronous receiving (DEPRECATED) * @handle: libraw1394 handle @@ -1219,7 +1221,8 @@ * Isochronous packets are then passed to the callback specified with * raw1394_set_iso_handler(). **/ -int raw1394_start_iso_rcv(raw1394handle_t handle, unsigned int channel); +int raw1394_start_iso_rcv(raw1394handle_t handle, unsigned int channel) +__attribute__ ((deprecated)); /** * raw1394_stop_iso_rcv - stop isochronous receiving (DEPRECATED) @@ -1230,7 +1233,8 @@ * * Stops the reception of isochronous packets in @channel on @handle. **/ -int raw1394_stop_iso_rcv(raw1394handle_t handle, unsigned int channel); +int raw1394_stop_iso_rcv(raw1394handle_t handle, unsigned int channel) +__attribute__ ((deprecated)); /** * raw1394_start_iso_write - initiate an isochronous packet write (DEPRECATED) @@ -1259,7 +1263,8 @@ int raw1394_start_iso_write(raw1394handle_t handle, unsigned int channel, unsigned int tag, unsigned int sy, unsigned int speed, size_t length, quadlet_t *data, - unsigned long rawtag); + unsigned long rawtag) +__attribute__ ((deprecated)); /** * raw1394_iso_write - DEPRECATED @@ -1269,7 +1274,8 @@ **/ int raw1394_iso_write(raw1394handle_t handle, unsigned int channel, unsigned int tag, unsigned int sy, unsigned int speed, - size_t length, quadlet_t *data); + size_t length, quadlet_t *data) +__attribute__ ((deprecated)); #ifdef __cplusplus } |
From: SVN U. <dde...@li...> - 2005-07-01 04:12:52
|
Author: ddennedy Date: 2005-07-01 00:12:47 -0400 (Fri, 01 Jul 2005) New Revision: 158 Modified: trunk/src/raw1394.h Log: Add a comment that libraw does not allocate channels and bandwidth. This is already mentioned in doc/libraw1394.sgml but an existing comment about raw1394_iso_xmit_init may be misleading. Signed-off-by: Stefan Richter <st...@s5...> Modified: trunk/src/raw1394.h =================================================================== --- trunk/src/raw1394.h 2005-06-23 17:11:08 UTC (rev 157) +++ trunk/src/raw1394.h 2005-07-01 04:12:47 UTC (rev 158) @@ -151,6 +151,7 @@ * @irq_interval: maximum latency of wake-ups, in packets (-1 if you don't care) * * Allocates all user and kernel resources necessary for isochronous transmission. + * Channel and bandwidth allocation at the IRM is not performed. * * Returns: 0 on success or -1 on failure (sets errno) **/ |
From: SVN U. <dde...@li...> - 2005-06-23 17:11:15
|
Author: ddennedy Date: 2005-06-23 13:11:08 -0400 (Thu, 23 Jun 2005) New Revision: 157 Added: tags/v1.2.0/ Log: tagged v1.2.0 Copied: tags/v1.2.0 (from rev 154, trunk) |
From: SVN U. <dde...@li...> - 2005-06-23 17:09:42
|
Author: ddennedy Date: 2005-06-23 13:09:33 -0400 (Thu, 23 Jun 2005) New Revision: 156 Modified: trunk/configure.ac trunk/src/iso.c Log: bugfix stalling on iso transmission underflow Modified: trunk/configure.ac =================================================================== --- trunk/configure.ac 2005-06-02 18:30:57 UTC (rev 155) +++ trunk/configure.ac 2005-06-23 17:09:33 UTC (rev 156) @@ -1,6 +1,6 @@ # process this file with autoconf to get a configure script -AC_INIT(libraw1394, 1.2.0) +AC_INIT(libraw1394, 1.2.1) AC_CONFIG_SRCDIR(src/raw1394.h) AM_CONFIG_HEADER(config.h) @@ -17,7 +17,7 @@ # set the libtool so version numbers lt_major=9 -lt_revision=0 +lt_revision=1 lt_age=1 AC_SUBST(lt_major) Modified: trunk/src/iso.c =================================================================== --- trunk/src/iso.c 2005-06-02 18:30:57 UTC (rev 155) +++ trunk/src/iso.c 2005-06-23 17:09:33 UTC (rev 156) @@ -288,7 +288,7 @@ if(packets.infos == NULL) goto out; - while(stat->n_packets > 0) { + while(stat->n_packets > 1) { enum raw1394_iso_disposition disp; unsigned int len; |
From: SVN U. <dde...@li...> - 2004-11-30 02:38:24
|
Author: ddennedy Date: 2004-11-29 21:38:10 -0500 (Mon, 29 Nov 2004) New Revision: 153 Added: tags/v1.1.0/ Log: tagged v1.1.0 Copied: tags/v1.1.0 (from rev 152, trunk) |
From: SVN U. <dde...@li...> - 2004-11-26 16:54:51
|
Author: ddennedy Date: 2004-11-26 11:30:44 -0500 (Fri, 26 Nov 2004) New Revision: 152 Modified: trunk/src/main.c Log: add comment about assumptions made in raw1394_get_port_info Modified: trunk/src/main.c =================================================================== --- trunk/src/main.c 2004-11-25 18:46:29 UTC (rev 151) +++ trunk/src/main.c 2004-11-26 16:30:44 UTC (rev 152) @@ -204,6 +204,11 @@ CLEAR_REQ(&req); req.type = RAW1394_REQ_LIST_CARDS; req.generation = handle->generation; + /* IMPORTANT: raw1394 will be writing directly into the memory you + provide in pinf. The viability of this approach assumes that the + structure of libraw1394's raw1394_portinfo and the kernel's + raw1394_khost_list structs are the same!! + */ req.recvb = ptr2int(pinf); req.length = sizeof(struct raw1394_portinfo) * maxports; |
From: SVN U. <dde...@li...> - 2004-11-25 18:46:34
|
Author: ddennedy Date: 2004-11-25 13:46:29 -0500 (Thu, 25 Nov 2004) New Revision: 151 Modified: trunk/src/main.c Log: apply patch from Matthias Hanel to fix uninitialized buffer and remove unncessary (and logically impossible) copy in get_port_info Modified: trunk/src/main.c =================================================================== --- trunk/src/main.c 2004-11-25 18:01:57 UTC (rev 150) +++ trunk/src/main.c 2004-11-25 18:46:29 UTC (rev 151) @@ -104,6 +104,7 @@ errno = 0; return -1; } + memset(h->buffer, 0, HBUF_SIZE); return req.generation; } @@ -220,12 +221,6 @@ return -1; } - for (num = req.misc, khl = (struct raw1394_khost_list *) int2ptr(req.recvb); - num && maxports; num--, maxports--, pinf++, khl++) { - pinf->nodes = khl->nodes; - strcpy(pinf->name, khl->name); - } - return req.misc; } |
From: SVN U. <dde...@li...> - 2004-11-25 18:02:12
|
Author: ddennedy Date: 2004-11-25 13:01:57 -0500 (Thu, 25 Nov 2004) New Revision: 150 Modified: trunk/doc/libraw1394.sgml trunk/src/raw1394.h Log: improve reference documentation Modified: trunk/doc/libraw1394.sgml =================================================================== --- trunk/doc/libraw1394.sgml 2004-11-20 04:56:36 UTC (rev 149) +++ trunk/doc/libraw1394.sgml 2004-11-25 18:01:57 UTC (rev 150) @@ -971,6 +971,12 @@ Allocates all user and kernel resources necessary for isochronous transmission. </para> </refsect1> +<refsect1> + <title>Returns</title> + <para> + 0 on success or -1 on failure (sets errno) + </para> +</refsect1> </refentry> <refentry> @@ -1044,7 +1050,7 @@ <term><parameter>mode</parameter></term> <listitem> <para> - -- undescribed -- + bufferfill or packet per buffer mode </para> </listitem> </varlistentry> @@ -1065,6 +1071,12 @@ Allocates all user and kernel resources necessary for isochronous reception. </para> </refsect1> +<refsect1> + <title>Returns</title> + <para> + 0 on success or -1 on failure (sets errno) + </para> +</refsect1> </refentry> <refentry> @@ -1140,6 +1152,12 @@ Allocates all user and kernel resources necessary for isochronous reception. </para> </refsect1> +<refsect1> + <title>Returns</title> + <para> + 0 on success or -1 on failure (sets errno) + </para> +</refsect1> </refentry> <refentry> @@ -1175,7 +1193,7 @@ <term><parameter>channel</parameter></term> <listitem> <para> - -- undescribed -- + the channel to start listening </para> </listitem> </varlistentry> @@ -1184,9 +1202,15 @@ <refsect1> <title>Description</title> <para> - listen/unlisten on a specific channel (multi-channel mode ONLY) + listen/unlisten on a specific channel (multi-channel mode ONLY) </para> </refsect1> +<refsect1> + <title>Returns</title> + <para> + 0 on success or -1 on failure (sets errno) + </para> +</refsect1> </refentry> <refentry> @@ -1222,12 +1246,18 @@ <term><parameter>channel</parameter></term> <listitem> <para> - -- undescribed -- + the channel to stop listening to </para> </listitem> </varlistentry> </variablelist> </refsect1> +<refsect1> + <title>Returns</title> + <para> + 0 on success or -1 on failure (sets errno) + </para> +</refsect1> </refentry> <refentry> @@ -1276,6 +1306,12 @@ for multi-channel reception mode only </para> </refsect1> +<refsect1> + <title>Returns</title> + <para> + 0 on success, -1 on failure (sets errno) + </para> +</refsect1> </refentry> <refentry> @@ -1328,6 +1364,12 @@ </varlistentry> </variablelist> </refsect1> +<refsect1> + <title>Returns</title> + <para> + 0 on success or -1 on failure (sets errno) + </para> +</refsect1> </refentry> <refentry> @@ -1388,6 +1430,12 @@ </varlistentry> </variablelist> </refsect1> +<refsect1> + <title>Returns</title> + <para> + 0 on success or -1 on failure (sets errno) + </para> +</refsect1> </refentry> <refentry> @@ -1465,6 +1513,12 @@ errno = EAGAIN </para> </refsect1> +<refsect1> + <title>Returns</title> + <para> + 0 on success or -1 on failure (sets errno) + </para> +</refsect1> </refentry> <refentry> @@ -1497,6 +1551,12 @@ </varlistentry> </variablelist> </refsect1> +<refsect1> + <title>Returns</title> + <para> + 0 on success or -1 on failure (sets errno) + </para> +</refsect1> </refentry> <refentry> @@ -1542,6 +1602,12 @@ will be flushed out to user space. </para> </refsect1> +<refsect1> + <title>Returns</title> + <para> + 0 on success or -1 on failure (sets errno) + </para> +</refsect1> </refentry> <refentry> @@ -1641,17 +1707,20 @@ <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> +<refsect1> + <title>Returns</title> + <para> + 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> +</refsect1> </refentry> <refentry> @@ -1697,9 +1766,12 @@ 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 + </para> +</refsect1> +<refsect1> + <title>Returns</title> + <para> + <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). @@ -1746,9 +1818,12 @@ 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 + </para> +</refsect1> +<refsect1> + <title>Returns</title> + <para> + 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> @@ -1835,6 +1910,12 @@ <function>raw1394_set_port</function> returns ESTALE, retries automatically. </para> </refsect1> +<refsect1> + <title>Returns</title> + <para> + the new handle on success or NULL on failure + </para> +</refsect1> </refentry> <refentry> @@ -1870,18 +1951,16 @@ <term><parameter>off_on_switch</parameter></term> <listitem> <para> - -- undescribed -- + RAW1394_NOTIFY_OFF or RAW1394_NOTIFY_ON </para> </listitem> </varlistentry> </variablelist> </refsect1> <refsect1> - <title>returns</title> + <title>Returns</title> <para> - ==0 success - !=0 failure - off_on_switch .... RAW1394_NOTIFY_OFF or RAW1394_NOTIFY_ON + 0 on success or -1 on failure (sets errno) </para> </refsect1> </refentry> @@ -1919,14 +1998,19 @@ <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 + 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> +<refsect1> + <title>Returns</title> + <para> + the fd used for communication with the raw1394 kernel module. + </para> +</refsect1> </refentry> <refentry> @@ -2010,9 +2094,9 @@ </variablelist> </refsect1> <refsect1> - <title>Description</title> + <title>Returns</title> <para> - Returns the user data pointer associated with the handle using + the user data pointer associated with the handle using <function>raw1394_set_userdata</function>. </para> </refsect1> @@ -2049,9 +2133,9 @@ </variablelist> </refsect1> <refsect1> - <title>Description</title> + <title>Returns</title> <para> - Returns the node ID of the local node connected to which the handle is + the node ID of the local node connected to which the handle is connected. This value can change with every bus reset. </para> </refsect1> @@ -2088,9 +2172,9 @@ </variablelist> </refsect1> <refsect1> - <title>Description</title> + <title>Returns</title> <para> - Returns the node ID of the isochronous resource manager of the bus the handle + 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> @@ -2129,12 +2213,18 @@ <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 + 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> +<refsect1> + <title>Returns</title> + <para> + the number of nodes on the bus to which the handle is connected. + This value can change with every bus reset. + </para> +</refsect1> </refentry> <refentry> @@ -2195,14 +2285,17 @@ 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 + command line option to choose the port. If <parameter>maxports</parameter> is <constant>0</constant>, <parameter>pinf</parameter> can be <constant>NULL</constant>, too. </para> </refsect1> +<refsect1> + <title>Returns</title> + <para> + the number of ports and writes information about them into <parameter>pinf</parameter>, but + not into more than <parameter>maxports</parameter> elements. + </para> +</refsect1> </refentry> <refentry> @@ -2252,9 +2345,12 @@ <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 + </para> +</refsect1> +<refsect1> + <title>Returns</title> + <para> + <constant>0</constant> for success or -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. @@ -2303,7 +2399,7 @@ <refsect1> <title>Returns</title> <para> - <constant>0</constant> for success and -1 for failure with errno set appropriately. + <constant>0</constant> for success or -1 for failure with errno set appropriately </para> </refsect1> </refentry> @@ -2341,18 +2437,16 @@ <term><parameter>type</parameter></term> <listitem> <para> - -- undescribed -- + RAW1394_SHORT_RESET or RAW1394_LONG_RESET </para> </listitem> </varlistentry> </variablelist> </refsect1> <refsect1> - <title>returns</title> + <title>Returns</title> <para> - -1 failure - 0 success - type .... RAW1394_SHORT_RESET or RAW1394_LONG_RESET + <constant>0</constant> for success or -1 for failure </para> </refsect1> </refentry> @@ -2391,15 +2485,18 @@ <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. + handler. 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> +<refsect1> + <title>Returns</title> + <para> + <constant>-1</constant> for an error or the return value of + the handler which got executed. The default handlers always return zero. + </para> +</refsect1> </refentry> <refentry> @@ -2444,10 +2541,16 @@ <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>. + Sets the handler to be called on every bus reset to <parameter>new_h</parameter>. + The default handler just calls <function>raw1394_update_generation</function>. </para> </refsect1> +<refsect1> + <title>Returns</title> + <para> + the old handler + </para> +</refsect1> </refentry> <refentry> @@ -2483,16 +2586,19 @@ <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 + 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> +<refsect1> + <title>Returns</title> + <para> + the generation number associated with the handle + </para> +</refsect1> </refentry> <refentry> @@ -2591,8 +2697,8 @@ <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 + Sets the handler to be called whenever a request completes to <parameter>new_h</parameter>. + The default handler interprets the tag as a pointer to a &struct raw1394_reqhandle and calls the callback in there. </para><para> @@ -2602,6 +2708,12 @@ raw1394_reqhandle as the tag and expect the callback to be invoked. </para> </refsect1> +<refsect1> + <title>Returns</title> + <para> + the old handler + </para> +</refsect1> </refentry> <refentry> @@ -2648,9 +2760,15 @@ <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. + raw1394_arm_reqhandle pointed to by arm_tag. </para> </refsect1> +<refsect1> + <title>Returns</title> + <para> + old handler + </para> +</refsect1> </refentry> <refentry> @@ -2699,14 +2817,17 @@ </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> - + registers get written to <parameter>new_h</parameter>. The default handler does nothing. 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> +<refsect1> + <title>Returns</title> + <para> + the old handler + </para> +</refsect1> </refentry> <refentry> @@ -2733,7 +2854,7 @@ <term><parameter>req_callback_t</parameter></term> <listitem> <para> - -- undescribed -- + This is the general request handler </para> </listitem> </varlistentry> @@ -2742,8 +2863,6 @@ <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. @@ -2775,7 +2894,7 @@ <term><parameter>arm_req_callback_t</parameter></term> <listitem> <para> - -- undescribed -- + This is the general arm-request handle </para> </listitem> </varlistentry> @@ -2904,10 +3023,9 @@ </para> </refsect1> <refsect1> - <title>returns</title> + <title>Returns</title> <para> - 0 ... success - <0 ... failure + 0 on success or -1 on failure (sets errno) </para> </refsect1> </refentry> @@ -2954,10 +3072,9 @@ </variablelist> </refsect1> <refsect1> - <title>returns</title> + <title>Returns</title> <para> - 0 ... success - <0 ... failure + 0 on success or -1 on failure (sets errno) </para> </refsect1> </refentry> @@ -2989,7 +3106,7 @@ <term><parameter>handle</parameter></term> <listitem> <para> - -- undescribed -- + libraw1394 handle </para> </listitem> </varlistentry> @@ -3028,10 +3145,9 @@ </para> </refsect1> <refsect1> - <title>returns</title> + <title>Returns</title> <para> - 0 ... success - <0 ... failure, and errno - error code + 0 on success or -1 on failure (sets errno) </para> </refsect1> </refentry> @@ -3102,10 +3218,9 @@ </para> </refsect1> <refsect1> - <title>returns</title> + <title>Returns</title> <para> - 0 ... success - <0 ... failure, and errno - error code + 0 on success or -1 on failure (sets errno) </para> </refsect1> </refentry> @@ -3158,10 +3273,9 @@ </para> </refsect1> <refsect1> - <title>returns</title> + <title>Returns</title> <para> - 0 .... success - <0 ... failure + 0 on success or -1 on failure (sets errno) </para> </refsect1> </refentry> @@ -3204,10 +3318,9 @@ </para> </refsect1> <refsect1> - <title>returns</title> + <title>Returns</title> <para> - 0 .... success - <0 ... failure + 0 on success or -1 on failure (sets errno) </para> </refsect1> </refentry> @@ -3245,7 +3358,7 @@ <term><parameter>data</parameter></term> <listitem> <para> - -- undescribed -- + the contents of the packet </para> </listitem> </varlistentry> @@ -3258,16 +3371,77 @@ </para> </refsect1> <refsect1> - <title>returns</title> + <title>Returns</title> <para> - 0 .... success - <0 ... failure + 0 on success or -1 on failure (sets errno) </para> </refsect1> </refentry> <refentry> <refmeta> +<refentrytitle><phrase id="API-raw1394-start-phy-packet-write">raw1394_start_phy_packet_write</phrase></refentrytitle> +</refmeta> +<refnamediv> + <refname>raw1394_start_phy_packet_write</refname> + <refpurpose> + initiate sending a physical request + </refpurpose> +</refnamediv> +<refsynopsisdiv> + <title>Synopsis</title> + <funcsynopsis><funcprototype> + <funcdef>int <function>raw1394_start_phy_packet_write </function></funcdef> + <paramdef>raw1394handle_t <parameter>handle</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>data</parameter></term> + <listitem> + <para> + the contents of the packet + </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> + examples of physical requests are linkon, physicalconfigurationpacket, etc. + </para> +</refsect1> +<refsect1> + <title>Returns</title> + <para> + 0 on success or -1 on failure (sets errno) + </para> +</refsect1> +</refentry> + +<refentry> +<refmeta> <refentrytitle><phrase id="API-raw1394-start-read">raw1394_start_read</phrase></refentrytitle> </refmeta> <refnamediv> @@ -3344,8 +3518,7 @@ <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 + This function starts the specified read request. If <parameter>length</parameter> is <constant>4</constant> a quadlet read is initiated and a block read otherwise. </para><para> @@ -3357,6 +3530,12 @@ unsigned long). </para> </refsect1> +<refsect1> + <title>Returns</title> + <para> + 0 on success or -1 on failure (sets errno) + </para> +</refsect1> </refentry> <refentry> @@ -3437,8 +3616,7 @@ <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 + This function starts the specified write request. If <parameter>length</parameter> is <constant>4</constant> a quadlet write is initiated and a block write otherwise. </para><para> @@ -3450,6 +3628,12 @@ unsigned long). </para> </refsect1> +<refsect1> + <title>Returns</title> + <para> + 0 on success or -1 on failure (sets errno) + </para> +</refsect1> </refentry> <refentry> @@ -3548,10 +3732,7 @@ <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> - + This function starts the specified lock request. 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 @@ -3560,6 +3741,12 @@ unsigned long). </para> </refsect1> +<refsect1> + <title>Returns</title> + <para> + 0 on success or -1 on failure (sets errno) + </para> +</refsect1> </refentry> <refentry> @@ -3658,10 +3845,7 @@ <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> - + This function starts the specified lock request. 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 @@ -3670,6 +3854,12 @@ unsigned long). </para> </refsect1> +<refsect1> + <title>Returns</title> + <para> + 0 on success or -1 on failure (sets errno) + </para> +</refsect1> </refentry> <refentry> @@ -3711,7 +3901,7 @@ <term><parameter>channel</parameter></term> <listitem> <para> - -- undescribed -- + the isochronous channel number to send on </para> </listitem> </varlistentry> @@ -3719,7 +3909,7 @@ <term><parameter>tag</parameter></term> <listitem> <para> - -- undescribed -- + data to be put into packet's tag field </para> </listitem> </varlistentry> @@ -3727,7 +3917,7 @@ <term><parameter>sy</parameter></term> <listitem> <para> - -- undescribed -- + data to be put into packet's sy field </para> </listitem> </varlistentry> @@ -3735,7 +3925,7 @@ <term><parameter>speed</parameter></term> <listitem> <para> - -- undescribed -- + speed at which to send </para> </listitem> </varlistentry> @@ -3743,7 +3933,7 @@ <term><parameter>length</parameter></term> <listitem> <para> - -- undescribed -- + amount of data to send </para> </listitem> </varlistentry> @@ -3751,7 +3941,7 @@ <term><parameter>data</parameter></term> <listitem> <para> - -- undescribed -- + pointer to data to send </para> </listitem> </varlistentry> @@ -3759,7 +3949,7 @@ <term><parameter>rawtag</parameter></term> <listitem> <para> - -- undescribed -- + data to identify the request to completion handler </para> </listitem> </varlistentry> @@ -3772,6 +3962,12 @@ tag handler. </para> </refsect1> +<refsect1> + <title>Returns</title> + <para> + 0 on success or -1 on failure (sets errno) + </para> +</refsect1> </refentry> <refentry> @@ -3811,7 +4007,7 @@ <term><parameter>length</parameter></term> <listitem> <para> - -- undescribed -- + the amount of quadlets of data to send </para> </listitem> </varlistentry> @@ -3819,7 +4015,7 @@ <term><parameter>header_length</parameter></term> <listitem> <para> - -- undescribed -- + the number of quadlets in the header </para> </listitem> </varlistentry> @@ -3827,7 +4023,7 @@ <term><parameter>expect_response</parameter></term> <listitem> <para> - -- undescribed -- + indicate with a 0 or 1 whether to receive a completion event </para> </listitem> </varlistentry> @@ -3835,7 +4031,7 @@ <term><parameter>data</parameter></term> <listitem> <para> - -- undescribed -- + pointer to data to send </para> </listitem> </varlistentry> @@ -3843,7 +4039,7 @@ <term><parameter>rawtag</parameter></term> <listitem> <para> - -- undescribed -- + data to identify the request to completion handler </para> </listitem> </varlistentry> @@ -3865,6 +4061,12 @@ corrupt packet may lead to weird results. </para> </refsect1> +<refsect1> + <title>Returns</title> + <para> + 0 on success or -1 on failure (sets errno) + </para> +</refsect1> </refentry> <refentry> @@ -3903,7 +4105,7 @@ <term><parameter>node</parameter></term> <listitem> <para> - -- undescribed -- + target node </para> </listitem> </varlistentry> @@ -3911,7 +4113,7 @@ <term><parameter>addr</parameter></term> <listitem> <para> - -- undescribed -- + address to read from </para> </listitem> </varlistentry> @@ -3919,7 +4121,7 @@ <term><parameter>length</parameter></term> <listitem> <para> - -- undescribed -- + amount of data to read in quadlets </para> </listitem> </varlistentry> @@ -3927,7 +4129,7 @@ <term><parameter>buffer</parameter></term> <listitem> <para> - -- undescribed -- + pointer to buffer where data will be saved </para> </listitem> </varlistentry> @@ -3941,6 +4143,12 @@ handlers called will be therefore lost. </para> </refsect1> +<refsect1> + <title>Returns</title> + <para> + 0 on success or -1 on failure (sets errno) + </para> +</refsect1> </refentry> <refentry> @@ -3979,7 +4187,7 @@ <term><parameter>node</parameter></term> <listitem> <para> - -- undescribed -- + target node </para> </listitem> </varlistentry> @@ -3987,7 +4195,7 @@ <term><parameter>addr</parameter></term> <listitem> <para> - -- undescribed -- + address to write to </para> </listitem> </varlistentry> @@ -3995,7 +4203,7 @@ <term><parameter>length</parameter></term> <listitem> <para> - -- undescribed -- + amount of data to write in quadlets </para> </listitem> </varlistentry> @@ -4003,7 +4211,7 @@ <term><parameter>data</parameter></term> <listitem> <para> - -- undescribed -- + pointer to data to be sent </para> </listitem> </varlistentry> @@ -4017,6 +4225,12 @@ handlers called will be therefore lost. </para> </refsect1> +<refsect1> + <title>Returns</title> + <para> + 0 on success or -1 on failure (sets errno) + </para> +</refsect1> </refentry> <refentry> @@ -4057,7 +4271,7 @@ <term><parameter>node</parameter></term> <listitem> <para> - -- undescribed -- + target node </para> </listitem> </varlistentry> @@ -4065,7 +4279,7 @@ <term><parameter>addr</parameter></term> <listitem> <para> - -- undescribed -- + address to read from </para> </listitem> </varlistentry> @@ -4073,7 +4287,7 @@ <term><parameter>extcode</parameter></term> <listitem> <para> - -- undescribed -- + extended transaction code determining the lock operation </para> </listitem> </varlistentry> @@ -4081,7 +4295,7 @@ <term><parameter>data</parameter></term> <listitem> <para> - -- undescribed -- + data part of lock parameters </para> </listitem> </varlistentry> @@ -4089,7 +4303,7 @@ <term><parameter>arg</parameter></term> <listitem> <para> - -- undescribed -- + arg part of lock parameters </para> </listitem> </varlistentry> @@ -4097,7 +4311,7 @@ <term><parameter>result</parameter></term> <listitem> <para> - -- undescribed -- + address where return value will be written </para> </listitem> </varlistentry> @@ -4111,6 +4325,12 @@ handlers called will be therefore lost. </para> </refsect1> +<refsect1> + <title>Returns</title> + <para> + 0 on success or -1 on failure (sets errno) + </para> +</refsect1> </refentry> <refentry> @@ -4151,7 +4371,7 @@ <term><parameter>node</parameter></term> <listitem> <para> - -- undescribed -- + target node </para> </listitem> </varlistentry> @@ -4159,7 +4379,7 @@ <term><parameter>addr</parameter></term> <listitem> <para> - -- undescribed -- + address to read from </para> </listitem> </varlistentry> @@ -4167,7 +4387,7 @@ <term><parameter>extcode</parameter></term> <listitem> <para> - -- undescribed -- + extended transaction code determining the lock operation </para> </listitem> </varlistentry> @@ -4175,7 +4395,7 @@ <term><parameter>data</parameter></term> <listitem> <para> - -- undescribed -- + data part of lock parameters </para> </listitem> </varlistentry> @@ -4183,7 +4403,7 @@ <term><parameter>arg</parameter></term> <listitem> <para> - -- undescribed -- + arg part of lock parameters </para> </listitem> </varlistentry> @@ -4191,7 +4411,7 @@ <term><parameter>result</parameter></term> <listitem> <para> - -- undescribed -- + address where return value will be written </para> </listitem> </varlistentry> @@ -4205,6 +4425,12 @@ handlers called will be therefore lost. </para> </refsect1> +<refsect1> + <title>Returns</title> + <para> + 0 on success or -1 on failure (sets errno) + </para> +</refsect1> </refentry> <refentry> @@ -4244,7 +4470,7 @@ <term><parameter>channel</parameter></term> <listitem> <para> - -- undescribed -- + the isochronous channel number to send on </para> </listitem> </varlistentry> @@ -4252,7 +4478,7 @@ <term><parameter>tag</parameter></term> <listitem> <para> - -- undescribed -- + data to be put into packet's tag field </para> </listitem> </varlistentry> @@ -4260,7 +4486,7 @@ <term><parameter>sy</parameter></term> <listitem> <para> - -- undescribed -- + data to be put into packet's sy field </para> </listitem> </varlistentry> @@ -4268,7 +4494,7 @@ <term><parameter>speed</parameter></term> <listitem> <para> - -- undescribed -- + speed at which to send </para> </listitem> </varlistentry> @@ -4276,7 +4502,7 @@ <term><parameter>length</parameter></term> <listitem> <para> - -- undescribed -- + amount of data to send </para> </listitem> </varlistentry> @@ -4284,12 +4510,18 @@ <term><parameter>data</parameter></term> <listitem> <para> - -- undescribed -- + pointer to data to send </para> </listitem> </varlistentry> </variablelist> </refsect1> +<refsect1> + <title>Returns</title> + <para> + 0 on success or -1 on failure (sets errno) + </para> +</refsect1> </refentry> <refentry> @@ -4327,7 +4559,7 @@ <term><parameter>length</parameter></term> <listitem> <para> - -- undescribed -- + the amount of quadlets of data to send </para> </listitem> </varlistentry> @@ -4335,7 +4567,7 @@ <term><parameter>header_length</parameter></term> <listitem> <para> - -- undescribed -- + the number of quadlets in the header </para> </listitem> </varlistentry> @@ -4343,7 +4575,7 @@ <term><parameter>expect_response</parameter></term> <listitem> <para> - -- undescribed -- + indicate with a 0 or 1 whether to receive a completion event </para> </listitem> </varlistentry> @@ -4351,12 +4583,18 @@ <term><parameter>data</parameter></term> <listitem> <para> - -- undescribed -- + pointer to data to send </para> </listitem> </varlistentry> </variablelist> </refsect1> +<refsect1> + <title>Returns</title> + <para> + 0 on success or -1 on failure (sets errno) + </para> +</refsect1> </refentry> <refentry> @@ -4398,6 +4636,12 @@ callback specified with <function>raw1394_set_fcp_handler</function>. </para> </refsect1> +<refsect1> + <title>Returns</title> + <para> + 0 on success or -1 on failure (sets errno) + </para> +</refsect1> </refentry> <refentry> @@ -4437,6 +4681,12 @@ FCP_RESPONSE address ranges) on <parameter>handle</parameter>. </para> </refsect1> +<refsect1> + <title>Returns</title> + <para> + 0 on success or -1 on failure (sets errno) + </para> +</refsect1> </refentry> <refentry> @@ -4478,6 +4728,12 @@ Might be useful for an application. </para> </refsect1> +<refsect1> + <title>Returns</title> + <para> + a pointer to a string containing the version number + </para> +</refsect1> </refentry> <refentry> @@ -4487,7 +4743,7 @@ <refnamediv> <refname>raw1394_update_config_rom</refname> <refpurpose> - updates the configuration rom of a host + updates the configuration ROM of a host </refpurpose> </refnamediv> <refsynopsisdiv> @@ -4515,7 +4771,7 @@ <term><parameter>new_rom</parameter></term> <listitem> <para> - -- undescribed -- + a pointer to the new ROM image </para> </listitem> </varlistentry> @@ -4523,7 +4779,7 @@ <term><parameter>size</parameter></term> <listitem> <para> - -- undescribed -- + the size of the new ROM image in quadlets </para> </listitem> </varlistentry> @@ -4531,7 +4787,7 @@ <term><parameter>rom_version</parameter></term> <listitem> <para> - -- undescribed -- + the version numer of the current version, not the new </para> </listitem> </varlistentry> @@ -4542,10 +4798,16 @@ <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> +<refsect1> + <title>Returns</title> + <para> + -1 (failure) if the version is incorrect, + -2 (failure) if the new rom version is too big, or + 0 for success + </para> +</refsect1> </refentry> <refentry> @@ -4555,7 +4817,7 @@ <refnamediv> <refname>raw1394_get_config_rom</refname> <refpurpose> - reads the current version of the configuration rom of a host + reads the current version of the configuration ROM of a host </refpurpose> </refnamediv> <refsynopsisdiv> @@ -4584,7 +4846,7 @@ <term><parameter>buffer</parameter></term> <listitem> <para> - -- undescribed -- + the memory address at which to store the copy of the ROM </para> </listitem> </varlistentry> @@ -4600,7 +4862,7 @@ <term><parameter>rom_size</parameter></term> <listitem> <para> - -- undescribed -- + upon successful return, contains the size of the ROM </para> </listitem> </varlistentry> @@ -4608,7 +4870,7 @@ <term><parameter>rom_version</parameter></term> <listitem> <para> - -- undescribed -- + upon successful return, contains the version of the rom </para> </listitem> </varlistentry> @@ -4619,10 +4881,14 @@ <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> +<refsect1> + <title>Return</title> + <para> + -1 (failure) if the buffer was too small or 0 for success + </para> +</refsect1> </refentry> <refentry> Modified: trunk/src/raw1394.h =================================================================== --- trunk/src/raw1394.h 2004-11-20 04:56:36 UTC (rev 149) +++ trunk/src/raw1394.h 2004-11-25 18:01:57 UTC (rev 150) @@ -129,6 +129,8 @@ * @irq_interval: maximum latency of wake-ups, in packets (-1 if you don't care) * * Allocates all user and kernel resources necessary for isochronous transmission. + * + * Returns: 0 on success or -1 on failure (sets errno) **/ int raw1394_iso_xmit_init(raw1394handle_t handle, raw1394_iso_xmit_handler_t handler, @@ -151,6 +153,8 @@ * (-1 if you don't care) * * Allocates all user and kernel resources necessary for isochronous reception. + * + * Returns: 0 on success or -1 on failure (sets errno) **/ int raw1394_iso_recv_init(raw1394handle_t handle, raw1394_iso_recv_handler_t handler, @@ -171,6 +175,8 @@ * @irq_interval: maximum latency of wake-ups, in packets (-1 if you don't care) * * Allocates all user and kernel resources necessary for isochronous reception. + * + * Returns: 0 on success or -1 on failure (sets errno) **/ int raw1394_iso_multichannel_recv_init(raw1394handle_t handle, raw1394_iso_recv_handler_t handler, @@ -181,8 +187,11 @@ /** * raw1394_iso_recv_listen_channel - listen to a specific channel in multi-channel mode * @handle: libraw1394 handle + * @channel: the channel to start listening * - * listen/unlisten on a specific channel (multi-channel mode ONLY) + * listen/unlisten on a specific channel (multi-channel mode ONLY) + * + * Returns: 0 on success or -1 on failure (sets errno) **/ int raw1394_iso_recv_listen_channel(raw1394handle_t handle, unsigned char channel); @@ -190,6 +199,9 @@ /** * raw1394_iso_recv_unlisten_channel - stop listening to a specific channel in multi-channel mode * @handle: libraw1394 handle + * @channel: the channel to stop listening to + * + * Returns: 0 on success or -1 on failure (sets errno) **/ int raw1394_iso_recv_unlisten_channel(raw1394handle_t handle, unsigned char channel); @@ -201,6 +213,8 @@ * channel 0 is LSB, channel 63 is MSB * * for multi-channel reception mode only + * + * Returns: 0 on success, -1 on failure (sets errno) **/ int raw1394_iso_recv_set_channel_mask(raw1394handle_t handle, u_int64_t mask); @@ -211,6 +225,8 @@ * (-1 if you don't care) * @prebuffer_packets: number of packets to queue up before starting transmission * (-1 if you don't care) + * + * Returns: 0 on success or -1 on failure (sets errno) **/ int raw1394_iso_xmit_start(raw1394handle_t handle, int start_on_cycle, int prebuffer_packets); @@ -222,6 +238,8 @@ * (-1 if you don't care) * @tag_mask: mask of tag fields to match (-1 to receive all packets) * @sync: not used, reserved for future implementation + * + * Returns: 0 on success or -1 on failure (sets errno) **/ int raw1394_iso_recv_start(raw1394handle_t handle, int start_on_cycle, int tag_mask, int sync); @@ -238,6 +256,8 @@ * if buffer is full, waits for more space UNLESS the file descriptor is * set to non-blocking, in which case xmit_write() will return -1 with * errno = EAGAIN + * + * Returns: 0 on success or -1 on failure (sets errno) **/ int raw1394_iso_xmit_write(raw1394handle_t handle, unsigned char *data, unsigned int len, unsigned char tag, @@ -246,6 +266,8 @@ /** * raw1394_iso_xmit_sync - wait until all queued packets have been sent * @handle: libraw1394 handle + * + * Returns: 0 on success or -1 on failure (sets errno) **/ int raw1394_iso_xmit_sync(raw1394handle_t handle); @@ -261,6 +283,8 @@ * 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. + * + * Returns: 0 on success or -1 on failure (sets errno) **/ int raw1394_iso_recv_flush(raw1394handle_t handle); @@ -287,14 +311,15 @@ * raw1394_get_errcode - return error code of async transaction * @handle: libraw1394 handle * - * Returns the error code of the last raw1394_read(), raw1394_write(), + * Some macros are available to extract information from the error code, + * raw1394_errcode_to_errno() can be used to convert it to an errno number of + * roughly the same meaning. + * + * Returns: the error code of the last raw1394_read(), raw1394_write(), * raw1394_lock() or raw1394_iso_write(). 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. * - * Some macros are available to extract information from the error code, - * raw1394_errcode_to_errno() can be used to convert it to an errno number of - * roughly the same meaning. **/ raw1394_errcode_t raw1394_get_errcode(raw1394handle_t handle); @@ -312,7 +337,7 @@ * meaning only, the associated text of e.g. perror() is not necessarily * meaningful. * - * Returned values are %EAGAIN (retrying might succeed, also generation number + * Returns: %EAGAIN (retrying might succeed, also generation number * mismatch), %EREMOTEIO (other node had internal problems), %EPERM (operation * not allowed on this address, e.g. write on read-only location), %EINVAL * (invalid argument) and %EFAULT (invalid pointer). @@ -327,7 +352,7 @@ * processes. It is allowed to create and use multiple handles, however. Use * one handle per thread which needs it in the multithreaded case. * - * Returns the created handle or %NULL when initialization fails. In the latter + * Returns: the created handle or %NULL when initialization fails. In the latter * case errno either contains some OS specific error code or %0 if the error is * that libraw1394 and raw1394 don't support each other's protocol versions. **/ @@ -352,17 +377,17 @@ * raw1394_get_port_info() and raw1394_set_port(). Useful for * command-line programs that already know what port they want. If * raw1394_set_port() returns ESTALE, retries automatically. + * + * Returns: the new handle on success or NULL on failure **/ raw1394handle_t raw1394_new_handle_on_port(int port); /** * raw1394_busreset_notify - Switch off/on busreset-notification for handle * @handle: libraw1394 handle + * @off_on_switch: RAW1394_NOTIFY_OFF or RAW1394_NOTIFY_ON * - * returns: - * ==0 success - * !=0 failure - * off_on_switch .... RAW1394_NOTIFY_OFF or RAW1394_NOTIFY_ON + * Returns: 0 on success or -1 on failure (sets errno) **/ int raw1394_busreset_notify (raw1394handle_t handle, int off_on_switch); @@ -370,12 +395,13 @@ * raw1394_get_fd - get the communication file descriptor * @handle: libraw1394 handle * - * Returns the fd used for communication with the raw1394 kernel module. This - * can be used for select()/poll() calls if you wait on other fds or can be + * This can be used for select()/poll() 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 fcntl() to modify * the blocking behaviour in raw1394_loop_iterate(). It must not be used for * anything else. + * + * Returns: the fd used for communication with the raw1394 kernel module. **/ int raw1394_get_fd(raw1394handle_t handle); @@ -395,7 +421,7 @@ * raw1394_get_userdata - retrieve user data from handle * @handle: libraw1394 handle * - * Returns the user data pointer associated with the handle using + * Returns: the user data pointer associated with the handle using * raw1394_set_userdata(). **/ void *raw1394_get_userdata(raw1394handle_t handle); @@ -404,7 +430,7 @@ * raw1394_get_local_id - get node ID of the current port * @handle: libraw1394 handle * - * Returns the node ID of the local node connected to which the handle is + * Returns: the node ID of the local node connected to which the handle is * connected. This value can change with every bus reset. **/ nodeid_t raw1394_get_local_id(raw1394handle_t handle); @@ -413,7 +439,7 @@ * raw1394_get_irm_id - get node ID of isochronous resource manager * @handle: libraw1394 handle * - * Returns the node ID of the isochronous resource manager of the bus the handle + * 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. **/ nodeid_t raw1394_get_irm_id(raw1394handle_t handle); @@ -422,10 +448,12 @@ * raw1394_get_nodecount - get number of nodes on the bus * @handle: libraw1394 handle * - * 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 + * 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)). + * + * Returns: the number of nodes on the bus to which the handle is connected. + * This value can change with every bus reset. **/ int raw1394_get_nodecount(raw1394handle_t handle); @@ -446,11 +474,11 @@ * 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. + * command line option to choose the port. If @maxports is %0, @pinf can be + * %NULL, too. * - * Returns the number of ports and writes information about them into @pinf, but - * not into more than @maxports elements. If @maxports is %0, @pinf can be - * %NULL, too. + * Returns: the number of ports and writes information about them into @pinf, but + * not into more than @maxports elements. **/ int raw1394_get_port_info(raw1394handle_t handle, struct raw1394_portinfo *pinf, int maxports); @@ -466,7 +494,7 @@ * To make up for this, all the other functions (those handling asynchronous and * isochronous transmissions) can now be called. * - * Returns %0 for success and -1 for failure with errno set appropriately. A + * Returns: %0 for success or -1 for failure with errno set appropriately. A * possible failure mode is with errno = %ESTALE, in this case the configuration * has changed since the call to raw1394_get_port_info() and it has to be called * again to update your view of the available ports. @@ -481,18 +509,16 @@ * not necessary and should be avoided, this function is here for low level bus * control and debugging. * - * Returns: %0 for success and -1 for failure with errno set appropriately. + * Returns: %0 for success or -1 for failure with errno set appropriately **/ int raw1394_reset_bus(raw1394handle_t handle); /** * raw1394_reset_bus_new - Reset the connected bus (with certain type). * @handle: libraw1394 handle + * @type: RAW1394_SHORT_RESET or RAW1394_LONG_RESET * - * returns: - * -1 failure - * 0 success - * type .... RAW1394_SHORT_RESET or RAW1394_LONG_RESET + * Returns: %0 for success or -1 for failure **/ int raw1394_reset_bus_new(raw1394handle_t handle, int type); @@ -501,12 +527,12 @@ * @handle: libraw1394 handle * * Get one new message through handle and process it with the registered message - * handler. This function will return %-1 for an error or the return value of - * the handler which got executed. The default handlers always return zero. + * handler. 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. * - * 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. + * Returns: %-1 for an error or the return value of + * the handler which got executed. The default handlers always return zero. **/ int raw1394_loop_iterate(raw1394handle_t handle); @@ -517,8 +543,10 @@ * @handle: libraw1394 handle * @new_h: pointer to new handler * - * Sets the handler to be called on every bus reset to @new_h and returns the - * old handler. The default handler just calls raw1394_update_generation(). + * Sets the handler to be called on every bus reset to @new_h. + * The default handler just calls raw1394_update_generation(). + * + * Returns: the old handler **/ bus_reset_handler_t raw1394_set_bus_reset_handler(raw1394handle_t handle, bus_reset_handler_t new_h); @@ -527,20 +555,20 @@ * raw1394_get_generation - get generation number of handle * @handle: libraw1394 handle * - * This function returns the generation number associated with the handle. The - * generation number is incremented on every bus reset, and every transaction + * 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. - * * The generation number of the handle is not automatically updated, * raw1394_update_generation() has to be used for this. + * + * Returns: the generation number associated with the handle **/ unsigned int raw1394_get_generation(raw1394handle_t handle); /** * raw1394_update_generation - set generation number of handle + * @handle: libraw1394 handle * @generation: new generation number - * @handle: libraw1394 handle * * This function sets the generation number of the handle to @gen. All requests * that apply to a single node ID are tagged with this number and abort with an @@ -560,14 +588,16 @@ * @handle: libraw1394 handle * @new_h: pointer to new handler * - * Sets the handler to be called whenever a request completes to @new_h and - * returns the old handler. The default handler interprets the tag as a pointer + * Sets the handler to be called whenever a request completes to @new_h. + * The default handler interprets the tag as a pointer * to a &struct raw1394_reqhandle and calls the callback in there. * * Care must be taken when replacing the tag handler and calling the synchronous * versions of the transaction functions (i.e. raw1394_read(), raw1394_write(), * raw1394_lock(), raw1394_iso_write()) since these do pass pointers to &struct * raw1394_reqhandle as the tag and expect the callback to be invoked. + * + * Returns: the old handler **/ tag_handler_t raw1394_set_tag_handler(raw1394handle_t handle, tag_handler_t new_h); @@ -583,7 +613,9 @@ * * 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. + * raw1394_arm_reqhandle pointed to by arm_tag. + * + * Returns: old handler **/ arm_tag_handler_t raw1394_set_arm_tag_handler(raw1394handle_t handle, arm_tag_handler_t new_h); @@ -599,16 +631,17 @@ * Function Control Protocol is defined in IEC 61883-1. * * Sets the handler to be called when either FCP command or FCP response - * registers get written to @new_h and returns the old handler. The default - * handler does nothing. - * + * registers get written to @new_h. The default handler does nothing. * In order to actually get FCP events, you have to enable it with * raw1394_start_fcp_listen() and can stop it with raw1394_stop_fcp_listen(). + * + * Returns: the old handler **/ fcp_handler_t raw1394_set_fcp_handler(raw1394handle_t handle, fcp_handler_t new_h); /** * req_callback_t - This is the general request handler + * @req_callback_t: This is the general request handler * * It is used by the default tag handler * when a request completes, it calls the callback and passes it the data @@ -624,6 +657,7 @@ /** * arm_req_callback_t - This is the general arm-request handle + * @arm_req_callback_t: This is the general arm-request handle * @handle: libraw1394 handle * * (arm = address range mapping) @@ -665,8 +699,8 @@ * access_rights will be ignored. * * ARM = Adress Range Mapping - * returns: 0 ... success - * <0 ... failure + * + * Returns: 0 on success or -1 on failure (sets errno) **/ int raw1394_arm_register(raw1394handle_t handle, nodeaddr_t start, size_t length, byte_t *initial_value, @@ -680,13 +714,13 @@ * (value of start have to be the same value * used for registering this adressrange) * - * returns: 0 ... success - * <0 ... failure + * Returns: 0 on success or -1 on failure (sets errno) **/ int raw1394_arm_unregister(raw1394handle_t handle, nodeaddr_t start); /** * raw1394_arm_set_buf - set the buffer of an AdressRangeMapping + * @handle: libraw1394 handle * @start: identifies addressrange * @length: identifies addressrange * @buf: pointer to buffer @@ -695,8 +729,7 @@ * to one ARM block in kernel memory area * with start offset @start. * - * returns: 0 ... success - * <0 ... failure, and errno - error code + * Returns: 0 on success or -1 on failure (sets errno) **/ int raw1394_arm_set_buf (raw1394handle_t handle, nodeaddr_t start, size_t length, void *buf); @@ -712,8 +745,7 @@ * ARM block in kernel memory area with start offset @start * to user memory area @buf * - * returns: 0 ... success - * <0 ... failure, and errno - error code + * Returns: 0 on success or -1 on failure (sets errno) **/ int raw1394_arm_get_buf (raw1394handle_t handle, nodeaddr_t start, size_t length, void *buf); @@ -726,8 +758,8 @@ * the driver then send back the * same request. raw1394_loop_iterate will return data as return value, * when it processes the echo. - * returns: 0 .... success - * <0 ... failure + * + * Returns: 0 on success or -1 on failure (sets errno) **/ int raw1394_echo_request(raw1394handle_t handle, quadlet_t data); @@ -738,8 +770,7 @@ * (or a blocking read from the device * file). actually this calls raw1394_echo_request with 0 as data. * - * returns: 0 .... success - * <0 ... failure + * Returns: 0 on success or -1 on failure (sets errno) **/ int raw1394_wake_up(raw1394handle_t handle); @@ -747,12 +778,24 @@ /** * raw1394_phy_packet_write - send physical request * @handle: libraw1394 handle + * @data: the contents of the packet * * examples of physical requests are linkon, physicalconfigurationpacket, etc. - * returns: 0 .... success - * <0 ... failure + * + * Returns: 0 on success or -1 on failure (sets errno) **/ int raw1394_phy_packet_write (raw1394handle_t handle, quadlet_t data); + +/** + * raw1394_start_phy_packet_write - initiate sending a physical request + * @handle: libraw1394 handle + * @data: the contents of the packet + * @tag: data to identify the request to completion handler + * + * examples of physical requests are linkon, physicalconfigurationpacket, etc. + * + * Returns: 0 on success or -1 on failure (sets errno) + **/ int raw1394_start_phy_packet_write(raw1394handle_t handle, quadlet_t data, unsigned long tag); @@ -765,8 +808,7 @@ * @buffer: pointer to buffer where data will be saved * @tag: data to identify the request to completion handler * - * This function starts the specified read request and returns %0 for success - * and a negative number for an error, in which case errno will be set. If + * This function starts the specified read request. If * @length is %4 a quadlet read is initiated and a block read otherwise. * * The transaction is only started, no success of the transaction is implied @@ -775,6 +817,8 @@ * error code of the transaction. @tag should therefore be set to something * that uniquely identifies this transaction (e.g. a struct pointer casted to * unsigned long). + * + * Returns: 0 on success or -1 on failure (sets errno) **/ int raw1394_start_read(raw1394handle_t handle, nodeid_t node, nodeaddr_t addr, size_t length, quadlet_t *buffer, unsigned long tag); @@ -788,8 +832,7 @@ * @data: pointer to data to be sent * @tag: data to identify the request to completion handler * - * This function starts the specified write request and returns %0 for success - * and a negative number for an error, in which case errno will be set. If + * This function starts the specified write request. If * @length is %4 a quadlet write is initiated and a block write otherwise. * * The transaction is only started, no success of the transaction is implied @@ -798,6 +841,8 @@ * error code of the transaction. @tag should therefore be set to something * that uniquely identifies this transaction (e.g. a struct pointer casted to * unsigned long). + * + * Returns: 0 on success or -1 on failure (sets errno) **/ int raw1394_start_write(raw1394handle_t handle, nodeid_t node, nodeaddr_t addr, size_t length, quadlet_t *data, unsigned long tag); @@ -813,15 +858,15 @@ * @result: address where return value will be written * @tag: data to identify the request to completion handler * - * This function starts the specified lock request and returns %0 for success - * and a negative number for an error, in which case errno will be set. - * + * This function starts the specified lock request. * The transaction is only started, no success of the transaction is implied * with a successful return of this function. When the transaction completes, a * raw1394_loop_iterate() will call the tag handler and pass it the tag and * error code of the transaction. @tag should therefore be set to something * that uniquely identifies this transaction (e.g. a struct pointer casted to * unsigned long). + * + * Returns: 0 on success or -1 on failure (sets errno) **/ int raw1394_start_lock(raw1394handle_t handle, nodeid_t node, nodeaddr_t addr, unsigned int extcode, quadlet_t data, quadlet_t arg, @@ -838,15 +883,15 @@ * @result: address where return value will be written * @tag: data to identify the request to completion handler * - * This function starts the specified lock request and returns %0 for success - * and a negative n... [truncated message content] |
From: SVN U. <dde...@li...> - 2004-11-20 04:56:48
|
Author: ddennedy Date: 2004-11-19 23:56:36 -0500 (Fri, 19 Nov 2004) New Revision: 149 Modified: trunk/libraw1394.pc.in Log: pkgconfig include path should not contain libraw1394 Modified: trunk/libraw1394.pc.in =================================================================== --- trunk/libraw1394.pc.in 2004-11-19 02:15:15 UTC (rev 148) +++ trunk/libraw1394.pc.in 2004-11-20 04:56:36 UTC (rev 149) @@ -7,4 +7,4 @@ Description: Interface library for the Linux IEEE1394 drivers. Version: @VERSION@ Libs: -L${libdir} -lraw1394 -Cflags: -I${includedir}/libraw1394 +Cflags: -I${includedir} |
From: SVN U. <dde...@li...> - 2004-11-19 02:16:38
|
Author: ddennedy Date: 2004-11-18 21:15:15 -0500 (Thu, 18 Nov 2004) New Revision: 148 Modified: trunk/tools/dumpiso.c trunk/tools/sendiso.c Log: bump version of isodump file Modified: trunk/tools/dumpiso.c =================================================================== --- trunk/tools/dumpiso.c 2004-11-18 05:24:13 UTC (rev 147) +++ trunk/tools/dumpiso.c 2004-11-19 02:15:15 UTC (rev 148) @@ -135,7 +135,7 @@ void write_header() { - static char header[32] = "1394 isodump v1"; + static char header[32] = "1394 isodump v2"; int i; for (i = 0; i < 8; i++) Modified: trunk/tools/sendiso.c =================================================================== --- trunk/tools/sendiso.c 2004-11-18 05:24:13 UTC (rev 147) +++ trunk/tools/sendiso.c 2004-11-19 02:15:15 UTC (rev 148) @@ -239,7 +239,7 @@ } if (memcmp("1394 isodump v", buffer, 14)) goto bad_format; - if (buffer[14] != '1') goto wrong_version; + if (buffer[14] != '2') goto wrong_version; while (1) { send_file_once(handle, file); |