summaryrefslogtreecommitdiffstats
path: root/src/kernel-raw1394.h
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/kernel-raw1394.h
parentconfigure.ac: (diff)
merged weihs branch
git-svn-id: svn://svn.linux1394.org/libraw1394/trunk@84 53a565d1-3bb7-0310-b661-cf11e63c67ab
Diffstat (limited to '')
-rw-r--r--src/kernel-raw1394.h80
1 files changed, 72 insertions, 8 deletions
diff --git a/src/kernel-raw1394.h b/src/kernel-raw1394.h
index 98c6298..1fe55d0 100644
--- a/src/kernel-raw1394.h
+++ b/src/kernel-raw1394.h
@@ -14,20 +14,32 @@
#define RAW1394_REQ_SET_CARD 3
/* state: connected */
-#define RAW1394_REQ_ASYNC_READ 100
-#define RAW1394_REQ_ASYNC_WRITE 101
-#define RAW1394_REQ_LOCK 102
-#define RAW1394_REQ_LOCK64 103
-#define RAW1394_REQ_ISO_SEND 104
+#define RAW1394_REQ_ASYNC_READ 100
+#define RAW1394_REQ_ASYNC_WRITE 101
+#define RAW1394_REQ_LOCK 102
+#define RAW1394_REQ_LOCK64 103
+#define RAW1394_REQ_ISO_SEND 104
+#define RAW1394_REQ_ASYNC_SEND 105
-#define RAW1394_REQ_ISO_LISTEN 200
-#define RAW1394_REQ_FCP_LISTEN 201
-#define RAW1394_REQ_RESET_BUS 202
+#define RAW1394_REQ_ISO_LISTEN 200
+#define RAW1394_REQ_FCP_LISTEN 201
+#define RAW1394_REQ_RESET_BUS 202
+#define RAW1394_REQ_GET_ROM 203
+#define RAW1394_REQ_UPDATE_ROM 204
+#define RAW1394_REQ_ECHO 205
+
+#define RAW1394_REQ_ARM_REGISTER 300
+#define RAW1394_REQ_ARM_UNREGISTER 301
+
+#define RAW1394_REQ_RESET_NOTIFY 400
+
+#define RAW1394_REQ_PHYPACKET 500
/* kernel to user */
#define RAW1394_REQ_BUS_RESET 10000
#define RAW1394_REQ_ISO_RECEIVE 10001
#define RAW1394_REQ_FCP_REQUEST 10002
+#define RAW1394_REQ_ARM 10003
/* error codes */
#define RAW1394_ERROR_NONE 0
@@ -45,6 +57,17 @@
#define RAW1394_ERROR_ABORTED (-1101)
#define RAW1394_ERROR_TIMEOUT (-1102)
+/* arm_codes */
+#define ARM_READ 1
+#define ARM_WRITE 2
+#define ARM_LOCK 4
+
+#define RAW1394_LONG_RESET 0
+#define RAW1394_SHORT_RESET 1
+
+/* busresetnotify ... */
+#define RAW1394_NOTIFY_OFF 0
+#define RAW1394_NOTIFY_ON 1
#include <asm/types.h>
@@ -69,6 +92,32 @@ struct raw1394_khost_list {
__u8 name[32];
};
+/* moved to raw1394.h to make it available to applications
+typedef struct arm_request {
+ nodeid_t destination_nodeid;
+ nodeid_t source_nodeid;
+ nodeaddr_t destination_offset;
+ u8 tlabel;
+ u8 tcode;
+ u_int8_t extended_transaction_code;
+ u_int32_t generation;
+ arm_length_t buffer_length;
+ byte_t *buffer;
+} *arm_request_t;
+
+typedef struct arm_response {
+ int response_code;
+ arm_length_t buffer_length;
+ byte_t *buffer;
+} *arm_response_t;
+
+typedef struct arm_request_response {
+ struct arm_request *request;
+ struct arm_response *response;
+} *arm_request_response_t;
+
+*/
+
#ifdef __KERNEL__
struct iso_block_store {
@@ -91,11 +140,26 @@ struct file_info {
spinlock_t reqlists_lock;
wait_queue_head_t poll_wait_complete;
+ struct list_head addr_list;
+
u8 *fcp_buffer;
u64 listen_channels;
quadlet_t *iso_buffer;
size_t iso_buffer_length;
+
+ u8 notification; /* (busreset-notification) RAW1394_NOTIFY_OFF/ON */
+};
+
+struct arm_addr {
+ struct list_head addr_list; /* file_info list */
+ u64 start, end;
+ u64 arm_tag;
+ u8 notification_options;
+ u8 access_rights;
+ u64 recvb;
+ u16 rec_length;
+ u8 *addr_space_buffer; /* accessed by read/write/lock */
};
struct pending_request {
td>Update Debian files.Gravatar bencollins 4-25/+73 2003-07-13Ok, the Debian package was way out of sync with upstreamGravatar bencollins 1-1/+1 2003-07-13Ooops...libtool works a bit different than I thought, but atleast it worksGravatar bencollins 2-6/+1 2003-07-13Generate and install the pdf in the Debian package.Gravatar bencollins 3-3/+4 2003-07-13Don't run configure at the end of autogen.sh. Also, remove autom4te.cache.Gravatar bencollins 1-1/+1 2003-07-13Update Debian maintainerGravatar bencollins 1-1/+2 2003-07-13Update Debian changelog.Gravatar bencollins 1-0/+8 2003-07-13File doesn't really seem needed. The NEWS file gives a good overview, andGravatar bencollins 1-4/+0 2003-07-13Fix compiler warnings.Gravatar bencollins 4-12/+22 2003-07-13Updates from 0.10.0 release.Gravatar bencollins 4-5/+14 2003-04-23add libtoolize to bootstrapGravatar ddennedy 1-1/+10 2003-04-21added Dan Maas' rawiso docsGravatar ddennedy 1-32/+295 2003-04-07new_handle_on_port() error path fix from Jim RadfordGravatar dmaas 1-1/+3 2003-03-26add raw1394_new_handle_on_port() convenience functionGravatar dmaas 2-1/+41 2003-02-22Updates for new rawiso ioctl interface.Gravatar bencollins 3-37/+125 2003-01-15add iso_xmit_sync() and iso_xmit_write(); clean up iso handling a bitGravatar dmaas 5-39/+161 2003-01-15implement tag matching for rawiso receptionGravatar dmaas 3-4/+12 2003-01-06back out previous commit - don't drop the legacy API just yetGravatar dmaas 6-173/+130 2003-01-05emulate legacy ISO reception API on top of new rawiso APIGravatar dmaas 7-131/+174 2002-12-24update iso API for multi-channel reception and new packet buffer layoutGravatar dmaas 4-123/+236 2002-12-20oops, irq_interval needs to be signedGravatar anonymous 1-1/+1 2002-12-20dmaas - renamed exported arm definitions into the raw1394_ namespace; brought...Gravatar anonymous 3-124/+48 2002-12-16rawiso updates:Gravatar dmaas 3-18/+25 2002-11-18fix cplusplus extern C blockGravatar ddennedy 1-4/+4 2002-11-18merged rawiso branchGravatar ddennedy 7-6/+488