int error;
        int irq;
 
-       match = of_match_node(of_tps6521x_pb_match, pdev->dev.of_node);
+       match = of_match_node(of_tps6521x_pb_match, dev->of_node);
        if (!match)
                return -ENXIO;
 
 
        input_set_capability(idev, EV_KEY, KEY_POWER);
 
-       pwr->regmap = dev_get_regmap(pdev->dev.parent, NULL);
+       pwr->regmap = dev_get_regmap(dev->parent, NULL);
        pwr->dev = dev;
        pwr->idev = idev;
-       platform_set_drvdata(pdev, pwr);
        device_init_wakeup(dev, true);
 
        irq = platform_get_irq(pdev, 0);
                                                IRQF_ONESHOT,
                                          pwr->data->name, pwr);
        if (error) {
-               dev_err(dev, "failed to request IRQ #%d: %d\n",
-                       irq, error);
+               dev_err(dev, "failed to request IRQ #%d: %d\n", irq, error);
                return error;
        }