destroy_tty_buffer_list(&list_remove);
 }
 
-/**
- * hvc_iucv_pm_freeze() - Freeze PM callback
- * @dev:       IUVC HVC terminal device
- *
- * Sever an established IUCV communication path and
- * trigger a hang-up of the underlying HVC terminal.
- */
-static int hvc_iucv_pm_freeze(struct device *dev)
-{
-       struct hvc_iucv_private *priv = dev_get_drvdata(dev);
-
-       local_bh_disable();
-       hvc_iucv_hangup(priv);
-       local_bh_enable();
-
-       return 0;
-}
-
-/**
- * hvc_iucv_pm_restore_thaw() - Thaw and restore PM callback
- * @dev:       IUVC HVC terminal device
- *
- * Wake up the HVC thread to trigger hang-up and respective
- * HVC back-end notifier invocations.
- */
-static int hvc_iucv_pm_restore_thaw(struct device *dev)
-{
-       hvc_kick();
-       return 0;
-}
-
 static ssize_t hvc_iucv_dev_termid_show(struct device *dev,
                                        struct device_attribute *attr,
                                        char *buf)
        .dtr_rts = hvc_iucv_dtr_rts,
 };
 
-/* Suspend / resume device operations */
-static const struct dev_pm_ops hvc_iucv_pm_ops = {
-       .freeze   = hvc_iucv_pm_freeze,
-       .thaw     = hvc_iucv_pm_restore_thaw,
-       .restore  = hvc_iucv_pm_restore_thaw,
-};
-
-/* IUCV HVC device driver */
-static struct device_driver hvc_iucv_driver = {
-       .name = KMSG_COMPONENT,
-       .bus  = &iucv_bus,
-       .pm   = &hvc_iucv_pm_ops,
-};
-
 /* IUCV HVC device attributes */
 static DEVICE_ATTR(termid, 0640, hvc_iucv_dev_termid_show, NULL);
 static DEVICE_ATTR(state, 0640, hvc_iucv_dev_state_show, NULL);
        dev_set_drvdata(priv->dev, priv);
        priv->dev->bus = &iucv_bus;
        priv->dev->parent = iucv_root;
-       priv->dev->driver = &hvc_iucv_driver;
        priv->dev->groups = hvc_iucv_dev_attr_groups;
        priv->dev->release = (void (*)(struct device *)) kfree;
        rc = device_register(priv->dev);
                goto out_error;
        }
 
-       /* register IUCV HVC device driver */
-       rc = driver_register(&hvc_iucv_driver);
-       if (rc)
-               goto out_error;
-
        /* parse hvc_iucv_allow string and create z/VM user ID filter list */
        if (hvc_iucv_filter_string) {
                rc = hvc_iucv_setup_filter(hvc_iucv_filter_string);