~ubuntu-branches/ubuntu/maverick/libdrm/maverick-proposed

« back to all changes in this revision

Viewing changes to libdrm/nouveau/nouveau_grobj.h

  • Committer: Bazaar Package Importer
  • Author(s): Timo Aaltonen
  • Date: 2010-01-09 00:00:29 UTC
  • mfrom: (1.3.3 upstream)
  • mto: (2.2.9 experimental)
  • mto: This revision was merged to the branch mainline in revision 39.
  • Revision ID: james.westby@ubuntu.com-20100109000029-yhmol07llcxuzk0c
Tags: upstream-2.4.17
ImportĀ upstreamĀ versionĀ 2.4.17

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/*
2
 
 * Copyright 2007 Nouveau Project
3
 
 *
4
 
 * Permission is hereby granted, free of charge, to any person obtaining a
5
 
 * copy of this software and associated documentation files (the "Software"),
6
 
 * to deal in the Software without restriction, including without limitation
7
 
 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
8
 
 * and/or sell copies of the Software, and to permit persons to whom the
9
 
 * Software is furnished to do so, subject to the following conditions:
10
 
 *
11
 
 * The above copyright notice and this permission notice shall be included in
12
 
 * all copies or substantial portions of the Software.
13
 
 *
14
 
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15
 
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16
 
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
17
 
 * THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
18
 
 * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
19
 
 * OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
20
 
 * SOFTWARE.
21
 
 */
22
 
 
23
 
#ifndef __NOUVEAU_GROBJ_H__
24
 
#define __NOUVEAU_GROBJ_H__
25
 
 
26
 
#include "nouveau_channel.h"
27
 
 
28
 
struct nouveau_grobj {
29
 
        struct nouveau_channel *channel;
30
 
        int grclass;
31
 
        uint32_t handle;
32
 
 
33
 
        enum {
34
 
                NOUVEAU_GROBJ_UNBOUND = 0,
35
 
                NOUVEAU_GROBJ_BOUND = 1,
36
 
                NOUVEAU_GROBJ_BOUND_EXPLICIT = 2
37
 
        } bound;
38
 
        int subc;
39
 
};
40
 
 
41
 
int nouveau_grobj_alloc(struct nouveau_channel *, uint32_t handle,
42
 
                               int class, struct nouveau_grobj **);
43
 
int nouveau_grobj_ref(struct nouveau_channel *, uint32_t handle,
44
 
                             struct nouveau_grobj **);
45
 
void nouveau_grobj_free(struct nouveau_grobj **);
46
 
void nouveau_grobj_autobind(struct nouveau_grobj *);
47
 
 
48
 
#endif