Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 408bb25b authored by Al Viro's avatar Al Viro
Browse files

switch wd33c93 to ->show_info()



Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
parent cab29b99
Loading
Loading
Loading
Loading
+2 −1
Original line number Original line Diff line number Diff line
@@ -166,7 +166,8 @@ static int a2091_bus_reset(struct scsi_cmnd *cmd)
static struct scsi_host_template a2091_scsi_template = {
static struct scsi_host_template a2091_scsi_template = {
	.module			= THIS_MODULE,
	.module			= THIS_MODULE,
	.name			= "Commodore A2091/A590 SCSI",
	.name			= "Commodore A2091/A590 SCSI",
	.proc_info		= wd33c93_proc_info,
	.show_info		= wd33c93_show_info,
	.write_info		= wd33c93_write_info,
	.proc_name		= "A2901",
	.proc_name		= "A2901",
	.queuecommand		= wd33c93_queuecommand,
	.queuecommand		= wd33c93_queuecommand,
	.eh_abort_handler	= wd33c93_abort,
	.eh_abort_handler	= wd33c93_abort,
+2 −1
Original line number Original line Diff line number Diff line
@@ -181,7 +181,8 @@ static int a3000_bus_reset(struct scsi_cmnd *cmd)
static struct scsi_host_template amiga_a3000_scsi_template = {
static struct scsi_host_template amiga_a3000_scsi_template = {
	.module			= THIS_MODULE,
	.module			= THIS_MODULE,
	.name			= "Amiga 3000 built-in SCSI",
	.name			= "Amiga 3000 built-in SCSI",
	.proc_info		= wd33c93_proc_info,
	.show_info		= wd33c93_show_info,
	.write_info		= wd33c93_write_info,
	.proc_name		= "A3000",
	.proc_name		= "A3000",
	.queuecommand		= wd33c93_queuecommand,
	.queuecommand		= wd33c93_queuecommand,
	.eh_abort_handler	= wd33c93_abort,
	.eh_abort_handler	= wd33c93_abort,
+2 −1
Original line number Original line Diff line number Diff line
@@ -191,7 +191,8 @@ static int gvp11_bus_reset(struct scsi_cmnd *cmd)
static struct scsi_host_template gvp11_scsi_template = {
static struct scsi_host_template gvp11_scsi_template = {
	.module			= THIS_MODULE,
	.module			= THIS_MODULE,
	.name			= "GVP Series II SCSI",
	.name			= "GVP Series II SCSI",
	.proc_info		= wd33c93_proc_info,
	.show_info		= wd33c93_show_info,
	.write_info		= wd33c93_write_info,
	.proc_name		= "GVP11",
	.proc_name		= "GVP11",
	.queuecommand		= wd33c93_queuecommand,
	.queuecommand		= wd33c93_queuecommand,
	.eh_abort_handler	= wd33c93_abort,
	.eh_abort_handler	= wd33c93_abort,
+2 −1
Original line number Original line Diff line number Diff line
@@ -76,7 +76,8 @@ int mvme147_detect(struct scsi_host_template *tpnt)
	called++;
	called++;


	tpnt->proc_name = "MVME147";
	tpnt->proc_name = "MVME147";
	tpnt->proc_info = &wd33c93_proc_info;
	tpnt->show_info = wd33c93_show_info,
	tpnt->write_info = wd33c93_write_info,


	instance = scsi_register(tpnt, sizeof(struct WD33C93_hostdata));
	instance = scsi_register(tpnt, sizeof(struct WD33C93_hostdata));
	if (!instance)
	if (!instance)
+84 −110
Original line number Original line Diff line number Diff line
@@ -2054,22 +2054,16 @@ wd33c93_init(struct Scsi_Host *instance, const wd33c93_regs regs,
	printk("           Version %s - %s\n", WD33C93_VERSION, WD33C93_DATE);
	printk("           Version %s - %s\n", WD33C93_VERSION, WD33C93_DATE);
}
}


int
int wd33c93_write_info(struct Scsi_Host *instance, char *buf, int len)
wd33c93_proc_info(struct Scsi_Host *instance, char *buf, char **start, off_t off, int len, int in)
{
{

#ifdef PROC_INTERFACE
#ifdef PROC_INTERFACE

	char *bp;
	char *bp;
	char tbuf[128];
	struct WD33C93_hostdata *hd;
	struct WD33C93_hostdata *hd;
	struct scsi_cmnd *cmd;
	int x;
	int x;
	static int stop = 0;


	hd = (struct WD33C93_hostdata *) instance->hostdata;
	hd = (struct WD33C93_hostdata *) instance->hostdata;


/* If 'in' is TRUE we need to _read_ the proc file. We accept the following
/* We accept the following
 * keywords (same format as command-line, but arguments are not optional):
 * keywords (same format as command-line, but arguments are not optional):
 *    debug
 *    debug
 *    disconnect
 *    disconnect
@@ -2083,7 +2077,6 @@ wd33c93_proc_info(struct Scsi_Host *instance, char *buf, char **start, off_t off
 *    nosync
 *    nosync
 */
 */


	if (in) {
	buf[len] = '\0';
	buf[len] = '\0';
	for (bp = buf; *bp; ) {
	for (bp = buf; *bp; ) {
		while (',' == *bp || ' ' == *bp)
		while (',' == *bp || ' ' == *bp)
@@ -2125,103 +2118,83 @@ wd33c93_proc_info(struct Scsi_Host *instance, char *buf, char **start, off_t off
		}
		}
	}
	}
	return len;
	return len;
#else
	return 0;
#endif
}
}


int
wd33c93_show_info(struct seq_file *m, struct Scsi_Host *instance)
{
#ifdef PROC_INTERFACE
	struct WD33C93_hostdata *hd;
	struct scsi_cmnd *cmd;
	int x;

	hd = (struct WD33C93_hostdata *) instance->hostdata;

	spin_lock_irq(&hd->lock);
	spin_lock_irq(&hd->lock);
	bp = buf;
	if (hd->proc & PR_VERSION)
	*bp = '\0';
		seq_printf(m, "\nVersion %s - %s.",
	if (hd->proc & PR_VERSION) {
		sprintf(tbuf, "\nVersion %s - %s.",
			WD33C93_VERSION, WD33C93_DATE);
			WD33C93_VERSION, WD33C93_DATE);
		strcat(bp, tbuf);

	}
	if (hd->proc & PR_INFO) {
	if (hd->proc & PR_INFO) {
		sprintf(tbuf, "\nclock_freq=%02x no_sync=%02x no_dma=%d"
		seq_printf(m, "\nclock_freq=%02x no_sync=%02x no_dma=%d"
			" dma_mode=%02x fast=%d",
			" dma_mode=%02x fast=%d",
			hd->clock_freq, hd->no_sync, hd->no_dma, hd->dma_mode, hd->fast);
			hd->clock_freq, hd->no_sync, hd->no_dma, hd->dma_mode, hd->fast);
		strcat(bp, tbuf);
		seq_printf(m, "\nsync_xfer[] =       ");
		strcat(bp, "\nsync_xfer[] =       ");
		for (x = 0; x < 7; x++)
		for (x = 0; x < 7; x++) {
			seq_printf(m, "\t%02x", hd->sync_xfer[x]);
			sprintf(tbuf, "\t%02x", hd->sync_xfer[x]);
		seq_printf(m, "\nsync_stat[] =       ");
			strcat(bp, tbuf);
		for (x = 0; x < 7; x++)
		}
			seq_printf(m, "\t%02x", hd->sync_stat[x]);
		strcat(bp, "\nsync_stat[] =       ");
		for (x = 0; x < 7; x++) {
			sprintf(tbuf, "\t%02x", hd->sync_stat[x]);
			strcat(bp, tbuf);
		}
	}
	}
#ifdef PROC_STATISTICS
#ifdef PROC_STATISTICS
	if (hd->proc & PR_STATISTICS) {
	if (hd->proc & PR_STATISTICS) {
		strcat(bp, "\ncommands issued:    ");
		seq_printf(m, "\ncommands issued:    ");
		for (x = 0; x < 7; x++) {
		for (x = 0; x < 7; x++)
			sprintf(tbuf, "\t%ld", hd->cmd_cnt[x]);
			seq_printf(m, "\t%ld", hd->cmd_cnt[x]);
			strcat(bp, tbuf);
		seq_printf(m, "\ndisconnects allowed:");
		}
		for (x = 0; x < 7; x++)
		strcat(bp, "\ndisconnects allowed:");
			seq_printf(m, "\t%ld", hd->disc_allowed_cnt[x]);
		for (x = 0; x < 7; x++) {
		seq_printf(m, "\ndisconnects done:   ");
			sprintf(tbuf, "\t%ld", hd->disc_allowed_cnt[x]);
		for (x = 0; x < 7; x++)
			strcat(bp, tbuf);
			seq_printf(m, "\t%ld", hd->disc_done_cnt[x]);
		}
		seq_printf(m,
		strcat(bp, "\ndisconnects done:   ");
		for (x = 0; x < 7; x++) {
			sprintf(tbuf, "\t%ld", hd->disc_done_cnt[x]);
			strcat(bp, tbuf);
		}
		sprintf(tbuf,
			"\ninterrupts: %ld, DATA_PHASE ints: %ld DMA, %ld PIO",
			"\ninterrupts: %ld, DATA_PHASE ints: %ld DMA, %ld PIO",
			hd->int_cnt, hd->dma_cnt, hd->pio_cnt);
			hd->int_cnt, hd->dma_cnt, hd->pio_cnt);
		strcat(bp, tbuf);
	}
	}
#endif
#endif
	if (hd->proc & PR_CONNECTED) {
	if (hd->proc & PR_CONNECTED) {
		strcat(bp, "\nconnected:     ");
		seq_printf(m, "\nconnected:     ");
		if (hd->connected) {
		if (hd->connected) {
			cmd = (struct scsi_cmnd *) hd->connected;
			cmd = (struct scsi_cmnd *) hd->connected;
			sprintf(tbuf, " %d:%d(%02x)",
			seq_printf(m, " %d:%d(%02x)",
				cmd->device->id, cmd->device->lun, cmd->cmnd[0]);
				cmd->device->id, cmd->device->lun, cmd->cmnd[0]);
			strcat(bp, tbuf);
		}
		}
	}
	}
	if (hd->proc & PR_INPUTQ) {
	if (hd->proc & PR_INPUTQ) {
		strcat(bp, "\ninput_Q:       ");
		seq_printf(m, "\ninput_Q:       ");
		cmd = (struct scsi_cmnd *) hd->input_Q;
		cmd = (struct scsi_cmnd *) hd->input_Q;
		while (cmd) {
		while (cmd) {
			sprintf(tbuf, " %d:%d(%02x)",
			seq_printf(m, " %d:%d(%02x)",
				cmd->device->id, cmd->device->lun, cmd->cmnd[0]);
				cmd->device->id, cmd->device->lun, cmd->cmnd[0]);
			strcat(bp, tbuf);
			cmd = (struct scsi_cmnd *) cmd->host_scribble;
			cmd = (struct scsi_cmnd *) cmd->host_scribble;
		}
		}
	}
	}
	if (hd->proc & PR_DISCQ) {
	if (hd->proc & PR_DISCQ) {
		strcat(bp, "\ndisconnected_Q:");
		seq_printf(m, "\ndisconnected_Q:");
		cmd = (struct scsi_cmnd *) hd->disconnected_Q;
		cmd = (struct scsi_cmnd *) hd->disconnected_Q;
		while (cmd) {
		while (cmd) {
			sprintf(tbuf, " %d:%d(%02x)",
			seq_printf(m, " %d:%d(%02x)",
				cmd->device->id, cmd->device->lun, cmd->cmnd[0]);
				cmd->device->id, cmd->device->lun, cmd->cmnd[0]);
			strcat(bp, tbuf);
			cmd = (struct scsi_cmnd *) cmd->host_scribble;
			cmd = (struct scsi_cmnd *) cmd->host_scribble;
		}
		}
	}
	}
	strcat(bp, "\n");
	seq_printf(m, "\n");
	spin_unlock_irq(&hd->lock);
	spin_unlock_irq(&hd->lock);
	*start = buf;
	if (stop) {
		stop = 0;
		return 0;
	}
	if (off > 0x40000)	/* ALWAYS stop after 256k bytes have been read */
		stop = 1;
	if (hd->proc & PR_STOP)	/* stop every other time */
		stop = 1;
	return strlen(bp);

#else				/* PROC_INTERFACE */

	return 0;

#endif				/* PROC_INTERFACE */
#endif				/* PROC_INTERFACE */

	return 0;
}
}


EXPORT_SYMBOL(wd33c93_host_reset);
EXPORT_SYMBOL(wd33c93_host_reset);
@@ -2229,4 +2202,5 @@ EXPORT_SYMBOL(wd33c93_init);
EXPORT_SYMBOL(wd33c93_abort);
EXPORT_SYMBOL(wd33c93_abort);
EXPORT_SYMBOL(wd33c93_queuecommand);
EXPORT_SYMBOL(wd33c93_queuecommand);
EXPORT_SYMBOL(wd33c93_intr);
EXPORT_SYMBOL(wd33c93_intr);
EXPORT_SYMBOL(wd33c93_proc_info);
EXPORT_SYMBOL(wd33c93_show_info);
EXPORT_SYMBOL(wd33c93_write_info);
Loading