#ifndef SCSIHOST_H_INCLUDED
#define SCSIHOST_H_INCLUDED
#define MPT_SCANDV_GOOD …
#define MPT_SCANDV_DID_RESET …
#define MPT_SCANDV_SENSE …
#define MPT_SCANDV_SOME_ERROR …
#define MPT_SCANDV_SELECTION_TIMEOUT …
#define MPT_SCANDV_ISSUE_SENSE …
#define MPT_SCANDV_FALLBACK …
#define MPT_SCANDV_BUSY …
#define MPT_SCANDV_MAX_RETRIES …
#define MPT_ICFLAG_BUF_CAP …
#define MPT_ICFLAG_ECHO …
#define MPT_ICFLAG_EBOS …
#define MPT_ICFLAG_PHYS_DISK …
#define MPT_ICFLAG_TAGGED_CMD …
#define MPT_ICFLAG_DID_RESET …
#define MPT_ICFLAG_RESERVED …
#define MPT_SCSI_CMD_PER_DEV_HIGH …
#define MPT_SCSI_CMD_PER_DEV_LOW …
#define MPT_SCSI_CMD_PER_LUN …
#define MPT_SCSI_MAX_SECTORS …
#define MPTSCSIH_DOMAIN_VALIDATION …
#define MPTSCSIH_MAX_WIDTH …
#define MPTSCSIH_MIN_SYNC …
#define MPTSCSIH_SAF_TE …
#define MPTSCSIH_PT_CLEAR …
#endif
INTERNAL_CMD;
extern void mptscsih_remove(struct pci_dev *);
extern void mptscsih_shutdown(struct pci_dev *);
#ifdef CONFIG_PM
extern int mptscsih_suspend(struct pci_dev *pdev, pm_message_t state);
extern int mptscsih_resume(struct pci_dev *pdev);
#endif
extern int mptscsih_show_info(struct seq_file *, struct Scsi_Host *);
extern const char * mptscsih_info(struct Scsi_Host *SChost);
extern int mptscsih_qcmd(struct scsi_cmnd *SCpnt);
extern int mptscsih_IssueTaskMgmt(MPT_SCSI_HOST *hd, u8 type, u8 channel,
u8 id, u64 lun, int ctx2abort, ulong timeout);
extern void mptscsih_slave_destroy(struct scsi_device *device);
extern int mptscsih_slave_configure(struct scsi_device *device);
extern int mptscsih_abort(struct scsi_cmnd * SCpnt);
extern int mptscsih_dev_reset(struct scsi_cmnd * SCpnt);
extern int mptscsih_target_reset(struct scsi_cmnd * SCpnt);
extern int mptscsih_bus_reset(struct scsi_cmnd * SCpnt);
extern int mptscsih_host_reset(struct scsi_cmnd *SCpnt);
extern int mptscsih_bios_param(struct scsi_device * sdev, struct block_device *bdev, sector_t capacity, int geom[]);
extern int mptscsih_io_done(MPT_ADAPTER *ioc, MPT_FRAME_HDR *mf, MPT_FRAME_HDR *r);
extern int mptscsih_taskmgmt_complete(MPT_ADAPTER *ioc, MPT_FRAME_HDR *mf, MPT_FRAME_HDR *r);
extern int mptscsih_scandv_complete(MPT_ADAPTER *ioc, MPT_FRAME_HDR *mf, MPT_FRAME_HDR *r);
extern int mptscsih_event_process(MPT_ADAPTER *ioc, EventNotificationReply_t *pEvReply);
extern int mptscsih_ioc_reset(MPT_ADAPTER *ioc, int post_reset);
extern int mptscsih_change_queue_depth(struct scsi_device *sdev, int qdepth);
extern u8 mptscsih_raid_id_to_num(MPT_ADAPTER *ioc, u8 channel, u8 id);
extern int mptscsih_is_phys_disk(MPT_ADAPTER *ioc, u8 channel, u8 id);
extern const struct attribute_group *mptscsih_host_attr_groups[];
extern struct scsi_cmnd *mptscsih_get_scsi_lookup(MPT_ADAPTER *ioc, int i);
extern void mptscsih_taskmgmt_response_code(MPT_ADAPTER *ioc, u8 response_code);
extern void mptscsih_flush_running_cmds(MPT_SCSI_HOST *hd);