H H Software SCSI & RAID Devices Driver Download For Windows



Safe, Trusted and Spyware Free. All software on Soft32.com has been tested to ensure it's 100% free of spyware, viruses, and other malware. ./ #ifndef SCSISCSIH #define SCSISCSIH 1 #include h /. SCSI opcodes./ #define TESTUNITREADY 0x00 #define REZEROUNIT 0x01 #define REQUESTSENSE 0x03 #define FORMATUNIT 0x04 #define READBLOCKLIMITS 0x05 #define REASSIGNBLOCKS 0x07 #define READ6 0x08 #define WRITE6 0x0a #define SEEK6 0x0b #define READREVERSE 0x0f #. Oct 03, 2009 # scsiid -gus /block/sda. Where,-s: Generate an id for the sysfs-device-a: Always print information (model, vendor strings) about the device even if it does not support VPD pages.-g: Treat the device as white listed. The -g option must be specified on the command line or in the scsiid configuration file for scsiid to gener ate any output.

  1. H H Software Scsi & Raid Devices Driver Download For Windows 8.1
  2. Nch Software
  3. H H Software Scsi & Raid Devices Driver Download For Windows Xp

Warning: That file was not part of the compilation database. It may have many parsing errors.

H H Software Scsi & Raid Devices Driver Download For Windows 8.1

1/* Copyright (C) 1997-2019 Free Software Foundation, Inc.
2 This file is part of the GNU C Library.
3
4 The GNU C Library is free software; you can redistribute it and/or
5 modify it under the terms of the GNU Lesser General Public
6 License as published by the Free Software Foundation; either
7 version 2.1 of the License, or (at your option) any later version.
8
9 The GNU C Library is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 Lesser General Public License for more details.
13
14 You should have received a copy of the GNU Lesser General Public
15 License along with the GNU C Library; if not, see
16 <http://www.gnu.org/licenses/>. */
17
18/*
19 History:
20 Started: Aug 9 by Lawrence Foard (entropy@world.std.com), to allow user
21 process control of SCSI devices.
22 Development Sponsored by Killy Corp. NY NY
23*/
24
25#ifndef_SCSI_SG_H
26#define _SCSI_SG_H 1
27
28#include <features.h>
29#define __need_size_t
30#include <stddef.h>
31
32
33/* New interface introduced in the 3.x SG drivers follows */
34
35/* Same structure as used by readv() Linux system call. It defines one
36 scatter-gather element. */
37typedefstructsg_iovec
38{
39void * iov_base; /* Starting address */
40size_tiov_len; /* Length in bytes */
41} sg_iovec_t;
42
43
44typedefstructsg_io_hdr
45{
46intinterface_id; /* [i] 'S' for SCSI generic (required) */
47intdxfer_direction; /* [i] data transfer direction */
48unsignedcharcmd_len; /* [i] SCSI command length ( <= 16 bytes) */
49unsignedcharmx_sb_len; /* [i] max length to write to sbp */
50unsignedshortintiovec_count; /* [i] 0 implies no scatter gather */
51unsignedintdxfer_len; /* [i] byte count of data transfer */
52void * dxferp; /* [i], [*io] points to data transfer memory
53 or scatter gather list */
54unsignedchar * cmdp; /* [i], [*i] points to command to perform */
55unsignedchar * sbp; /* [i], [*o] points to sense_buffer memory */
56unsignedinttimeout; /* [i] MAX_UINT->no timeout (unit: millisec) */
57unsignedintflags; /* [i] 0 -> default, see SG_FLAG... */
58intpack_id; /* [i->o] unused internally (normally) */
59void * usr_ptr; /* [i->o] unused internally */
60unsignedcharstatus; /* [o] scsi status */
61unsignedcharmasked_status;/* [o] shifted, masked scsi status */
62unsignedcharmsg_status; /* [o] messaging level data (optional) */
63unsignedcharsb_len_wr; /* [o] byte count actually written to sbp */
64unsignedshortinthost_status; /* [o] errors from host adapter */
65unsignedshortintdriver_status;/* [o] errors from software driver */
66intresid; /* [o] dxfer_len - actual_transferred */
67unsignedintduration; /* [o] time taken by cmd (unit: millisec) */
68unsignedintinfo; /* [o] auxiliary information */
69} sg_io_hdr_t;
70
71
72/* Use negative values to flag difference from original sg_header structure. */
73#define SG_DXFER_NONE -1 /* e.g. a SCSI Test Unit Ready command */
74#define SG_DXFER_TO_DEV -2 /* e.g. a SCSI WRITE command */
75#define SG_DXFER_FROM_DEV -3 /* e.g. a SCSI READ command */
76#define SG_DXFER_TO_FROM_DEV -4 /* treated like SG_DXFER_FROM_DEV with the
77 additional property than during indirect
78 IO the user buffer is copied into the
79 kernel buffers before the transfer */
80
81
82/* following flag values can be 'or'-ed together */
83#define SG_FLAG_DIRECT_IO 1 /* default is indirect IO */
84#define SG_FLAG_LUN_INHIBIT 2 /* default is to put device's lun into */
85/* the 2nd byte of SCSI command */
86#define SG_FLAG_NO_DXFER 0x10000 /* no transfer of kernel buffers to/from */
87/* user space (debug indirect IO) */
88
89/* The following 'info' values are 'or'-ed together. */
90#define SG_INFO_OK_MASK 0x1
91#define SG_INFO_OK 0x0 /* no sense, host nor driver 'noise' */
92#define SG_INFO_CHECK 0x1 /* something abnormal happened */
93
94#define SG_INFO_DIRECT_IO_MASK 0x6
95#define SG_INFO_INDIRECT_IO 0x0 /* data xfer via kernel buffers (or no xfer) */
96#define SG_INFO_DIRECT_IO 0x2 /* direct IO requested and performed */
97#define SG_INFO_MIXED_IO 0x4 /* part direct, part indirect IO */
98
99
100/* Request information about a specific SG device, used by
101 SG_GET_SCSI_ID ioctl (). */
102structsg_scsi_id {
103/* Host number as in 'scsi<n>' where 'n' is one of 0, 1, 2 etc. */
104inthost_no;
105intchannel;
106/* SCSI id of target device. */
107intscsi_id;
108intlun;
109/* TYPE_... defined in <scsi/scsi.h>. */
110intscsi_type;
111/* Host (adapter) maximum commands per lun. */
112shortinth_cmd_per_lun;
113/* Device (or adapter) maximum queue length. */
114shortintd_queue_depth;
115/* Unused, set to 0 for now. */
116intunused[2];
117};
118
119/* Used by SG_GET_REQUEST_TABLE ioctl(). */
120typedefstructsg_req_info {
121charreq_state; /* 0 -> not used, 1 -> written, 2 -> ready to read */
122charorphan; /* 0 -> normal request, 1 -> from interruped SG_IO */
123charsg_io_owned; /* 0 -> complete with read(), 1 -> owned by SG_IO */
124charproblem; /* 0 -> no problem detected, 1 -> error to report */
125intpack_id; /* pack_id associated with request */
126void * usr_ptr; /* user provided pointer (in new interface) */
127unsignedintduration; /* millisecs elapsed since written (req_state1)
128 or request duration (req_state2) */
129intunused;
130} sg_req_info_t;
131
132
133/* IOCTLs: Those ioctls that are relevant to the SG 3.x drivers follow.
134 [Those that only apply to the SG 2.x drivers are at the end of the file.]
135 (_GET_s yield result via 'int *' 3rd argument unless otherwise indicated) */
136
137#define SG_EMULATED_HOST 0x2203 /* true for emulated host adapter (ATAPI) */
138
139/* Used to configure SCSI command transformation layer for ATAPI devices */
140/* Only supported by the ide-scsi driver */
141#define SG_SET_TRANSFORM 0x2204 /* N.B. 3rd arg is not pointer but value: */
142/* 3rd arg = 0 to disable transform, 1 to enable it */
143#define SG_GET_TRANSFORM 0x2205
144
145#define SG_SET_RESERVED_SIZE 0x2275 /* request a new reserved buffer size */
146#define SG_GET_RESERVED_SIZE 0x2272 /* actual size of reserved buffer */
147
148/* The following ioctl has a 'sg_scsi_id_t *' object as its 3rd argument. */
149#define SG_GET_SCSI_ID 0x2276 /* Yields fd's bus, chan, dev, lun + type */
150/* SCSI id information can also be obtained from SCSI_IOCTL_GET_IDLUN */
151
152/* Override host setting and always DMA using low memory ( <16MB on i386) */
153#define SG_SET_FORCE_LOW_DMA 0x2279 /* 0-> use adapter setting, 1-> force */
154#define SG_GET_LOW_DMA 0x227a /* 0-> use all ram for dma; 1-> low dma ram */
155
156/* When SG_SET_FORCE_PACK_ID set to 1, pack_id is input to read() which
157 tries to fetch a packet with a matching pack_id, waits, or returns EAGAIN.
158 If pack_id is -1 then read oldest waiting. When ...FORCE_PACK_ID set to 0
159 then pack_id ignored by read() and oldest readable fetched. */
160#define SG_SET_FORCE_PACK_ID 0x227b
161#define SG_GET_PACK_ID 0x227c /* Yields oldest readable pack_id (or -1) */
162
163#define SG_GET_NUM_WAITING 0x227d /* Number of commands awaiting read() */
164
165/* Yields max scatter gather tablesize allowed by current host adapter */
166#define SG_GET_SG_TABLESIZE 0x227F /* 0 implies can't do scatter gather */
167
168#define SG_GET_VERSION_NUM 0x2282 /* Example: version 2.1.34 yields 20134 */
169
170/* Returns -EBUSY if occupied. 3rd argument pointer to int (see next) */
171#define SG_SCSI_RESET 0x2284
172/* Associated values that can be given to SG_SCSI_RESET follow */
173#define SG_SCSI_RESET_NOTHING 0
174#define SG_SCSI_RESET_DEVICE 1
175#define SG_SCSI_RESET_BUS 2
176#define SG_SCSI_RESET_HOST 3
177
178/* synchronous SCSI command ioctl, (only in version 3 interface) */
179#define SG_IO 0x2285 /* similar effect as write() followed by read() */
180
181#define SG_GET_REQUEST_TABLE 0x2286 /* yields table of active requests */
182
183/* How to treat EINTR during SG_IO ioctl(), only in SG 3.x series */
184#define SG_SET_KEEP_ORPHAN 0x2287 /* 1 -> hold for read(), 0 -> drop (def) */
185#define SG_GET_KEEP_ORPHAN 0x2288
186
187
188#define SG_SCATTER_SZ (8 * 4096) /* PAGE_SIZE not available to user */
189/* Largest size (in bytes) a single scatter-gather list element can have.
190 The value must be a power of 2 and <= (PAGE_SIZE * 32) [131072 bytes on
191 i386]. The minimum value is PAGE_SIZE. If scatter-gather not supported
192 by adapter then this value is the largest data block that can be
193 read/written by a single scsi command. The user can find the value of
194 PAGE_SIZE by calling getpagesize() defined in unistd.h . */
195
196#define SG_DEFAULT_RETRIES 1
197
198/* Defaults, commented if they differ from original sg driver */
199#define SG_DEF_FORCE_LOW_DMA 0 /* was 1 -> memory below 16MB on i386 */
200#define SG_DEF_FORCE_PACK_ID 0
201#define SG_DEF_KEEP_ORPHAN 0
202#define SG_DEF_RESERVED_SIZE SG_SCATTER_SZ /* load time option */
203
204/* maximum outstanding requests, write() yields EDOM if exceeded */
205#define SG_MAX_QUEUE 16
206
207#define SG_BIG_BUFF SG_DEF_RESERVED_SIZE /* for backward compatibility */
208
209/* Alternate style type names, '..._t' variants preferred */
210typedefstructsg_io_hdrSg_io_hdr;
211typedefstructsg_io_vecSg_io_vec;
212typedefstructsg_scsi_idSg_scsi_id;
213typedefstructsg_req_infoSg_req_info;
214
215
216/* vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv */
217/* The older SG interface based on the 'sg_header' structure follows. */
218/* ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ */
219
220#define SG_MAX_SENSE 16 /* this only applies to the sg_header interface */
221
222structsg_header
223 {
224/* Length of incoming packet (including header). */
225intpack_len;
226/* Maximal length of expected reply. */
227intreply_len;
228/* Id number of packet. */
229intpack_id;
230/* 0ok, otherwise error number. */
231intresult;
232/* Force 12 byte command length for group 6 & 7 commands. */
233unsignedinttwelve_byte:1;
234/* SCSI status from target. */
235unsignedinttarget_status:5;
236/* Host status (see 'DID' codes). */
237unsignedinthost_status:8;
238/* Driver status+suggestion. */
239unsignedintdriver_status:8;
240/* Unused. */
241unsignedintother_flags:10;
242/* Output in 3 cases:
243 when target_status is CHECK_CONDITION or
244 when target_status is COMMAND_TERMINATED or
245 when (driver_status & DRIVER_SENSE) is true. */
246unsignedcharsense_buffer[SG_MAX_SENSE];
247 };
248
249
250/* IOCTLs: The following are not required (or ignored) when the sg_io_hdr_t
251 interface is used. They are kept for backward compatibility with
252 the original and version 2 drivers. */
253
254#define SG_SET_TIMEOUT 0x2201 /* Set timeout; *(int *)argtimeout. */
255#define SG_GET_TIMEOUT 0x2202 /* Get timeout; return timeout. */
256
257/* Get/set command queuing state per fd (default is SG_DEF_COMMAND_Q). */
258#define SG_GET_COMMAND_Q 0x2270 /* Yields 0 (queuing off) or 1 (on). */
259#define SG_SET_COMMAND_Q 0x2271 /* Change queuing state with 0 or 1. */
260
261/* Turn on error sense trace (1..8), dump this device to log/console (9)
262 or dump all sg device states ( >9 ) to log/console. */
263#define SG_SET_DEBUG 0x227e /* 0 -> turn off debug */
264
265#define SG_NEXT_CMD_LEN 0x2283 /* Override SCSI command length with given
266 number on the next write() on this file
267 descriptor. */
268
269/* Defaults, commented if they differ from original sg driver */
270#define SG_DEFAULT_TIMEOUT (60*HZ) /* HZ 'jiffies in 1 second' */
271#define SG_DEF_COMMAND_Q 0 /* command queuing is always on when
272 the new interface is used */
273#define SG_DEF_UNDERRUN_FLAG 0
274
275
276#endif /* scsi/sg.h */
277

Nch Software

/. SCSI general interface description. Largely written by Julian Elischer (julian@tfs.com). for TRW Financial Systems. TRW Financial Systems, in accordance with their agreement with Carnegie. Mellon University, makes this software available to CMU to distribute. or use in any manner that they see fit as long as this message is kept with. the software.

H h software scsi & raid devices driver download for windows 10

H H Software Scsi & Raid Devices Driver Download For Windows Xp

Warning: That file was not part of the compilation database. It may have many parsing errors.