diff options
Diffstat (limited to 'drivers/scsi/hosts.c')
-rw-r--r-- | drivers/scsi/hosts.c | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/drivers/scsi/hosts.c b/drivers/scsi/hosts.c index 33aaaeabe..500c19b09 100644 --- a/drivers/scsi/hosts.c +++ b/drivers/scsi/hosts.c @@ -9,6 +9,8 @@ * <drew@colorado.edu> * * Jiffies wrap fixes (host->resetting), 3 Dec 1998 Andrea Arcangeli + * Added QLOGIC QLA1280 SCSI controller kernel host support. + * August 4, 1999 Fred Lewis, Intel DuPont */ @@ -191,6 +193,10 @@ #include "qlogicfc.h" #endif +#ifdef CONFIG_SCSI_QLOGIC_1280 +#include "qla1280.h" +#endif + #ifdef CONFIG_SCSI_SEAGATE #include "seagate.h" #endif @@ -536,6 +542,9 @@ static Scsi_Host_Template builtin_scsi_hosts[] = #ifdef CONFIG_SCSI_QLOGIC_FC QLOGICFC, #endif +#ifdef CONFIG_SCSI_QLOGIC_1280 + QLA1280_LINUX_TEMPLATE, +#endif #ifdef CONFIG_SCSI_PAS16 MV_PAS16, #endif @@ -705,7 +714,7 @@ scsi_unregister(struct Scsi_Host * sh){ } } next_scsi_host--; - scsi_init_free((char *) sh, sizeof(struct Scsi_Host) + sh->extra_bytes); + kfree((char *) sh); } /* We call this when we come across a new host adapter. We only do this @@ -715,8 +724,9 @@ scsi_unregister(struct Scsi_Host * sh){ struct Scsi_Host * scsi_register(Scsi_Host_Template * tpnt, int j){ struct Scsi_Host * retval, *shpnt; - retval = (struct Scsi_Host *)scsi_init_malloc(sizeof(struct Scsi_Host) + j, - (tpnt->unchecked_isa_dma && j ? GFP_DMA : 0) | GFP_ATOMIC); + retval = (struct Scsi_Host *)kmalloc(sizeof(struct Scsi_Host) + j, + (tpnt->unchecked_isa_dma && j ? GFP_DMA : 0) | GFP_ATOMIC); + memset(retval, 0, sizeof(struct Scsi_Host) + j); atomic_set(&retval->host_active,0); retval->host_busy = 0; retval->host_failed = 0; @@ -761,7 +771,7 @@ struct Scsi_Host * scsi_register(Scsi_Host_Template * tpnt, int j){ retval->unchecked_isa_dma = tpnt->unchecked_isa_dma; retval->use_clustering = tpnt->use_clustering; - retval->select_queue_depths = NULL; + retval->select_queue_depths = tpnt->select_queue_depths; if(!scsi_hostlist) scsi_hostlist = retval; |