/* Request and configure I2C TX dma channel */
        dma->chan_tx = dma_request_chan(dev, "tx");
        if (IS_ERR(dma->chan_tx)) {
-               dev_dbg(dev, "can't request DMA tx channel\n");
                ret = PTR_ERR(dma->chan_tx);
+               if (ret != -EPROBE_DEFER)
+                       dev_err(dev, "can't request DMA tx channel\n");
                goto fail_al;
        }
 
        /* Request and configure I2C RX dma channel */
        dma->chan_rx = dma_request_chan(dev, "rx");
        if (IS_ERR(dma->chan_rx)) {
-               dev_err(dev, "can't request DMA rx channel\n");
                ret = PTR_ERR(dma->chan_rx);
+               if (ret != -EPROBE_DEFER)
+                       dev_err(dev, "can't request DMA rx channel\n");
+
                goto fail_tx;
        }
 
        dma_release_channel(dma->chan_tx);
 fail_al:
        devm_kfree(dev, dma);
-       dev_info(dev, "can't use DMA\n");
+       if (ret != -EPROBE_DEFER)
+               dev_info(dev, "can't use DMA\n");
 
        return ERR_PTR(ret);
 }
 
 
        rst = devm_reset_control_get_exclusive(&pdev->dev, NULL);
        if (IS_ERR(rst)) {
-               dev_err(&pdev->dev, "Error: Missing controller reset\n");
                ret = PTR_ERR(rst);
+               if (ret != -EPROBE_DEFER)
+                       dev_err(&pdev->dev, "Error: Missing reset ctrl\n");
+
                goto clk_free;
        }
        reset_control_assert(rst);
 
 
        i2c_dev->clk = devm_clk_get(&pdev->dev, NULL);
        if (IS_ERR(i2c_dev->clk)) {
-               dev_err(&pdev->dev, "Error: Missing controller clock\n");
+               if (PTR_ERR(i2c_dev->clk) != -EPROBE_DEFER)
+                       dev_err(&pdev->dev, "Failed to get controller clock\n");
                return PTR_ERR(i2c_dev->clk);
        }
 
 
        rst = devm_reset_control_get(&pdev->dev, NULL);
        if (IS_ERR(rst)) {
-               dev_err(&pdev->dev, "Error: Missing controller reset\n");
                ret = PTR_ERR(rst);
+               if (ret != -EPROBE_DEFER)
+                       dev_err(&pdev->dev, "Error: Missing reset ctrl\n");
+
                goto clk_free;
        }
        reset_control_assert(rst);