summaryrefslogtreecommitdiffstats
path: root/src/eventloop.c
diff options
context:
space:
mode:
authorGravatar ddennedy 2002-10-23 21:18:49 +0000
committerGravatar ddennedy 2002-10-23 21:18:49 +0000
commit915a20a96f6fb81249f140a114b94f2b1502149d (patch)
tree78511c7186615b5d3473bd72f9b513ba5d9e00e1 /src/eventloop.c
parentconfigure.ac: (diff)
merged weihs branch
git-svn-id: svn://svn.linux1394.org/libraw1394/trunk@84 53a565d1-3bb7-0310-b661-cf11e63c67ab
Diffstat (limited to 'src/eventloop.c')
-rw-r--r--src/eventloop.c33
1 files changed, 33 insertions, 0 deletions
diff --git a/src/eventloop.c b/src/eventloop.c
index 1f19613..4eb83b6 100644
--- a/src/eventloop.c
+++ b/src/eventloop.c
@@ -2,10 +2,20 @@
* libraw1394 - library for raw access to the 1394 bus with the Linux subsystem.
*
* Copyright (C) 1999,2000,2001,2002 Andreas Bombe
+ * 2002 Manfred Weihs <weihs@ict.tuwien.ac.at>
+ * 2002 Christian Toegel <christian.toegel@gmx.at>
*
* This library is licensed under the GNU Lesser General Public License (LGPL),
* version 2.1 or later. See the file COPYING.LIB in the distribution for
* details.
+ *
+ *
+ * Contributions:
+ *
+ * Manfred Weihs <weihs@ict.tuwien.ac.at>
+ * address range mapping
+ * Christian Toegel <christian.toegel@gmx.at>
+ * address range mapping
*/
#include <config.h>
@@ -76,6 +86,17 @@ int raw1394_loop_iterate(struct raw1394_handle *handle)
}
break;
+ case RAW1394_REQ_ARM:
+ if (handle->arm_tag_handler) {
+ retval = handle->arm_tag_handler(handle, req->tag,
+ (req->misc & (0xFF)),
+ ((req->misc >> 16) & (0xFFFF)),
+ int2ptr(req->recvb));
+ }
+ break;
+ case RAW1394_REQ_ECHO:
+ retval=req->misc;
+ break;
default:
if (handle->tag_handler) {
retval = handle->tag_handler(handle, req->tag,
@@ -130,6 +151,18 @@ tag_handler_t raw1394_set_tag_handler(struct raw1394_handle *handle,
return old;
}
+arm_tag_handler_t raw1394_set_arm_tag_handler(struct raw1394_handle *handle,
+ arm_tag_handler_t new)
+{
+ arm_tag_handler_t old;
+
+ old = handle->arm_tag_handler;
+ handle->arm_tag_handler = new;
+
+ return old;
+}
+
+
/**
* raw1394_set_iso_handler - set isochronous packet handler
* @new_h: pointer to new handler