diff options
Diffstat (limited to 'drivers/scsi/aacraid')
-rw-r--r-- | drivers/scsi/aacraid/aacraid.h | 4 | ||||
-rw-r--r-- | drivers/scsi/aacraid/commctrl.c | 16 | ||||
-rw-r--r-- | drivers/scsi/aacraid/commsup.c | 54 | ||||
-rw-r--r-- | drivers/scsi/aacraid/dpcsup.c | 8 | ||||
-rw-r--r-- | drivers/scsi/aacraid/rx.c | 4 |
5 files changed, 41 insertions, 45 deletions
diff --git a/drivers/scsi/aacraid/aacraid.h b/drivers/scsi/aacraid/aacraid.h index 7e25c0bbd644..9ca594b33d1c 100644 --- a/drivers/scsi/aacraid/aacraid.h +++ b/drivers/scsi/aacraid/aacraid.h | |||
@@ -834,7 +834,7 @@ struct fib { | |||
834 | */ | 834 | */ |
835 | struct list_head fiblink; | 835 | struct list_head fiblink; |
836 | void *data; | 836 | void *data; |
837 | struct hw_fib *hw_fib; /* Actual shared object */ | 837 | struct hw_fib *hw_fib_va; /* Actual shared object */ |
838 | dma_addr_t hw_fib_pa; /* physical address of hw_fib*/ | 838 | dma_addr_t hw_fib_pa; /* physical address of hw_fib*/ |
839 | }; | 839 | }; |
840 | 840 | ||
@@ -1821,7 +1821,7 @@ int aac_fib_send(u16 command, struct fib * context, unsigned long size, int prio | |||
1821 | int aac_consumer_get(struct aac_dev * dev, struct aac_queue * q, struct aac_entry **entry); | 1821 | int aac_consumer_get(struct aac_dev * dev, struct aac_queue * q, struct aac_entry **entry); |
1822 | void aac_consumer_free(struct aac_dev * dev, struct aac_queue * q, u32 qnum); | 1822 | void aac_consumer_free(struct aac_dev * dev, struct aac_queue * q, u32 qnum); |
1823 | int aac_fib_complete(struct fib * context); | 1823 | int aac_fib_complete(struct fib * context); |
1824 | #define fib_data(fibctx) ((void *)(fibctx)->hw_fib->data) | 1824 | #define fib_data(fibctx) ((void *)(fibctx)->hw_fib_va->data) |
1825 | struct aac_dev *aac_init_adapter(struct aac_dev *dev); | 1825 | struct aac_dev *aac_init_adapter(struct aac_dev *dev); |
1826 | int aac_get_config_status(struct aac_dev *dev, int commit_flag); | 1826 | int aac_get_config_status(struct aac_dev *dev, int commit_flag); |
1827 | int aac_get_containers(struct aac_dev *dev); | 1827 | int aac_get_containers(struct aac_dev *dev); |
diff --git a/drivers/scsi/aacraid/commctrl.c b/drivers/scsi/aacraid/commctrl.c index e21070f4eac1..83d5680e1326 100644 --- a/drivers/scsi/aacraid/commctrl.c +++ b/drivers/scsi/aacraid/commctrl.c | |||
@@ -69,7 +69,7 @@ static int ioctl_send_fib(struct aac_dev * dev, void __user *arg) | |||
69 | return -ENOMEM; | 69 | return -ENOMEM; |
70 | } | 70 | } |
71 | 71 | ||
72 | kfib = fibptr->hw_fib; | 72 | kfib = fibptr->hw_fib_va; |
73 | /* | 73 | /* |
74 | * First copy in the header so that we can check the size field. | 74 | * First copy in the header so that we can check the size field. |
75 | */ | 75 | */ |
@@ -91,9 +91,9 @@ static int ioctl_send_fib(struct aac_dev * dev, void __user *arg) | |||
91 | goto cleanup; | 91 | goto cleanup; |
92 | } | 92 | } |
93 | /* Highjack the hw_fib */ | 93 | /* Highjack the hw_fib */ |
94 | hw_fib = fibptr->hw_fib; | 94 | hw_fib = fibptr->hw_fib_va; |
95 | hw_fib_pa = fibptr->hw_fib_pa; | 95 | hw_fib_pa = fibptr->hw_fib_pa; |
96 | fibptr->hw_fib = kfib = pci_alloc_consistent(dev->pdev, size, &fibptr->hw_fib_pa); | 96 | fibptr->hw_fib_va = kfib = pci_alloc_consistent(dev->pdev, size, &fibptr->hw_fib_pa); |
97 | memset(((char *)kfib) + dev->max_fib_size, 0, size - dev->max_fib_size); | 97 | memset(((char *)kfib) + dev->max_fib_size, 0, size - dev->max_fib_size); |
98 | memcpy(kfib, hw_fib, dev->max_fib_size); | 98 | memcpy(kfib, hw_fib, dev->max_fib_size); |
99 | } | 99 | } |
@@ -137,7 +137,7 @@ cleanup: | |||
137 | if (hw_fib) { | 137 | if (hw_fib) { |
138 | pci_free_consistent(dev->pdev, size, kfib, fibptr->hw_fib_pa); | 138 | pci_free_consistent(dev->pdev, size, kfib, fibptr->hw_fib_pa); |
139 | fibptr->hw_fib_pa = hw_fib_pa; | 139 | fibptr->hw_fib_pa = hw_fib_pa; |
140 | fibptr->hw_fib = hw_fib; | 140 | fibptr->hw_fib_va = hw_fib; |
141 | } | 141 | } |
142 | if (retval != -EINTR) | 142 | if (retval != -EINTR) |
143 | aac_fib_free(fibptr); | 143 | aac_fib_free(fibptr); |
@@ -282,15 +282,15 @@ return_fib: | |||
282 | fib = list_entry(entry, struct fib, fiblink); | 282 | fib = list_entry(entry, struct fib, fiblink); |
283 | fibctx->count--; | 283 | fibctx->count--; |
284 | spin_unlock_irqrestore(&dev->fib_lock, flags); | 284 | spin_unlock_irqrestore(&dev->fib_lock, flags); |
285 | if (copy_to_user(f.fib, fib->hw_fib, sizeof(struct hw_fib))) { | 285 | if (copy_to_user(f.fib, fib->hw_fib_va, sizeof(struct hw_fib))) { |
286 | kfree(fib->hw_fib); | 286 | kfree(fib->hw_fib_va); |
287 | kfree(fib); | 287 | kfree(fib); |
288 | return -EFAULT; | 288 | return -EFAULT; |
289 | } | 289 | } |
290 | /* | 290 | /* |
291 | * Free the space occupied by this copy of the fib. | 291 | * Free the space occupied by this copy of the fib. |
292 | */ | 292 | */ |
293 | kfree(fib->hw_fib); | 293 | kfree(fib->hw_fib_va); |
294 | kfree(fib); | 294 | kfree(fib); |
295 | status = 0; | 295 | status = 0; |
296 | } else { | 296 | } else { |
@@ -340,7 +340,7 @@ int aac_close_fib_context(struct aac_dev * dev, struct aac_fib_context * fibctx) | |||
340 | /* | 340 | /* |
341 | * Free the space occupied by this copy of the fib. | 341 | * Free the space occupied by this copy of the fib. |
342 | */ | 342 | */ |
343 | kfree(fib->hw_fib); | 343 | kfree(fib->hw_fib_va); |
344 | kfree(fib); | 344 | kfree(fib); |
345 | } | 345 | } |
346 | /* | 346 | /* |
diff --git a/drivers/scsi/aacraid/commsup.c b/drivers/scsi/aacraid/commsup.c index 55bf6f395e92..e67ff13eb359 100644 --- a/drivers/scsi/aacraid/commsup.c +++ b/drivers/scsi/aacraid/commsup.c | |||
@@ -94,7 +94,7 @@ void aac_fib_map_free(struct aac_dev *dev) | |||
94 | int aac_fib_setup(struct aac_dev * dev) | 94 | int aac_fib_setup(struct aac_dev * dev) |
95 | { | 95 | { |
96 | struct fib *fibptr; | 96 | struct fib *fibptr; |
97 | struct hw_fib *hw_fib_va; | 97 | struct hw_fib *hw_fib; |
98 | dma_addr_t hw_fib_pa; | 98 | dma_addr_t hw_fib_pa; |
99 | int i; | 99 | int i; |
100 | 100 | ||
@@ -106,24 +106,24 @@ int aac_fib_setup(struct aac_dev * dev) | |||
106 | if (i<0) | 106 | if (i<0) |
107 | return -ENOMEM; | 107 | return -ENOMEM; |
108 | 108 | ||
109 | hw_fib_va = dev->hw_fib_va; | 109 | hw_fib = dev->hw_fib_va; |
110 | hw_fib_pa = dev->hw_fib_pa; | 110 | hw_fib_pa = dev->hw_fib_pa; |
111 | memset(hw_fib_va, 0, dev->max_fib_size * (dev->scsi_host_ptr->can_queue + AAC_NUM_MGT_FIB)); | 111 | memset(hw_fib, 0, dev->max_fib_size * (dev->scsi_host_ptr->can_queue + AAC_NUM_MGT_FIB)); |
112 | /* | 112 | /* |
113 | * Initialise the fibs | 113 | * Initialise the fibs |
114 | */ | 114 | */ |
115 | for (i = 0, fibptr = &dev->fibs[i]; i < (dev->scsi_host_ptr->can_queue + AAC_NUM_MGT_FIB); i++, fibptr++) | 115 | for (i = 0, fibptr = &dev->fibs[i]; i < (dev->scsi_host_ptr->can_queue + AAC_NUM_MGT_FIB); i++, fibptr++) |
116 | { | 116 | { |
117 | fibptr->dev = dev; | 117 | fibptr->dev = dev; |
118 | fibptr->hw_fib = hw_fib_va; | 118 | fibptr->hw_fib_va = hw_fib; |
119 | fibptr->data = (void *) fibptr->hw_fib->data; | 119 | fibptr->data = (void *) fibptr->hw_fib_va->data; |
120 | fibptr->next = fibptr+1; /* Forward chain the fibs */ | 120 | fibptr->next = fibptr+1; /* Forward chain the fibs */ |
121 | init_MUTEX_LOCKED(&fibptr->event_wait); | 121 | init_MUTEX_LOCKED(&fibptr->event_wait); |
122 | spin_lock_init(&fibptr->event_lock); | 122 | spin_lock_init(&fibptr->event_lock); |
123 | hw_fib_va->header.XferState = cpu_to_le32(0xffffffff); | 123 | hw_fib->header.XferState = cpu_to_le32(0xffffffff); |
124 | hw_fib_va->header.SenderSize = cpu_to_le16(dev->max_fib_size); | 124 | hw_fib->header.SenderSize = cpu_to_le16(dev->max_fib_size); |
125 | fibptr->hw_fib_pa = hw_fib_pa; | 125 | fibptr->hw_fib_pa = hw_fib_pa; |
126 | hw_fib_va = (struct hw_fib *)((unsigned char *)hw_fib_va + dev->max_fib_size); | 126 | hw_fib = (struct hw_fib *)((unsigned char *)hw_fib + dev->max_fib_size); |
127 | hw_fib_pa = hw_fib_pa + dev->max_fib_size; | 127 | hw_fib_pa = hw_fib_pa + dev->max_fib_size; |
128 | } | 128 | } |
129 | /* | 129 | /* |
@@ -166,7 +166,7 @@ struct fib *aac_fib_alloc(struct aac_dev *dev) | |||
166 | * Null out fields that depend on being zero at the start of | 166 | * Null out fields that depend on being zero at the start of |
167 | * each I/O | 167 | * each I/O |
168 | */ | 168 | */ |
169 | fibptr->hw_fib->header.XferState = 0; | 169 | fibptr->hw_fib_va->header.XferState = 0; |
170 | fibptr->callback = NULL; | 170 | fibptr->callback = NULL; |
171 | fibptr->callback_data = NULL; | 171 | fibptr->callback_data = NULL; |
172 | 172 | ||
@@ -191,10 +191,10 @@ void aac_fib_free(struct fib *fibptr) | |||
191 | fibptr->next = fibptr->dev->timeout_fib; | 191 | fibptr->next = fibptr->dev->timeout_fib; |
192 | fibptr->dev->timeout_fib = fibptr; | 192 | fibptr->dev->timeout_fib = fibptr; |
193 | } else { | 193 | } else { |
194 | if (fibptr->hw_fib->header.XferState != 0) { | 194 | if (fibptr->hw_fib_va->header.XferState != 0) { |
195 | printk(KERN_WARNING "aac_fib_free, XferState != 0, fibptr = 0x%p, XferState = 0x%x\n", | 195 | printk(KERN_WARNING "aac_fib_free, XferState != 0, fibptr = 0x%p, XferState = 0x%x\n", |
196 | (void*)fibptr, | 196 | (void*)fibptr, |
197 | le32_to_cpu(fibptr->hw_fib->header.XferState)); | 197 | le32_to_cpu(fibptr->hw_fib_va->header.XferState)); |
198 | } | 198 | } |
199 | fibptr->next = fibptr->dev->free_fib; | 199 | fibptr->next = fibptr->dev->free_fib; |
200 | fibptr->dev->free_fib = fibptr; | 200 | fibptr->dev->free_fib = fibptr; |
@@ -211,7 +211,7 @@ void aac_fib_free(struct fib *fibptr) | |||
211 | 211 | ||
212 | void aac_fib_init(struct fib *fibptr) | 212 | void aac_fib_init(struct fib *fibptr) |
213 | { | 213 | { |
214 | struct hw_fib *hw_fib = fibptr->hw_fib; | 214 | struct hw_fib *hw_fib = fibptr->hw_fib_va; |
215 | 215 | ||
216 | hw_fib->header.StructType = FIB_MAGIC; | 216 | hw_fib->header.StructType = FIB_MAGIC; |
217 | hw_fib->header.Size = cpu_to_le16(fibptr->dev->max_fib_size); | 217 | hw_fib->header.Size = cpu_to_le16(fibptr->dev->max_fib_size); |
@@ -231,7 +231,7 @@ void aac_fib_init(struct fib *fibptr) | |||
231 | 231 | ||
232 | static void fib_dealloc(struct fib * fibptr) | 232 | static void fib_dealloc(struct fib * fibptr) |
233 | { | 233 | { |
234 | struct hw_fib *hw_fib = fibptr->hw_fib; | 234 | struct hw_fib *hw_fib = fibptr->hw_fib_va; |
235 | BUG_ON(hw_fib->header.StructType != FIB_MAGIC); | 235 | BUG_ON(hw_fib->header.StructType != FIB_MAGIC); |
236 | hw_fib->header.XferState = 0; | 236 | hw_fib->header.XferState = 0; |
237 | } | 237 | } |
@@ -386,7 +386,7 @@ int aac_fib_send(u16 command, struct fib *fibptr, unsigned long size, | |||
386 | void *callback_data) | 386 | void *callback_data) |
387 | { | 387 | { |
388 | struct aac_dev * dev = fibptr->dev; | 388 | struct aac_dev * dev = fibptr->dev; |
389 | struct hw_fib * hw_fib = fibptr->hw_fib; | 389 | struct hw_fib * hw_fib = fibptr->hw_fib_va; |
390 | unsigned long flags = 0; | 390 | unsigned long flags = 0; |
391 | unsigned long qflags; | 391 | unsigned long qflags; |
392 | 392 | ||
@@ -430,7 +430,7 @@ int aac_fib_send(u16 command, struct fib *fibptr, unsigned long size, | |||
430 | */ | 430 | */ |
431 | hw_fib->header.Command = cpu_to_le16(command); | 431 | hw_fib->header.Command = cpu_to_le16(command); |
432 | hw_fib->header.XferState |= cpu_to_le32(SentFromHost); | 432 | hw_fib->header.XferState |= cpu_to_le32(SentFromHost); |
433 | fibptr->hw_fib->header.Flags = 0; /* 0 the flags field - internal only*/ | 433 | fibptr->hw_fib_va->header.Flags = 0; /* 0 the flags field - internal only*/ |
434 | /* | 434 | /* |
435 | * Set the size of the Fib we want to send to the adapter | 435 | * Set the size of the Fib we want to send to the adapter |
436 | */ | 436 | */ |
@@ -462,7 +462,7 @@ int aac_fib_send(u16 command, struct fib *fibptr, unsigned long size, | |||
462 | dprintk((KERN_DEBUG " Command = %d.\n", le32_to_cpu(hw_fib->header.Command))); | 462 | dprintk((KERN_DEBUG " Command = %d.\n", le32_to_cpu(hw_fib->header.Command))); |
463 | dprintk((KERN_DEBUG " SubCommand = %d.\n", le32_to_cpu(((struct aac_query_mount *)fib_data(fibptr))->command))); | 463 | dprintk((KERN_DEBUG " SubCommand = %d.\n", le32_to_cpu(((struct aac_query_mount *)fib_data(fibptr))->command))); |
464 | dprintk((KERN_DEBUG " XferState = %x.\n", le32_to_cpu(hw_fib->header.XferState))); | 464 | dprintk((KERN_DEBUG " XferState = %x.\n", le32_to_cpu(hw_fib->header.XferState))); |
465 | dprintk((KERN_DEBUG " hw_fib va being sent=%p\n",fibptr->hw_fib)); | 465 | dprintk((KERN_DEBUG " hw_fib va being sent=%p\n",fibptr->hw_fib_va)); |
466 | dprintk((KERN_DEBUG " hw_fib pa being sent=%lx\n",(ulong)fibptr->hw_fib_pa)); | 466 | dprintk((KERN_DEBUG " hw_fib pa being sent=%lx\n",(ulong)fibptr->hw_fib_pa)); |
467 | dprintk((KERN_DEBUG " fib being sent=%p\n",fibptr)); | 467 | dprintk((KERN_DEBUG " fib being sent=%p\n",fibptr)); |
468 | 468 | ||
@@ -624,7 +624,7 @@ void aac_consumer_free(struct aac_dev * dev, struct aac_queue *q, u32 qid) | |||
624 | 624 | ||
625 | int aac_fib_adapter_complete(struct fib *fibptr, unsigned short size) | 625 | int aac_fib_adapter_complete(struct fib *fibptr, unsigned short size) |
626 | { | 626 | { |
627 | struct hw_fib * hw_fib = fibptr->hw_fib; | 627 | struct hw_fib * hw_fib = fibptr->hw_fib_va; |
628 | struct aac_dev * dev = fibptr->dev; | 628 | struct aac_dev * dev = fibptr->dev; |
629 | struct aac_queue * q; | 629 | struct aac_queue * q; |
630 | unsigned long nointr = 0; | 630 | unsigned long nointr = 0; |
@@ -688,7 +688,7 @@ int aac_fib_adapter_complete(struct fib *fibptr, unsigned short size) | |||
688 | 688 | ||
689 | int aac_fib_complete(struct fib *fibptr) | 689 | int aac_fib_complete(struct fib *fibptr) |
690 | { | 690 | { |
691 | struct hw_fib * hw_fib = fibptr->hw_fib; | 691 | struct hw_fib * hw_fib = fibptr->hw_fib_va; |
692 | 692 | ||
693 | /* | 693 | /* |
694 | * Check for a fib which has already been completed | 694 | * Check for a fib which has already been completed |
@@ -774,9 +774,8 @@ void aac_printf(struct aac_dev *dev, u32 val) | |||
774 | #define AIF_SNIFF_TIMEOUT (30*HZ) | 774 | #define AIF_SNIFF_TIMEOUT (30*HZ) |
775 | static void aac_handle_aif(struct aac_dev * dev, struct fib * fibptr) | 775 | static void aac_handle_aif(struct aac_dev * dev, struct fib * fibptr) |
776 | { | 776 | { |
777 | struct hw_fib * hw_fib = fibptr->hw_fib; | 777 | struct hw_fib * hw_fib = fibptr->hw_fib_va; |
778 | struct aac_aifcmd * aifcmd = (struct aac_aifcmd *)hw_fib->data; | 778 | struct aac_aifcmd * aifcmd = (struct aac_aifcmd *)hw_fib->data; |
779 | int busy; | ||
780 | u32 container; | 779 | u32 container; |
781 | struct scsi_device *device; | 780 | struct scsi_device *device; |
782 | enum { | 781 | enum { |
@@ -988,9 +987,6 @@ static void aac_handle_aif(struct aac_dev * dev, struct fib * fibptr) | |||
988 | * behind you. | 987 | * behind you. |
989 | */ | 988 | */ |
990 | 989 | ||
991 | busy = 0; | ||
992 | |||
993 | |||
994 | /* | 990 | /* |
995 | * Find the scsi_device associated with the SCSI address, | 991 | * Find the scsi_device associated with the SCSI address, |
996 | * and mark it as changed, invalidating the cache. This deals | 992 | * and mark it as changed, invalidating the cache. This deals |
@@ -1068,8 +1064,8 @@ static int _aac_reset_adapter(struct aac_dev *aac) | |||
1068 | */ | 1064 | */ |
1069 | for (index = 0; index < (aac->scsi_host_ptr->can_queue + AAC_NUM_MGT_FIB); index++) { | 1065 | for (index = 0; index < (aac->scsi_host_ptr->can_queue + AAC_NUM_MGT_FIB); index++) { |
1070 | struct fib *fib = &aac->fibs[index]; | 1066 | struct fib *fib = &aac->fibs[index]; |
1071 | if (!(fib->hw_fib->header.XferState & cpu_to_le32(NoResponseExpected | Async)) && | 1067 | if (!(fib->hw_fib_va->header.XferState & cpu_to_le32(NoResponseExpected | Async)) && |
1072 | (fib->hw_fib->header.XferState & cpu_to_le32(ResponseExpected))) { | 1068 | (fib->hw_fib_va->header.XferState & cpu_to_le32(ResponseExpected))) { |
1073 | unsigned long flagv; | 1069 | unsigned long flagv; |
1074 | spin_lock_irqsave(&fib->event_lock, flagv); | 1070 | spin_lock_irqsave(&fib->event_lock, flagv); |
1075 | up(&fib->event_wait); | 1071 | up(&fib->event_wait); |
@@ -1237,7 +1233,7 @@ int aac_check_health(struct aac_dev * aac) | |||
1237 | 1233 | ||
1238 | memset(hw_fib, 0, sizeof(struct hw_fib)); | 1234 | memset(hw_fib, 0, sizeof(struct hw_fib)); |
1239 | memset(fib, 0, sizeof(struct fib)); | 1235 | memset(fib, 0, sizeof(struct fib)); |
1240 | fib->hw_fib = hw_fib; | 1236 | fib->hw_fib_va = hw_fib; |
1241 | fib->dev = aac; | 1237 | fib->dev = aac; |
1242 | aac_fib_init(fib); | 1238 | aac_fib_init(fib); |
1243 | fib->type = FSAFS_NTC_FIB_CONTEXT; | 1239 | fib->type = FSAFS_NTC_FIB_CONTEXT; |
@@ -1343,11 +1339,11 @@ int aac_command_thread(void *data) | |||
1343 | * do anything at this point since we don't have | 1339 | * do anything at this point since we don't have |
1344 | * anything defined for this thread to do. | 1340 | * anything defined for this thread to do. |
1345 | */ | 1341 | */ |
1346 | hw_fib = fib->hw_fib; | 1342 | hw_fib = fib->hw_fib_va; |
1347 | memset(fib, 0, sizeof(struct fib)); | 1343 | memset(fib, 0, sizeof(struct fib)); |
1348 | fib->type = FSAFS_NTC_FIB_CONTEXT; | 1344 | fib->type = FSAFS_NTC_FIB_CONTEXT; |
1349 | fib->size = sizeof( struct fib ); | 1345 | fib->size = sizeof( struct fib ); |
1350 | fib->hw_fib = hw_fib; | 1346 | fib->hw_fib_va = hw_fib; |
1351 | fib->data = hw_fib->data; | 1347 | fib->data = hw_fib->data; |
1352 | fib->dev = dev; | 1348 | fib->dev = dev; |
1353 | /* | 1349 | /* |
@@ -1474,7 +1470,7 @@ int aac_command_thread(void *data) | |||
1474 | */ | 1470 | */ |
1475 | memcpy(hw_newfib, hw_fib, sizeof(struct hw_fib)); | 1471 | memcpy(hw_newfib, hw_fib, sizeof(struct hw_fib)); |
1476 | memcpy(newfib, fib, sizeof(struct fib)); | 1472 | memcpy(newfib, fib, sizeof(struct fib)); |
1477 | newfib->hw_fib = hw_newfib; | 1473 | newfib->hw_fib_va = hw_newfib; |
1478 | /* | 1474 | /* |
1479 | * Put the FIB onto the | 1475 | * Put the FIB onto the |
1480 | * fibctx's fibs | 1476 | * fibctx's fibs |
diff --git a/drivers/scsi/aacraid/dpcsup.c b/drivers/scsi/aacraid/dpcsup.c index d38b628be1ad..26f4d563d959 100644 --- a/drivers/scsi/aacraid/dpcsup.c +++ b/drivers/scsi/aacraid/dpcsup.c | |||
@@ -73,7 +73,7 @@ unsigned int aac_response_normal(struct aac_queue * q) | |||
73 | u32 index = le32_to_cpu(entry->addr); | 73 | u32 index = le32_to_cpu(entry->addr); |
74 | fast = index & 0x01; | 74 | fast = index & 0x01; |
75 | fib = &dev->fibs[index >> 2]; | 75 | fib = &dev->fibs[index >> 2]; |
76 | hwfib = fib->hw_fib; | 76 | hwfib = fib->hw_fib_va; |
77 | 77 | ||
78 | aac_consumer_free(dev, q, HostNormRespQueue); | 78 | aac_consumer_free(dev, q, HostNormRespQueue); |
79 | /* | 79 | /* |
@@ -193,7 +193,7 @@ unsigned int aac_command_normal(struct aac_queue *q) | |||
193 | INIT_LIST_HEAD(&fib->fiblink); | 193 | INIT_LIST_HEAD(&fib->fiblink); |
194 | fib->type = FSAFS_NTC_FIB_CONTEXT; | 194 | fib->type = FSAFS_NTC_FIB_CONTEXT; |
195 | fib->size = sizeof(struct fib); | 195 | fib->size = sizeof(struct fib); |
196 | fib->hw_fib = hw_fib; | 196 | fib->hw_fib_va = hw_fib; |
197 | fib->data = hw_fib->data; | 197 | fib->data = hw_fib->data; |
198 | fib->dev = dev; | 198 | fib->dev = dev; |
199 | 199 | ||
@@ -259,7 +259,7 @@ unsigned int aac_intr_normal(struct aac_dev * dev, u32 Index) | |||
259 | INIT_LIST_HEAD(&fib->fiblink); | 259 | INIT_LIST_HEAD(&fib->fiblink); |
260 | fib->type = FSAFS_NTC_FIB_CONTEXT; | 260 | fib->type = FSAFS_NTC_FIB_CONTEXT; |
261 | fib->size = sizeof(struct fib); | 261 | fib->size = sizeof(struct fib); |
262 | fib->hw_fib = hw_fib; | 262 | fib->hw_fib_va = hw_fib; |
263 | fib->data = hw_fib->data; | 263 | fib->data = hw_fib->data; |
264 | fib->dev = dev; | 264 | fib->dev = dev; |
265 | 265 | ||
@@ -271,7 +271,7 @@ unsigned int aac_intr_normal(struct aac_dev * dev, u32 Index) | |||
271 | } else { | 271 | } else { |
272 | int fast = index & 0x01; | 272 | int fast = index & 0x01; |
273 | struct fib * fib = &dev->fibs[index >> 2]; | 273 | struct fib * fib = &dev->fibs[index >> 2]; |
274 | struct hw_fib * hwfib = fib->hw_fib; | 274 | struct hw_fib * hwfib = fib->hw_fib_va; |
275 | 275 | ||
276 | /* | 276 | /* |
277 | * Remove this fib from the Outstanding I/O queue. | 277 | * Remove this fib from the Outstanding I/O queue. |
diff --git a/drivers/scsi/aacraid/rx.c b/drivers/scsi/aacraid/rx.c index 00e3cba9d8ef..6f8a19462e40 100644 --- a/drivers/scsi/aacraid/rx.c +++ b/drivers/scsi/aacraid/rx.c | |||
@@ -387,7 +387,7 @@ static int aac_rx_deliver_producer(struct fib * fib) | |||
387 | unsigned long nointr = 0; | 387 | unsigned long nointr = 0; |
388 | 388 | ||
389 | spin_lock_irqsave(q->lock, qflags); | 389 | spin_lock_irqsave(q->lock, qflags); |
390 | aac_queue_get( dev, &Index, AdapNormCmdQueue, fib->hw_fib, 1, fib, &nointr); | 390 | aac_queue_get( dev, &Index, AdapNormCmdQueue, fib->hw_fib_va, 1, fib, &nointr); |
391 | 391 | ||
392 | q->numpending++; | 392 | q->numpending++; |
393 | *(q->headers.producer) = cpu_to_le32(Index + 1); | 393 | *(q->headers.producer) = cpu_to_le32(Index + 1); |
@@ -437,7 +437,7 @@ static int aac_rx_deliver_message(struct fib * fib) | |||
437 | device += sizeof(u32); | 437 | device += sizeof(u32); |
438 | writel((u32)(addr >> 32), device); | 438 | writel((u32)(addr >> 32), device); |
439 | device += sizeof(u32); | 439 | device += sizeof(u32); |
440 | writel(le16_to_cpu(fib->hw_fib->header.Size), device); | 440 | writel(le16_to_cpu(fib->hw_fib_va->header.Size), device); |
441 | rx_writel(dev, MUnit.InboundQueue, Index); | 441 | rx_writel(dev, MUnit.InboundQueue, Index); |
442 | return 0; | 442 | return 0; |
443 | } | 443 | } |