Module Name: src Committed By: riastradh Date: Mon Aug 27 14:54:33 UTC 2018
Modified Files: src/sys/external/bsd/drm2/dist/drm/nouveau/include/nvif: ioctl.h src/sys/external/bsd/drm2/dist/drm/nouveau/include/nvkm/core: object.h src/sys/external/bsd/drm2/dist/drm/nouveau/include/nvkm/engine: dma.h src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/core: nouveau_nvkm_core_object.c nouveau_nvkm_core_oproxy.c src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device: nouveau_nvkm_engine_device_user.c src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/disp: nouveau_nvkm_engine_disp_channv50.c src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/fifo: nouveau_nvkm_engine_fifo_chan.c Log Message: Mark some NetBSDisms as such. To generate a diff of this commit: cvs rdiff -u -r1.3 -r1.4 \ src/sys/external/bsd/drm2/dist/drm/nouveau/include/nvif/ioctl.h cvs rdiff -u -r1.4 -r1.5 \ src/sys/external/bsd/drm2/dist/drm/nouveau/include/nvkm/core/object.h cvs rdiff -u -r1.3 -r1.4 \ src/sys/external/bsd/drm2/dist/drm/nouveau/include/nvkm/engine/dma.h cvs rdiff -u -r1.5 -r1.6 \ src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/core/nouveau_nvkm_core_object.c cvs rdiff -u -r1.3 -r1.4 \ src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/core/nouveau_nvkm_core_oproxy.c cvs rdiff -u -r1.5 -r1.6 \ src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_user.c cvs rdiff -u -r1.4 -r1.5 \ src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/disp/nouveau_nvkm_engine_disp_channv50.c cvs rdiff -u -r1.7 -r1.8 \ src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/fifo/nouveau_nvkm_engine_fifo_chan.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/external/bsd/drm2/dist/drm/nouveau/include/nvif/ioctl.h diff -u src/sys/external/bsd/drm2/dist/drm/nouveau/include/nvif/ioctl.h:1.3 src/sys/external/bsd/drm2/dist/drm/nouveau/include/nvif/ioctl.h:1.4 --- src/sys/external/bsd/drm2/dist/drm/nouveau/include/nvif/ioctl.h:1.3 Mon Aug 27 07:35:56 2018 +++ src/sys/external/bsd/drm2/dist/drm/nouveau/include/nvif/ioctl.h Mon Aug 27 14:54:32 2018 @@ -1,4 +1,4 @@ -/* $NetBSD: ioctl.h,v 1.3 2018/08/27 07:35:56 riastradh Exp $ */ +/* $NetBSD: ioctl.h,v 1.4 2018/08/27 14:54:32 riastradh Exp $ */ #ifndef __NVIF_IOCTL_H__ #define __NVIF_IOCTL_H__ @@ -20,7 +20,10 @@ struct nvif_ioctl_v0 { #define NVIF_IOCTL_V0_NTFY_DEL 0x0a #define NVIF_IOCTL_V0_NTFY_GET 0x0b #define NVIF_IOCTL_V0_NTFY_PUT 0x0c -#define NVIF_IOCTL_V0_MAP_NETBSD 0x0d +#ifdef __NetBSD__ +/* XXX Kludge for NetBSD kernel-only use. */ +#define NVIF_IOCTL_V0_MAP_NETBSD 0x0d +#endif __u8 type; __u8 pad02[4]; #define NVIF_IOCTL_V0_OWNER_NVIF 0x00 Index: src/sys/external/bsd/drm2/dist/drm/nouveau/include/nvkm/core/object.h diff -u src/sys/external/bsd/drm2/dist/drm/nouveau/include/nvkm/core/object.h:1.4 src/sys/external/bsd/drm2/dist/drm/nouveau/include/nvkm/core/object.h:1.5 --- src/sys/external/bsd/drm2/dist/drm/nouveau/include/nvkm/core/object.h:1.4 Mon Aug 27 07:36:07 2018 +++ src/sys/external/bsd/drm2/dist/drm/nouveau/include/nvkm/core/object.h Mon Aug 27 14:54:32 2018 @@ -1,4 +1,4 @@ -/* $NetBSD: object.h,v 1.4 2018/08/27 07:36:07 riastradh Exp $ */ +/* $NetBSD: object.h,v 1.5 2018/08/27 14:54:32 riastradh Exp $ */ #ifndef __NVKM_OBJECT_H__ #define __NVKM_OBJECT_H__ @@ -21,7 +21,9 @@ struct nvkm_object { u64 token; u64 object; struct rb_node node; +#ifdef __NetBSD__ bool on_tree; +#endif }; struct nvkm_object_func { @@ -60,8 +62,12 @@ int nvkm_object_init(struct nvkm_object int nvkm_object_fini(struct nvkm_object *, bool suspend); int nvkm_object_mthd(struct nvkm_object *, u32 mthd, void *data, u32 size); int nvkm_object_ntfy(struct nvkm_object *, u32 mthd, struct nvkm_event **); +#ifdef __NetBSD__ int nvkm_object_map(struct nvkm_object *, bus_space_tag_t *, u64 *addr, u32 *size); +#else +int nvkm_object_map(struct nvkm_object *, u64 *addr, u32 *size); +#endif int nvkm_object_rd08(struct nvkm_object *, u64 addr, u8 *data); int nvkm_object_rd16(struct nvkm_object *, u64 addr, u16 *data); int nvkm_object_rd32(struct nvkm_object *, u64 addr, u32 *data); Index: src/sys/external/bsd/drm2/dist/drm/nouveau/include/nvkm/engine/dma.h diff -u src/sys/external/bsd/drm2/dist/drm/nouveau/include/nvkm/engine/dma.h:1.3 src/sys/external/bsd/drm2/dist/drm/nouveau/include/nvkm/engine/dma.h:1.4 --- src/sys/external/bsd/drm2/dist/drm/nouveau/include/nvkm/engine/dma.h:1.3 Mon Aug 27 07:36:07 2018 +++ src/sys/external/bsd/drm2/dist/drm/nouveau/include/nvkm/engine/dma.h Mon Aug 27 14:54:32 2018 @@ -1,4 +1,4 @@ -/* $NetBSD: dma.h,v 1.3 2018/08/27 07:36:07 riastradh Exp $ */ +/* $NetBSD: dma.h,v 1.4 2018/08/27 14:54:32 riastradh Exp $ */ #ifndef __NVKM_DMA_H__ #define __NVKM_DMA_H__ @@ -16,7 +16,9 @@ struct nvkm_dmaobj { u64 limit; struct rb_node rb; +#ifdef __NetBSD__ bool on_tree; +#endif u64 handle; /*XXX HANDLE MERGE */ }; Index: src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/core/nouveau_nvkm_core_object.c diff -u src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/core/nouveau_nvkm_core_object.c:1.5 src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/core/nouveau_nvkm_core_object.c:1.6 --- src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/core/nouveau_nvkm_core_object.c:1.5 Mon Aug 27 07:39:20 2018 +++ src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/core/nouveau_nvkm_core_object.c Mon Aug 27 14:54:33 2018 @@ -1,4 +1,4 @@ -/* $NetBSD: nouveau_nvkm_core_object.c,v 1.5 2018/08/27 07:39:20 riastradh Exp $ */ +/* $NetBSD: nouveau_nvkm_core_object.c,v 1.6 2018/08/27 14:54:33 riastradh Exp $ */ /* * Copyright 2012 Red Hat Inc. @@ -24,7 +24,7 @@ * Authors: Ben Skeggs */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: nouveau_nvkm_core_object.c,v 1.5 2018/08/27 07:39:20 riastradh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: nouveau_nvkm_core_object.c,v 1.6 2018/08/27 14:54:33 riastradh Exp $"); #include <core/object.h> #include <core/client.h> @@ -47,6 +47,7 @@ nvkm_object_ntfy(struct nvkm_object *obj return -ENODEV; } +#ifdef __NetBSD__ int nvkm_object_map(struct nvkm_object *object, bus_space_tag_t *tagp, u64 *addr, u32 *size) @@ -55,6 +56,15 @@ nvkm_object_map(struct nvkm_object *obje return object->func->map(object, tagp, addr, size); return -ENODEV; } +#else +int +nvkm_object_map(struct nvkm_object *object, u64 *addr, u32 *size) +{ + if (likely(object->func->map)) + return object->func->map(object, addr, size); + return -ENODEV; +} +#endif int nvkm_object_rd08(struct nvkm_object *object, u64 addr, u8 *data) Index: src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/core/nouveau_nvkm_core_oproxy.c diff -u src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/core/nouveau_nvkm_core_oproxy.c:1.3 src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/core/nouveau_nvkm_core_oproxy.c:1.4 --- src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/core/nouveau_nvkm_core_oproxy.c:1.3 Mon Aug 27 07:35:56 2018 +++ src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/core/nouveau_nvkm_core_oproxy.c Mon Aug 27 14:54:33 2018 @@ -1,4 +1,4 @@ -/* $NetBSD: nouveau_nvkm_core_oproxy.c,v 1.3 2018/08/27 07:35:56 riastradh Exp $ */ +/* $NetBSD: nouveau_nvkm_core_oproxy.c,v 1.4 2018/08/27 14:54:33 riastradh Exp $ */ /* * Copyright 2015 Red Hat Inc. @@ -24,7 +24,7 @@ * Authors: Ben Skeggs <bske...@redhat.com> */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: nouveau_nvkm_core_oproxy.c,v 1.3 2018/08/27 07:35:56 riastradh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: nouveau_nvkm_core_oproxy.c,v 1.4 2018/08/27 14:54:33 riastradh Exp $"); #include <core/oproxy.h> @@ -41,12 +41,20 @@ nvkm_oproxy_ntfy(struct nvkm_object *obj return nvkm_object_ntfy(nvkm_oproxy(object)->object, mthd, pevent); } +#ifdef __NetBSD__ static int nvkm_oproxy_map(struct nvkm_object *object, bus_space_tag_t *tagp, u64 *addr, u32 *size) { return nvkm_object_map(nvkm_oproxy(object)->object, tagp, addr, size); } +#else +static int +nvkm_oproxy_map(struct nvkm_object *object, u64 *addr, u32 *size) +{ + return nvkm_object_map(nvkm_oproxy(object)->object, addr, size); +} +#endif static int nvkm_oproxy_rd08(struct nvkm_object *object, u64 addr, u8 *data) Index: src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_user.c diff -u src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_user.c:1.5 src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_user.c:1.6 --- src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_user.c:1.5 Mon Aug 27 14:18:04 2018 +++ src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_user.c Mon Aug 27 14:54:33 2018 @@ -1,4 +1,4 @@ -/* $NetBSD: nouveau_nvkm_engine_device_user.c,v 1.5 2018/08/27 14:18:04 riastradh Exp $ */ +/* $NetBSD: nouveau_nvkm_engine_device_user.c,v 1.6 2018/08/27 14:54:33 riastradh Exp $ */ /* * Copyright 2012 Red Hat Inc. @@ -24,7 +24,7 @@ * Authors: Ben Skeggs */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: nouveau_nvkm_engine_device_user.c,v 1.5 2018/08/27 14:18:04 riastradh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: nouveau_nvkm_engine_device_user.c,v 1.6 2018/08/27 14:54:33 riastradh Exp $"); #define nvkm_udevice(p) container_of((p), struct nvkm_udevice, object) #include "priv.h" @@ -205,12 +205,18 @@ nvkm_udevice_wr32(struct nvkm_object *ob } static int +#ifdef __NetBSD__ nvkm_udevice_map(struct nvkm_object *object, bus_space_tag_t *tagp, u64 *addr, u32 *size) +#else +nvkm_udevice_map(struct nvkm_object *object, u64 *addr, u32 *size) +#endif { struct nvkm_udevice *udev = nvkm_udevice(object); struct nvkm_device *device = udev->device; +#ifdef __NetBSD__ *tagp = device->func->resource_tag(device, 0); +#endif *addr = device->func->resource_addr(device, 0); *size = device->func->resource_size(device, 0); return 0; Index: src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/disp/nouveau_nvkm_engine_disp_channv50.c diff -u src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/disp/nouveau_nvkm_engine_disp_channv50.c:1.4 src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/disp/nouveau_nvkm_engine_disp_channv50.c:1.5 --- src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/disp/nouveau_nvkm_engine_disp_channv50.c:1.4 Mon Aug 27 07:38:56 2018 +++ src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/disp/nouveau_nvkm_engine_disp_channv50.c Mon Aug 27 14:54:33 2018 @@ -1,4 +1,4 @@ -/* $NetBSD: nouveau_nvkm_engine_disp_channv50.c,v 1.4 2018/08/27 07:38:56 riastradh Exp $ */ +/* $NetBSD: nouveau_nvkm_engine_disp_channv50.c,v 1.5 2018/08/27 14:54:33 riastradh Exp $ */ /* * Copyright 2012 Red Hat Inc. @@ -24,7 +24,7 @@ * Authors: Ben Skeggs */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: nouveau_nvkm_engine_disp_channv50.c,v 1.4 2018/08/27 07:38:56 riastradh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: nouveau_nvkm_engine_disp_channv50.c,v 1.5 2018/08/27 14:54:33 riastradh Exp $"); #include "channv50.h" #include "rootnv50.h" @@ -195,13 +195,19 @@ nv50_disp_chan_ntfy(struct nvkm_object * } static int +#ifdef __NetBSD__ nv50_disp_chan_map(struct nvkm_object *object, bus_space_tag_t *tagp, u64 *addr, u32 *size) +#else +nv50_disp_chan_map(struct nvkm_object *object, u64 *addr, u32 *size) +#endif { struct nv50_disp_chan *chan = nv50_disp_chan(object); struct nv50_disp *disp = chan->root->disp; struct nvkm_device *device = disp->base.engine.subdev.device; +#ifdef __NetBSD__ *tagp = device->func->resource_tag(device, 0); +#endif *addr = device->func->resource_addr(device, 0) + 0x640000 + (chan->chid * 0x1000); *size = 0x001000; Index: src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/fifo/nouveau_nvkm_engine_fifo_chan.c diff -u src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/fifo/nouveau_nvkm_engine_fifo_chan.c:1.7 src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/fifo/nouveau_nvkm_engine_fifo_chan.c:1.8 --- src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/fifo/nouveau_nvkm_engine_fifo_chan.c:1.7 Mon Aug 27 14:51:55 2018 +++ src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/fifo/nouveau_nvkm_engine_fifo_chan.c Mon Aug 27 14:54:33 2018 @@ -1,4 +1,4 @@ -/* $NetBSD: nouveau_nvkm_engine_fifo_chan.c,v 1.7 2018/08/27 14:51:55 riastradh Exp $ */ +/* $NetBSD: nouveau_nvkm_engine_fifo_chan.c,v 1.8 2018/08/27 14:54:33 riastradh Exp $ */ /* * Copyright 2012 Red Hat Inc. @@ -24,7 +24,7 @@ * Authors: Ben Skeggs */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: nouveau_nvkm_engine_fifo_chan.c,v 1.7 2018/08/27 14:51:55 riastradh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: nouveau_nvkm_engine_fifo_chan.c,v 1.8 2018/08/27 14:54:33 riastradh Exp $"); #include "chan.h" @@ -258,12 +258,18 @@ nvkm_fifo_chan_ntfy(struct nvkm_object * } static int +#ifdef __NetBSD__ nvkm_fifo_chan_map(struct nvkm_object *object, bus_space_tag_t *tagp, u64 *addr, u32 *size) +#else +nvkm_fifo_chan_map(struct nvkm_object *object, u64 *addr, u32 *size) +#endif { struct nvkm_fifo_chan *chan = nvkm_fifo_chan(object); +#ifdef __NetBSD__ /* XXX Uh oh. Can't map this more than once. OK? */ *tagp = chan->bst; +#endif *addr = chan->addr; *size = chan->size; return 0;