diff options
Diffstat (limited to 'drivers/scsi/fcal.h')
-rw-r--r-- | drivers/scsi/fcal.h | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/drivers/scsi/fcal.h b/drivers/scsi/fcal.h new file mode 100644 index 000000000..2c8938953 --- /dev/null +++ b/drivers/scsi/fcal.h @@ -0,0 +1,46 @@ +/* fcal.h: Generic Fibre Channel Arbitrated Loop SCSI host adapter driver definitions. + * + * Copyright (C) 1998,1999 Jakub Jelinek (jj@ultra.linux.cz) + */ + +#ifndef _FCAL_H +#define _FCAL_H + +#include "../fc4/fcp_impl.h" + +struct fcal { + /* fc must be first */ + fc_channel *fc; + unsigned char map[128]; + fc_wwn nport_wwn[128]; + fc_wwn node_wwn[128]; +}; + +/* Arbitrary constant. Cannot be too large, as fc4 layer has limitations + for a particular channel */ +#define FCAL_CAN_QUEUE 512 + +int fcal_detect(Scsi_Host_Template *); +int fcal_release(struct Scsi_Host *); +int fcal_proc_info (char *, char **, off_t, int, int, int); + +#define FCAL { \ + name: "Fibre Channel Arbitrated Loop",\ + detect: fcal_detect, \ + release: fcal_release, \ + proc_info: fcal_proc_info, \ + queuecommand: fcp_scsi_queuecommand, \ + can_queue: FCAL_CAN_QUEUE, \ + this_id: -1, \ + sg_tablesize: 1, \ + cmd_per_lun: 1, \ + use_clustering: ENABLE_CLUSTERING, \ + use_new_eh_code: FCP_SCSI_USE_NEW_EH_CODE, \ + abort: fcp_old_abort, \ + eh_abort_handler: fcp_scsi_abort, \ + eh_device_reset_handler:fcp_scsi_dev_reset, \ + eh_bus_reset_handler: fcp_scsi_bus_reset, \ + eh_host_reset_handler: fcp_scsi_host_reset, \ +} + +#endif /* !(_FCAL_H) */ |