xref: /openbmc/linux/drivers/scsi/gvp11.h (revision 498495dba268b20e8eadd7fe93c140c68b6cc9d2)
1*b2441318SGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0 */
21da177e4SLinus Torvalds #ifndef GVP11_H
31da177e4SLinus Torvalds 
41da177e4SLinus Torvalds /* $Id: gvp11.h,v 1.4 1997/01/19 23:07:12 davem Exp $
51da177e4SLinus Torvalds  *
61da177e4SLinus Torvalds  * Header file for the GVP Series II SCSI controller for Linux
71da177e4SLinus Torvalds  *
81da177e4SLinus Torvalds  * Written and (C) 1993, Ralf Baechle, see gvp11.c for more info
91da177e4SLinus Torvalds  * based on a2091.h (C) 1993 by Hamish Macdonald
101da177e4SLinus Torvalds  *
111da177e4SLinus Torvalds  */
121da177e4SLinus Torvalds 
131da177e4SLinus Torvalds #include <linux/types.h>
141da177e4SLinus Torvalds 
151da177e4SLinus Torvalds #ifndef CMD_PER_LUN
161da177e4SLinus Torvalds #define CMD_PER_LUN		2
171da177e4SLinus Torvalds #endif
181da177e4SLinus Torvalds 
191da177e4SLinus Torvalds #ifndef CAN_QUEUE
201da177e4SLinus Torvalds #define CAN_QUEUE		16
211da177e4SLinus Torvalds #endif
221da177e4SLinus Torvalds 
231da177e4SLinus Torvalds /*
241da177e4SLinus Torvalds  * if the transfer address ANDed with this results in a non-zero
251da177e4SLinus Torvalds  * result, then we can't use DMA.
261da177e4SLinus Torvalds  */
271da177e4SLinus Torvalds #define GVP11_XFER_MASK		(0xff000001)
281da177e4SLinus Torvalds 
29349d65fdSGeert Uytterhoeven struct gvp11_scsiregs {
301da177e4SLinus Torvalds 		 unsigned char	pad1[64];
311da177e4SLinus Torvalds 	volatile unsigned short	CNTR;
321da177e4SLinus Torvalds 		 unsigned char	pad2[31];
331da177e4SLinus Torvalds 	volatile unsigned char	SASR;
341da177e4SLinus Torvalds 		 unsigned char	pad3;
351da177e4SLinus Torvalds 	volatile unsigned char	SCMD;
361da177e4SLinus Torvalds 		 unsigned char	pad4[4];
371da177e4SLinus Torvalds 	volatile unsigned short	BANK;
381da177e4SLinus Torvalds 		 unsigned char	pad5[6];
391da177e4SLinus Torvalds 	volatile unsigned long	ACR;
401da177e4SLinus Torvalds 	volatile unsigned short	secret1; /* store 0 here */
411da177e4SLinus Torvalds 	volatile unsigned short	ST_DMA;
421da177e4SLinus Torvalds 	volatile unsigned short	SP_DMA;
431da177e4SLinus Torvalds 	volatile unsigned short	secret2; /* store 1 here */
441da177e4SLinus Torvalds 	volatile unsigned short	secret3; /* store 15 here */
45349d65fdSGeert Uytterhoeven };
461da177e4SLinus Torvalds 
471da177e4SLinus Torvalds /* bits in CNTR */
481da177e4SLinus Torvalds #define GVP11_DMAC_BUSY		(1<<0)
491da177e4SLinus Torvalds #define GVP11_DMAC_INT_PENDING	(1<<1)
501da177e4SLinus Torvalds #define GVP11_DMAC_INT_ENABLE	(1<<3)
511da177e4SLinus Torvalds #define GVP11_DMAC_DIR_WRITE	(1<<4)
521da177e4SLinus Torvalds 
531da177e4SLinus Torvalds #endif /* GVP11_H */
54