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/sparc64/creator/creator.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 /*-
    2  * Copyright (c) 2003 Jake Burkholder.
    3  * All rights reserved.
    4  *
    5  * Redistribution and use in source and binary forms, with or without
    6  * modification, are permitted provided that the following conditions
    7  * are met:
    8  * 1. Redistributions of source code must retain the above copyright
    9  *    notice, this list of conditions and the following disclaimer.
   10  * 2. Redistributions in binary form must reproduce the above copyright
   11  *    notice, this list of conditions and the following disclaimer in the
   12  *    documentation and/or other materials provided with the distribution.
   13  *
   14  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
   15  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   16  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   17  * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
   18  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   19  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   20  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   21  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   22  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   23  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   24  * SUCH DAMAGE.
   25  *
   26  * $FreeBSD: releng/5.2/sys/sparc64/creator/creator.h 119381 2003-08-24 01:15:40Z jake $
   27  */
   28 
   29 #ifndef _DEV_FB_CREATOR_H_
   30 #define _DEV_FB_CREATOR_H_
   31 
   32 #define FFB_NREG                24
   33 
   34 #define FFB_DAC                 1
   35 #define FFB_DAC_TYPE            0x0
   36 #define FFB_DAC_VALUE           0x4
   37 #define FFB_DAC_TYPE2           0x8
   38 #define FFB_DAC_VALUE2          0xc
   39 
   40 #define FFB_FBC                 2
   41 #define FFB_FBC_BY              0x60
   42 #define FFB_FBC_BX              0x64
   43 #define FFB_FBC_DY              0x68
   44 #define FFB_FBC_DX              0x6c
   45 #define FFB_FBC_BH              0x70
   46 #define FFB_FBC_BW              0x74
   47 #define FFB_FBC_PPC             0x200           /* Pixel Processor Control */
   48 #define FFB_FBC_FG              0x208           /* Foreground */
   49 #define FFB_FBC_BG              0x20c           /* Background */
   50 #define FFB_FBC_FBC             0x254           /* Frame Buffer Control */
   51 #define FFB_FBC_ROP             0x258           /* Raster Operation */
   52 #define FFB_FBC_PMASK           0x290           /* Pixel Mask */
   53 #define FFB_FBC_DRAWOP          0x300           /* Draw Operation */
   54 #define FFB_FBC_FONTXY          0x314           /* Font X/Y */
   55 #define FFB_FBC_FONTW           0x318           /* Font Width */
   56 #define FFB_FBC_FONTINC         0x31c           /* Font Increment */
   57 #define FFB_FBC_FONT            0x320           /* Font Data */
   58 #define FFB_FBC_UCSR            0x900           /* User Control & Status */
   59 
   60 #define FBC_PPC_VCE_DIS         0x00001000
   61 #define FBC_PPC_APE_DIS         0x00000800
   62 #define FBC_PPC_TBE_OPAQUE      0x00000200
   63 #define FBC_PPC_CS_CONST        0x00000003
   64 
   65 #define FFB_FBC_WB_A            0x20000000
   66 #define FFB_FBC_RB_A            0x00004000
   67 #define FFB_FBC_SB_BOTH         0x00003000
   68 #define FFB_FBC_XE_OFF          0x00000040
   69 #define FFB_FBC_RGBE_MASK       0x0000003f
   70 
   71 #define FBC_ROP_NEW             0x83
   72 
   73 #define FBC_DRAWOP_RECTANGLE    0x08
   74 
   75 #define FBC_UCSR_FIFO_OVFL      0x80000000
   76 #define FBC_UCSR_READ_ERR       0x40000000
   77 #define FBC_UCSR_RP_BUSY        0x02000000
   78 #define FBC_UCSR_FB_BUSY        0x01000000
   79 #define FBC_UCSR_FIFO_MASK      0x00000fff
   80 
   81 #define FFB_VIRT_SFB8R          0x00000000
   82 #define FFB_VIRT_SFB8G          0x00400000
   83 #define FFB_VIRT_SFB8B          0x00800000
   84 #define FFB_VIRT_SFB8X          0x00c00000
   85 #define FFB_VIRT_SFB32          0x01000000
   86 #define FFB_VIRT_SFB64          0x02000000
   87 #define FFB_VIRT_FBC            0x04000000
   88 #define FFB_VIRT_FBC_BM         0x04002000
   89 #define FFB_VIRT_DFB8R          0x04004000
   90 #define FFB_VIRT_DFB8G          0x04404000
   91 #define FFB_VIRT_DFB8B          0x04804000
   92 #define FFB_VIRT_DFB8X          0x04c04000
   93 #define FFB_VIRT_DFB24          0x05004000
   94 #define FFB_VIRT_DFB32          0x06004000
   95 #define FFB_VIRT_DFB422A        0x07004000
   96 #define FFB_VIRT_DFB422AD       0x07804000
   97 #define FFB_VIRT_DFB24B         0x08004000
   98 #define FFB_VIRT_DFB422B        0x09004000
   99 #define FFB_VIRT_DFB422BD       0x09804000
  100 #define FFB_VIRT_SFB16Z         0x0a004000
  101 #define FFB_VIRT_SFB8Z          0x0a404000
  102 #define FFB_VIRT_SFB422         0x0ac04000
  103 #define FFB_VIRT_SFB422D        0x0b404000
  104 #define FFB_VIRT_FBC_KREG       0x0bc04000
  105 #define FFB_VIRT_DAC            0x0bc06000
  106 #define FFB_VIRT_PROM           0x0bc08000
  107 #define FFB_VIRT_EXP            0x0bc18000
  108 
  109 #define FFB_PHYS_SFB8R          0x04000000
  110 #define FFB_PHYS_SFB8G          0x04400000
  111 #define FFB_PHYS_SFB8B          0x04800000
  112 #define FFB_PHYS_SFB8X          0x04c00000
  113 #define FFB_PHYS_SFB32          0x05000000
  114 #define FFB_PHYS_SFB64          0x06000000
  115 #define FFB_PHYS_FBC            0x00600000
  116 #define FFB_PHYS_FBC_BM         0x00600000
  117 #define FFB_PHYS_DFB8R          0x01000000
  118 #define FFB_PHYS_DFB8G          0x01400000
  119 #define FFB_PHYS_DFB8B          0x01800000
  120 #define FFB_PHYS_DFB8X          0x01c00000
  121 #define FFB_PHYS_DFB24          0x02000000
  122 #define FFB_PHYS_DFB32          0x03000000
  123 #define FFB_PHYS_DFB422A        0x09000000
  124 #define FFB_PHYS_DFB422AD       0x09800000
  125 #define FFB_PHYS_DFB24B         0x0a000000
  126 #define FFB_PHYS_DFB422B        0x0b000000
  127 #define FFB_PHYS_DFB422BD       0x0b800000
  128 #define FFB_PHYS_SFB16Z         0x0c800000
  129 #define FFB_PHYS_SFB8Z          0x0c000000
  130 #define FFB_PHYS_SFB422         0x0d000000
  131 #define FFB_PHYS_SFB422D        0x0d800000
  132 #define FFB_PHYS_FBC_KREG       0x00610000
  133 #define FFB_PHYS_DAC            0x00400000
  134 #define FFB_PHYS_PROM           0x00000000
  135 #define FFB_PHYS_EXP            0x00200000
  136 
  137 #define FFB_READ(sc, reg, off) \
  138         bus_space_read_4((sc)->sc_bt[(reg)], (sc)->sc_bh[(reg)], (off))
  139 #define FFB_WRITE(sc, reg, off, val) \
  140         bus_space_write_4((sc)->sc_bt[(reg)], (sc)->sc_bh[(reg)], (off), (val))
  141 
  142 struct creator_softc {
  143         video_adapter_t         sc_va;                  /* XXX must be first */
  144 
  145         dev_t                   sc_si;
  146 
  147         struct resource         *sc_reg[FFB_NREG];
  148         bus_space_tag_t         sc_bt[FFB_NREG];
  149         bus_space_handle_t      sc_bh[FFB_NREG];
  150         char                    sc_model[32];
  151         int                     sc_console;
  152         int                     sc_dac;
  153 
  154         int                     sc_height;
  155         int                     sc_width;
  156         int                     sc_ncol;
  157         int                     sc_nrow;
  158 
  159         int                     sc_xmargin;
  160         int                     sc_ymargin;
  161 
  162         u_char                  *sc_font;
  163         int                     *sc_rowp;
  164         int                     *sc_colp;
  165 
  166         int                     sc_bg_cache;
  167         int                     sc_fg_cache;
  168         int                     sc_fifo_cache;
  169 };
  170 
  171 #endif

Cache object: 6db9cfcd130eb98811ce26d8b0502787


[ 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.