aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/firewire.h
diff options
context:
space:
mode:
authorGlenn Elliott <gelliott@cs.unc.edu>2012-03-04 19:47:13 -0500
committerGlenn Elliott <gelliott@cs.unc.edu>2012-03-04 19:47:13 -0500
commitc71c03bda1e86c9d5198c5d83f712e695c4f2a1e (patch)
treeecb166cb3e2b7e2adb3b5e292245fefd23381ac8 /include/linux/firewire.h
parentea53c912f8a86a8567697115b6a0d8152beee5c8 (diff)
parent6a00f206debf8a5c8899055726ad127dbeeed098 (diff)
Merge branch 'mpi-master' into wip-k-fmlpwip-k-fmlp
Conflicts: litmus/sched_cedf.c
Diffstat (limited to 'include/linux/firewire.h')
-rw-r--r--include/linux/firewire.h15
1 files changed, 12 insertions, 3 deletions
diff --git a/include/linux/firewire.h b/include/linux/firewire.h
index 1cd637ef62d2..5e6f42789afe 100644
--- a/include/linux/firewire.h
+++ b/include/linux/firewire.h
@@ -42,6 +42,10 @@
42#define CSR_BROADCAST_CHANNEL 0x234 42#define CSR_BROADCAST_CHANNEL 0x234
43#define CSR_CONFIG_ROM 0x400 43#define CSR_CONFIG_ROM 0x400
44#define CSR_CONFIG_ROM_END 0x800 44#define CSR_CONFIG_ROM_END 0x800
45#define CSR_OMPR 0x900
46#define CSR_OPCR(i) (0x904 + (i) * 4)
47#define CSR_IMPR 0x980
48#define CSR_IPCR(i) (0x984 + (i) * 4)
45#define CSR_FCP_COMMAND 0xB00 49#define CSR_FCP_COMMAND 0xB00
46#define CSR_FCP_RESPONSE 0xD00 50#define CSR_FCP_RESPONSE 0xD00
47#define CSR_FCP_END 0xF00 51#define CSR_FCP_END 0xF00
@@ -89,7 +93,7 @@ struct fw_card {
89 int current_tlabel; 93 int current_tlabel;
90 u64 tlabel_mask; 94 u64 tlabel_mask;
91 struct list_head transaction_list; 95 struct list_head transaction_list;
92 unsigned long reset_jiffies; 96 u64 reset_jiffies;
93 97
94 u32 split_timeout_hi; 98 u32 split_timeout_hi;
95 u32 split_timeout_lo; 99 u32 split_timeout_lo;
@@ -121,7 +125,6 @@ struct fw_card {
121 struct delayed_work bm_work; /* bus manager job */ 125 struct delayed_work bm_work; /* bus manager job */
122 int bm_retries; 126 int bm_retries;
123 int bm_generation; 127 int bm_generation;
124 __be32 bm_transaction_data[2];
125 int bm_node_id; 128 int bm_node_id;
126 bool bm_abdicate; 129 bool bm_abdicate;
127 130
@@ -302,9 +305,9 @@ struct fw_packet {
302struct fw_transaction { 305struct fw_transaction {
303 int node_id; /* The generation is implied; it is always the current. */ 306 int node_id; /* The generation is implied; it is always the current. */
304 int tlabel; 307 int tlabel;
305 int timestamp;
306 struct list_head link; 308 struct list_head link;
307 struct fw_card *card; 309 struct fw_card *card;
310 bool is_split_transaction;
308 struct timer_list split_timeout_timer; 311 struct timer_list split_timeout_timer;
309 312
310 struct fw_packet packet; 313 struct fw_packet packet;
@@ -437,9 +440,15 @@ int fw_iso_context_queue(struct fw_iso_context *ctx,
437 struct fw_iso_packet *packet, 440 struct fw_iso_packet *packet,
438 struct fw_iso_buffer *buffer, 441 struct fw_iso_buffer *buffer,
439 unsigned long payload); 442 unsigned long payload);
443void fw_iso_context_queue_flush(struct fw_iso_context *ctx);
440int fw_iso_context_start(struct fw_iso_context *ctx, 444int fw_iso_context_start(struct fw_iso_context *ctx,
441 int cycle, int sync, int tags); 445 int cycle, int sync, int tags);
442int fw_iso_context_stop(struct fw_iso_context *ctx); 446int fw_iso_context_stop(struct fw_iso_context *ctx);
443void fw_iso_context_destroy(struct fw_iso_context *ctx); 447void fw_iso_context_destroy(struct fw_iso_context *ctx);
448void fw_iso_resource_manage(struct fw_card *card, int generation,
449 u64 channels_mask, int *channel, int *bandwidth,
450 bool allocate);
451
452extern struct workqueue_struct *fw_workqueue;
444 453
445#endif /* _LINUX_FIREWIRE_H */ 454#endif /* _LINUX_FIREWIRE_H */