aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/aacraid/commsup.c
diff options
context:
space:
mode:
authorSalyzyn, Mark <Mark_Salyzyn@adaptec.com>2008-01-16 10:39:06 -0500
committerJames Bottomley <James.Bottomley@HansenPartnership.com>2008-01-23 12:29:28 -0500
commit8ce3eca4dc8161e030a055bde94cde28476e0894 (patch)
tree4cbf81513780508f763ce115a05ab1597a3a0ebc /drivers/scsi/aacraid/commsup.c
parentd07e03610ca1f4be373f32ad5b25ac00dbdb867d (diff)
[SCSI] aacraid: remove pigs in space
I was amazed at how much embedded space was present in the aacraid driver source files. Just selected five files from the set to clean up for now and the attached patch swelled to 73K in size! - Removed trailing space or tabs - Removed spaces embedded within tabs - Replaced leading 8 spaces with tabs - Removed spaces before ) - Removed ClusterCommand as it was unused (noticed it as one triggered by above) - Replaced scsi_status comparison with 0x02, to compare against SAM_STATUS_CHECK_CONDITION. - Replaced a long series of spaces with tabs - Replaced some simple if...defined() with ifdef/ifndef Signed-off-by: Mark Salyzyn <aacraid@adaptec.com> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
Diffstat (limited to 'drivers/scsi/aacraid/commsup.c')
-rw-r--r--drivers/scsi/aacraid/commsup.c201
1 files changed, 100 insertions, 101 deletions
diff --git a/drivers/scsi/aacraid/commsup.c b/drivers/scsi/aacraid/commsup.c
index 6d88f30296e1..1dd2e57c3345 100644
--- a/drivers/scsi/aacraid/commsup.c
+++ b/drivers/scsi/aacraid/commsup.c
@@ -56,7 +56,7 @@
56 * Allocate and map the shared PCI space for the FIB blocks used to 56 * Allocate and map the shared PCI space for the FIB blocks used to
57 * talk to the Adaptec firmware. 57 * talk to the Adaptec firmware.
58 */ 58 */
59 59
60static int fib_map_alloc(struct aac_dev *dev) 60static int fib_map_alloc(struct aac_dev *dev)
61{ 61{
62 dprintk((KERN_INFO 62 dprintk((KERN_INFO
@@ -109,14 +109,16 @@ int aac_fib_setup(struct aac_dev * dev)
109 } 109 }
110 if (i<0) 110 if (i<0)
111 return -ENOMEM; 111 return -ENOMEM;
112 112
113 hw_fib = dev->hw_fib_va; 113 hw_fib = dev->hw_fib_va;
114 hw_fib_pa = dev->hw_fib_pa; 114 hw_fib_pa = dev->hw_fib_pa;
115 memset(hw_fib, 0, dev->max_fib_size * (dev->scsi_host_ptr->can_queue + AAC_NUM_MGT_FIB)); 115 memset(hw_fib, 0, dev->max_fib_size * (dev->scsi_host_ptr->can_queue + AAC_NUM_MGT_FIB));
116 /* 116 /*
117 * Initialise the fibs 117 * Initialise the fibs
118 */ 118 */
119 for (i = 0, fibptr = &dev->fibs[i]; i < (dev->scsi_host_ptr->can_queue + AAC_NUM_MGT_FIB); i++, fibptr++) 119 for (i = 0, fibptr = &dev->fibs[i];
120 i < (dev->scsi_host_ptr->can_queue + AAC_NUM_MGT_FIB);
121 i++, fibptr++)
120 { 122 {
121 fibptr->dev = dev; 123 fibptr->dev = dev;
122 fibptr->hw_fib_va = hw_fib; 124 fibptr->hw_fib_va = hw_fib;
@@ -148,13 +150,13 @@ int aac_fib_setup(struct aac_dev * dev)
148 * Allocate a fib from the adapter fib pool. If the pool is empty we 150 * Allocate a fib from the adapter fib pool. If the pool is empty we
149 * return NULL. 151 * return NULL.
150 */ 152 */
151 153
152struct fib *aac_fib_alloc(struct aac_dev *dev) 154struct fib *aac_fib_alloc(struct aac_dev *dev)
153{ 155{
154 struct fib * fibptr; 156 struct fib * fibptr;
155 unsigned long flags; 157 unsigned long flags;
156 spin_lock_irqsave(&dev->fib_lock, flags); 158 spin_lock_irqsave(&dev->fib_lock, flags);
157 fibptr = dev->free_fib; 159 fibptr = dev->free_fib;
158 if(!fibptr){ 160 if(!fibptr){
159 spin_unlock_irqrestore(&dev->fib_lock, flags); 161 spin_unlock_irqrestore(&dev->fib_lock, flags);
160 return fibptr; 162 return fibptr;
@@ -184,7 +186,7 @@ struct fib *aac_fib_alloc(struct aac_dev *dev)
184 * 186 *
185 * Frees up a fib and places it on the appropriate queue 187 * Frees up a fib and places it on the appropriate queue
186 */ 188 */
187 189
188void aac_fib_free(struct fib *fibptr) 190void aac_fib_free(struct fib *fibptr)
189{ 191{
190 unsigned long flags; 192 unsigned long flags;
@@ -205,10 +207,10 @@ void aac_fib_free(struct fib *fibptr)
205/** 207/**
206 * aac_fib_init - initialise a fib 208 * aac_fib_init - initialise a fib
207 * @fibptr: The fib to initialize 209 * @fibptr: The fib to initialize
208 * 210 *
209 * Set up the generic fib fields ready for use 211 * Set up the generic fib fields ready for use
210 */ 212 */
211 213
212void aac_fib_init(struct fib *fibptr) 214void aac_fib_init(struct fib *fibptr)
213{ 215{
214 struct hw_fib *hw_fib = fibptr->hw_fib_va; 216 struct hw_fib *hw_fib = fibptr->hw_fib_va;
@@ -228,12 +230,12 @@ void aac_fib_init(struct fib *fibptr)
228 * Will deallocate and return to the free pool the FIB pointed to by the 230 * Will deallocate and return to the free pool the FIB pointed to by the
229 * caller. 231 * caller.
230 */ 232 */
231 233
232static void fib_dealloc(struct fib * fibptr) 234static void fib_dealloc(struct fib * fibptr)
233{ 235{
234 struct hw_fib *hw_fib = fibptr->hw_fib_va; 236 struct hw_fib *hw_fib = fibptr->hw_fib_va;
235 BUG_ON(hw_fib->header.StructType != FIB_MAGIC); 237 BUG_ON(hw_fib->header.StructType != FIB_MAGIC);
236 hw_fib->header.XferState = 0; 238 hw_fib->header.XferState = 0;
237} 239}
238 240
239/* 241/*
@@ -242,7 +244,7 @@ static void fib_dealloc(struct fib * fibptr)
242 * these routines and are the only routines which have a knowledge of the 244 * these routines and are the only routines which have a knowledge of the
243 * how these queues are implemented. 245 * how these queues are implemented.
244 */ 246 */
245 247
246/** 248/**
247 * aac_get_entry - get a queue entry 249 * aac_get_entry - get a queue entry
248 * @dev: Adapter 250 * @dev: Adapter
@@ -255,7 +257,7 @@ static void fib_dealloc(struct fib * fibptr)
255 * is full(no free entries) than no entry is returned and the function returns 0 otherwise 1 is 257 * is full(no free entries) than no entry is returned and the function returns 0 otherwise 1 is
256 * returned. 258 * returned.
257 */ 259 */
258 260
259static int aac_get_entry (struct aac_dev * dev, u32 qid, struct aac_entry **entry, u32 * index, unsigned long *nonotify) 261static int aac_get_entry (struct aac_dev * dev, u32 qid, struct aac_entry **entry, u32 * index, unsigned long *nonotify)
260{ 262{
261 struct aac_queue * q; 263 struct aac_queue * q;
@@ -280,26 +282,27 @@ static int aac_get_entry (struct aac_dev * dev, u32 qid, struct aac_entry **entr
280 idx = ADAP_NORM_RESP_ENTRIES; 282 idx = ADAP_NORM_RESP_ENTRIES;
281 } 283 }
282 if (idx != le32_to_cpu(*(q->headers.consumer))) 284 if (idx != le32_to_cpu(*(q->headers.consumer)))
283 *nonotify = 1; 285 *nonotify = 1;
284 } 286 }
285 287
286 if (qid == AdapNormCmdQueue) { 288 if (qid == AdapNormCmdQueue) {
287 if (*index >= ADAP_NORM_CMD_ENTRIES) 289 if (*index >= ADAP_NORM_CMD_ENTRIES)
288 *index = 0; /* Wrap to front of the Producer Queue. */ 290 *index = 0; /* Wrap to front of the Producer Queue. */
289 } else { 291 } else {
290 if (*index >= ADAP_NORM_RESP_ENTRIES) 292 if (*index >= ADAP_NORM_RESP_ENTRIES)
291 *index = 0; /* Wrap to front of the Producer Queue. */ 293 *index = 0; /* Wrap to front of the Producer Queue. */
292 } 294 }
293 295
294 if ((*index + 1) == le32_to_cpu(*(q->headers.consumer))) { /* Queue is full */ 296 /* Queue is full */
297 if ((*index + 1) == le32_to_cpu(*(q->headers.consumer))) {
295 printk(KERN_WARNING "Queue %d full, %u outstanding.\n", 298 printk(KERN_WARNING "Queue %d full, %u outstanding.\n",
296 qid, q->numpending); 299 qid, q->numpending);
297 return 0; 300 return 0;
298 } else { 301 } else {
299 *entry = q->base + *index; 302 *entry = q->base + *index;
300 return 1; 303 return 1;
301 } 304 }
302} 305}
303 306
304/** 307/**
305 * aac_queue_get - get the next free QE 308 * aac_queue_get - get the next free QE
@@ -321,31 +324,29 @@ int aac_queue_get(struct aac_dev * dev, u32 * index, u32 qid, struct hw_fib * hw
321{ 324{
322 struct aac_entry * entry = NULL; 325 struct aac_entry * entry = NULL;
323 int map = 0; 326 int map = 0;
324 327
325 if (qid == AdapNormCmdQueue) { 328 if (qid == AdapNormCmdQueue) {
326 /* if no entries wait for some if caller wants to */ 329 /* if no entries wait for some if caller wants to */
327 while (!aac_get_entry(dev, qid, &entry, index, nonotify)) 330 while (!aac_get_entry(dev, qid, &entry, index, nonotify)) {
328 {
329 printk(KERN_ERR "GetEntries failed\n"); 331 printk(KERN_ERR "GetEntries failed\n");
330 } 332 }
331 /* 333 /*
332 * Setup queue entry with a command, status and fib mapped 334 * Setup queue entry with a command, status and fib mapped
333 */ 335 */
334 entry->size = cpu_to_le32(le16_to_cpu(hw_fib->header.Size)); 336 entry->size = cpu_to_le32(le16_to_cpu(hw_fib->header.Size));
335 map = 1; 337 map = 1;
336 } else { 338 } else {
337 while(!aac_get_entry(dev, qid, &entry, index, nonotify)) 339 while (!aac_get_entry(dev, qid, &entry, index, nonotify)) {
338 {
339 /* if no entries wait for some if caller wants to */ 340 /* if no entries wait for some if caller wants to */
340 } 341 }
341 /* 342 /*
342 * Setup queue entry with command, status and fib mapped 343 * Setup queue entry with command, status and fib mapped
343 */ 344 */
344 entry->size = cpu_to_le32(le16_to_cpu(hw_fib->header.Size)); 345 entry->size = cpu_to_le32(le16_to_cpu(hw_fib->header.Size));
345 entry->addr = hw_fib->header.SenderFibAddress; 346 entry->addr = hw_fib->header.SenderFibAddress;
346 /* Restore adapters pointer to the FIB */ 347 /* Restore adapters pointer to the FIB */
347 hw_fib->header.ReceiverFibAddress = hw_fib->header.SenderFibAddress; /* Let the adapter now where to find its data */ 348 hw_fib->header.ReceiverFibAddress = hw_fib->header.SenderFibAddress; /* Let the adapter now where to find its data */
348 map = 0; 349 map = 0;
349 } 350 }
350 /* 351 /*
351 * If MapFib is true than we need to map the Fib and put pointers 352 * If MapFib is true than we need to map the Fib and put pointers
@@ -357,8 +358,8 @@ int aac_queue_get(struct aac_dev * dev, u32 * index, u32 qid, struct hw_fib * hw
357} 358}
358 359
359/* 360/*
360 * Define the highest level of host to adapter communication routines. 361 * Define the highest level of host to adapter communication routines.
361 * These routines will support host to adapter FS commuication. These 362 * These routines will support host to adapter FS commuication. These
362 * routines have no knowledge of the commuication method used. This level 363 * routines have no knowledge of the commuication method used. This level
363 * sends and receives FIBs. This level has no knowledge of how these FIBs 364 * sends and receives FIBs. This level has no knowledge of how these FIBs
364 * get passed back and forth. 365 * get passed back and forth.
@@ -380,7 +381,7 @@ int aac_queue_get(struct aac_dev * dev, u32 * index, u32 qid, struct hw_fib * hw
380 * an event to wait on must be supplied. This event will be set when a 381 * an event to wait on must be supplied. This event will be set when a
381 * response FIB is received from the adapter. 382 * response FIB is received from the adapter.
382 */ 383 */
383 384
384int aac_fib_send(u16 command, struct fib *fibptr, unsigned long size, 385int aac_fib_send(u16 command, struct fib *fibptr, unsigned long size,
385 int priority, int wait, int reply, fib_callback callback, 386 int priority, int wait, int reply, fib_callback callback,
386 void *callback_data) 387 void *callback_data)
@@ -393,13 +394,13 @@ int aac_fib_send(u16 command, struct fib *fibptr, unsigned long size,
393 if (!(hw_fib->header.XferState & cpu_to_le32(HostOwned))) 394 if (!(hw_fib->header.XferState & cpu_to_le32(HostOwned)))
394 return -EBUSY; 395 return -EBUSY;
395 /* 396 /*
396 * There are 5 cases with the wait and reponse requested flags. 397 * There are 5 cases with the wait and reponse requested flags.
397 * The only invalid cases are if the caller requests to wait and 398 * The only invalid cases are if the caller requests to wait and
398 * does not request a response and if the caller does not want a 399 * does not request a response and if the caller does not want a
399 * response and the Fib is not allocated from pool. If a response 400 * response and the Fib is not allocated from pool. If a response
400 * is not requesed the Fib will just be deallocaed by the DPC 401 * is not requesed the Fib will just be deallocaed by the DPC
401 * routine when the response comes back from the adapter. No 402 * routine when the response comes back from the adapter. No
402 * further processing will be done besides deleting the Fib. We 403 * further processing will be done besides deleting the Fib. We
403 * will have a debug mode where the adapter can notify the host 404 * will have a debug mode where the adapter can notify the host
404 * it had a problem and the host can log that fact. 405 * it had a problem and the host can log that fact.
405 */ 406 */
@@ -415,7 +416,7 @@ int aac_fib_send(u16 command, struct fib *fibptr, unsigned long size,
415 } else if (wait && reply) { 416 } else if (wait && reply) {
416 hw_fib->header.XferState |= cpu_to_le32(ResponseExpected); 417 hw_fib->header.XferState |= cpu_to_le32(ResponseExpected);
417 FIB_COUNTER_INCREMENT(aac_config.NormalSent); 418 FIB_COUNTER_INCREMENT(aac_config.NormalSent);
418 } 419 }
419 /* 420 /*
420 * Map the fib into 32bits by using the fib number 421 * Map the fib into 32bits by using the fib number
421 */ 422 */
@@ -438,7 +439,7 @@ int aac_fib_send(u16 command, struct fib *fibptr, unsigned long size,
438 hw_fib->header.Size = cpu_to_le16(sizeof(struct aac_fibhdr) + size); 439 hw_fib->header.Size = cpu_to_le16(sizeof(struct aac_fibhdr) + size);
439 if (le16_to_cpu(hw_fib->header.Size) > le16_to_cpu(hw_fib->header.SenderSize)) { 440 if (le16_to_cpu(hw_fib->header.Size) > le16_to_cpu(hw_fib->header.SenderSize)) {
440 return -EMSGSIZE; 441 return -EMSGSIZE;
441 } 442 }
442 /* 443 /*
443 * Get a queue entry connect the FIB to it and send an notify 444 * Get a queue entry connect the FIB to it and send an notify
444 * the adapter a command is ready. 445 * the adapter a command is ready.
@@ -475,9 +476,9 @@ int aac_fib_send(u16 command, struct fib *fibptr, unsigned long size,
475 aac_adapter_deliver(fibptr); 476 aac_adapter_deliver(fibptr);
476 477
477 /* 478 /*
478 * If the caller wanted us to wait for response wait now. 479 * If the caller wanted us to wait for response wait now.
479 */ 480 */
480 481
481 if (wait) { 482 if (wait) {
482 spin_unlock_irqrestore(&fibptr->event_lock, flags); 483 spin_unlock_irqrestore(&fibptr->event_lock, flags);
483 /* Only set for first known interruptable command */ 484 /* Only set for first known interruptable command */
@@ -524,7 +525,7 @@ int aac_fib_send(u16 command, struct fib *fibptr, unsigned long size,
524 } 525 }
525 spin_unlock_irqrestore(&fibptr->event_lock, flags); 526 spin_unlock_irqrestore(&fibptr->event_lock, flags);
526 BUG_ON(fibptr->done == 0); 527 BUG_ON(fibptr->done == 0);
527 528
528 if(unlikely(fibptr->flags & FIB_CONTEXT_FLAG_TIMED_OUT)) 529 if(unlikely(fibptr->flags & FIB_CONTEXT_FLAG_TIMED_OUT))
529 return -ETIMEDOUT; 530 return -ETIMEDOUT;
530 return 0; 531 return 0;
@@ -539,15 +540,15 @@ int aac_fib_send(u16 command, struct fib *fibptr, unsigned long size,
539 return 0; 540 return 0;
540} 541}
541 542
542/** 543/**
543 * aac_consumer_get - get the top of the queue 544 * aac_consumer_get - get the top of the queue
544 * @dev: Adapter 545 * @dev: Adapter
545 * @q: Queue 546 * @q: Queue
546 * @entry: Return entry 547 * @entry: Return entry
547 * 548 *
548 * Will return a pointer to the entry on the top of the queue requested that 549 * Will return a pointer to the entry on the top of the queue requested that
549 * we are a consumer of, and return the address of the queue entry. It does 550 * we are a consumer of, and return the address of the queue entry. It does
550 * not change the state of the queue. 551 * not change the state of the queue.
551 */ 552 */
552 553
553int aac_consumer_get(struct aac_dev * dev, struct aac_queue * q, struct aac_entry **entry) 554int aac_consumer_get(struct aac_dev * dev, struct aac_queue * q, struct aac_entry **entry)
@@ -562,10 +563,10 @@ int aac_consumer_get(struct aac_dev * dev, struct aac_queue * q, struct aac_entr
562 * the end of the queue, else we just use the entry 563 * the end of the queue, else we just use the entry
563 * pointed to by the header index 564 * pointed to by the header index
564 */ 565 */
565 if (le32_to_cpu(*q->headers.consumer) >= q->entries) 566 if (le32_to_cpu(*q->headers.consumer) >= q->entries)
566 index = 0; 567 index = 0;
567 else 568 else
568 index = le32_to_cpu(*q->headers.consumer); 569 index = le32_to_cpu(*q->headers.consumer);
569 *entry = q->base + index; 570 *entry = q->base + index;
570 status = 1; 571 status = 1;
571 } 572 }
@@ -589,12 +590,12 @@ void aac_consumer_free(struct aac_dev * dev, struct aac_queue *q, u32 qid)
589 590
590 if ((le32_to_cpu(*q->headers.producer)+1) == le32_to_cpu(*q->headers.consumer)) 591 if ((le32_to_cpu(*q->headers.producer)+1) == le32_to_cpu(*q->headers.consumer))
591 wasfull = 1; 592 wasfull = 1;
592 593
593 if (le32_to_cpu(*q->headers.consumer) >= q->entries) 594 if (le32_to_cpu(*q->headers.consumer) >= q->entries)
594 *q->headers.consumer = cpu_to_le32(1); 595 *q->headers.consumer = cpu_to_le32(1);
595 else 596 else
596 *q->headers.consumer = cpu_to_le32(le32_to_cpu(*q->headers.consumer)+1); 597 *q->headers.consumer = cpu_to_le32(le32_to_cpu(*q->headers.consumer)+1);
597 598
598 if (wasfull) { 599 if (wasfull) {
599 switch (qid) { 600 switch (qid) {
600 601
@@ -610,7 +611,7 @@ void aac_consumer_free(struct aac_dev * dev, struct aac_queue *q, u32 qid)
610 } 611 }
611 aac_adapter_notify(dev, notify); 612 aac_adapter_notify(dev, notify);
612 } 613 }
613} 614}
614 615
615/** 616/**
616 * aac_fib_adapter_complete - complete adapter issued fib 617 * aac_fib_adapter_complete - complete adapter issued fib
@@ -632,32 +633,32 @@ int aac_fib_adapter_complete(struct fib *fibptr, unsigned short size)
632 if (hw_fib->header.XferState == 0) { 633 if (hw_fib->header.XferState == 0) {
633 if (dev->comm_interface == AAC_COMM_MESSAGE) 634 if (dev->comm_interface == AAC_COMM_MESSAGE)
634 kfree (hw_fib); 635 kfree (hw_fib);
635 return 0; 636 return 0;
636 } 637 }
637 /* 638 /*
638 * If we plan to do anything check the structure type first. 639 * If we plan to do anything check the structure type first.
639 */ 640 */
640 if ( hw_fib->header.StructType != FIB_MAGIC ) { 641 if (hw_fib->header.StructType != FIB_MAGIC) {
641 if (dev->comm_interface == AAC_COMM_MESSAGE) 642 if (dev->comm_interface == AAC_COMM_MESSAGE)
642 kfree (hw_fib); 643 kfree (hw_fib);
643 return -EINVAL; 644 return -EINVAL;
644 } 645 }
645 /* 646 /*
646 * This block handles the case where the adapter had sent us a 647 * This block handles the case where the adapter had sent us a
647 * command and we have finished processing the command. We 648 * command and we have finished processing the command. We
648 * call completeFib when we are done processing the command 649 * call completeFib when we are done processing the command
649 * and want to send a response back to the adapter. This will 650 * and want to send a response back to the adapter. This will
650 * send the completed cdb to the adapter. 651 * send the completed cdb to the adapter.
651 */ 652 */
652 if (hw_fib->header.XferState & cpu_to_le32(SentFromAdapter)) { 653 if (hw_fib->header.XferState & cpu_to_le32(SentFromAdapter)) {
653 if (dev->comm_interface == AAC_COMM_MESSAGE) { 654 if (dev->comm_interface == AAC_COMM_MESSAGE) {
654 kfree (hw_fib); 655 kfree (hw_fib);
655 } else { 656 } else {
656 u32 index; 657 u32 index;
657 hw_fib->header.XferState |= cpu_to_le32(HostProcessed); 658 hw_fib->header.XferState |= cpu_to_le32(HostProcessed);
658 if (size) { 659 if (size) {
659 size += sizeof(struct aac_fibhdr); 660 size += sizeof(struct aac_fibhdr);
660 if (size > le16_to_cpu(hw_fib->header.SenderSize)) 661 if (size > le16_to_cpu(hw_fib->header.SenderSize))
661 return -EMSGSIZE; 662 return -EMSGSIZE;
662 hw_fib->header.Size = cpu_to_le16(size); 663 hw_fib->header.Size = cpu_to_le16(size);
663 } 664 }
@@ -669,12 +670,11 @@ int aac_fib_adapter_complete(struct fib *fibptr, unsigned short size)
669 if (!(nointr & (int)aac_config.irq_mod)) 670 if (!(nointr & (int)aac_config.irq_mod))
670 aac_adapter_notify(dev, AdapNormRespQueue); 671 aac_adapter_notify(dev, AdapNormRespQueue);
671 } 672 }
673 } else {
674 printk(KERN_WARNING "aac_fib_adapter_complete: "
675 "Unknown xferstate detected.\n");
676 BUG();
672 } 677 }
673 else
674 {
675 printk(KERN_WARNING "aac_fib_adapter_complete: Unknown xferstate detected.\n");
676 BUG();
677 }
678 return 0; 678 return 0;
679} 679}
680 680
@@ -684,7 +684,7 @@ int aac_fib_adapter_complete(struct fib *fibptr, unsigned short size)
684 * 684 *
685 * Will do all necessary work to complete a FIB. 685 * Will do all necessary work to complete a FIB.
686 */ 686 */
687 687
688int aac_fib_complete(struct fib *fibptr) 688int aac_fib_complete(struct fib *fibptr)
689{ 689{
690 struct hw_fib * hw_fib = fibptr->hw_fib_va; 690 struct hw_fib * hw_fib = fibptr->hw_fib_va;
@@ -694,15 +694,15 @@ int aac_fib_complete(struct fib *fibptr)
694 */ 694 */
695 695
696 if (hw_fib->header.XferState == 0) 696 if (hw_fib->header.XferState == 0)
697 return 0; 697 return 0;
698 /* 698 /*
699 * If we plan to do anything check the structure type first. 699 * If we plan to do anything check the structure type first.
700 */ 700 */
701 701
702 if (hw_fib->header.StructType != FIB_MAGIC) 702 if (hw_fib->header.StructType != FIB_MAGIC)
703 return -EINVAL; 703 return -EINVAL;
704 /* 704 /*
705 * This block completes a cdb which orginated on the host and we 705 * This block completes a cdb which orginated on the host and we
706 * just need to deallocate the cdb or reinit it. At this point the 706 * just need to deallocate the cdb or reinit it. At this point the
707 * command is complete that we had sent to the adapter and this 707 * command is complete that we had sent to the adapter and this
708 * cdb could be reused. 708 * cdb could be reused.
@@ -723,7 +723,7 @@ int aac_fib_complete(struct fib *fibptr)
723 fib_dealloc(fibptr); 723 fib_dealloc(fibptr);
724 } else { 724 } else {
725 BUG(); 725 BUG();
726 } 726 }
727 return 0; 727 return 0;
728} 728}
729 729
@@ -743,7 +743,7 @@ void aac_printf(struct aac_dev *dev, u32 val)
743 { 743 {
744 int length = val & 0xffff; 744 int length = val & 0xffff;
745 int level = (val >> 16) & 0xffff; 745 int level = (val >> 16) & 0xffff;
746 746
747 /* 747 /*
748 * The size of the printfbuf is set in port.c 748 * The size of the printfbuf is set in port.c
749 * There is no variable or define for it 749 * There is no variable or define for it
@@ -757,7 +757,7 @@ void aac_printf(struct aac_dev *dev, u32 val)
757 else 757 else
758 printk(KERN_INFO "%s:%s", dev->name, cp); 758 printk(KERN_INFO "%s:%s", dev->name, cp);
759 } 759 }
760 memset(cp, 0, 256); 760 memset(cp, 0, 256);
761} 761}
762 762
763 763
@@ -816,9 +816,9 @@ static void aac_handle_aif(struct aac_dev * dev, struct fib * fibptr)
816 */ 816 */
817 817
818 if ((dev != NULL) && (dev->scsi_host_ptr != NULL)) { 818 if ((dev != NULL) && (dev->scsi_host_ptr != NULL)) {
819 device = scsi_device_lookup(dev->scsi_host_ptr, 819 device = scsi_device_lookup(dev->scsi_host_ptr,
820 CONTAINER_TO_CHANNEL(container), 820 CONTAINER_TO_CHANNEL(container),
821 CONTAINER_TO_ID(container), 821 CONTAINER_TO_ID(container),
822 CONTAINER_TO_LUN(container)); 822 CONTAINER_TO_LUN(container));
823 if (device) { 823 if (device) {
824 dev->fsa_dev[container].config_needed = CHANGE; 824 dev->fsa_dev[container].config_needed = CHANGE;
@@ -1184,13 +1184,13 @@ static int _aac_reset_adapter(struct aac_dev *aac, int forced)
1184 } 1184 }
1185 (void)aac_get_adapter_info(aac); 1185 (void)aac_get_adapter_info(aac);
1186 if ((quirks & AAC_QUIRK_34SG) && (host->sg_tablesize > 34)) { 1186 if ((quirks & AAC_QUIRK_34SG) && (host->sg_tablesize > 34)) {
1187 host->sg_tablesize = 34; 1187 host->sg_tablesize = 34;
1188 host->max_sectors = (host->sg_tablesize * 8) + 112; 1188 host->max_sectors = (host->sg_tablesize * 8) + 112;
1189 } 1189 }
1190 if ((quirks & AAC_QUIRK_17SG) && (host->sg_tablesize > 17)) { 1190 if ((quirks & AAC_QUIRK_17SG) && (host->sg_tablesize > 17)) {
1191 host->sg_tablesize = 17; 1191 host->sg_tablesize = 17;
1192 host->max_sectors = (host->sg_tablesize * 8) + 112; 1192 host->max_sectors = (host->sg_tablesize * 8) + 112;
1193 } 1193 }
1194 aac_get_config_status(aac, 1); 1194 aac_get_config_status(aac, 1);
1195 aac_get_containers(aac); 1195 aac_get_containers(aac);
1196 /* 1196 /*
@@ -1461,7 +1461,7 @@ out:
1461 * until the queue is empty. When the queue is empty it will wait for 1461 * until the queue is empty. When the queue is empty it will wait for
1462 * more FIBs. 1462 * more FIBs.
1463 */ 1463 */
1464 1464
1465int aac_command_thread(void *data) 1465int aac_command_thread(void *data)
1466{ 1466{
1467 struct aac_dev *dev = data; 1467 struct aac_dev *dev = data;
@@ -1487,30 +1487,29 @@ int aac_command_thread(void *data)
1487 add_wait_queue(&dev->queues->queue[HostNormCmdQueue].cmdready, &wait); 1487 add_wait_queue(&dev->queues->queue[HostNormCmdQueue].cmdready, &wait);
1488 set_current_state(TASK_INTERRUPTIBLE); 1488 set_current_state(TASK_INTERRUPTIBLE);
1489 dprintk ((KERN_INFO "aac_command_thread start\n")); 1489 dprintk ((KERN_INFO "aac_command_thread start\n"));
1490 while(1) 1490 while (1) {
1491 {
1492 spin_lock_irqsave(dev->queues->queue[HostNormCmdQueue].lock, flags); 1491 spin_lock_irqsave(dev->queues->queue[HostNormCmdQueue].lock, flags);
1493 while(!list_empty(&(dev->queues->queue[HostNormCmdQueue].cmdq))) { 1492 while(!list_empty(&(dev->queues->queue[HostNormCmdQueue].cmdq))) {
1494 struct list_head *entry; 1493 struct list_head *entry;
1495 struct aac_aifcmd * aifcmd; 1494 struct aac_aifcmd * aifcmd;
1496 1495
1497 set_current_state(TASK_RUNNING); 1496 set_current_state(TASK_RUNNING);
1498 1497
1499 entry = dev->queues->queue[HostNormCmdQueue].cmdq.next; 1498 entry = dev->queues->queue[HostNormCmdQueue].cmdq.next;
1500 list_del(entry); 1499 list_del(entry);
1501 1500
1502 spin_unlock_irqrestore(dev->queues->queue[HostNormCmdQueue].lock, flags); 1501 spin_unlock_irqrestore(dev->queues->queue[HostNormCmdQueue].lock, flags);
1503 fib = list_entry(entry, struct fib, fiblink); 1502 fib = list_entry(entry, struct fib, fiblink);
1504 /* 1503 /*
1505 * We will process the FIB here or pass it to a 1504 * We will process the FIB here or pass it to a
1506 * worker thread that is TBD. We Really can't 1505 * worker thread that is TBD. We Really can't
1507 * do anything at this point since we don't have 1506 * do anything at this point since we don't have
1508 * anything defined for this thread to do. 1507 * anything defined for this thread to do.
1509 */ 1508 */
1510 hw_fib = fib->hw_fib_va; 1509 hw_fib = fib->hw_fib_va;
1511 memset(fib, 0, sizeof(struct fib)); 1510 memset(fib, 0, sizeof(struct fib));
1512 fib->type = FSAFS_NTC_FIB_CONTEXT; 1511 fib->type = FSAFS_NTC_FIB_CONTEXT;
1513 fib->size = sizeof( struct fib ); 1512 fib->size = sizeof(struct fib);
1514 fib->hw_fib_va = hw_fib; 1513 fib->hw_fib_va = hw_fib;
1515 fib->data = hw_fib->data; 1514 fib->data = hw_fib->data;
1516 fib->dev = dev; 1515 fib->dev = dev;
@@ -1526,17 +1525,17 @@ int aac_command_thread(void *data)
1526 } else { 1525 } else {
1527 /* The u32 here is important and intended. We are using 1526 /* The u32 here is important and intended. We are using
1528 32bit wrapping time to fit the adapter field */ 1527 32bit wrapping time to fit the adapter field */
1529 1528
1530 u32 time_now, time_last; 1529 u32 time_now, time_last;
1531 unsigned long flagv; 1530 unsigned long flagv;
1532 unsigned num; 1531 unsigned num;
1533 struct hw_fib ** hw_fib_pool, ** hw_fib_p; 1532 struct hw_fib ** hw_fib_pool, ** hw_fib_p;
1534 struct fib ** fib_pool, ** fib_p; 1533 struct fib ** fib_pool, ** fib_p;
1535 1534
1536 /* Sniff events */ 1535 /* Sniff events */
1537 if ((aifcmd->command == 1536 if ((aifcmd->command ==
1538 cpu_to_le32(AifCmdEventNotify)) || 1537 cpu_to_le32(AifCmdEventNotify)) ||
1539 (aifcmd->command == 1538 (aifcmd->command ==
1540 cpu_to_le32(AifCmdJobProgress))) { 1539 cpu_to_le32(AifCmdJobProgress))) {
1541 aac_handle_aif(dev, fib); 1540 aac_handle_aif(dev, fib);
1542 } 1541 }
@@ -1588,7 +1587,7 @@ int aac_command_thread(void *data)
1588 spin_lock_irqsave(&dev->fib_lock, flagv); 1587 spin_lock_irqsave(&dev->fib_lock, flagv);
1589 entry = dev->fib_list.next; 1588 entry = dev->fib_list.next;
1590 /* 1589 /*
1591 * For each Context that is on the 1590 * For each Context that is on the
1592 * fibctxList, make a copy of the 1591 * fibctxList, make a copy of the
1593 * fib, and then set the event to wake up the 1592 * fib, and then set the event to wake up the
1594 * thread that is waiting for it. 1593 * thread that is waiting for it.
@@ -1613,7 +1612,7 @@ int aac_command_thread(void *data)
1613 */ 1612 */
1614 time_last = fibctx->jiffies; 1613 time_last = fibctx->jiffies;
1615 /* 1614 /*
1616 * Has it been > 2 minutes 1615 * Has it been > 2 minutes
1617 * since the last read off 1616 * since the last read off
1618 * the queue? 1617 * the queue?
1619 */ 1618 */
@@ -1644,7 +1643,7 @@ int aac_command_thread(void *data)
1644 */ 1643 */
1645 list_add_tail(&newfib->fiblink, &fibctx->fib_list); 1644 list_add_tail(&newfib->fiblink, &fibctx->fib_list);
1646 fibctx->count++; 1645 fibctx->count++;
1647 /* 1646 /*
1648 * Set the event to wake up the 1647 * Set the event to wake up the
1649 * thread that is waiting. 1648 * thread that is waiting.
1650 */ 1649 */