rval = sensor->platform_data->set_xclk(
                        &sensor->src->sd, sensor->platform_data->ext_clk);
        else
-               rval = clk_enable(sensor->ext_clk);
+               rval = clk_prepare_enable(sensor->ext_clk);
        if (rval < 0) {
-               dev_dbg(&client->dev, "failed to set xclk\n");
+               dev_dbg(&client->dev, "failed to enable xclk\n");
                goto out_xclk_fail;
        }
        usleep_range(1000, 1000);
        if (sensor->platform_data->set_xclk)
                sensor->platform_data->set_xclk(&sensor->src->sd, 0);
        else
-               clk_disable(sensor->ext_clk);
+               clk_disable_unprepare(sensor->ext_clk);
 
 out_xclk_fail:
        regulator_disable(sensor->vana);
        if (sensor->platform_data->set_xclk)
                sensor->platform_data->set_xclk(&sensor->src->sd, 0);
        else
-               clk_disable(sensor->ext_clk);
+               clk_disable_unprepare(sensor->ext_clk);
        usleep_range(5000, 5000);
        regulator_disable(sensor->vana);
        sensor->streaming = 0;
                if (sensor->platform_data->set_xclk)
                        sensor->platform_data->set_xclk(&sensor->src->sd, 0);
                else
-                       clk_disable(sensor->ext_clk);
+                       clk_disable_unprepare(sensor->ext_clk);
                sensor->power_count = 0;
        }