aboutsummaryrefslogtreecommitdiffstats
path: root/include/scsi/libsas.h
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@woody.osdl.org>2006-12-05 19:09:46 -0500
committerLinus Torvalds <torvalds@woody.osdl.org>2006-12-05 19:09:46 -0500
commitec0bf39a471bf6fcd01def2bd677128cea940b73 (patch)
tree0d98b304d97605613a14329b40ed8cbb88296528 /include/scsi/libsas.h
parentbf83c2a315637dee8a8b5c2221ce5030cc38c6db (diff)
parentd32adcb85c74fd81963714689842993e7014515f (diff)
Merge master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6
* master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6: (73 commits) [SCSI] aic79xx: Add ASC-29320LPE ids to driver [SCSI] stex: version update [SCSI] stex: change wait loop code [SCSI] stex: add new device type support [SCSI] stex: update device id info [SCSI] stex: adjust default queue length [SCSI] stex: add value check in hard reset routine [SCSI] stex: fix controller_info command handling [SCSI] stex: fix biosparam calculation [SCSI] megaraid: fix MMIO casts [SCSI] tgt: fix undefined flush_dcache_page() problem [SCSI] libsas: better error handling in sas_expander.c [SCSI] lpfc 8.1.11 : Change version number to 8.1.11 [SCSI] lpfc 8.1.11 : Misc Fixes [SCSI] lpfc 8.1.11 : Add soft_wwnn sysfs attribute, rename soft_wwn_enable [SCSI] lpfc 8.1.11 : Removed decoding of PCI Subsystem Id [SCSI] lpfc 8.1.11 : Add MSI (Message Signalled Interrupts) support [SCSI] lpfc 8.1.11 : Adjust LOG_FCP logging [SCSI] lpfc 8.1.11 : Fix Memory leaks [SCSI] lpfc 8.1.11 : Fix lpfc_multi_ring_support ...
Diffstat (limited to 'include/scsi/libsas.h')
-rw-r--r--include/scsi/libsas.h14
1 files changed, 11 insertions, 3 deletions
diff --git a/include/scsi/libsas.h b/include/scsi/libsas.h
index 1d77b63c5ea4..44b2f82a6eec 100644
--- a/include/scsi/libsas.h
+++ b/include/scsi/libsas.h
@@ -339,6 +339,8 @@ struct sas_ha_struct {
339 void (*notify_phy_event)(struct asd_sas_phy *, enum phy_event); 339 void (*notify_phy_event)(struct asd_sas_phy *, enum phy_event);
340 340
341 void *lldd_ha; /* not touched by sas class code */ 341 void *lldd_ha; /* not touched by sas class code */
342
343 struct list_head eh_done_q;
342}; 344};
343 345
344#define SHOST_TO_SAS_HA(_shost) (*(struct sas_ha_struct **)(_shost)->hostdata) 346#define SHOST_TO_SAS_HA(_shost) (*(struct sas_ha_struct **)(_shost)->hostdata)
@@ -527,13 +529,16 @@ struct sas_task {
527 529
528 void *lldd_task; /* for use by LLDDs */ 530 void *lldd_task; /* for use by LLDDs */
529 void *uldd_task; 531 void *uldd_task;
532
533 struct work_struct abort_work;
530}; 534};
531 535
532 536
533 537
534#define SAS_TASK_STATE_PENDING 1 538#define SAS_TASK_STATE_PENDING 1
535#define SAS_TASK_STATE_DONE 2 539#define SAS_TASK_STATE_DONE 2
536#define SAS_TASK_STATE_ABORTED 4 540#define SAS_TASK_STATE_ABORTED 4
541#define SAS_TASK_INITIATOR_ABORTED 8
537 542
538static inline struct sas_task *sas_alloc_task(gfp_t flags) 543static inline struct sas_task *sas_alloc_task(gfp_t flags)
539{ 544{
@@ -593,6 +598,7 @@ struct sas_domain_function_template {
593extern int sas_register_ha(struct sas_ha_struct *); 598extern int sas_register_ha(struct sas_ha_struct *);
594extern int sas_unregister_ha(struct sas_ha_struct *); 599extern int sas_unregister_ha(struct sas_ha_struct *);
595 600
601int sas_phy_reset(struct sas_phy *phy, int hard_reset);
596extern int sas_queuecommand(struct scsi_cmnd *, 602extern int sas_queuecommand(struct scsi_cmnd *,
597 void (*scsi_done)(struct scsi_cmnd *)); 603 void (*scsi_done)(struct scsi_cmnd *));
598extern int sas_target_alloc(struct scsi_target *); 604extern int sas_target_alloc(struct scsi_target *);
@@ -625,4 +631,6 @@ void sas_unregister_dev(struct domain_device *);
625 631
626void sas_init_dev(struct domain_device *); 632void sas_init_dev(struct domain_device *);
627 633
634void sas_task_abort(struct sas_task *task);
635
628#endif /* _SASLIB_H_ */ 636#endif /* _SASLIB_H_ */