* This routine is called from nvidia_attach(), multiple times
* when more than one device is installed.
*/
+#if __DragonFly_version < 200205
dev_ops_add(&nvidia_ctl_ops, -1, CDEV_CTL_MINOR);
+#endif
nvidia_ctl_cdev = make_dev(&nvidia_ctl_ops,
CDEV_CTL_MINOR,
UID_ROOT, GID_WHEEL, 0666,
"%s", nvidia_ctl_ops.head.name);
- reference_dev(nvidia_ctl_cdev);
}
nvidia_count++;
* Like nvidia_ctl_attach(), nvidia_ctl_detach() will also be
* called more than once with multiple devices.
*/
+#if __DragonFly_version < 200205
dev_ops_remove(&nvidia_ctl_ops, -1, CDEV_CTL_MINOR);
+#endif
destroy_dev(nvidia_ctl_cdev);
}
int nvidia_dev_attach(struct nvidia_softc *sc)
{
+#if __DragonFly_version < 200205
dev_ops_add(&nvidia_dev_ops, -1, device_get_unit(sc->dev));
+#endif
sc->cdev = make_dev(&nvidia_dev_ops,
device_get_unit(sc->dev),
UID_ROOT, GID_WHEEL, 0666,
"%s%d", nvidia_dev_ops.head.name,
device_get_unit(sc->dev));
- reference_dev(sc->cdev);
return 0;
}
int nvidia_dev_detach(struct nvidia_softc *sc)
{
+#if __DragonFly_version < 200205
dev_ops_remove(&nvidia_dev_ops, -1, device_get_unit(sc->dev));
+#endif
destroy_dev(sc->cdev);
return 0;
}