diff options
author | Ben Skeggs <bskeggs@redhat.com> | 2020-06-20 17:51:49 +1000 |
---|---|---|
committer | Ben Skeggs <bskeggs@redhat.com> | 2020-07-24 18:51:00 +1000 |
commit | b11d8ca151d08e9ce8f0d8fa3cac561a7e76cf63 (patch) | |
tree | 1967ba5b7dc9f8c79245d21c4a90304f37aee8e4 /drivers/gpu/drm/nouveau/dispnv50/corec57d.c | |
parent | 9f7ffb49ee6b80a339191a8c282fdf1c89fc01f7 (diff) | |
download | linux-stable-b11d8ca151d08e9ce8f0d8fa3cac561a7e76cf63.tar.gz linux-stable-b11d8ca151d08e9ce8f0d8fa3cac561a7e76cf63.tar.bz2 linux-stable-b11d8ca151d08e9ce8f0d8fa3cac561a7e76cf63.zip |
drm/nouveau/kms/nv50-: use NVIDIA's headers for core init()
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Reviewed-by: Lyude Paul <lyude@redhat.com>
Diffstat (limited to 'drivers/gpu/drm/nouveau/dispnv50/corec57d.c')
-rw-r--r-- | drivers/gpu/drm/nouveau/dispnv50/corec57d.c | 20 |
1 files changed, 16 insertions, 4 deletions
diff --git a/drivers/gpu/drm/nouveau/dispnv50/corec57d.c b/drivers/gpu/drm/nouveau/dispnv50/corec57d.c index afc703a05fea..75876546eac1 100644 --- a/drivers/gpu/drm/nouveau/dispnv50/corec57d.c +++ b/drivers/gpu/drm/nouveau/dispnv50/corec57d.c @@ -24,6 +24,8 @@ #include <nvif/pushc37b.h> +#include <nvhw/class/clc57d.h> + static int corec57d_init(struct nv50_core *core) { @@ -34,12 +36,22 @@ corec57d_init(struct nv50_core *core) if ((ret = PUSH_WAIT(push, 2 + windows * 5))) return ret; - PUSH_NVSQ(push, NVC57D, 0x0208, core->chan.sync.handle); + PUSH_MTHD(push, NVC57D, SET_CONTEXT_DMA_NOTIFIER, core->chan.sync.handle); for (i = 0; i < windows; i++) { - PUSH_NVSQ(push, NVC57D, 0x1004 + (i * 0x080), 0x0000000f, - 0x1008 + (i * 0x080), 0x00000000); - PUSH_NVSQ(push, NVC57D, 0x1010 + (i * 0x080), 0x00117fff); + PUSH_MTHD(push, NVC57D, WINDOW_SET_WINDOW_FORMAT_USAGE_BOUNDS(i), + NVDEF(NVC57D, WINDOW_SET_WINDOW_FORMAT_USAGE_BOUNDS, RGB_PACKED1BPP, TRUE) | + NVDEF(NVC57D, WINDOW_SET_WINDOW_FORMAT_USAGE_BOUNDS, RGB_PACKED2BPP, TRUE) | + NVDEF(NVC57D, WINDOW_SET_WINDOW_FORMAT_USAGE_BOUNDS, RGB_PACKED4BPP, TRUE) | + NVDEF(NVC57D, WINDOW_SET_WINDOW_FORMAT_USAGE_BOUNDS, RGB_PACKED8BPP, TRUE), + + WINDOW_SET_WINDOW_ROTATED_FORMAT_USAGE_BOUNDS(i), 0x00000000); + + PUSH_MTHD(push, NVC57D, WINDOW_SET_WINDOW_USAGE_BOUNDS(i), + NVVAL(NVC57D, WINDOW_SET_WINDOW_USAGE_BOUNDS, MAX_PIXELS_FETCHED_PER_LINE, 0x7fff) | + NVDEF(NVC57D, WINDOW_SET_WINDOW_USAGE_BOUNDS, ILUT_ALLOWED, TRUE) | + NVDEF(NVC57D, WINDOW_SET_WINDOW_USAGE_BOUNDS, INPUT_SCALER_TAPS, TAPS_2) | + NVDEF(NVC57D, WINDOW_SET_WINDOW_USAGE_BOUNDS, UPSCALING_ALLOWED, FALSE)); } core->assign_windows = true; |