[BACK]Return to uba_common.h CVS log [TXT][DIR] Up to [local] / sys / arch / vax / uba

Annotation of sys/arch/vax/uba/uba_common.h, Revision 1.1.1.1

1.1       nbrk        1: /*     $OpenBSD: uba_common.h,v 1.4 2003/11/10 21:05:06 miod Exp $     */
                      2: /*     $NetBSD: uba_common.h,v 1.2 1999/06/21 16:23:01 ragge Exp $ */
                      3: /*-
                      4:  * Copyright (c) 1982, 1986 The Regents of the University of California.
                      5:  * All rights reserved.
                      6:  * (c) UNIX System Laboratories, Inc.
                      7:  * All or some portions of this file are derived from material licensed
                      8:  * to the University of California by American Telephone and Telegraph
                      9:  * Co. or Unix System Laboratories, Inc. and are reproduced herein with
                     10:  * the permission of UNIX System Laboratories, Inc.
                     11:  *
                     12:  * Redistribution and use in source and binary forms, with or without
                     13:  * modification, are permitted provided that the following conditions
                     14:  * are met:
                     15:  * 1. Redistributions of source code must retain the above copyright
                     16:  *    notice, this list of conditions and the following disclaimer.
                     17:  * 2. Redistributions in binary form must reproduce the above copyright
                     18:  *    notice, this list of conditions and the following disclaimer in the
                     19:  *    documentation and/or other materials provided with the distribution.
                     20:  * 3. Neither the name of the University nor the names of its contributors
                     21:  *    may be used to endorse or promote products derived from this software
                     22:  *    without specific prior written permission.
                     23:  *
                     24:  * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
                     25:  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
                     26:  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
                     27:  * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
                     28:  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
                     29:  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
                     30:  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
                     31:  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
                     32:  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
                     33:  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
                     34:  * SUCH DAMAGE.
                     35:  *
                     36:  *     @(#)ubareg.h    7.8 (Berkeley) 5/9/91
                     37:  */
                     38:
                     39: /*
                     40:  * VAX-specific parts of the Unibus softc.
                     41:  */
                     42: struct uba_regs;
                     43:
                     44: struct uba_vsoftc {
                     45:        struct  uba_softc uv_sc;/* Common vars from arch/vax/qbus/ubavar.h */
                     46:        struct  vax_bus_dma_tag uv_dmat;
                     47:        struct  vax_sgmap uv_sgmap;
                     48:        int     uv_size;        /* Size of UBA addressable memory */
                     49:        paddr_t uv_addr;        /* Physical address of map registers */
                     50:        struct  uba_regs *uv_uba;/* Where applicable */
                     51:        int     uh_ibase;
                     52:        int     uh_zvtime;
                     53:        int     uh_zvtotal;
                     54:        int     uh_zvcnt;
                     55: };
                     56:
                     57: /*
                     58:  * Size of unibus memory address space in pages
                     59:  * (also number of map registers).
                     60:  */
                     61: #define UBAPAGES       496
                     62: #define UBAIOADDR      0760000  /* start of I/O page */
                     63: #define UBAIOPAGES     16
                     64:
                     65: /*
                     66:  * DW780/DW750 hardware registers
                     67:  */
                     68: struct uba_regs {
                     69:        int     uba_cnfgr;              /* configuration register */
                     70:        int     uba_cr;                 /* control register */
                     71:        int     uba_sr;                 /* status register */
                     72:        int     uba_dcr;                /* diagnostic control register */
                     73:        int     uba_fmer;               /* failed map entry register */
                     74:        int     uba_fubar;              /* failed UNIBUS address register */
                     75:        int     pad1[2];
                     76:        int     uba_brsvr[4];
                     77:        int     uba_brrvr[4];           /* receive vector registers */
                     78:        int     uba_dpr[16];            /* buffered data path register */
                     79:        int     pad2[480];
                     80:        pt_entry_t uba_map[UBAPAGES];   /* unibus map register */
                     81:        int     pad3[UBAIOPAGES];       /* no maps for device address space */
                     82: };
                     83:
                     84: void   uba_dma_init(struct uba_vsoftc *);

CVSweb