Lines Matching refs:an

17 In some cases the SCSI transport is an external bus that already has
35 The SCSI mid level isolates an LLD from other layers such as the SCSI
60 Traditionally an LLD for the SCSI subsystem has been at least two files in
100 "struct scsi_host_template", an instance of which is passed to
103 struct scsi_host_template. Defining an instance of struct
111 All functions defined within an LLD and all data defined at file scope
112 should be static. For example the slave_alloc() function in an LLD
124 In this model an LLD controls when SCSI hosts are introduced and removed
127 will respond to a sysfs probe() callback that indicates an HBA has been
137 aware of an LLD when that LLD registers its first HBA.
139 At some later time, the LLD becomes aware of an HBA and what follows
167 When an HBA is being removed it could be as part of an orderly shutdown
188 Hot unplugging an HBA that controls a disk which is processing SCSI
189 commands on a mounted file system is an interesting situation. Reference
194 The hotplug concept may be extended to SCSI devices. Currently, when an
209 In a similar fashion, an LLD may become aware that a SCSI device has been
225 It may be useful for an LLD to keep track of struct scsi_device instances
234 little surprising] in their source code. For that file to work an
248 an LLD should not call them explicitly (since the kernel does that).
250 Here is an example of an initialization sequence when two hosts are
281 Here is an LLD shutdown sequence:
300 driver shutdown and re-initialization. It may be possible to write an LLD
326 towards the end of include/scsi/scsi_device.h . If an LLD wants to keep
363 so an LLD that is a module can access them. The kernel will
404 * bus scan when an HBA is added (i.e. scsi_scan_host()). So it
599 * Notes: If an LLD becomes aware that a scsi device (lu) has
602 * lead to the slave_destroy() callback being invoked. sdev is an
637 * originates from an unknown location. Resets originated by the
720 pointers are placed in an instance of struct scsi_host_template which
729 of a "struct scsi_host_template" instance. A pointer to such an instance
776 * Notes: an arbitrary geometry (based on READ CAPACITY) is used
825 * Notes: This is to give the LLD an opportunity to do local recovery.
951 * can also be viewed as an unsigned long.
961 * The user issues an ioctl() against an upper level driver
1034 * flagged by setting scp->result to an appropriate value,
1058 * callback is invoked (often directly from an interrupt service
1069 * the mid level queuing a command to an LLD.
1102 * Returns 0 if ok. Any other return is assumed to be an error and
1124 * has been first scanned (i.e. it responded to an
1128 * Returns 0 if ok. Any other return is assumed to be an error and
1185 SCSI commands into an LLD.
1189 if it controls several different classes of hardware (e.g. an LLD
1195 There is one struct Scsi_Host instance per host (HBA) that an LLD
1239 vendor-specific message requests. Value consists of an
1267 - >0 -> scatter gather list (actually an array) in
1275 Should only be called by an LLD if the LLD has accepted
1287 sense_buffer - an array (maximum size: SCSI_SENSE_BUFFERSIZE bytes) that
1299 resid - an LLD should set this signed integer to the requested
1302 preset to 0 so an LLD can ignore it if it cannot detect
1303 underruns (overruns should be rare). If possible an LLD
1310 do just output an error message to the log rather than
1311 report a DID_ERROR. Better for an LLD to implement
1348 to perform an extra data in phase on such responses
1353 scsi_cmnd::sense_buffer[0] . If this byte has an upper nibble of 7 (or 0xf)