if (rc)
                goto out;
 
-       rp->clttydev = device_create(class3270, &rp->cdev->dev,
-                                    MKDEV(IBM_TTY3270_MAJOR, rp->minor),
-                                    "tty%s", rp->cdev->dev.bus_id);
+       rp->clttydev = device_create_drvdata(class3270, &rp->cdev->dev,
+                                            MKDEV(IBM_TTY3270_MAJOR, rp->minor),
+                                            NULL,
+                                            "tty%s", rp->cdev->dev.bus_id);
        if (IS_ERR(rp->clttydev)) {
                rc = PTR_ERR(rp->clttydev);
                goto out_ttydev;
        }
 
-       rp->cltubdev = device_create(class3270, &rp->cdev->dev,
-                                    MKDEV(IBM_FS3270_MAJOR, rp->minor),
-                                    "tub%s", rp->cdev->dev.bus_id);
+       rp->cltubdev = device_create_drvdata(class3270, &rp->cdev->dev,
+                                            MKDEV(IBM_FS3270_MAJOR, rp->minor),
+                                            NULL,
+                                            "tub%s", rp->cdev->dev.bus_id);
        if (!IS_ERR(rp->cltubdev))
                goto out;
 
 
        if (rc)
                goto fail_with_cdev;
 
-       tcd->class_device = device_create(tape_class, device,
-                                         tcd->char_device->dev,
-                                         "%s", tcd->device_name
-                       );
+       tcd->class_device = device_create_drvdata(tape_class, device,
+                                                 tcd->char_device->dev,
+                                                 NULL, "%s", tcd->device_name);
        rc = IS_ERR(tcd->class_device) ? PTR_ERR(tcd->class_device) : 0;
        if (rc)
                goto fail_with_cdev;
 
                goto fail_free_cdev;
        }
 
-       urd->device = device_create(vmur_class, NULL, urd->char_device->dev,
-                                       "%s", node_id);
+       urd->device = device_create_drvdata(vmur_class, NULL,
+                                           urd->char_device->dev, NULL,
+                                           "%s", node_id);
        if (IS_ERR(urd->device)) {
                rc = PTR_ERR(urd->device);
                TRACE("ur_set_online: device_create rc=%d\n", rc);