summaryrefslogtreecommitdiff
path: root/include/linux/firewire-cdev.h
diff options
context:
space:
mode:
authorKristian Høgsberg <krh@redhat.com>2007-05-31 19:16:43 +0400
committerStefan Richter <stefanr@s5r6.in-berlin.de>2007-05-31 23:40:15 +0400
commit1ca31ae7cfed3e2a8e48fbf6ed6cac06495b6158 (patch)
tree931d04e229f78091308d544f50717e547fb26318 /include/linux/firewire-cdev.h
parent2aef469a35a273609beaa7094d5a07c1f6d75285 (diff)
downloadlinux-1ca31ae7cfed3e2a8e48fbf6ed6cac06495b6158.tar.xz
firewire: Change struct fw_cdev_iso_packet to not use bitfields.
The struct is part of the userspace interface and can not use bitfields. This patch replaces the bitfields with a __u32 'control' word and provides access macros to set the bits. Signed-off-by: Kristian Høgsberg <krh@redhat.com> Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
Diffstat (limited to 'include/linux/firewire-cdev.h')
-rw-r--r--include/linux/firewire-cdev.h14
1 files changed, 8 insertions, 6 deletions
diff --git a/include/linux/firewire-cdev.h b/include/linux/firewire-cdev.h
index d4455eb2ae35..efbe1fda1a22 100644
--- a/include/linux/firewire-cdev.h
+++ b/include/linux/firewire-cdev.h
@@ -198,13 +198,15 @@ struct fw_cdev_create_iso_context {
__u32 handle;
};
+#define FW_CDEV_ISO_PAYLOAD_LENGTH(v) (v)
+#define FW_CDEV_ISO_INTERRUPT (1 << 16)
+#define FW_CDEV_ISO_SKIP (1 << 17)
+#define FW_CDEV_ISO_TAG(v) ((v) << 18)
+#define FW_CDEV_ISO_SY(v) ((v) << 20)
+#define FW_CDEV_ISO_HEADER_LENGTH(v) ((v) << 24)
+
struct fw_cdev_iso_packet {
- __u16 payload_length; /* Length of indirect payload. */
- __u32 interrupt : 1; /* Generate interrupt on this packet */
- __u32 skip : 1; /* Set to not send packet at all. */
- __u32 tag : 2;
- __u32 sy : 4;
- __u32 header_length : 8; /* Length of immediate header. */
+ __u32 control;
__u32 header[0];
};