summaryrefslogtreecommitdiffstats
path: root/drivers/scsi/wd7000.h
blob: 8835e5f508d6cb43fdab6861aacd6d0657c5aece (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
#ifndef _WD7000_H

/* $Id: $
 *
 * Header file for the WD-7000 driver for Linux
 *
 * John Boyd <boyd@cis.ohio-state.edu>  Jan 1994:
 * This file has been reduced to only the definitions needed for the
 * WD7000 host structure.
 *
 */

#include <linux/types.h>
#include <linux/kdev_t.h>

int wd7000_detect(Scsi_Host_Template *);
int wd7000_command(Scsi_Cmnd *);
int wd7000_queuecommand(Scsi_Cmnd *, void (*done)(Scsi_Cmnd *));
int wd7000_abort(Scsi_Cmnd *);
int wd7000_reset(Scsi_Cmnd *, unsigned int);
int wd7000_biosparam(Disk *, kdev_t, int *);

#ifndef NULL
#define NULL 0L
#endif

/*
 *  In this version, sg_tablesize now defaults to WD7000_SG, and will
 *  be set to SG_NONE for older boards.  This is the reverse of the
 *  previous default, and was changed so that the driver-level
 *  Scsi_Host_Template would reflect the driver's support for scatter/
 *  gather.
 *
 *  Also, it has been reported that boards at Revision 6 support scatter/
 *  gather, so the new definition of an "older" board has been changed
 *  accordingly.
 */
#define WD7000_Q    16
#define WD7000_SG   16

#define WD7000 {					   \
	name:              "Western Digital WD-7000",      \
	detect:            wd7000_detect,                  \
	command:           wd7000_command,		   \
	queuecommand:      wd7000_queuecommand,		   \
	abort:             wd7000_abort,		   \
	reset:             wd7000_reset,		   \
	bios_param:        wd7000_biosparam,               \
	can_queue:         WD7000_Q,			   \
	this_id:           7,				   \
	sg_tablesize:      WD7000_SG,			   \
	cmd_per_lun:       1,				   \
	unchecked_isa_dma: 1,				   \
	use_clustering:    ENABLE_CLUSTERING}
#endif