mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-18 09:44:18 +08:00
[SCSI] nsp_cs: remove kernel 2.4 code
Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
This commit is contained in:
parent
a02676d4bd
commit
774251ef64
@ -25,8 +25,6 @@
|
||||
|
||||
***********************************************************************/
|
||||
|
||||
/* $Id: nsp_cs.c,v 1.23 2003/08/18 11:09:19 elca Exp $ */
|
||||
|
||||
#include <linux/version.h>
|
||||
#include <linux/module.h>
|
||||
#include <linux/kernel.h>
|
||||
@ -59,7 +57,7 @@
|
||||
#include "nsp_cs.h"
|
||||
|
||||
MODULE_AUTHOR("YOKOTA Hiroshi <yokota@netlab.is.tsukuba.ac.jp>");
|
||||
MODULE_DESCRIPTION("WorkBit NinjaSCSI-3 / NinjaSCSI-32Bi(16bit) PCMCIA SCSI host adapter module $Revision: 1.23 $");
|
||||
MODULE_DESCRIPTION("WorkBit NinjaSCSI-3 / NinjaSCSI-32Bi(16bit) PCMCIA SCSI host adapter module");
|
||||
MODULE_SUPPORTED_DEVICE("sd,sr,sg,st");
|
||||
#ifdef MODULE_LICENSE
|
||||
MODULE_LICENSE("GPL");
|
||||
@ -83,10 +81,6 @@ static struct scsi_host_template nsp_driver_template = {
|
||||
.proc_name = "nsp_cs",
|
||||
.proc_info = nsp_proc_info,
|
||||
.name = "WorkBit NinjaSCSI-3/32Bi(16bit)",
|
||||
#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,5,0))
|
||||
.detect = nsp_detect_old,
|
||||
.release = nsp_release_old,
|
||||
#endif
|
||||
.info = nsp_info,
|
||||
.queuecommand = nsp_queuecommand,
|
||||
/* .eh_abort_handler = nsp_eh_abort,*/
|
||||
@ -97,9 +91,6 @@ static struct scsi_host_template nsp_driver_template = {
|
||||
.sg_tablesize = SG_ALL,
|
||||
.cmd_per_lun = 1,
|
||||
.use_clustering = DISABLE_CLUSTERING,
|
||||
#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,5,2))
|
||||
.use_new_eh_code = 1,
|
||||
#endif
|
||||
};
|
||||
|
||||
static nsp_hw_data nsp_data_base; /* attach <-> detect glue */
|
||||
@ -1313,11 +1304,7 @@ static struct Scsi_Host *nsp_detect(struct scsi_host_template *sht)
|
||||
nsp_hw_data *data_b = &nsp_data_base, *data;
|
||||
|
||||
nsp_dbg(NSP_DEBUG_INIT, "this_id=%d", sht->this_id);
|
||||
#if (LINUX_VERSION_CODE > KERNEL_VERSION(2,5,73))
|
||||
host = scsi_host_alloc(&nsp_driver_template, sizeof(nsp_hw_data));
|
||||
#else
|
||||
host = scsi_register(sht, sizeof(nsp_hw_data));
|
||||
#endif
|
||||
if (host == NULL) {
|
||||
nsp_dbg(NSP_DEBUG_INIT, "host failed");
|
||||
return NULL;
|
||||
@ -1354,37 +1341,6 @@ static struct Scsi_Host *nsp_detect(struct scsi_host_template *sht)
|
||||
return host; /* detect done. */
|
||||
}
|
||||
|
||||
#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,5,0))
|
||||
static int nsp_detect_old(struct scsi_host_template *sht)
|
||||
{
|
||||
if (nsp_detect(sht) == NULL) {
|
||||
return 0;
|
||||
} else {
|
||||
//MOD_INC_USE_COUNT;
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
static int nsp_release_old(struct Scsi_Host *shpnt)
|
||||
{
|
||||
//nsp_hw_data *data = (nsp_hw_data *)shpnt->hostdata;
|
||||
|
||||
/* PCMCIA Card Service dose same things below. */
|
||||
/* So we do nothing. */
|
||||
//if (shpnt->irq) {
|
||||
// free_irq(shpnt->irq, data->ScsiInfo);
|
||||
//}
|
||||
//if (shpnt->io_port) {
|
||||
// release_region(shpnt->io_port, shpnt->n_io_port);
|
||||
//}
|
||||
|
||||
//MOD_DEC_USE_COUNT;
|
||||
|
||||
return 0;
|
||||
}
|
||||
#endif
|
||||
|
||||
/*----------------------------------------------------------------*/
|
||||
/* return info string */
|
||||
/*----------------------------------------------------------------*/
|
||||
@ -1403,19 +1359,9 @@ static const char *nsp_info(struct Scsi_Host *shpnt)
|
||||
nsp_dbg(NSP_DEBUG_PROC, "buffer=0x%p pos=0x%p length=%d %d\n", buffer, pos, length, length - (pos - buffer));\
|
||||
} \
|
||||
} while(0)
|
||||
static int
|
||||
nsp_proc_info(
|
||||
#if (LINUX_VERSION_CODE > KERNEL_VERSION(2,5,73))
|
||||
struct Scsi_Host *host,
|
||||
#endif
|
||||
char *buffer,
|
||||
char **start,
|
||||
off_t offset,
|
||||
int length,
|
||||
#if !(LINUX_VERSION_CODE > KERNEL_VERSION(2,5,73))
|
||||
int hostno,
|
||||
#endif
|
||||
int inout)
|
||||
|
||||
static int nsp_proc_info(struct Scsi_Host *host, char *buffer, char **start,
|
||||
off_t offset, int length, int inout)
|
||||
{
|
||||
int id;
|
||||
char *pos = buffer;
|
||||
@ -1423,24 +1369,13 @@ nsp_proc_info(
|
||||
int speed;
|
||||
unsigned long flags;
|
||||
nsp_hw_data *data;
|
||||
#if !(LINUX_VERSION_CODE > KERNEL_VERSION(2,5,73))
|
||||
struct Scsi_Host *host;
|
||||
#else
|
||||
int hostno;
|
||||
#endif
|
||||
|
||||
if (inout) {
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
#if (LINUX_VERSION_CODE > KERNEL_VERSION(2,5,73))
|
||||
hostno = host->host_no;
|
||||
#else
|
||||
/* search this HBA host */
|
||||
host = scsi_host_hn_get(hostno);
|
||||
if (host == NULL) {
|
||||
return -ESRCH;
|
||||
}
|
||||
#endif
|
||||
data = (nsp_hw_data *)host->hostdata;
|
||||
|
||||
|
||||
@ -1675,10 +1610,6 @@ static int nsp_cs_config(struct pcmcia_device *link)
|
||||
cistpl_cftable_entry_t dflt = { 0 };
|
||||
struct Scsi_Host *host;
|
||||
nsp_hw_data *data = &nsp_data_base;
|
||||
#if !(LINUX_VERSION_CODE >= KERNEL_VERSION(2,5,74))
|
||||
struct scsi_device *dev;
|
||||
dev_node_t **tail, *node;
|
||||
#endif
|
||||
|
||||
nsp_dbg(NSP_DEBUG_INIT, "in");
|
||||
|
||||
@ -1811,17 +1742,7 @@ static int nsp_cs_config(struct pcmcia_device *link)
|
||||
goto cs_failed;
|
||||
}
|
||||
|
||||
#if (LINUX_VERSION_CODE > KERNEL_VERSION(2,5,2))
|
||||
host = nsp_detect(&nsp_driver_template);
|
||||
#else
|
||||
scsi_register_host(&nsp_driver_template);
|
||||
for (host = scsi_host_get_next(NULL); host != NULL;
|
||||
host = scsi_host_get_next(host)) {
|
||||
if (host->hostt == &nsp_driver_template) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
if (host == NULL) {
|
||||
nsp_dbg(NSP_DEBUG_INIT, "detect failed");
|
||||
@ -1829,7 +1750,6 @@ static int nsp_cs_config(struct pcmcia_device *link)
|
||||
}
|
||||
|
||||
|
||||
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,5,74))
|
||||
ret = scsi_add_host (host, NULL);
|
||||
if (ret)
|
||||
goto cs_failed;
|
||||
@ -1840,52 +1760,6 @@ static int nsp_cs_config(struct pcmcia_device *link)
|
||||
link->dev_node = &info->node;
|
||||
info->host = host;
|
||||
|
||||
#else
|
||||
nsp_dbg(NSP_DEBUG_INIT, "GET_SCSI_INFO");
|
||||
tail = &link->dev_node;
|
||||
info->ndev = 0;
|
||||
|
||||
nsp_dbg(NSP_DEBUG_INIT, "host=0x%p", host);
|
||||
|
||||
for (dev = host->host_queue; dev != NULL; dev = dev->next) {
|
||||
unsigned long id;
|
||||
id = (dev->id & 0x0f) + ((dev->lun & 0x0f) << 4) +
|
||||
((dev->channel & 0x0f) << 8) +
|
||||
((dev->host->host_no & 0x0f) << 12);
|
||||
node = &info->node[info->ndev];
|
||||
node->minor = 0;
|
||||
switch (dev->type) {
|
||||
case TYPE_TAPE:
|
||||
node->major = SCSI_TAPE_MAJOR;
|
||||
snprintf(node->dev_name, sizeof(node->dev_name), "st#%04lx", id);
|
||||
break;
|
||||
case TYPE_DISK:
|
||||
case TYPE_MOD:
|
||||
node->major = SCSI_DISK0_MAJOR;
|
||||
snprintf(node->dev_name, sizeof(node->dev_name), "sd#%04lx", id);
|
||||
break;
|
||||
case TYPE_ROM:
|
||||
case TYPE_WORM:
|
||||
node->major = SCSI_CDROM_MAJOR;
|
||||
snprintf(node->dev_name, sizeof(node->dev_name), "sr#%04lx", id);
|
||||
break;
|
||||
default:
|
||||
node->major = SCSI_GENERIC_MAJOR;
|
||||
snprintf(node->dev_name, sizeof(node->dev_name), "sg#%04lx", id);
|
||||
break;
|
||||
}
|
||||
*tail = node; tail = &node->next;
|
||||
info->ndev++;
|
||||
info->host = dev->host;
|
||||
}
|
||||
|
||||
*tail = NULL;
|
||||
if (info->ndev == 0) {
|
||||
nsp_msg(KERN_INFO, "no SCSI devices found");
|
||||
}
|
||||
nsp_dbg(NSP_DEBUG_INIT, "host=0x%p", host);
|
||||
#endif
|
||||
|
||||
/* Finally, report what we've done */
|
||||
printk(KERN_INFO "nsp_cs: index 0x%02x: ",
|
||||
link->conf.ConfigIndex);
|
||||
@ -1938,13 +1812,9 @@ static void nsp_cs_release(struct pcmcia_device *link)
|
||||
nsp_dbg(NSP_DEBUG_INIT, "link=0x%p", link);
|
||||
|
||||
/* Unlink the device chain */
|
||||
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,5,2))
|
||||
if (info->host != NULL) {
|
||||
scsi_remove_host(info->host);
|
||||
}
|
||||
#else
|
||||
scsi_unregister_host(&nsp_driver_template);
|
||||
#endif
|
||||
link->dev_node = NULL;
|
||||
|
||||
if (link->win) {
|
||||
@ -1954,11 +1824,9 @@ static void nsp_cs_release(struct pcmcia_device *link)
|
||||
}
|
||||
pcmcia_disable_device(link);
|
||||
|
||||
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,5,2))
|
||||
if (info->host != NULL) {
|
||||
scsi_host_put(info->host);
|
||||
}
|
||||
#endif
|
||||
} /* nsp_cs_release */
|
||||
|
||||
static int nsp_cs_suspend(struct pcmcia_device *link)
|
||||
@ -2005,7 +1873,6 @@ static int nsp_cs_resume(struct pcmcia_device *link)
|
||||
/*======================================================================*
|
||||
* module entry point
|
||||
*====================================================================*/
|
||||
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,5,68))
|
||||
static struct pcmcia_device_id nsp_cs_ids[] = {
|
||||
PCMCIA_DEVICE_PROD_ID123("IO DATA", "CBSC16 ", "1", 0x547e66dc, 0x0d63a3fd, 0x51de003a),
|
||||
PCMCIA_DEVICE_PROD_ID123("KME ", "SCSI-CARD-001", "1", 0x534c02bc, 0x52008408, 0x51de003a),
|
||||
@ -2029,28 +1896,12 @@ static struct pcmcia_driver nsp_driver = {
|
||||
.suspend = nsp_cs_suspend,
|
||||
.resume = nsp_cs_resume,
|
||||
};
|
||||
#endif
|
||||
|
||||
static int __init nsp_cs_init(void)
|
||||
{
|
||||
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,5,68))
|
||||
nsp_msg(KERN_INFO, "loading...");
|
||||
|
||||
return pcmcia_register_driver(&nsp_driver);
|
||||
#else
|
||||
servinfo_t serv;
|
||||
|
||||
nsp_msg(KERN_INFO, "loading...");
|
||||
pcmcia_get_card_services_info(&serv);
|
||||
if (serv.Revision != CS_RELEASE_CODE) {
|
||||
nsp_msg(KERN_DEBUG, "Card Services release does not match!");
|
||||
return -EINVAL;
|
||||
}
|
||||
register_pcmcia_driver(&dev_info, &nsp_cs_attach, &nsp_cs_detach);
|
||||
|
||||
nsp_dbg(NSP_DEBUG_INIT, "out");
|
||||
return 0;
|
||||
#endif
|
||||
}
|
||||
|
||||
static void __exit nsp_cs_exit(void)
|
||||
|
@ -10,8 +10,6 @@
|
||||
|
||||
=========================================================*/
|
||||
|
||||
/* $Id: nsp_cs.h,v 1.19 2003/08/18 11:09:19 elca Exp $ */
|
||||
|
||||
#ifndef __nsp_cs__
|
||||
#define __nsp_cs__
|
||||
|
||||
@ -227,13 +225,7 @@
|
||||
typedef struct scsi_info_t {
|
||||
struct pcmcia_device *p_dev;
|
||||
struct Scsi_Host *host;
|
||||
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,5,74))
|
||||
dev_node_t node;
|
||||
#else
|
||||
int ndev;
|
||||
dev_node_t node[8];
|
||||
struct bus_operations *bus;
|
||||
#endif
|
||||
int stop;
|
||||
} scsi_info_t;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user