summaryrefslogtreecommitdiffstats
path: root/drivers/ieee1394/cmp.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/ieee1394/cmp.h')
-rw-r--r--drivers/ieee1394/cmp.h31
1 files changed, 31 insertions, 0 deletions
diff --git a/drivers/ieee1394/cmp.h b/drivers/ieee1394/cmp.h
new file mode 100644
index 00000000000..f9288bfcd49
--- /dev/null
+++ b/drivers/ieee1394/cmp.h
@@ -0,0 +1,31 @@
+#ifndef __CMP_H
+#define __CMP_H
+
+struct cmp_mpr {
+ u32 nplugs:5;
+ u32 reserved:3;
+ u32 persistent_ext:8;
+ u32 non_persistent_ext:8;
+ u32 bcast_channel_base:6;
+ u32 rate:2;
+} __attribute__((packed));
+
+struct cmp_pcr {
+ u32 payload:10;
+ u32 overhead:4;
+ u32 speed:2;
+ u32 channel:6;
+ u32 reserved:2;
+ u32 p2p_count:6;
+ u32 bcast_count:1;
+ u32 online:1;
+} __attribute__((packed));
+
+struct cmp_pcr *cmp_register_opcr(struct hpsb_host *host, int plug,
+ int payload,
+ void (*update)(struct cmp_pcr *plug,
+ void *data),
+ void *data);
+void cmp_unregister_opcr(struct hpsb_host *host, struct cmp_pcr *plug);
+
+#endif /* __CMP_H */