Module Name: src
Committed By: riastradh
Date: Tue Jul 19 22:24:34 UTC 2022
Modified Files:
src/sys/external/bsd/drm2/dist/drm: drm_agpsupport.c
src/sys/external/bsd/drm2/dist/include/drm: drm_agpsupport.h
src/sys/external/bsd/drm2/drm: drm_agp_hook.c
src/sys/external/bsd/drm2/linux: linux_pci.c
Log Message:
drm: Nix drm_agp_borrow.
This horrible kludge dates from before I understood the relation of
genfb_pci and pci drm drivers in the old and new worlds of drm.
The only user of it, in i915, was changed to use agp_i810_borrow
directly in the last drm update, so this hack can die.
To generate a diff of this commit:
cvs rdiff -u -r1.12 -r1.13 \
src/sys/external/bsd/drm2/dist/drm/drm_agpsupport.c
cvs rdiff -u -r1.9 -r1.10 \
src/sys/external/bsd/drm2/dist/include/drm/drm_agpsupport.h
cvs rdiff -u -r1.6 -r1.7 src/sys/external/bsd/drm2/drm/drm_agp_hook.c
cvs rdiff -u -r1.21 -r1.22 src/sys/external/bsd/drm2/linux/linux_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/drm_agpsupport.c
diff -u src/sys/external/bsd/drm2/dist/drm/drm_agpsupport.c:1.12 src/sys/external/bsd/drm2/dist/drm/drm_agpsupport.c:1.13
--- src/sys/external/bsd/drm2/dist/drm/drm_agpsupport.c:1.12 Sat Dec 18 23:44:57 2021
+++ src/sys/external/bsd/drm2/dist/drm/drm_agpsupport.c Tue Jul 19 22:24:33 2022
@@ -1,4 +1,4 @@
-/* $NetBSD: drm_agpsupport.c,v 1.12 2021/12/18 23:44:57 riastradh Exp $ */
+/* $NetBSD: drm_agpsupport.c,v 1.13 2022/07/19 22:24:33 riastradh Exp $ */
/*
* \file drm_agpsupport.c
@@ -34,7 +34,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: drm_agpsupport.c,v 1.12 2021/12/18 23:44:57 riastradh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: drm_agpsupport.c,v 1.13 2022/07/19 22:24:33 riastradh Exp $");
#include <linux/module.h>
#include <linux/pci.h>
@@ -527,24 +527,8 @@ static void drm_agp_clear_hook(struct dr
dev->agp->acquired = 0;
dev->agp->enabled = 0;
}
-#ifdef __NetBSD__
-
-static void __pci_iomem *
-drm_agp_borrow_hook(struct drm_device *dev, unsigned i, bus_size_t size)
-{
- struct pci_dev *pdev = dev->pdev;
- if (!agp_i810_borrow(pdev->pd_resources[i].addr, size,
- &pdev->pd_resources[i].bsh))
- return NULL;
- /* XXX Synchronize with pci_iomap in linux_pci.c. */
- pdev->pd_resources[i].bst = pdev->pd_pa.pa_memt;
- pdev->pd_resources[i].kva = bus_space_vaddr(pdev->pd_resources[i].bst,
- pdev->pd_resources[i].bsh);
- pdev->pd_resources[i].mapped = true;
-
- return pdev->pd_resources[i].kva;
-}
+#ifdef __NetBSD__
static void
drm_agp_flush_hook(void)
@@ -572,7 +556,6 @@ static const struct drm_agp_hooks agp_ho
.agph_free_ioctl = drm_agp_free_ioctl_hook,
.agph_init = drm_agp_init_hook,
.agph_clear = drm_agp_clear_hook,
- .agph_borrow = drm_agp_borrow_hook,
.agph_flush = drm_agp_flush_hook,
};
@@ -622,6 +605,8 @@ drmkms_agp_modcmd(modcmd_t cmd, void *ar
if (error)
return error;
return 0;
+ case MODULE_CMD_AUTOUNLOAD:
+ return EBUSY;
case MODULE_CMD_FINI:
error = drmkms_agp_fini();
if (error)
Index: src/sys/external/bsd/drm2/dist/include/drm/drm_agpsupport.h
diff -u src/sys/external/bsd/drm2/dist/include/drm/drm_agpsupport.h:1.9 src/sys/external/bsd/drm2/dist/include/drm/drm_agpsupport.h:1.10
--- src/sys/external/bsd/drm2/dist/include/drm/drm_agpsupport.h:1.9 Sat Dec 18 23:45:45 2021
+++ src/sys/external/bsd/drm2/dist/include/drm/drm_agpsupport.h Tue Jul 19 22:24:34 2022
@@ -1,4 +1,4 @@
-/* $NetBSD: drm_agpsupport.h,v 1.9 2021/12/18 23:45:45 riastradh Exp $ */
+/* $NetBSD: drm_agpsupport.h,v 1.10 2022/07/19 22:24:34 riastradh Exp $ */
/* SPDX-License-Identifier: GPL-2.0 */
#ifndef _DRM_AGPSUPPORT_H_
@@ -20,8 +20,6 @@ struct drm_device;
struct drm_file;
struct drm_agp_hooks {
- void __pci_iomem *
- (*agph_borrow)(struct drm_device *, unsigned, bus_size_t);
void (*agph_flush)(void);
struct drm_agp_head *
@@ -108,7 +106,6 @@ int drm_agp_bind_ioctl(struct drm_device
struct drm_file *file_priv);
#ifdef __NetBSD__
-void __pci_iomem *drm_agp_borrow(struct drm_device *, unsigned, bus_size_t);
void drm_agp_flush(void);
void drm_agp_fini(struct drm_device *);
int drm_agp_register(const struct drm_agp_hooks *);
Index: src/sys/external/bsd/drm2/drm/drm_agp_hook.c
diff -u src/sys/external/bsd/drm2/drm/drm_agp_hook.c:1.6 src/sys/external/bsd/drm2/drm/drm_agp_hook.c:1.7
--- src/sys/external/bsd/drm2/drm/drm_agp_hook.c:1.6 Sun Dec 19 09:52:00 2021
+++ src/sys/external/bsd/drm2/drm/drm_agp_hook.c Tue Jul 19 22:24:34 2022
@@ -1,4 +1,4 @@
-/* $NetBSD: drm_agp_hook.c,v 1.6 2021/12/19 09:52:00 riastradh Exp $ */
+/* $NetBSD: drm_agp_hook.c,v 1.7 2022/07/19 22:24:34 riastradh Exp $ */
/*-
* Copyright (c) 2018 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: drm_agp_hook.c,v 1.6 2021/12/19 09:52:00 riastradh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: drm_agp_hook.c,v 1.7 2022/07/19 22:24:34 riastradh Exp $");
#include <sys/types.h>
#include <sys/condvar.h>
@@ -264,20 +264,6 @@ DEFINE_AGP_HOOK_IOCTL(drm_agp_free_ioctl
DEFINE_AGP_HOOK_IOCTL(drm_agp_bind_ioctl, agph_bind_ioctl)
DEFINE_AGP_HOOK_IOCTL(drm_agp_unbind_ioctl, agph_unbind_ioctl)
-void __pci_iomem *
-drm_agp_borrow(struct drm_device *dev, unsigned bar, bus_size_t size)
-{
- const struct drm_agp_hooks *hooks;
- void __pci_iomem *iomem;
-
- if ((hooks = drm_agp_hooks_acquire()) == NULL)
- return NULL;
- iomem = hooks->agph_borrow(dev, bar, size);
- drm_agp_hooks_release(hooks);
-
- return iomem;
-}
-
void
drm_agp_flush(void)
{
Index: src/sys/external/bsd/drm2/linux/linux_pci.c
diff -u src/sys/external/bsd/drm2/linux/linux_pci.c:1.21 src/sys/external/bsd/drm2/linux/linux_pci.c:1.22
--- src/sys/external/bsd/drm2/linux/linux_pci.c:1.21 Sun Feb 27 14:19:20 2022
+++ src/sys/external/bsd/drm2/linux/linux_pci.c Tue Jul 19 22:24:34 2022
@@ -1,4 +1,4 @@
-/* $NetBSD: linux_pci.c,v 1.21 2022/02/27 14:19:20 riastradh Exp $ */
+/* $NetBSD: linux_pci.c,v 1.22 2022/07/19 22:24:34 riastradh Exp $ */
/*-
* Copyright (c) 2013 The NetBSD Foundation, Inc.
@@ -35,7 +35,7 @@
#endif
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: linux_pci.c,v 1.21 2022/02/27 14:19:20 riastradh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: linux_pci.c,v 1.22 2022/07/19 22:24:34 riastradh Exp $");
#if NACPICA > 0
#include <dev/acpi/acpivar.h>
@@ -639,7 +639,6 @@ pci_iomap(struct pci_dev *pdev, unsigned
&pdev->pd_resources[i].bsh);
if (error)
return NULL;
- /* XXX Synchronize with drm_agp_borrow_hook in drm_agpsupport.c. */
pdev->pd_resources[i].bst = pdev->pd_pa.pa_memt;
pdev->pd_resources[i].kva = bus_space_vaddr(pdev->pd_resources[i].bst,
pdev->pd_resources[i].bsh);