ARM: pmu: add support for interrupt-affinity property
[linux/fpc-iii.git] / drivers / gpu / drm / nouveau / nvkm / subdev / fb / nv04.h
blobcaa0d03aaacc9bf1ef9cd070dbde9a1ccf0d6a59
1 #ifndef __NVKM_FB_NV04_H__
2 #define __NVKM_FB_NV04_H__
3 #include "priv.h"
5 struct nv04_fb_priv {
6 struct nvkm_fb base;
7 };
9 int nv04_fb_ctor(struct nvkm_object *, struct nvkm_object *,
10 struct nvkm_oclass *, void *, u32,
11 struct nvkm_object **);
13 struct nv04_fb_impl {
14 struct nvkm_fb_impl base;
15 struct {
16 int regions;
17 void (*init)(struct nvkm_fb *, int i, u32 addr, u32 size,
18 u32 pitch, u32 flags, struct nvkm_fb_tile *);
19 void (*comp)(struct nvkm_fb *, int i, u32 size, u32 flags,
20 struct nvkm_fb_tile *);
21 void (*fini)(struct nvkm_fb *, int i,
22 struct nvkm_fb_tile *);
23 void (*prog)(struct nvkm_fb *, int i,
24 struct nvkm_fb_tile *);
25 } tile;
28 void nv10_fb_tile_init(struct nvkm_fb *, int i, u32 addr, u32 size,
29 u32 pitch, u32 flags, struct nvkm_fb_tile *);
30 void nv10_fb_tile_fini(struct nvkm_fb *, int i, struct nvkm_fb_tile *);
31 void nv10_fb_tile_prog(struct nvkm_fb *, int, struct nvkm_fb_tile *);
33 void nv20_fb_tile_init(struct nvkm_fb *, int i, u32 addr, u32 size,
34 u32 pitch, u32 flags, struct nvkm_fb_tile *);
35 void nv20_fb_tile_fini(struct nvkm_fb *, int i, struct nvkm_fb_tile *);
36 void nv20_fb_tile_prog(struct nvkm_fb *, int, struct nvkm_fb_tile *);
38 int nv30_fb_init(struct nvkm_object *);
39 void nv30_fb_tile_init(struct nvkm_fb *, int i, u32 addr, u32 size,
40 u32 pitch, u32 flags, struct nvkm_fb_tile *);
42 void nv40_fb_tile_comp(struct nvkm_fb *, int i, u32 size, u32 flags,
43 struct nvkm_fb_tile *);
45 int nv41_fb_init(struct nvkm_object *);
46 void nv41_fb_tile_prog(struct nvkm_fb *, int, struct nvkm_fb_tile *);
48 int nv44_fb_init(struct nvkm_object *);
49 void nv44_fb_tile_prog(struct nvkm_fb *, int, struct nvkm_fb_tile *);
51 void nv46_fb_tile_init(struct nvkm_fb *, int i, u32 addr, u32 size,
52 u32 pitch, u32 flags, struct nvkm_fb_tile *);
53 #endif