Annotation of Gnu-Mach/linux/src/drivers/scsi/aic7xxx.h, revision 1.1.1.2

1.1       root        1: /*+M*************************************************************************
                      2:  * Adaptec AIC7xxx device driver for Linux.
                      3:  *
                      4:  * Copyright (c) 1994 John Aycock
                      5:  *   The University of Calgary Department of Computer Science.
                      6:  *
                      7:  * This program is free software; you can redistribute it and/or modify
                      8:  * it under the terms of the GNU General Public License as published by
                      9:  * the Free Software Foundation; either version 2, or (at your option)
                     10:  * any later version.
                     11:  *
                     12:  * This program is distributed in the hope that it will be useful,
                     13:  * but WITHOUT ANY WARRANTY; without even the implied warranty of
                     14:  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
                     15:  * GNU General Public License for more details.
                     16:  *
                     17:  * You should have received a copy of the GNU General Public License
                     18:  * along with this program; see the file COPYING.  If not, write to
                     19:  * the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
                     20:  * 
1.1.1.2 ! root       21:  * $Id: aic7xxx.h,v 1.1.4.1 2004/01/16 22:41:26 roland Exp $
1.1       root       22:  *-M*************************************************************************/
                     23: #ifndef _aic7xxx_h
                     24: #define _aic7xxx_h
                     25: 
                     26: #define AIC7XXX_H_VERSION  "3.2.4"
                     27: 
                     28: #ifndef LINUX_VERSION_CODE
                     29: #include <linux/version.h>
                     30: #endif
                     31: 
                     32: #ifndef KERNEL_VERSION
                     33: #define KERNEL_VERSION(x,y,z) (((x)<<16)+((y)<<8)+(z))
                     34: #endif
                     35: 
                     36: #if defined(__i386__)
                     37: #  define AIC7XXX_BIOSPARAM aic7xxx_biosparam
                     38: #else
                     39: #  define AIC7XXX_BIOSPARAM NULL
                     40: #endif
                     41: 
                     42: /*
                     43:  * Scsi_Host_Template (see hosts.h) for AIC-7xxx - some fields
                     44:  * to do with card config are filled in after the card is detected.
                     45:  */
                     46: #if LINUX_VERSION_CODE > KERNEL_VERSION(2,1,65)
                     47: #define AIC7XXX        {                                               \
                     48:        next: NULL,                                             \
                     49:        module: NULL,                                           \
                     50:        proc_dir: NULL,                                         \
                     51:        proc_info: aic7xxx_proc_info,                           \
                     52:        name: NULL,                                             \
                     53:        detect: aic7xxx_detect,                                 \
                     54:        release: aic7xxx_release,                               \
                     55:        info: aic7xxx_info,                                     \
                     56:        command: NULL,                                          \
                     57:        queuecommand: aic7xxx_queue,                            \
                     58:        eh_strategy_handler: NULL,                              \
                     59:        eh_abort_handler: NULL,                                 \
                     60:        eh_device_reset_handler: NULL,                          \
                     61:        eh_bus_reset_handler: NULL,                             \
                     62:        eh_host_reset_handler: NULL,                            \
                     63:        abort: aic7xxx_abort,                                   \
                     64:        reset: aic7xxx_reset,                                   \
                     65:        slave_attach: NULL,                                     \
                     66:        bios_param: AIC7XXX_BIOSPARAM,                          \
                     67:        can_queue: 255,         /* max simultaneous cmds      */\
                     68:        this_id: -1,            /* scsi id of host adapter    */\
                     69:        sg_tablesize: 0,        /* max scatter-gather cmds    */\
                     70:        cmd_per_lun: 3,         /* cmds per lun (linked cmds) */\
                     71:        present: 0,             /* number of 7xxx's present   */\
                     72:        unchecked_isa_dma: 0,   /* no memory DMA restrictions */\
                     73:        use_clustering: ENABLE_CLUSTERING,                      \
                     74:        use_new_eh_code: 0                                      \
                     75: }
                     76: #else
                     77: #define AIC7XXX        {                                               \
                     78:        next: NULL,                                             \
                     79:        usage_count: NULL,                                      \
                     80:        proc_dir: NULL,                                         \
                     81:        proc_info: aic7xxx_proc_info,                           \
                     82:        name: NULL,                                             \
                     83:        detect: aic7xxx_detect,                                 \
                     84:        release: aic7xxx_release,                               \
                     85:        info: aic7xxx_info,                                     \
                     86:        command: NULL,                                          \
                     87:        queuecommand: aic7xxx_queue,                            \
                     88:        abort: aic7xxx_abort,                                   \
                     89:        reset: aic7xxx_reset,                                   \
                     90:        slave_attach: NULL,                                     \
                     91:        bios_param: AIC7XXX_BIOSPARAM,                          \
                     92:        can_queue: 255,         /* max simultaneous cmds      */\
                     93:        this_id: -1,            /* scsi id of host adapter    */\
                     94:        sg_tablesize: 0,        /* max scatter-gather cmds    */\
                     95:        cmd_per_lun: 3,         /* cmds per lun (linked cmds) */\
                     96:        present: 0,             /* number of 7xxx's present   */\
                     97:        unchecked_isa_dma: 0,   /* no memory DMA restrictions */\
                     98:        use_clustering: ENABLE_CLUSTERING                       \
                     99: }
                    100: #endif
                    101: 
                    102: extern int aic7xxx_queue(Scsi_Cmnd *, void (*)(Scsi_Cmnd *));
                    103: extern int aic7xxx_biosparam(Disk *, kdev_t, int[]);
                    104: extern int aic7xxx_detect(Scsi_Host_Template *);
                    105: extern int aic7xxx_command(Scsi_Cmnd *);
                    106: extern int aic7xxx_reset(Scsi_Cmnd *, unsigned int);
                    107: extern int aic7xxx_abort(Scsi_Cmnd *);
                    108: extern int aic7xxx_release(struct Scsi_Host *);
                    109: 
                    110: extern const char *aic7xxx_info(struct Scsi_Host *);
                    111: 
                    112: extern int aic7xxx_proc_info(char *, char **, off_t, int, int, int);
                    113: 
                    114: #endif /* _aic7xxx_h */

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.