root/drivers/scsi/atari_scsi.h

/* [previous][next][first][last][top][bottom][index][help] */

INCLUDED FROM


   1 /*
   2  * atari_scsi.h -- Header file for the Atari native SCSI driver
   3  *
   4  * Copyright 1994 Roman Hodek <Roman.Hodek@informatik.uni-erlangen.de>
   5  *
   6  * (Loosely based on the work of Robert De Vries' team)
   7  *
   8  * This file is subject to the terms and conditions of the GNU General Public
   9  * License.  See the file README.legal in the main directory of this archive
  10  * for more details.
  11  *
  12  */
  13 
  14 
  15 #ifndef ATARI_SCSI_H
  16 #define ATARI_SCSI_H
  17 
  18 /* (I_HAVE_OVERRUNS stuff removed) */
  19 
  20 #ifndef ASM
  21 int atari_scsi_abort (Scsi_Cmnd *);
  22 int atari_scsi_detect (Scsi_Host_Template *);
  23 const char *atari_scsi_info (struct Scsi_Host *);
  24 int atari_scsi_queue_command (Scsi_Cmnd *, void (*done) (Scsi_Cmnd *));
  25 int atari_scsi_reset (Scsi_Cmnd *);
  26 int atari_scsi_proc_info (char *, char **, off_t, int, int, int);
  27 #ifdef MODULE
  28 int atari_scsi_release (struct Scsi_Host *);
  29 #else
  30 #define atari_scsi_release NULL
  31 #endif
  32 
  33 /* The values for CMD_PER_LUN and CAN_QUEUE are somehow arbitrary. Higher
  34  * values should work, too; try it! (but cmd_per_lun costs memory!) */
  35 
  36 /* But there seems to be a bug somewhere that requires CAN_QUEUE to be
  37  * 2*CMD_OER_LUN. At least on a TT, no suprious timeouts seen since
  38  * changed CMD_PER_LUN... */
  39 
  40 /* Note: The Falcon currently uses 8/1 setting due to unsolved problems with
  41  * cmd_per_lun != 1 */
  42 
  43 #define ATARI_TT_CAN_QUEUE              16
  44 #define ATARI_TT_CMD_PER_LUN            8
  45 #define ATARI_TT_SG_TABLESIZE           SG_ALL
  46 
  47 #define ATARI_FALCON_CAN_QUEUE          8
  48 #define ATARI_FALCON_CMD_PER_LUN        1
  49 #define ATARI_FALCON_SG_TABLESIZE       SG_NONE
  50 
  51 #define DEFAULT_USE_TAGGED_QUEUING      0
  52 
  53 
  54 #if defined (HOSTS_C) || defined (MODULE)
  55 
  56 #define ATARI_SCSI { NULL, NULL, NULL,                          \
  57   atari_scsi_proc_info,                                         \
  58   "Atari native SCSI",                                          \
  59   atari_scsi_detect,                                            \
  60   atari_scsi_release,                                           \
  61   atari_scsi_info,                                              \
  62   /* command */ NULL,                                           \
  63   atari_scsi_queue_command,                                     \
  64   atari_scsi_abort,                                             \
  65   atari_scsi_reset,                                             \
  66   /* slave_attach */    NULL,                                   \
  67   /* bios_param */      NULL,                                   \
  68   /* can queue */       0, /* initialized at run-time */        \
  69   /* host_id */         0, /* initialized at run-time */        \
  70   /* scatter gather */  0, /* initialized at run-time */        \
  71   /* cmd per lun */     0, /* initialized at run-time */        \
  72   /* present */         0,                                      \
  73   /* unchecked ISA DMA */ 0,                                    \
  74   /* use_clustering */  DISABLE_CLUSTERING }
  75 
  76 #endif
  77 
  78 #ifndef HOSTS_C
  79 
  80 #define NCR5380_implementation_fields   /* none */
  81 
  82 #define NCR5380_read(reg)                 atari_scsi_reg_read( reg )
  83 #define NCR5380_write(reg, value) atari_scsi_reg_write( reg, value )
  84 
  85 #define NCR5380_intr atari_scsi_intr
  86 #define NCR5380_queue_command atari_scsi_queue_command
  87 #define NCR5380_abort atari_scsi_abort
  88 #define NCR5380_proc_info atari_scsi_proc_info
  89 #define NCR5380_dma_read_setup(inst,d,c) atari_scsi_dma_setup (inst, d, c, 0)
  90 #define NCR5380_dma_write_setup(inst,d,c) atari_scsi_dma_setup (inst, d, c, 1)
  91 #define NCR5380_dma_residual(inst) atari_scsi_dma_residual( inst )
  92 #define NCR5380_dma_xfer_len(i,cmd,phase) \
  93         atari_dma_xfer_len(cmd->SCp.this_residual,cmd,((phase) & SR_IO) ? 0 : 1)
  94 
  95 #endif /* else def HOSTS_C */
  96 #endif /* ndef ASM */
  97 #endif /* ATARI_SCSI_H */
  98 
  99 

/* [previous][next][first][last][top][bottom][index][help] */