CVS commit: src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device
Module Name:src Committed By: riastradh Date: Sun Dec 19 10:50:23 UTC 2021 Modified Files: src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device: nouveau_nvkm_engine_device_base.c Log Message: Match Linux's criterion for byte-swapping on big-endian CPUs. (forward-ported from r1.10 on HEAD) To generate a diff of this commit: cvs rdiff -u -r1.11 -r1.12 \ src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_base.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/nvkm/engine/device/nouveau_nvkm_engine_device_base.c diff -u src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_base.c:1.11 src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_base.c:1.12 --- src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_base.c:1.11 Sat Dec 18 23:45:34 2021 +++ src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_base.c Sun Dec 19 10:50:22 2021 @@ -1,4 +1,4 @@ -/* $NetBSD: nouveau_nvkm_engine_device_base.c,v 1.11 2021/12/18 23:45:34 riastradh Exp $ */ +/* $NetBSD: nouveau_nvkm_engine_device_base.c,v 1.12 2021/12/19 10:50:22 riastradh Exp $ */ /* * Copyright 2012 Red Hat Inc. @@ -24,7 +24,7 @@ * Authors: Ben Skeggs */ #include -__KERNEL_RCSID(0, "$NetBSD: nouveau_nvkm_engine_device_base.c,v 1.11 2021/12/18 23:45:34 riastradh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: nouveau_nvkm_engine_device_base.c,v 1.12 2021/12/19 10:50:22 riastradh Exp $"); #include "priv.h" #include "acpi.h" @@ -3016,7 +3016,7 @@ nvkm_device_ctor(const struct nvkm_devic #ifndef __BIG_ENDIAN if (bus_space_read_stream_4(mmiot, mmioh, 4) != 0) #else - if (bus_space_read_stream_4(mmiot, mmioh, 4) != 1) + if (bus_space_read_stream_4(mmiot, mmioh, 4) == 0) #endif { bus_space_write_stream_4(mmiot, mmioh, 4, 0x0101);
CVS commit: src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device
Module Name:src Committed By: riastradh Date: Sun Dec 19 10:50:23 UTC 2021 Modified Files: src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device: nouveau_nvkm_engine_device_base.c Log Message: Match Linux's criterion for byte-swapping on big-endian CPUs. (forward-ported from r1.10 on HEAD) To generate a diff of this commit: cvs rdiff -u -r1.11 -r1.12 \ src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_base.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device
Module Name:src Committed By: riastradh Date: Sun Apr 19 18:02:36 UTC 2020 Modified Files: src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device: nouveau_nvkm_engine_device_base.c Log Message: Match Linux's criterion for byte-swapping on big-endian CPUs. To generate a diff of this commit: cvs rdiff -u -r1.9 -r1.10 \ src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_base.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/nvkm/engine/device/nouveau_nvkm_engine_device_base.c diff -u src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_base.c:1.9 src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_base.c:1.10 --- src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_base.c:1.9 Fri Feb 14 04:35:20 2020 +++ src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_base.c Sun Apr 19 18:02:36 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: nouveau_nvkm_engine_device_base.c,v 1.9 2020/02/14 04:35:20 riastradh Exp $ */ +/* $NetBSD: nouveau_nvkm_engine_device_base.c,v 1.10 2020/04/19 18:02:36 riastradh Exp $ */ /* * Copyright 2012 Red Hat Inc. @@ -24,7 +24,7 @@ * Authors: Ben Skeggs */ #include -__KERNEL_RCSID(0, "$NetBSD: nouveau_nvkm_engine_device_base.c,v 1.9 2020/02/14 04:35:20 riastradh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: nouveau_nvkm_engine_device_base.c,v 1.10 2020/04/19 18:02:36 riastradh Exp $"); #include "priv.h" #include "acpi.h" @@ -2386,7 +2386,7 @@ nvkm_device_ctor(const struct nvkm_devic #ifndef __BIG_ENDIAN if (bus_space_read_stream_4(mmiot, mmioh, 4) != 0) #else - if (bus_space_read_stream_4(mmiot, mmioh, 4) != 1) + if (bus_space_read_stream_4(mmiot, mmioh, 4) == 0) #endif { bus_space_write_stream_4(mmiot, mmioh, 4, 0x0101);
CVS commit: src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device
Module Name:src Committed By: riastradh Date: Sun Apr 19 18:02:36 UTC 2020 Modified Files: src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device: nouveau_nvkm_engine_device_base.c Log Message: Match Linux's criterion for byte-swapping on big-endian CPUs. To generate a diff of this commit: cvs rdiff -u -r1.9 -r1.10 \ src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_base.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device
Module Name:src Committed By: jmcneill Date: Fri Jan 17 19:13:25 UTC 2020 Modified Files: src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device: nouveau_nvkm_engine_device_pci.c Log Message: Enable the device on NetBSD too (don't rely on firmware to do it for us). To generate a diff of this commit: cvs rdiff -u -r1.8 -r1.9 \ src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_pci.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/nvkm/engine/device/nouveau_nvkm_engine_device_pci.c diff -u src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_pci.c:1.8 src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_pci.c:1.9 --- src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_pci.c:1.8 Mon Aug 27 14:17:36 2018 +++ src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_pci.c Fri Jan 17 19:13:25 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: nouveau_nvkm_engine_device_pci.c,v 1.8 2018/08/27 14:17:36 riastradh Exp $ */ +/* $NetBSD: nouveau_nvkm_engine_device_pci.c,v 1.9 2020/01/17 19:13:25 jmcneill Exp $ */ /* * Copyright 2015 Red Hat Inc. @@ -24,7 +24,7 @@ * Authors: Ben Skeggs */ #include -__KERNEL_RCSID(0, "$NetBSD: nouveau_nvkm_engine_device_pci.c,v 1.8 2018/08/27 14:17:36 riastradh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: nouveau_nvkm_engine_device_pci.c,v 1.9 2020/01/17 19:13:25 jmcneill Exp $"); #include #include "priv.h" @@ -1673,15 +1673,11 @@ nvkm_device_pci_new(struct pci_dev *pci_ const struct nvkm_device_pci_vendor *pciv; const char *name = NULL; struct nvkm_device_pci *pdev; -#ifndef __NetBSD__ int ret; -#endif -#ifndef __NetBSD__ - ret = pci_enable_device(pci_dev); + ret = linux_pci_enable_device(pci_dev); if (ret) return ret; -#endif switch (pci_dev->vendor) { case 0x10de: pcid = nvkm_device_pci_10de; break;
CVS commit: src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device
Module Name:src Committed By: jmcneill Date: Fri Jan 17 19:13:25 UTC 2020 Modified Files: src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device: nouveau_nvkm_engine_device_pci.c Log Message: Enable the device on NetBSD too (don't rely on firmware to do it for us). To generate a diff of this commit: cvs rdiff -u -r1.8 -r1.9 \ src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_pci.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device
Module Name:src Committed By: riastradh Date: Mon Aug 27 14:18:04 UTC 2018 Modified Files: src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device: nouveau_nvkm_engine_device_user.c Log Message: Don't pass zero to __ffs64 -- it finds zero indigestible. To generate a diff of this commit: cvs rdiff -u -r1.4 -r1.5 \ src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_user.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/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.4 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.4 Mon Aug 27 07:38:56 2018 +++ src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_user.c Mon Aug 27 14:18:04 2018 @@ -1,4 +1,4 @@ -/* $NetBSD: nouveau_nvkm_engine_device_user.c,v 1.4 2018/08/27 07:38:56 riastradh Exp $ */ +/* $NetBSD: nouveau_nvkm_engine_device_user.c,v 1.5 2018/08/27 14:18:04 riastradh Exp $ */ /* * Copyright 2012 Red Hat Inc. @@ -24,7 +24,7 @@ * Authors: Ben Skeggs */ #include -__KERNEL_RCSID(0, "$NetBSD: nouveau_nvkm_engine_device_user.c,v 1.4 2018/08/27 07:38:56 riastradh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: nouveau_nvkm_engine_device_user.c,v 1.5 2018/08/27 14:18:04 riastradh Exp $"); #define nvkm_udevice(p) container_of((p), struct nvkm_udevice, object) #include "priv.h" @@ -281,7 +281,7 @@ nvkm_udevice_child_get(struct nvkm_objec const struct nvkm_device_oclass *sclass = NULL; int i; - for (; i = __ffs64(mask), mask && !sclass; mask &= ~(1ULL << i)) { + for (; mask && !sclass && (i = __ffs64(mask), 1); mask &= ~(1ULL << i)) { if (!(engine = nvkm_device_engine(device, i)) || !(engine->func->base.sclass)) continue;
CVS commit: src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device
Module Name:src Committed By: riastradh Date: Mon Aug 27 14:18:04 UTC 2018 Modified Files: src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device: nouveau_nvkm_engine_device_user.c Log Message: Don't pass zero to __ffs64 -- it finds zero indigestible. To generate a diff of this commit: cvs rdiff -u -r1.4 -r1.5 \ src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_user.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device
Module Name:src Committed By: riastradh Date: Mon Aug 27 14:17:36 UTC 2018 Modified Files: src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device: nouveau_nvkm_engine_device_pci.c Log Message: Device hangs on pci disable in match; try skipping enable/disable. To generate a diff of this commit: cvs rdiff -u -r1.7 -r1.8 \ src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_pci.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/nvkm/engine/device/nouveau_nvkm_engine_device_pci.c diff -u src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_pci.c:1.7 src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_pci.c:1.8 --- src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_pci.c:1.7 Mon Aug 27 07:43:28 2018 +++ src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_pci.c Mon Aug 27 14:17:36 2018 @@ -1,4 +1,4 @@ -/* $NetBSD: nouveau_nvkm_engine_device_pci.c,v 1.7 2018/08/27 07:43:28 riastradh Exp $ */ +/* $NetBSD: nouveau_nvkm_engine_device_pci.c,v 1.8 2018/08/27 14:17:36 riastradh Exp $ */ /* * Copyright 2015 Red Hat Inc. @@ -24,7 +24,7 @@ * Authors: Ben Skeggs */ #include -__KERNEL_RCSID(0, "$NetBSD: nouveau_nvkm_engine_device_pci.c,v 1.7 2018/08/27 07:43:28 riastradh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: nouveau_nvkm_engine_device_pci.c,v 1.8 2018/08/27 14:17:36 riastradh Exp $"); #include #include "priv.h" @@ -1634,7 +1634,9 @@ static void * nvkm_device_pci_dtor(struct nvkm_device *device) { struct nvkm_device_pci *pdev = nvkm_device_pci(device); - linux_pci_disable_device(pdev->pdev); +#ifndef __NetBSD__ + pci_disable_device(pdev->pdev); +#endif return pdev; } @@ -1671,11 +1673,15 @@ nvkm_device_pci_new(struct pci_dev *pci_ const struct nvkm_device_pci_vendor *pciv; const char *name = NULL; struct nvkm_device_pci *pdev; +#ifndef __NetBSD__ int ret; +#endif - ret = linux_pci_enable_device(pci_dev); +#ifndef __NetBSD__ + ret = pci_enable_device(pci_dev); if (ret) return ret; +#endif switch (pci_dev->vendor) { case 0x10de: pcid = nvkm_device_pci_10de; break;
CVS commit: src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device
Module Name:src Committed By: riastradh Date: Mon Aug 27 14:17:36 UTC 2018 Modified Files: src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device: nouveau_nvkm_engine_device_pci.c Log Message: Device hangs on pci disable in match; try skipping enable/disable. To generate a diff of this commit: cvs rdiff -u -r1.7 -r1.8 \ src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_pci.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device
Module Name:src Committed By: riastradh Date: Mon Aug 27 07:43:28 UTC 2018 Modified Files: src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device: nouveau_nvkm_engine_device_pci.c Log Message: Use the struct device pointer that works, not the nonexistent one. To generate a diff of this commit: cvs rdiff -u -r1.6 -r1.7 \ src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_pci.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/nvkm/engine/device/nouveau_nvkm_engine_device_pci.c diff -u src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_pci.c:1.6 src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_pci.c:1.7 --- src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_pci.c:1.6 Mon Aug 27 07:42:46 2018 +++ src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_pci.c Mon Aug 27 07:43:28 2018 @@ -1,4 +1,4 @@ -/* $NetBSD: nouveau_nvkm_engine_device_pci.c,v 1.6 2018/08/27 07:42:46 riastradh Exp $ */ +/* $NetBSD: nouveau_nvkm_engine_device_pci.c,v 1.7 2018/08/27 07:43:28 riastradh Exp $ */ /* * Copyright 2015 Red Hat Inc. @@ -24,7 +24,7 @@ * Authors: Ben Skeggs */ #include -__KERNEL_RCSID(0, "$NetBSD: nouveau_nvkm_engine_device_pci.c,v 1.6 2018/08/27 07:42:46 riastradh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: nouveau_nvkm_engine_device_pci.c,v 1.7 2018/08/27 07:43:28 riastradh Exp $"); #include #include "priv.h" @@ -1709,7 +1709,8 @@ nvkm_device_pci_new(struct pci_dev *pci_ *pdevice = >device; pdev->pdev = pci_dev; - return nvkm_device_ctor(_device_pci_func, quirk, _dev->dev, + return nvkm_device_ctor(_device_pci_func, quirk, +pci_dev_dev(pci_dev), pci_is_pcie(pci_dev) ? NVKM_DEVICE_PCIE : pci_find_capability(pci_dev, PCI_CAP_ID_AGP) ? NVKM_DEVICE_AGP : NVKM_DEVICE_PCI,
CVS commit: src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device
Module Name:src Committed By: riastradh Date: Mon Aug 27 07:43:28 UTC 2018 Modified Files: src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device: nouveau_nvkm_engine_device_pci.c Log Message: Use the struct device pointer that works, not the nonexistent one. To generate a diff of this commit: cvs rdiff -u -r1.6 -r1.7 \ src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_pci.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device
Module Name:src Committed By: riastradh Date: Mon Aug 27 07:42:35 UTC 2018 Modified Files: src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device: nouveau_nvkm_engine_device_pci.c Log Message: Tag the pci_enable/disable_device calls that seem necessary. To generate a diff of this commit: cvs rdiff -u -r1.4 -r1.5 \ src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_pci.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/nvkm/engine/device/nouveau_nvkm_engine_device_pci.c diff -u src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_pci.c:1.4 src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_pci.c:1.5 --- src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_pci.c:1.4 Mon Aug 27 07:42:24 2018 +++ src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_pci.c Mon Aug 27 07:42:35 2018 @@ -1,4 +1,4 @@ -/* $NetBSD: nouveau_nvkm_engine_device_pci.c,v 1.4 2018/08/27 07:42:24 riastradh Exp $ */ +/* $NetBSD: nouveau_nvkm_engine_device_pci.c,v 1.5 2018/08/27 07:42:35 riastradh Exp $ */ /* * Copyright 2015 Red Hat Inc. @@ -24,7 +24,7 @@ * Authors: Ben Skeggs */ #include -__KERNEL_RCSID(0, "$NetBSD: nouveau_nvkm_engine_device_pci.c,v 1.4 2018/08/27 07:42:24 riastradh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: nouveau_nvkm_engine_device_pci.c,v 1.5 2018/08/27 07:42:35 riastradh Exp $"); #include #include "priv.h" @@ -1634,7 +1634,7 @@ static void * nvkm_device_pci_dtor(struct nvkm_device *device) { struct nvkm_device_pci *pdev = nvkm_device_pci(device); - pci_disable_device(pdev->pdev); + linux_pci_disable_device(pdev->pdev); return pdev; } @@ -1665,7 +1665,7 @@ nvkm_device_pci_new(struct pci_dev *pci_ struct nvkm_device_pci *pdev; int ret; - ret = pci_enable_device(pci_dev); + ret = linux_pci_enable_device(pci_dev); if (ret) return ret; @@ -1695,7 +1695,7 @@ nvkm_device_pci_new(struct pci_dev *pci_ } if (!(pdev = kzalloc(sizeof(*pdev), GFP_KERNEL))) { - pci_disable_device(pci_dev); + linux_pci_disable_device(pci_dev); return -ENOMEM; } *pdevice = >device;
CVS commit: src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device
Module Name:src Committed By: riastradh Date: Mon Aug 27 07:42:46 UTC 2018 Modified Files: src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device: nouveau_nvkm_engine_device_pci.c Log Message: Guess the right cpu_coherent setting. To generate a diff of this commit: cvs rdiff -u -r1.5 -r1.6 \ src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_pci.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device
Module Name:src Committed By: riastradh Date: Mon Aug 27 07:42:35 UTC 2018 Modified Files: src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device: nouveau_nvkm_engine_device_pci.c Log Message: Tag the pci_enable/disable_device calls that seem necessary. To generate a diff of this commit: cvs rdiff -u -r1.4 -r1.5 \ src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_pci.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device
Module Name:src Committed By: riastradh Date: Mon Aug 27 07:42:24 UTC 2018 Modified Files: src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device: nouveau_nvkm_engine_device_pci.c Log Message: Ifdef out pci_device_enable/disable that pmf handles for us. To generate a diff of this commit: cvs rdiff -u -r1.3 -r1.4 \ src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_pci.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/nvkm/engine/device/nouveau_nvkm_engine_device_pci.c diff -u src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_pci.c:1.3 src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_pci.c:1.4 --- src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_pci.c:1.3 Mon Aug 27 07:42:13 2018 +++ src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_pci.c Mon Aug 27 07:42:24 2018 @@ -1,4 +1,4 @@ -/* $NetBSD: nouveau_nvkm_engine_device_pci.c,v 1.3 2018/08/27 07:42:13 riastradh Exp $ */ +/* $NetBSD: nouveau_nvkm_engine_device_pci.c,v 1.4 2018/08/27 07:42:24 riastradh Exp $ */ /* * Copyright 2015 Red Hat Inc. @@ -24,7 +24,7 @@ * Authors: Ben Skeggs */ #include -__KERNEL_RCSID(0, "$NetBSD: nouveau_nvkm_engine_device_pci.c,v 1.3 2018/08/27 07:42:13 riastradh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: nouveau_nvkm_engine_device_pci.c,v 1.4 2018/08/27 07:42:24 riastradh Exp $"); #include #include "priv.h" @@ -1607,7 +1607,9 @@ nvkm_device_pci_fini(struct nvkm_device { struct nvkm_device_pci *pdev = nvkm_device_pci(device); if (suspend) { +#ifndef __NetBSD__ /* XXX pmf takes care of this for us. */ pci_disable_device(pdev->pdev); +#endif pdev->suspend = true; } } @@ -1617,10 +1619,12 @@ nvkm_device_pci_preinit(struct nvkm_devi { struct nvkm_device_pci *pdev = nvkm_device_pci(device); if (pdev->suspend) { +#ifndef __NetBSD__ /* XXX pmf takes care of this for us. */ int ret = pci_enable_device(pdev->pdev); if (ret) return ret; pci_set_master(pdev->pdev); +#endif pdev->suspend = false; } return 0;
CVS commit: src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device
Module Name:src Committed By: riastradh Date: Mon Aug 27 07:42:46 UTC 2018 Modified Files: src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device: nouveau_nvkm_engine_device_pci.c Log Message: Guess the right cpu_coherent setting. To generate a diff of this commit: cvs rdiff -u -r1.5 -r1.6 \ src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_pci.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/nvkm/engine/device/nouveau_nvkm_engine_device_pci.c diff -u src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_pci.c:1.5 src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_pci.c:1.6 --- src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_pci.c:1.5 Mon Aug 27 07:42:35 2018 +++ src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_pci.c Mon Aug 27 07:42:46 2018 @@ -1,4 +1,4 @@ -/* $NetBSD: nouveau_nvkm_engine_device_pci.c,v 1.5 2018/08/27 07:42:35 riastradh Exp $ */ +/* $NetBSD: nouveau_nvkm_engine_device_pci.c,v 1.6 2018/08/27 07:42:46 riastradh Exp $ */ /* * Copyright 2015 Red Hat Inc. @@ -24,7 +24,7 @@ * Authors: Ben Skeggs */ #include -__KERNEL_RCSID(0, "$NetBSD: nouveau_nvkm_engine_device_pci.c,v 1.5 2018/08/27 07:42:35 riastradh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: nouveau_nvkm_engine_device_pci.c,v 1.6 2018/08/27 07:42:46 riastradh Exp $"); #include #include "priv.h" @@ -1650,7 +1650,15 @@ nvkm_device_pci_func = { #endif .resource_addr = nvkm_device_pci_resource_addr, .resource_size = nvkm_device_pci_resource_size, +#ifdef __NetBSD__ +# ifdef __arm__ + .cpu_coherent = false, +# else + .cpu_coherent = true, +# endif +#else .cpu_coherent = !IS_ENABLED(CONFIG_ARM), +#endif }; int
CVS commit: src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device
Module Name:src Committed By: riastradh Date: Mon Aug 27 07:42:13 UTC 2018 Modified Files: src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device: nouveau_nvkm_engine_device_pci.c Log Message: Fix typos in pci bus dma tag acquisition. To generate a diff of this commit: cvs rdiff -u -r1.2 -r1.3 \ src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_pci.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device
Module Name:src Committed By: riastradh Date: Mon Aug 27 07:42:13 UTC 2018 Modified Files: src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device: nouveau_nvkm_engine_device_pci.c Log Message: Fix typos in pci bus dma tag acquisition. To generate a diff of this commit: cvs rdiff -u -r1.2 -r1.3 \ src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_pci.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/nvkm/engine/device/nouveau_nvkm_engine_device_pci.c diff -u src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_pci.c:1.2 src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_pci.c:1.3 --- src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_pci.c:1.2 Mon Aug 27 04:58:31 2018 +++ src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_pci.c Mon Aug 27 07:42:13 2018 @@ -1,4 +1,4 @@ -/* $NetBSD: nouveau_nvkm_engine_device_pci.c,v 1.2 2018/08/27 04:58:31 riastradh Exp $ */ +/* $NetBSD: nouveau_nvkm_engine_device_pci.c,v 1.3 2018/08/27 07:42:13 riastradh Exp $ */ /* * Copyright 2015 Red Hat Inc. @@ -24,7 +24,7 @@ * Authors: Ben Skeggs */ #include -__KERNEL_RCSID(0, "$NetBSD: nouveau_nvkm_engine_device_pci.c,v 1.2 2018/08/27 04:58:31 riastradh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: nouveau_nvkm_engine_device_pci.c,v 1.3 2018/08/27 07:42:13 riastradh Exp $"); #include #include "priv.h" @@ -1566,13 +1566,14 @@ nvkm_device_pci(struct nvkm_device *devi } #ifdef __NetBSD__ +#include static bus_dma_tag_t nvkm_device_pci_dma_tag(struct nvkm_device *device) { struct nvkm_device_pci *pdev = nvkm_device_pci(device); - const struct pci_attach_args *pa = >pd_pa; + const struct pci_attach_args *pa = >pdev->pd_pa; - return pci_dma64_avaliable(pa) ? pa->pa_dmat64 : pa->pa_dmat; + return pci_dma64_available(pa) ? pa->pa_dmat64 : pa->pa_dmat; } static bus_space_tag_t
CVS commit: src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device
Module Name:src Committed By: riastradh Date: Mon Aug 27 07:42:24 UTC 2018 Modified Files: src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device: nouveau_nvkm_engine_device_pci.c Log Message: Ifdef out pci_device_enable/disable that pmf handles for us. To generate a diff of this commit: cvs rdiff -u -r1.3 -r1.4 \ src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_pci.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device
Module Name:src Committed By: riastradh Date: Mon Aug 27 07:39:33 UTC 2018 Modified Files: src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device: nouveau_nvkm_engine_device_base.c Log Message: Fix typos. Use BUS_SPACE_MAP_LINEAR for vaddr later. To generate a diff of this commit: cvs rdiff -u -r1.4 -r1.5 \ src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_base.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/nvkm/engine/device/nouveau_nvkm_engine_device_base.c diff -u src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_base.c:1.4 src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_base.c:1.5 --- src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_base.c:1.4 Mon Aug 27 07:39:20 2018 +++ src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_base.c Mon Aug 27 07:39:33 2018 @@ -1,4 +1,4 @@ -/* $NetBSD: nouveau_nvkm_engine_device_base.c,v 1.4 2018/08/27 07:39:20 riastradh Exp $ */ +/* $NetBSD: nouveau_nvkm_engine_device_base.c,v 1.5 2018/08/27 07:39:33 riastradh Exp $ */ /* * Copyright 2012 Red Hat Inc. @@ -24,7 +24,7 @@ * Authors: Ben Skeggs */ #include -__KERNEL_RCSID(0, "$NetBSD: nouveau_nvkm_engine_device_base.c,v 1.4 2018/08/27 07:39:20 riastradh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: nouveau_nvkm_engine_device_base.c,v 1.5 2018/08/27 07:39:33 riastradh Exp $"); #include "priv.h" #include "acpi.h" @@ -2562,14 +2562,15 @@ nvkm_device_ctor(const struct nvkm_devic if (mmio) { #ifdef __NetBSD__ /* XXX errno NetBSD->Linux */ - ret = -bus_space_map(mmiot, mmio_base, mmio_size, 0, ); + ret = -bus_space_map(mmiot, mmio_base, mmio_size, + BUS_SPACE_MAP_LINEAR, ); if (ret) { nvdev_error(device, "unable to map device registers\n"); goto done; /* XXX Linux leaks mutex */ } device->mmiot = mmiot; device->mmioh = mmioh; - device->mmiosz = mmiosz; + device->mmiosz = mmio_size; #else device->pri = ioremap(mmio_base, mmio_size); if (!device->pri) {
CVS commit: src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device
Module Name:src Committed By: riastradh Date: Mon Aug 27 07:39:33 UTC 2018 Modified Files: src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device: nouveau_nvkm_engine_device_base.c Log Message: Fix typos. Use BUS_SPACE_MAP_LINEAR for vaddr later. To generate a diff of this commit: cvs rdiff -u -r1.4 -r1.5 \ src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_base.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.