Module Name: src Committed By: riastradh Date: Sun Dec 19 01:50:00 UTC 2021
Modified Files: src/sys/external/bsd/drm2/dist/drm/radeon: radeon_fb.c radeon_fence.c radeon_si_dpm.c radeon_ttm.c Log Message: Fix up radeon. Enough to make it compile. (Next up: make it link.) To generate a diff of this commit: cvs rdiff -u -r1.11 -r1.12 \ src/sys/external/bsd/drm2/dist/drm/radeon/radeon_fb.c cvs rdiff -u -r1.17 -r1.18 \ src/sys/external/bsd/drm2/dist/drm/radeon/radeon_fence.c cvs rdiff -u -r1.5 -r1.6 \ src/sys/external/bsd/drm2/dist/drm/radeon/radeon_si_dpm.c cvs rdiff -u -r1.18 -r1.19 \ src/sys/external/bsd/drm2/dist/drm/radeon/radeon_ttm.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/radeon/radeon_fb.c diff -u src/sys/external/bsd/drm2/dist/drm/radeon/radeon_fb.c:1.11 src/sys/external/bsd/drm2/dist/drm/radeon/radeon_fb.c:1.12 --- src/sys/external/bsd/drm2/dist/drm/radeon/radeon_fb.c:1.11 Sat Dec 18 23:45:43 2021 +++ src/sys/external/bsd/drm2/dist/drm/radeon/radeon_fb.c Sun Dec 19 01:50:00 2021 @@ -1,4 +1,4 @@ -/* $NetBSD: radeon_fb.c,v 1.11 2021/12/18 23:45:43 riastradh Exp $ */ +/* $NetBSD: radeon_fb.c,v 1.12 2021/12/19 01:50:00 riastradh Exp $ */ /* * Copyright © 2007 David Airlie @@ -27,7 +27,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: radeon_fb.c,v 1.11 2021/12/18 23:45:43 riastradh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: radeon_fb.c,v 1.12 2021/12/19 01:50:00 riastradh Exp $"); #include <linux/module.h> #include <linux/pci.h> @@ -258,10 +258,10 @@ static int radeonfb_create(struct drm_fb rbo = gem_to_radeon_bo(gobj); #ifdef __NetBSD__ - ret = radeon_framebuffer_init(rdev->ddev, &rfbdev->rfb, &mode_cmd, gobj); + ret = radeon_framebuffer_init(rdev->ddev, &rfbdev->fb, &mode_cmd, gobj); if (ret) { DRM_ERROR("failed to initialize framebuffer %d\n", ret); - goto out_unref; + goto out; } (void)memset(rbo->kptr, 0, radeon_bo_size(rbo)); @@ -279,10 +279,10 @@ static int radeonfb_create(struct drm_fb CFARGS(.iattr = "radeonfbbus")); if (helper->fbdev == NULL) { DRM_ERROR("failed to attach genfb\n"); - goto out_unref; + goto out; } } - fb = &rfbdev->rfb.base; + fb = &rfbdev->fb; rfbdev->helper.fb = fb; #else /* okay we have an object now allocate the framebuffer */ Index: src/sys/external/bsd/drm2/dist/drm/radeon/radeon_fence.c diff -u src/sys/external/bsd/drm2/dist/drm/radeon/radeon_fence.c:1.17 src/sys/external/bsd/drm2/dist/drm/radeon/radeon_fence.c:1.18 --- src/sys/external/bsd/drm2/dist/drm/radeon/radeon_fence.c:1.17 Sat Dec 18 23:45:43 2021 +++ src/sys/external/bsd/drm2/dist/drm/radeon/radeon_fence.c Sun Dec 19 01:50:00 2021 @@ -1,4 +1,4 @@ -/* $NetBSD: radeon_fence.c,v 1.17 2021/12/18 23:45:43 riastradh Exp $ */ +/* $NetBSD: radeon_fence.c,v 1.18 2021/12/19 01:50:00 riastradh Exp $ */ /* * Copyright 2009 Jerome Glisse. @@ -32,7 +32,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: radeon_fence.c,v 1.17 2021/12/18 23:45:43 riastradh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: radeon_fence.c,v 1.18 2021/12/19 01:50:00 riastradh Exp $"); #include <linux/atomic.h> #include <linux/firmware.h> @@ -1188,7 +1188,7 @@ static inline bool radeon_test_signaled( #ifdef __NetBSD__ static void -radeon_fence_wakeup_cb(struct fence *fence, struct fence_cb *cb) +radeon_fence_wakeup_cb(struct dma_fence *fence, struct dma_fence_cb *cb) { struct radeon_fence *rfence = to_radeon_fence(fence); struct radeon_device *rdev = rfence->rdev; @@ -1198,14 +1198,14 @@ radeon_fence_wakeup_cb(struct fence *fen } static signed long -radeon_fence_default_wait(struct fence *f, bool intr, signed long timo) +radeon_fence_default_wait(struct dma_fence *f, bool intr, signed long timo) { - struct fence_cb fcb; + struct dma_fence_cb fcb; struct radeon_fence *fence = to_radeon_fence(f); struct radeon_device *rdev = fence->rdev; int r; - r = fence_add_callback(f, &fcb, radeon_fence_wakeup_cb); + r = dma_fence_add_callback(f, &fcb, radeon_fence_wakeup_cb); if (r) /* fence is done already */ return timo; @@ -1221,7 +1221,7 @@ radeon_fence_default_wait(struct fence * } spin_unlock(&rdev->fence_lock); - (void)fence_remove_callback(f, &fcb); + (void)dma_fence_remove_callback(f, &fcb); return r; } Index: src/sys/external/bsd/drm2/dist/drm/radeon/radeon_si_dpm.c diff -u src/sys/external/bsd/drm2/dist/drm/radeon/radeon_si_dpm.c:1.5 src/sys/external/bsd/drm2/dist/drm/radeon/radeon_si_dpm.c:1.6 --- src/sys/external/bsd/drm2/dist/drm/radeon/radeon_si_dpm.c:1.5 Sat Dec 18 23:45:43 2021 +++ src/sys/external/bsd/drm2/dist/drm/radeon/radeon_si_dpm.c Sun Dec 19 01:50:00 2021 @@ -1,4 +1,4 @@ -/* $NetBSD: radeon_si_dpm.c,v 1.5 2021/12/18 23:45:43 riastradh Exp $ */ +/* $NetBSD: radeon_si_dpm.c,v 1.6 2021/12/19 01:50:00 riastradh Exp $ */ /* * Copyright 2013 Advanced Micro Devices, Inc. @@ -24,7 +24,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: radeon_si_dpm.c,v 1.5 2021/12/18 23:45:43 riastradh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: radeon_si_dpm.c,v 1.6 2021/12/19 01:50:00 riastradh Exp $"); #include <linux/math64.h> #include <linux/pci.h> @@ -6907,8 +6907,10 @@ int si_dpm_init(struct radeon_device *rd struct ni_power_info *ni_pi; struct si_power_info *si_pi; struct atom_clock_dividers dividers; +#ifndef __NetBSD__ /* XXX radeon pcie */ enum pci_bus_speed speed_cap = PCI_SPEED_UNKNOWN; struct pci_dev *root = rdev->pdev->bus->self; +#endif int ret; si_pi = kzalloc(sizeof(struct si_power_info), GFP_KERNEL); Index: src/sys/external/bsd/drm2/dist/drm/radeon/radeon_ttm.c diff -u src/sys/external/bsd/drm2/dist/drm/radeon/radeon_ttm.c:1.18 src/sys/external/bsd/drm2/dist/drm/radeon/radeon_ttm.c:1.19 --- src/sys/external/bsd/drm2/dist/drm/radeon/radeon_ttm.c:1.18 Sat Dec 18 23:45:43 2021 +++ src/sys/external/bsd/drm2/dist/drm/radeon/radeon_ttm.c Sun Dec 19 01:50:00 2021 @@ -1,4 +1,4 @@ -/* $NetBSD: radeon_ttm.c,v 1.18 2021/12/18 23:45:43 riastradh Exp $ */ +/* $NetBSD: radeon_ttm.c,v 1.19 2021/12/19 01:50:00 riastradh Exp $ */ /* * Copyright 2009 Jerome Glisse. @@ -33,7 +33,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: radeon_ttm.c,v 1.18 2021/12/18 23:45:43 riastradh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: radeon_ttm.c,v 1.19 2021/12/19 01:50:00 riastradh Exp $"); #include <linux/dma-mapping.h> #include <linux/pagemap.h> @@ -202,8 +202,13 @@ static int radeon_verify_access(struct t if (radeon_ttm_tt_has_userptr(bo->ttm)) return -EPERM; +#ifdef __NetBSD__ + struct drm_file *drm_file = filp->f_data; + return drm_vma_node_verify_access(&rbo->gem_base.vma_node, drm_file); +#else return drm_vma_node_verify_access(&rbo->tbo.base.vma_node, filp->private_data); +#endif } static void radeon_move_null(struct ttm_buffer_object *bo,