xref: /netbsd-src/sys/arch/vax/include/ioa.h (revision 85273aa8b3e97fa8259485a334fb4c95429c4388)
1*85273aa8Sragge /*	$NetBSD: ioa.h,v 1.13 2010/07/01 19:50:12 ragge Exp $	*/
26e51b1e4Sragge /*-
36e51b1e4Sragge  * Copyright (c) 1982, 1986 The Regents of the University of California.
46e51b1e4Sragge  * All rights reserved.
56e51b1e4Sragge  *
66e51b1e4Sragge  * Redistribution and use in source and binary forms, with or without
76e51b1e4Sragge  * modification, are permitted provided that the following conditions
86e51b1e4Sragge  * are met:
96e51b1e4Sragge  * 1. Redistributions of source code must retain the above copyright
106e51b1e4Sragge  *    notice, this list of conditions and the following disclaimer.
116e51b1e4Sragge  * 2. Redistributions in binary form must reproduce the above copyright
126e51b1e4Sragge  *    notice, this list of conditions and the following disclaimer in the
136e51b1e4Sragge  *    documentation and/or other materials provided with the distribution.
14aad01611Sagc  * 3. Neither the name of the University nor the names of its contributors
156e51b1e4Sragge  *    may be used to endorse or promote products derived from this software
166e51b1e4Sragge  *    without specific prior written permission.
176e51b1e4Sragge  *
186e51b1e4Sragge  * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
196e51b1e4Sragge  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
206e51b1e4Sragge  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
216e51b1e4Sragge  * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
226e51b1e4Sragge  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
236e51b1e4Sragge  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
246e51b1e4Sragge  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
256e51b1e4Sragge  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
266e51b1e4Sragge  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
276e51b1e4Sragge  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
286e51b1e4Sragge  * SUCH DAMAGE.
296e51b1e4Sragge  *
306e51b1e4Sragge  *	@(#)ioa.h	7.3 (Berkeley) 5/9/91
316e51b1e4Sragge  */
326e51b1e4Sragge 
33*85273aa8Sragge /*
34*85273aa8Sragge  * ABus support added by Johnny Billquist 2010
35*85273aa8Sragge  */
36*85273aa8Sragge 
376e51b1e4Sragge /****************************************************************
386e51b1e4Sragge  *                                                              *
396e51b1e4Sragge  *        Licensed from Digital Equipment Corporation           *
406e51b1e4Sragge  *                       Copyright (c)                          *
416e51b1e4Sragge  *               Digital Equipment Corporation                  *
426e51b1e4Sragge  *                   Maynard, Massachusetts                     *
436e51b1e4Sragge  *                         1985, 1986                           *
446e51b1e4Sragge  *                    All rights reserved.                      *
456e51b1e4Sragge  *                                                              *
466e51b1e4Sragge  *        The Information in this software is subject to change *
476e51b1e4Sragge  *   without notice and should not be construed as a commitment *
486e51b1e4Sragge  *   by  Digital  Equipment  Corporation.   Digital   makes  no *
496e51b1e4Sragge  *   representations about the suitability of this software for *
506e51b1e4Sragge  *   any purpose.  It is supplied "As Is" without expressed  or *
516e51b1e4Sragge  *   implied  warranty.                                         *
526e51b1e4Sragge  *                                                              *
536e51b1e4Sragge  *        If the Regents of the University of California or its *
546e51b1e4Sragge  *   licensees modify the software in a manner creating         *
55ca0b7aaaSpk  *   derivative copyright rights, appropriate copyright         *
56ca0b7aaaSpk  *   legends may be placed on  the derivative work in addition  *
576e51b1e4Sragge  *   to that set forth above.                                   *
586e51b1e4Sragge  *								*
596e51b1e4Sragge  ****************************************************************/
606e51b1e4Sragge 
618ea974e8Sragge #include "opt_cputype.h"
62c45b3224Smatt #if VAX8600 || VAXANY
636ad43b52Sragge #define	NIOA8600	2	/* Number of SBI possible on a VAX86x0 */
64*85273aa8Sragge #define IOASIZE		0x2000000 /* Size of one SBI memory area */
656e51b1e4Sragge #define IOAMAPSIZ 	512		/* Map one page to get at SBIA regs */
66*85273aa8Sragge #define SBIA8600(i)     ((void *)(0x20000000+IOASIZE*i)) /* Base address for SBI */
67*85273aa8Sragge #define	IOA8600(i)	((void *)((bus_addr_t)(SBIA8600(i))+0x80000)) /* Address of SBIA registers */
686e51b1e4Sragge 
696e51b1e4Sragge struct	sbia_regs
706e51b1e4Sragge {
716e51b1e4Sragge 	int sbi_cfg;
726e51b1e4Sragge 	int sbi_csr;
736e51b1e4Sragge 	int sbi_errsum;
746e51b1e4Sragge 	int sbi_dctl;
756e51b1e4Sragge 	int sbi_dmaica;
766e51b1e4Sragge 	int sbi_dmaiid;
776e51b1e4Sragge 	int sbi_dmaaca;
786e51b1e4Sragge 	int sbi_dmaaid;
796e51b1e4Sragge 	int sbi_dmabcs;
806e51b1e4Sragge 	int sbi_dmabid;
816e51b1e4Sragge 	int sbi_dmaccs;
826e51b1e4Sragge 	int sbi_dmacid;
836e51b1e4Sragge 	int sbi_silo;
846e51b1e4Sragge 	int sbi_error;
856e51b1e4Sragge 	int sbi_timo;
866e51b1e4Sragge 	int sbi_fltsts;
876e51b1e4Sragge 	int sbi_silcmp;
886e51b1e4Sragge 	int sbi_maint;
896e51b1e4Sragge 	int sbi_unjam;
906e51b1e4Sragge 	int sbi_qclr;
916ad43b52Sragge 	int sbi_unused1[12];
926e51b1e4Sragge 	int sbi_iv10;
936e51b1e4Sragge 	int sbi_iv11;
946e51b1e4Sragge 	int sbi_iv12;
956e51b1e4Sragge 	int sbi_iv13;
966e51b1e4Sragge 	int sbi_iv14;
976e51b1e4Sragge 	int sbi_iv15;
986e51b1e4Sragge 	int sbi_iv16;
996e51b1e4Sragge 	int sbi_iv17;
1006e51b1e4Sragge 	int sbi_iv18;
1016e51b1e4Sragge 	int sbi_iv19;
1026e51b1e4Sragge 	int sbi_iv1a;
1036e51b1e4Sragge 	int sbi_iv1b;
1046e51b1e4Sragge 	int sbi_iv1c;
1056e51b1e4Sragge 	int sbi_iv1d;
1066e51b1e4Sragge 	int sbi_iv1e;
1076ad43b52Sragge 	int sbi_unused2[17];
1086e51b1e4Sragge };
1096e51b1e4Sragge 
110*85273aa8Sragge #define IOA_TYPMSK 0xf0         /* Mask for type information in sbi_cfg */
111*85273aa8Sragge #define IOA_SBIA	0x10    /* Value for SBIA type on ABus */
1126e51b1e4Sragge 
1137b17d595Smatt #endif /* VAX8600 */
114