ucOverdriveThermalController];
                        info.addr = power_info->info.ucOverdriveControllerAddress >> 1;
                        strlcpy(info.type, name, sizeof(info.type));
-                       i2c_new_device(&rdev->pm.i2c_bus->adapter, &info);
+                       i2c_new_client_device(&rdev->pm.i2c_bus->adapter, &info);
                }
        }
        num_modes = power_info->info.ucNumOfPowerModeEntries;
                                const char *name = pp_lib_thermal_controller_names[controller->ucType];
                                info.addr = controller->ucI2cAddress >> 1;
                                strlcpy(info.type, name, sizeof(info.type));
-                               i2c_new_device(&rdev->pm.i2c_bus->adapter, &info);
+                               i2c_new_client_device(&rdev->pm.i2c_bus->adapter, &info);
                        }
                } else {
                        DRM_INFO("Unknown thermal controller type %d at 0x%02x %s fan control\n",
 
                                const char *name = thermal_controller_names[thermal_controller];
                                info.addr = i2c_addr >> 1;
                                strlcpy(info.type, name, sizeof(info.type));
-                               i2c_new_device(&rdev->pm.i2c_bus->adapter, &info);
+                               i2c_new_client_device(&rdev->pm.i2c_bus->adapter, &info);
                        }
                }
        } else {
                                const char *name = "f75375";
                                info.addr = 0x28;
                                strlcpy(info.type, name, sizeof(info.type));
-                               i2c_new_device(&rdev->pm.i2c_bus->adapter, &info);
+                               i2c_new_client_device(&rdev->pm.i2c_bus->adapter, &info);
                                DRM_INFO("Possible %s thermal controller at 0x%02x\n",
                                         name, info.addr);
                        }