[Nouveau] [PATCH] gr/nv3x: fix instobj write offsets in gr setup

Ilia Mirkin imirkin at alum.mit.edu
Wed Jul 27 23:18:10 UTC 2016


On Wed, Jul 27, 2016 at 7:16 PM, Ilia Mirkin <imirkin at alum.mit.edu> wrote:
> This should fix some unaligned access warnings. This is also likely to
> fix non-descript issues on nv30/nv34 as a result of incorrect channel
> setup.
>
> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=96836
> Signed-off-by: Ilia Mirkin <imirkin at alum.mit.edu>

Oh, this should probably also have a

Cc: stable at vger.kernel.org

> ---
>  drm/nouveau/nvkm/engine/gr/nv30.c | 4 ++--
>  drm/nouveau/nvkm/engine/gr/nv34.c | 4 ++--
>  2 files changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/drm/nouveau/nvkm/engine/gr/nv30.c b/drm/nouveau/nvkm/engine/gr/nv30.c
> index 69de8c6..f1e15a4 100644
> --- a/drm/nouveau/nvkm/engine/gr/nv30.c
> +++ b/drm/nouveau/nvkm/engine/gr/nv30.c
> @@ -76,8 +76,8 @@ nv30_gr_chan_new(struct nvkm_gr *base, struct nvkm_fifo_chan *fifoch,
>                 nvkm_wo32(chan->inst, i, 0x00040004);
>         for (i = 0x1f18; i <= 0x3088 ; i += 16) {
>                 nvkm_wo32(chan->inst, i + 0, 0x10700ff9);
> -               nvkm_wo32(chan->inst, i + 1, 0x0436086c);
> -               nvkm_wo32(chan->inst, i + 2, 0x000c001b);
> +               nvkm_wo32(chan->inst, i + 4, 0x0436086c);
> +               nvkm_wo32(chan->inst, i + 8, 0x000c001b);
>         }
>         for (i = 0x30b8; i < 0x30c8; i += 4)
>                 nvkm_wo32(chan->inst, i, 0x0000ffff);
> diff --git a/drm/nouveau/nvkm/engine/gr/nv34.c b/drm/nouveau/nvkm/engine/gr/nv34.c
> index 2207dac..300f5ed 100644
> --- a/drm/nouveau/nvkm/engine/gr/nv34.c
> +++ b/drm/nouveau/nvkm/engine/gr/nv34.c
> @@ -75,8 +75,8 @@ nv34_gr_chan_new(struct nvkm_gr *base, struct nvkm_fifo_chan *fifoch,
>                 nvkm_wo32(chan->inst, i, 0x00040004);
>         for (i = 0x15ac; i <= 0x271c ; i += 16) {
>                 nvkm_wo32(chan->inst, i + 0, 0x10700ff9);
> -               nvkm_wo32(chan->inst, i + 1, 0x0436086c);
> -               nvkm_wo32(chan->inst, i + 2, 0x000c001b);
> +               nvkm_wo32(chan->inst, i + 4, 0x0436086c);
> +               nvkm_wo32(chan->inst, i + 8, 0x000c001b);
>         }
>         for (i = 0x274c; i < 0x275c; i += 4)
>                 nvkm_wo32(chan->inst, i, 0x0000ffff);
> --
> 2.7.3
>


More information about the Nouveau mailing list