#include <linux/transport_class.h>
#include <scsi/scsi_host.h>
+#include <scsi/scsi_device.h>
struct scsi_transport_template {
/* the attribute containers */
*/
unsigned int create_work_queue : 1;
+ /*
+ * Allows a transport to override the default error handler.
+ */
+ void (* eh_strategy_handler)(struct Scsi_Host *);
+
/*
* This is an optional routine that allows the transport to become
* involved when a scsi io timer fires. The return value tells the
* EH_NOT_HANDLED Begin normal error recovery
*/
enum scsi_eh_timer_return (* eh_timed_out)(struct scsi_cmnd *);
+
+ /*
+ * Used as callback for the completion of i_t_nexus request
+ * for target drivers.
+ */
+ int (* it_nexus_response)(struct Scsi_Host *, u64, int);
+
+ /*
+ * Used as callback for the completion of task management
+ * request for target drivers.
+ */
+ int (* tsk_mgmt_response)(struct Scsi_Host *, u64, u64, int);
};
#define transport_class_to_shost(tc) \