int                     use_dma, dma_ch;
        int                     dma_line_tx, dma_line_rx;
        int                     slot_id;
-       int                     got_dbclk;
        int                     response_busy;
        int                     context_loss;
        int                     vdd;
 
        /* Disable the clocks */
        pm_runtime_put_sync(host->dev);
-       if (host->got_dbclk)
+       if (host->dbclk)
                clk_disable(host->dbclk);
 
        /* Turn the power off */
                ret = mmc_slot(host).set_power(host->dev, host->slot_id, 1,
                                               vdd);
        pm_runtime_get_sync(host->dev);
-       if (host->got_dbclk)
+       if (host->dbclk)
                clk_enable(host->dbclk);
 
        if (ret != 0)
 
        omap_hsmmc_context_save(host);
 
-       if (cpu_is_omap2430()) {
-               host->dbclk = clk_get(&pdev->dev, "mmchsdb_fck");
-               /*
-                * MMC can still work without debounce clock.
-                */
-               if (IS_ERR(host->dbclk))
-                       dev_warn(mmc_dev(host->mmc),
-                               "Failed to get debounce clock\n");
-               else
-                       host->got_dbclk = 1;
-
-               if (host->got_dbclk)
-                       if (clk_enable(host->dbclk) != 0)
-                               dev_dbg(mmc_dev(host->mmc), "Enabling debounce"
-                                                       " clk failed\n");
+       host->dbclk = clk_get(&pdev->dev, "mmchsdb_fck");
+       /*
+        * MMC can still work without debounce clock.
+        */
+       if (IS_ERR(host->dbclk)) {
+               dev_warn(mmc_dev(host->mmc), "Failed to get debounce clk\n");
+               host->dbclk = NULL;
+       } else if (clk_enable(host->dbclk) != 0) {
+               dev_warn(mmc_dev(host->mmc), "Failed to enable debounce clk\n");
+               clk_put(host->dbclk);
+               host->dbclk = NULL;
        }
 
        /* Since we do only SG emulation, we can have as many segs
        pm_runtime_put_sync(host->dev);
        pm_runtime_disable(host->dev);
        clk_put(host->fclk);
-       if (host->got_dbclk) {
+       if (host->dbclk) {
                clk_disable(host->dbclk);
                clk_put(host->dbclk);
        }
        pm_runtime_put_sync(host->dev);
        pm_runtime_disable(host->dev);
        clk_put(host->fclk);
-       if (host->got_dbclk) {
+       if (host->dbclk) {
                clk_disable(host->dbclk);
                clk_put(host->dbclk);
        }
                                OMAP_HSMMC_READ(host->base, HCTL) & ~SDBP);
        }
 
-       if (host->got_dbclk)
+       if (host->dbclk)
                clk_disable(host->dbclk);
 err:
        pm_runtime_put_sync(host->dev);
 
        pm_runtime_get_sync(host->dev);
 
-       if (host->got_dbclk)
+       if (host->dbclk)
                clk_enable(host->dbclk);
 
        if (!(host->mmc->pm_flags & MMC_PM_KEEP_POWER))