1
2
3
4
5
6
7
8
9
10
11
12
13 #ifndef _ULTRASTOR_H
14 #define _ULTRASTOR_H
15
16 int ultrastor_detect(int);
17 const char *ultrastor_info(void);
18 int ultrastor_queuecommand(Scsi_Cmnd *, void (*done)(Scsi_Cmnd *));
19 int ultrastor_abort(Scsi_Cmnd *);
20 int ultrastor_reset(Scsi_Cmnd *);
21 int ultrastor_biosparam(Disk *, int, int *);
22
23 #define ULTRASTOR_14F_MAX_SG 16
24 #define ULTRASTOR_24F_MAX_SG 33
25
26 #define ULTRASTOR_MAX_CMDS_PER_LUN 5
27 #define ULTRASTOR_MAX_CMDS 16
28
29 #define ULTRASTOR_24F_PORT 0xC80
30
31
32 #define ULTRASTOR_14F \
33 { "UltraStor 14F/24F/34F", ultrastor_detect, ultrastor_info, 0, \
34 ultrastor_queuecommand, ultrastor_abort, ultrastor_reset, \
35 0, ultrastor_biosparam, ULTRASTOR_MAX_CMDS, 0, \
36 ULTRASTOR_14F_MAX_SG, ULTRASTOR_MAX_CMDS_PER_LUN, 0, 1, \
37 ENABLE_CLUSTERING }
38
39
40 #ifdef ULTRASTOR_PRIVATE
41
42 #define UD_ABORT 0x0001
43 #define UD_COMMAND 0x0002
44 #define UD_DETECT 0x0004
45 #define UD_INTERRUPT 0x0008
46 #define UD_RESET 0x0010
47 #define UD_MULTI_CMD 0x0020
48 #define UD_CSIR 0x0040
49 #define UD_ERROR 0x0080
50
51
52
53
54 #define US14F_PRODUCT_ID_0 0x56
55 #define US14F_PRODUCT_ID_1 0x40
56
57 #define US24F_PRODUCT_ID_0 0x56
58 #define US24F_PRODUCT_ID_1 0x63
59 #define US24F_PRODUCT_ID_2 0x02
60
61
62 #define U14F 0
63 #define U34F 1
64
65
66
67
68 #define OP_HOST_ADAPTER 0x1
69 #define OP_SCSI 0x2
70 #define OP_RESET 0x4
71
72
73 #define DTD_SCSI 0x0
74 #define DTD_IN 0x1
75 #define DTD_OUT 0x2
76 #define DTD_NONE 0x3
77
78
79 #define HA_CMD_INQUIRY 0x1
80 #define HA_CMD_SELF_DIAG 0x2
81 #define HA_CMD_READ_BUFF 0x3
82 #define HA_CMD_WRITE_BUFF 0x4
83
84 #endif
85
86 #endif