.get_temp = tmu_get_temp,
 };
 
-static int qoriq_tmu_register_tmu_zone(struct platform_device *pdev)
+static int qoriq_tmu_register_tmu_zone(struct device *dev,
+                                      struct qoriq_tmu_data *qdata)
 {
-       struct qoriq_tmu_data *qdata = platform_get_drvdata(pdev);
        int id, sites = 0;
 
        for (id = 0; id < SITES_MAX; id++) {
 
                sensor->id = id;
 
-               tzd = devm_thermal_zone_of_sensor_register(&pdev->dev, id,
+               tzd = devm_thermal_zone_of_sensor_register(dev, id,
                                                           sensor,
                                                           &tmu_tz_ops);
                ret = PTR_ERR_OR_ZERO(tzd);
        if (ret < 0)
                goto err;
 
-       ret = qoriq_tmu_register_tmu_zone(pdev);
+       ret = qoriq_tmu_register_tmu_zone(dev, data);
        if (ret < 0) {
                dev_err(dev, "Failed to register sensors\n");
                ret = -ENODEV;