~ubuntu-branches/ubuntu/edgy/xorg-server/edgy-updates

« back to all changes in this revision

Viewing changes to hw/kdrive/smi/smidraw.h

  • Committer: Bazaar Package Importer
  • Author(s): Rodrigo Parra Novo
  • Date: 2006-07-25 20:06:28 UTC
  • mfrom: (1.1.4 upstream)
  • Revision ID: james.westby@ubuntu.com-20060725200628-gjmmd9gxfxdc4ejs
Tags: 1:1.1.1-0ubuntu1
* New Upstream version
* Changed Build-Depends from mesa-swrast-source to mesa-swx11-source,
  following Debian package nomenclature
* Re-did 12_security_policy_in_etc.diff for 1.1.1
* Dropped 15_security_allocate_local.diff (applied upstream)
* Dropped 16_SECURITY_setuid.diff (applied upstream)
* Dropped 000_ubuntu_fix_read_kernel_mapping.patch (applied upstream)
* Dropped 002_ubuntu_fix_for_certain_intel_chipsets.patch (applied upstream)
* Updated versioned Build-Depends on mesa-swx11-source to version
  6.5.0.cvs.20060725-0ubuntu1
* Added arrayobj.c, arrayobj.h, bitset.h & rbadaptors.h to
  GL/symlink-mesa.sh (linked from mesa-swx11-source)
* Added arrayobj.c to default build target on GL/mesa/main

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
2
 * Id: smidraw.h,v 1.1 1999/11/02 03:54:47 keithp Exp $
 
3
 *
 
4
 * Copyright � 1999 Keith Packard
 
5
 *
 
6
 * Permission to use, copy, modify, distribute, and sell this software and its
 
7
 * documentation for any purpose is hereby granted without fee, provided that
 
8
 * the above copyright notice appear in all copies and that both that
 
9
 * copyright notice and this permission notice appear in supporting
 
10
 * documentation, and that the name of Keith Packard not be used in
 
11
 * advertising or publicity pertaining to distribution of the software without
 
12
 * specific, written prior permission.  Keith Packard makes no
 
13
 * representations about the suitability of this software for any purpose.  It
 
14
 * is provided "as is" without express or implied warranty.
 
15
 *
 
16
 * KEITH PACKARD DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
 
17
 * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
 
18
 * EVENT SHALL KEITH PACKARD BE LIABLE FOR ANY SPECIAL, INDIRECT OR
 
19
 * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
 
20
 * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
 
21
 * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
 
22
 * PERFORMANCE OF THIS SOFTWARE.
 
23
 */
 
24
/* $XFree86: xc/programs/Xserver/hw/kdrive/mach64/mach64draw.h,v 1.1 2001/06/03 18:48:19 keithp Exp $ */
 
25
 
 
26
#ifndef _SMIDRAW_H_
 
27
#define _SMIDRAW_H_
 
28
 
 
29
#define SetupSmi(s) KdScreenPriv(s); \
 
30
                    smiCardInfo(pScreenPriv); \
 
31
                    Cop     *cop = smic->cop
 
32
 
 
33
#define SmiAlpha        (COP_MULTI_ALPHA|COP_ALPHA_WRITE_ENABLE)
 
34
 
 
35
#define _smiInit(cop,smic) { \
 
36
    if ((cop)->status == 0xffffffff) smiSetMMIO(smic); \
 
37
    (cop)->multi = (smic)->cop_depth; \
 
38
    (cop)->multi = (smic)->cop_stride; \
 
39
    (cop)->multi = SmiAlpha; \
 
40
} \
 
41
 
 
42
#define _smiSetSolidRect(cop,pix,alu,cmd) {\
 
43
    cop->multi = COP_MULTI_PATTERN; \
 
44
    cop->multi = COP_MULTI_ROP | smiRop[alu]; \
 
45
    cop->fg = (pix); \
 
46
    cmd = COP_OP_BLT | COP_SCL_OPAQUE | COP_OP_ROP | COP_OP_FG; \
 
47
}
 
48
 
 
49
#define _smiRect(cop,x1,y1,x2,y2,cmd) { \
 
50
    (cop)->dst_start_xy = TRI_XY (x1,y1); \
 
51
    (cop)->dst_end_xy = TRI_XY(x2,y2); \
 
52
    _smiWaitDone(cop); \
 
53
    (cop)->command = (cmd); \
 
54
}
 
55
 
 
56
#define COP_STATUS_BUSY (COP_STATUS_BE_BUSY | \
 
57
                         COP_STATUS_DPE_BUSY | \
 
58
                         COP_STATUS_MI_BUSY)
 
59
 
 
60
#define _smiWaitDone(cop)   { \
 
61
    int __q__ = 500000; \
 
62
    while (__q__-- && (cop)->status & COP_STATUS_BUSY) \
 
63
        ; \
 
64
    if (!__q__) \
 
65
        (cop)->status = 0;  \
 
66
}
 
67
 
 
68
#define _smiWaitIdleEmpty(cop)  _smiWaitDone(cop)
 
69
 
 
70
#define sourceInvarient(alu)    (((alu) & 3) == (((alu) >> 2) & 3))
 
71
 
 
72
#endif