diff options
author | Christoph Hellwig <hch@lst.de> | 2006-02-06 09:40:45 -0500 |
---|---|---|
committer | James Bottomley <jejb@mulgrave.il.steeleye.com> | 2006-02-28 00:08:37 -0500 |
commit | 8cac814501677e9f6a824cf4d423122ac8d67fcb (patch) | |
tree | 60dfd19ceaf02739cbab9d9b42cb6b8e9c11e543 /drivers/scsi/aic7xxx/aic7xxx_osm.h | |
parent | fe27381d16c6683c55e618360d0d11bd43647e43 (diff) |
[SCSI] aic7xxx: semaphore to completion conversion
On Tue, Jan 31, 2006 at 06:20:18PM +0100, Christoph Hellwig wrote:
> switch eh_sem to a completion. due to wait_for_completion_timeout this
> also nicely simplifies the code. Unfortunately it's untested, so if
> someone with the hardware could give it a try that would be nice. Once
> it works the same thing can be applied to aic79xx.
New version that switches to the common onstack completion and just a
pointer in the platform_data struct idiom. This gets rid of all the
flags fiddling.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Diffstat (limited to 'drivers/scsi/aic7xxx/aic7xxx_osm.h')
-rw-r--r-- | drivers/scsi/aic7xxx/aic7xxx_osm.h | 5 |
1 files changed, 1 insertions, 4 deletions
diff --git a/drivers/scsi/aic7xxx/aic7xxx_osm.h b/drivers/scsi/aic7xxx/aic7xxx_osm.h index e0edacae895f..a20b08c9ff15 100644 --- a/drivers/scsi/aic7xxx/aic7xxx_osm.h +++ b/drivers/scsi/aic7xxx/aic7xxx_osm.h | |||
@@ -369,15 +369,12 @@ struct ahc_platform_data { | |||
369 | 369 | ||
370 | spinlock_t spin_lock; | 370 | spinlock_t spin_lock; |
371 | u_int qfrozen; | 371 | u_int qfrozen; |
372 | struct semaphore eh_sem; | 372 | struct completion *eh_done; |
373 | struct Scsi_Host *host; /* pointer to scsi host */ | 373 | struct Scsi_Host *host; /* pointer to scsi host */ |
374 | #define AHC_LINUX_NOIRQ ((uint32_t)~0) | 374 | #define AHC_LINUX_NOIRQ ((uint32_t)~0) |
375 | uint32_t irq; /* IRQ for this adapter */ | 375 | uint32_t irq; /* IRQ for this adapter */ |
376 | uint32_t bios_address; | 376 | uint32_t bios_address; |
377 | uint32_t mem_busaddr; /* Mem Base Addr */ | 377 | uint32_t mem_busaddr; /* Mem Base Addr */ |
378 | |||
379 | #define AHC_UP_EH_SEMAPHORE 0x1 | ||
380 | uint32_t flags; | ||
381 | }; | 378 | }; |
382 | 379 | ||
383 | /************************** OS Utility Wrappers *******************************/ | 380 | /************************** OS Utility Wrappers *******************************/ |