1 diff -Nur Mesa-7.5.orig/src/gallium/drivers/nv50/nv50_state_validate.c Mesa-7.5/src/gallium/drivers/nv50/nv50_state_validate.c
2 --- Mesa-7.5.orig/src/gallium/drivers/nv50/nv50_state_validate.c 2009-06-26 20:21:59.000000000 +0200
3 +++ Mesa-7.5/src/gallium/drivers/nv50/nv50_state_validate.c 2009-08-06 03:30:12.000000000 +0200
8 - so_method(so, tesla, NV50TCL_VIEWPORT_UNK1(0), 3);
9 + so_method(so, tesla, NV50TCL_VIEWPORT_TRANSLATE(0), 3);
10 so_data (so, fui(nv50->viewport.translate[0]));
11 so_data (so, fui(nv50->viewport.translate[1]));
12 so_data (so, fui(nv50->viewport.translate[2]));
13 - so_method(so, tesla, NV50TCL_VIEWPORT_UNK0(0), 3);
14 + so_method(so, tesla, NV50TCL_VIEWPORT_SCALE(0), 3);
15 so_data (so, fui(nv50->viewport.scale[0]));
16 so_data (so, fui(-nv50->viewport.scale[1]));
17 so_data (so, fui(nv50->viewport.scale[2]));
18 diff -Nur Mesa-7.5.orig/src/gallium/drivers/nv50/nv50_surface.c Mesa-7.5/src/gallium/drivers/nv50/nv50_surface.c
19 --- Mesa-7.5.orig/src/gallium/drivers/nv50/nv50_surface.c 2009-06-26 20:21:59.000000000 +0200
20 +++ Mesa-7.5/src/gallium/drivers/nv50/nv50_surface.c 2009-08-06 03:30:12.000000000 +0200
23 case PIPE_FORMAT_A8R8G8B8_UNORM:
24 case PIPE_FORMAT_Z24S8_UNORM:
25 - return NV50_2D_DST_FORMAT_32BPP;
26 + return NV50_2D_DST_FORMAT_A8R8G8B8_UNORM;
27 case PIPE_FORMAT_X8R8G8B8_UNORM:
28 - return NV50_2D_DST_FORMAT_24BPP;
29 + return NV50_2D_DST_FORMAT_X8R8G8B8_UNORM;
30 case PIPE_FORMAT_R5G6B5_UNORM:
31 - return NV50_2D_DST_FORMAT_16BPP;
32 + return NV50_2D_DST_FORMAT_R5G6B5_UNORM;
33 case PIPE_FORMAT_A8_UNORM:
34 - return NV50_2D_DST_FORMAT_8BPP;
35 + return NV50_2D_DST_FORMAT_R8_UNORM;
44 + if (bo->tile_flags != 0x2800 && bo->tile_flags != 0x7000) {
45 BEGIN_RING(chan, eng2d, mthd, 2);
46 OUT_RING (chan, format);
48 diff -Nur Mesa-7.5.orig/src/gallium/drivers/nv50/nv50_transfer.c Mesa-7.5/src/gallium/drivers/nv50/nv50_transfer.c
49 --- Mesa-7.5.orig/src/gallium/drivers/nv50/nv50_transfer.c 2009-06-26 20:21:59.000000000 +0200
50 +++ Mesa-7.5/src/gallium/drivers/nv50/nv50_transfer.c 2009-08-06 03:30:12.000000000 +0200
55 - if (!src_bo->tiled) {
56 + if (src_bo->tile_flags != 0x2800 && src_bo->tile_flags != 0x7000) {
57 BEGIN_RING(chan, m2mf, 0x0200, 1);
59 BEGIN_RING(chan, m2mf, 0x0314, 1);
64 - if (!dst_bo->tiled) {
65 + if (dst_bo->tile_flags != 0x2800 && dst_bo->tile_flags != 0x7000) {
66 BEGIN_RING(chan, m2mf, 0x021c, 1);
68 BEGIN_RING(chan, m2mf, 0x0318, 1);
70 BEGIN_RING(chan, m2mf, 0x030c, 2);
71 OUT_RELOCl(chan, src_bo, src_offset, src_reloc);
72 OUT_RELOCl(chan, dst_bo, dst_offset, dst_reloc);
73 - if (src_bo->tiled) {
74 + if (src_bo->tile_flags == 0x2800 || src_bo->tile_flags == 0x7000) {
75 BEGIN_RING(chan, m2mf, 0x0218, 1);
76 OUT_RING (chan, (dy << 16) | sx);
78 src_offset += (line_count * src_pitch);
80 - if (dst_bo->tiled) {
81 + if (dst_bo->tile_flags == 0x2800 || dst_bo->tile_flags == 0x7000) {
82 BEGIN_RING(chan, m2mf, 0x0234, 1);
83 OUT_RING (chan, (sy << 16) | dx);
85 diff -Nur Mesa-7.5.orig/src/gallium/winsys/drm/nouveau/dri/nouveau_screen.c Mesa-7.5/src/gallium/winsys/drm/nouveau/dri/nouveau_screen.c
86 --- Mesa-7.5.orig/src/gallium/winsys/drm/nouveau/dri/nouveau_screen.c 2009-06-26 20:21:59.000000000 +0200
87 +++ Mesa-7.5/src/gallium/winsys/drm/nouveau/dri/nouveau_screen.c 2009-08-06 03:31:04.000000000 +0200
89 #include "nouveau_drm.h"
90 #include "nouveau_drmif.h"
92 -#if NOUVEAU_DRM_HEADER_PATCHLEVEL != 12
93 +#if NOUVEAU_DRM_HEADER_PATCHLEVEL != 15
94 #error nouveau_drm.h version does not match expected version
97 diff -Nur Mesa-7.5.orig/src/gallium/winsys/drm/nouveau/drm/nouveau_winsys.c Mesa-7.5/src/gallium/winsys/drm/nouveau/drm/nouveau_winsys.c
98 --- Mesa-7.5.orig/src/gallium/winsys/drm/nouveau/drm/nouveau_winsys.c 2009-06-26 20:21:59.000000000 +0200
99 +++ Mesa-7.5/src/gallium/winsys/drm/nouveau/drm/nouveau_winsys.c 2009-08-06 03:30:12.000000000 +0200
101 struct nouveau_bo *bo = nouveau_pipe_buffer(buf)->bo;
103 return nouveau_pushbuf_emit_reloc(nvws->channel, ptr, bo,
104 - data, flags, vor, tor);
105 + data, 0, flags, vor, tor);
109 diff -Nur Mesa-7.5.orig/src/gallium/winsys/g3dvl/nouveau/nouveau_screen_vl.c Mesa-7.5/src/gallium/winsys/g3dvl/nouveau/nouveau_screen_vl.c
110 --- Mesa-7.5.orig/src/gallium/winsys/g3dvl/nouveau/nouveau_screen_vl.c 2009-05-07 17:34:49.000000000 +0200
111 +++ Mesa-7.5/src/gallium/winsys/g3dvl/nouveau/nouveau_screen_vl.c 2009-08-06 03:31:23.000000000 +0200
113 #include <common/nouveau_dri.h>
114 #include <common/nouveau_local.h>
116 -#if NOUVEAU_DRM_HEADER_PATCHLEVEL != 12
117 +#if NOUVEAU_DRM_HEADER_PATCHLEVEL != 15
118 #error nouveau_drm.h version does not match expected version