The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/dev/tc/sfbreg.h

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 /* $NetBSD: sfbreg.h,v 1.3 2000/12/19 01:25:46 perseant Exp $ */
    2 
    3 /*
    4  * Copyright (c) 1996 Carnegie-Mellon University.
    5  * All rights reserved.
    6  *
    7  * Author: Chris G. Demetriou
    8  *
    9  * Permission to use, copy, modify and distribute this software and
   10  * its documentation is hereby granted, provided that both the copyright
   11  * notice and this permission notice appear in all copies of the
   12  * software, derivative works or modified versions, and any portions
   13  * thereof, and that both notices appear in supporting documentation.
   14  *
   15  * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS"
   16  * CONDITION.  CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND
   17  * FOR ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
   18  *
   19  * Carnegie Mellon requests users of this software to return to
   20  *
   21  *  Software Distribution Coordinator  or  Software.Distribution@CS.CMU.EDU
   22  *  School of Computer Science
   23  *  Carnegie Mellon University
   24  *  Pittsburgh PA 15213-3890
   25  *
   26  * any improvements or extensions that they make and grant Carnegie the
   27  * rights to redistribute these changes.
   28  */
   29 
   30 /*
   31  * Smart ("CXTurbo") Frame Buffer definitions, from:
   32  * ``DEC 3000 300/400/500/600/700/800/900 AXP Models System Prgrammer's Manual''
   33  * (DEC order number EK-D3SYS-PM), section 6.
   34  *
   35  * All definitions are in "dense" TURBOchannel space.
   36  */
   37 
   38 #ifndef _DEV_TC_SFBREG_H_
   39 #define _DEV_TC_SFBREG_H_
   40 
   41 /*
   42  * Size of the SFB address space.
   43  */
   44 #define SFB_SIZE                0x1000000
   45 
   46 /*
   47  * Offsets into slot space of each functional unit.
   48  */
   49 #define SFB_ASIC_OFFSET         0x0100000       /* SFB ASIC Control Registers */
   50 #define SFB_ASIC_SIZE           0x0020000
   51 #define SFB_RAMDAC_OFFSET       0x01c0000       /* BrookTree RAMDAC */
   52 #define SFB_RAMDAC_SIZE         0x0040000
   53 #define SFB_FB_OFFSET           0x0200000       /* Frame buffer */
   54 #define SFB_FB_SIZE             0x0200000
   55 #define SFB_OSBM_OFFSET         0x0600000       /* Off-screen buffer memory */
   56 #define SFB_OSBM_SIZE           0x0200000
   57 
   58 /*
   59  * SFB ASIC registers (offsets from SFB_ASIC_OFFSET).
   60  */
   61 #define SFB_ASIC_COPYBUF_0      0x0000  /* Copy buffer register 0 (R/W) */
   62 #define SFB_ASIC_COPYBUF_1      0x0004  /* Copy buffer register 1 (R/W) */
   63 #define SFB_ASIC_COPYBUF_2      0x0008  /* Copy buffer register 2 (R/W) */
   64 #define SFB_ASIC_COPYBUF_3      0x000c  /* Copy buffer register 3 (R/W) */
   65 #define SFB_ASIC_COPYBUF_4      0x0010  /* Copy buffer register 4 (R/W) */
   66 #define SFB_ASIC_COPYBUF_5      0x0014  /* Copy buffer register 5 (R/W) */
   67 #define SFB_ASIC_COPYBUF_6      0x0018  /* Copy buffer register 6 (R/W) */
   68 #define SFB_ASIC_COPYBUF_7      0x001c  /* Copy buffer register 7 (R/W) */
   69 #define SFB_ASIC_FG             0x0020  /* Foreground (R/W) */
   70 #define SFB_ASIC_BG             0x0024  /* Background (R/W) */
   71 #define SFB_ASIC_PLANEMASK      0x0028  /* PlaneMask (R/W) */
   72 #define SFB_ASIC_PIXELMASK      0x002c  /* PixelMask (R/W) */
   73 #define SFB_ASIC_MODE           0x0030  /* Mode (R/W) */
   74 #define SFB_ASIC_ROP            0x0034  /* RasterOp (R/W) */
   75 #define SFB_ASIC_PIXELSHIFT     0x0038  /* PixelShift (R/W) */
   76 #define SFB_ASIC_ADDRESS        0x003c  /* Address (R/W) */
   77 #define SFB_ASIC_BRES1          0x0040  /* Bresenham register 1 (R/W) */
   78 #define SFB_ASIC_BRES2          0x0044  /* Bresenham register 2 (R/W) */
   79 #define SFB_ASIC_BRES3          0x0048  /* Bresenham register 3 (R/W) */
   80 #define SFB_ASIC_BCONT          0x004c  /* Bcont (W) */
   81 #define SFB_ASIC_DEEP           0x0050  /* Deep (R/W) */
   82 #define SFB_ASIC_START          0x0054  /* Start (W) */
   83 #define SFB_ASIC_CLEAR_INTR     0x0058  /* Clear Interrupt (W) */
   84 #define SFB_ASIC_VIDEO_REFRESH  0x0060  /* Video refresh counter (R/W) */
   85 #define SFB_ASIC_VIDEO_HSETUP   0x0064  /* Video horizontal setup (R/W) */
   86 #define SFB_ASIC_VIDEO_VSETUP   0x0068  /* Video vertical setup (R/W) */
   87 #define SFB_ASIC_VIDEO_BASE     0x006c  /* Video base address (R/W) */
   88 #define SFB_ASIC_VIDEO_VALID    0x0070  /* Video valid (W) */
   89 #define SFB_ASIC_ENABLE_INTR    0x0074  /* Enable/Disable Interrupts (W) */
   90 #define SFB_ASIC_TCCLK          0x0078  /* TCCLK count (R/W) */
   91 #define SFB_ASIC_VIDCLK         0x007c  /* VIDCLK count (R/W) */
   92 
   93 /*
   94  * Same as above but in 32-bit units, and named like the corrseponding
   95  * TGA registers, for easy comparison.
   96  */
   97 typedef u_int32_t sfb_reg_t;
   98 
   99 #define SFB_REG_GCBR0   0x000           /* Copy buffer 0 */
  100 #define SFB_REG_GCBR1   0x001           /* Copy buffer 1 */
  101 #define SFB_REG_GCBR2   0x002           /* Copy buffer 2 */
  102 #define SFB_REG_GCBR3   0x003           /* Copy buffer 3 */
  103 #define SFB_REG_GCBR4   0x004           /* Copy buffer 4 */
  104 #define SFB_REG_GCBR5   0x005           /* Copy buffer 5 */
  105 #define SFB_REG_GCBR6   0x006           /* Copy buffer 6 */
  106 #define SFB_REG_GCBR7   0x007           /* Copy buffer 7 */
  107 
  108 #define SFB_REG_GFGR    0x008           /* Foreground */
  109 #define SFB_REG_GBGR    0x009           /* Background */
  110 #define SFB_REG_GPMR    0x00a           /* Plane Mask */
  111 #define SFB_REG_GPXR_S  0x00b           /* Pixel Mask (one-shot) */
  112 #define SFB_REG_GMOR    0x00c           /* Mode */
  113 #define SFB_REG_GOPR    0x00d           /* Raster Operation */
  114 #define SFB_REG_GPSR    0x00e           /* Pixel Shift */
  115 #define SFB_REG_GADR    0x00f           /* Address */
  116 
  117 #define SFB_REG_GB1R    0x010           /* Bresenham 1 */
  118 #define SFB_REG_GB2R    0x011           /* Bresenham 2 */
  119 #define SFB_REG_GB3R    0x012           /* Bresenham 3 */
  120 
  121 #define SFB_REG_GCTR    0x013           /* Continue */
  122 #define SFB_REG_GDER    0x014           /* Deep */
  123 #define SFB_REG_GREV    0x015           /* Start/Version on SFB,
  124 
  125                                          * Revision on SFB2 */
  126 #define SFB_REG_CINT    0x016           /* Clear Interrupt */
  127 /* 0x017 - unused */
  128 #define SFB_REG_VRFR    0x018           /* Video Refresh */
  129 #define SFB_REG_VHCR    0x019           /* Horizontal Control */
  130 #define SFB_REG_VVCR    0x01a           /* Vertical Control */
  131 #define SFB_REG_VVBR    0x01b           /* Video Base Address */
  132 #define SFB_REG_VVVR    0x01c           /* Video Valid */
  133 #define SFB_REG_SISR    0x01d           /* Enable/Disable Interrupts */
  134 #define SFB_REG_TCCLK   0x01e           /* TCCLK count (R/W) */
  135 #define SFB_REG_VIDCLK  0x01f           /* VIDCLK count (R/W) */
  136 
  137 #endif /* _DEV_TC_SFBREG_H_ */

Cache object: 8cd0c0b625bc61921a4ab37bdd61dfad


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.