call pci_set_drvdata() on attach
authorjsg <jsg@openbsd.org>
Thu, 29 Aug 2024 03:38:13 +0000 (03:38 +0000)
committerjsg <jsg@openbsd.org>
Thu, 29 Aug 2024 03:38:13 +0000 (03:38 +0000)
sys/dev/pci/drm/i915/i915_driver.c
sys/dev/pci/drm/radeon/radeon_drv.c

index 6254eba..00ab1ef 100644 (file)
@@ -2307,6 +2307,8 @@ inteldrm_attach(struct device *parent, struct device *self, void *aux)
                return;
        }
 
+       pci_set_drvdata(dev->pdev, dev_priv);
+
        /* Device parameters start as a copy of module parameters. */
        i915_params_copy(&dev_priv->params, &i915_modparams);
        dev_priv->params.request_timeout_ms = 0;
index 0bf66e8..41837ac 100644 (file)
@@ -1273,10 +1273,11 @@ radeondrm_attachhook(struct device *self)
 
        task_set(&rdev->switchtask, radeondrm_doswitch, ri);
 
-       /*
-        * in linux via radeon_pci_probe -> drm_get_pci_dev -> drm_dev_register
-        */
-       drm_dev_register(rdev->ddev, rdev->flags);
+       /* from linux radeon_pci_probe() */
+
+       pci_set_drvdata(dev->pdev, dev);
+
+       drm_dev_register(dev, rdev->flags);
 
        radeon_fbdev_setup(rdev);