Lines Matching +full:hw +full:- +full:settle +full:- +full:time
1 /* SPDX-License-Identifier: GPL-2.0 */
11 #include <linux/blk-mq.h>
38 * Additional per-command data allocated for the driver.
66 * For compatibility, any other non-zero return is treated the
70 * this device/host completes, or a period of time determined by
112 * When unknown ioctl is passed return -ENOIOCTLCMD.
125 * define one of these if you don't want to - there is a default
128 * own strategy routine, this is where it is specified. Note - the
157 * Return values: 0 on success, non-0 on failure
164 * time), you will then get a call to slave_destroy(). This is
169 * each time a device is tore down.
183 * Things currently recommended to be handled at this time include:
191 * device->sdtr will be true if the device supports SDTR messages.
196 * 6. Return 0 on success, non-0 on error. The device will be marked
198 * non-0, your slave_destroy routine will never get called for this
200 * up after yourself before returning non-0
225 * Return values: 0 on success, non-0 on failure
245 * until it returns 1 with the scsi_host and the elapsed time of
283 * SCSI interface of blk_poll - poll for IO completions.
346 * Return values: 0 on success, -ve value on failure.
368 * This determines if we will use a non-interrupt driven
370 * of simultaneous commands a single hw queue in HBA will accept.
377 * the case, then it must be reserved. Please set this_id to -1 if
385 * of scatter-gather.
412 * individual devices (e.g. 256 for SCSI-1).
452 * True if the low-level driver performs its own reset-settle delays.
459 /* True if the host uses host-wide tagspace */
518 spin_lock_irqsave(shost->host_lock, irq_flags); \
519 rc = func_name##_lck (cmd, cmd->scsi_done); \
520 spin_unlock_irqrestore(shost->host_lock, irq_flags); \
578 /* next two fields are used to bound the time spent in error handling */
597 * in the system at one time, this does not need to be set. It is
621 * In scsi-mq mode, the number of hardware queues supported by the LLD.
634 * time being.
657 /* True if the host uses host-wide tagspace */
724 dev_printk(prefix, &(shost)->shost_gendev, fmt, ##a)
728 return (void *)shost->hostdata; in shost_priv()
736 if (!dev->parent) in dev_to_shost()
738 dev = dev->parent; in dev_to_shost()
745 return shost->shost_state == SHOST_RECOVERY || in scsi_host_in_recovery()
746 shost->shost_state == SHOST_CANCEL_RECOVERY || in scsi_host_in_recovery()
747 shost->shost_state == SHOST_DEL_RECOVERY || in scsi_host_in_recovery()
748 shost->tmf_in_progress; in scsi_host_in_recovery()
777 return shost->shost_gendev.parent; in scsi_get_device()
781 * scsi_host_scan_allowed - Is scanning of this host allowed
786 return shost->shost_state == SHOST_RUNNING || in scsi_host_scan_allowed()
787 shost->shost_state == SHOST_RECOVERY; in scsi_host_scan_allowed()
804 * thing. This physical pseudo-device isn't real and won't be available
805 * from any high-level drivers.
835 shost->prot_capabilities = mask; in scsi_host_set_prot()
840 return shost->prot_capabilities; in scsi_host_get_prot()
845 return shost->prot_capabilities >= SHOST_DIX_TYPE0_PROTECTION; in scsi_host_prot_dma()
858 return shost->prot_capabilities & cap[target_type] ? target_type : 0; in scsi_host_dif_capable()
872 return shost->prot_capabilities & cap[target_type]; in scsi_host_dix_capable()
878 * All DIX-capable initiators must support the T10-mandated CRC
893 shost->prot_guard_type = type; in scsi_host_set_guard()
898 return shost->prot_guard_type; in scsi_host_get_guard()