diff options
author | James Bottomley <James.Bottomley@steeleye.com> | 2005-05-24 18:15:43 -0400 |
---|---|---|
committer | James Bottomley <jejb@mulgrave.(none)> | 2005-05-26 14:28:31 -0400 |
commit | b1abb4d67f2a706f52a95064001e0c55d9be2d26 (patch) | |
tree | 4095e216afd32cc1681718fa41ad8ca4e37b77fb /drivers/scsi/aic7xxx/aic7xxx_osm.h | |
parent | 153b1e1fd957861e2c185473dd3c3d93561066e4 (diff) |
[SCSI] aic7xxx: remove separate target and device allocations
Since the aic driver is now taught to speak in terms of the generic
linux devices, we can now also dispense with the transport class get
routines (since we update the parameters when the driver sees they
change) and also plumb it into the spi transport transfer agreement
reporting infrastructure.
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 | 15 |
1 files changed, 4 insertions, 11 deletions
diff --git a/drivers/scsi/aic7xxx/aic7xxx_osm.h b/drivers/scsi/aic7xxx/aic7xxx_osm.h index 30c200d5bcd5..b135c8c787bb 100644 --- a/drivers/scsi/aic7xxx/aic7xxx_osm.h +++ b/drivers/scsi/aic7xxx/aic7xxx_osm.h | |||
@@ -79,6 +79,8 @@ | |||
79 | #include <scsi/scsi_device.h> | 79 | #include <scsi/scsi_device.h> |
80 | #include <scsi/scsi_host.h> | 80 | #include <scsi/scsi_host.h> |
81 | #include <scsi/scsi_tcq.h> | 81 | #include <scsi/scsi_tcq.h> |
82 | #include <scsi/scsi_transport.h> | ||
83 | #include <scsi/scsi_transport_spi.h> | ||
82 | 84 | ||
83 | /* Core SCSI definitions */ | 85 | /* Core SCSI definitions */ |
84 | #define AIC_LIB_PREFIX ahc | 86 | #define AIC_LIB_PREFIX ahc |
@@ -330,8 +332,6 @@ typedef enum { | |||
330 | 332 | ||
331 | struct ahc_linux_target; | 333 | struct ahc_linux_target; |
332 | struct ahc_linux_device { | 334 | struct ahc_linux_device { |
333 | TAILQ_ENTRY(ahc_linux_device) links; | ||
334 | |||
335 | /* | 335 | /* |
336 | * The number of transactions currently | 336 | * The number of transactions currently |
337 | * queued to the device. | 337 | * queued to the device. |
@@ -401,17 +401,10 @@ struct ahc_linux_device { | |||
401 | */ | 401 | */ |
402 | u_int commands_since_idle_or_otag; | 402 | u_int commands_since_idle_or_otag; |
403 | #define AHC_OTAG_THRESH 500 | 403 | #define AHC_OTAG_THRESH 500 |
404 | |||
405 | int lun; | ||
406 | struct scsi_device *scsi_device; | ||
407 | struct ahc_linux_target *target; | ||
408 | }; | 404 | }; |
409 | 405 | ||
410 | struct ahc_linux_target { | 406 | struct ahc_linux_target { |
411 | struct ahc_linux_device *devices[AHC_NUM_LUNS]; | 407 | struct scsi_device *sdev[AHC_NUM_LUNS]; |
412 | int channel; | ||
413 | int target; | ||
414 | int refcount; | ||
415 | struct ahc_transinfo last_tinfo; | 408 | struct ahc_transinfo last_tinfo; |
416 | struct ahc_softc *ahc; | 409 | struct ahc_softc *ahc; |
417 | }; | 410 | }; |
@@ -445,7 +438,7 @@ struct ahc_platform_data { | |||
445 | /* | 438 | /* |
446 | * Fields accessed from interrupt context. | 439 | * Fields accessed from interrupt context. |
447 | */ | 440 | */ |
448 | struct ahc_linux_target *targets[AHC_NUM_TARGETS]; | 441 | struct scsi_target *starget[AHC_NUM_TARGETS]; |
449 | 442 | ||
450 | spinlock_t spin_lock; | 443 | spinlock_t spin_lock; |
451 | u_int qfrozen; | 444 | u_int qfrozen; |