#ifndef GVP11_H

/* $Id: gvp11.h,v 1.4 1997/01/19 23:07:12 davem Exp $
 *
 * Header file for the GVP Series II SCSI controller for Linux
 *
 * Written and (C) 1993, Ralf Baechle, see gvp11.c for more info
 * based on a2091.h (C) 1993 by Hamish Macdonald
 *
 */

#include <linux/types.h>

int gvp11_detect(struct scsi_host_template *);
int gvp11_release(struct Scsi_Host *);

#ifndef CMD_PER_LUN
#define CMD_PER_LUN		2
#endif

#ifndef CAN_QUEUE
#define CAN_QUEUE		16
#endif

#ifndef HOSTS_C

/*
 * if the transfer address ANDed with this results in a non-zero
 * result, then we can't use DMA.
 */
#define GVP11_XFER_MASK		(0xff000001)

typedef struct {
		 unsigned char	pad1[64];
	volatile unsigned short	CNTR;
		 unsigned char	pad2[31];
	volatile unsigned char	SASR;
		 unsigned char	pad3;
	volatile unsigned char	SCMD;
		 unsigned char	pad4[4];
	volatile unsigned short	BANK;
		 unsigned char	pad5[6];
	volatile unsigned long	ACR;
	volatile unsigned short	secret1; /* store 0 here */
	volatile unsigned short	ST_DMA;
	volatile unsigned short	SP_DMA;
	volatile unsigned short	secret2; /* store 1 here */
	volatile unsigned short	secret3; /* store 15 here */
} gvp11_scsiregs;

/* bits in CNTR */
#define GVP11_DMAC_BUSY		(1<<0)
#define GVP11_DMAC_INT_PENDING	(1<<1)
#define GVP11_DMAC_INT_ENABLE	(1<<3)
#define GVP11_DMAC_DIR_WRITE	(1<<4)

#endif /* else def HOSTS_C */

#endif /* GVP11_H */
