indio_dev->num_channels = 1;
 
        env->dac = devm_iio_channel_get(dev, "dac");
-       if (IS_ERR(env->dac)) {
-               if (PTR_ERR(env->dac) != -EPROBE_DEFER)
-                       dev_err(dev, "failed to get dac input channel\n");
-               return PTR_ERR(env->dac);
-       }
+       if (IS_ERR(env->dac))
+               return dev_err_probe(dev, PTR_ERR(env->dac),
+                                    "failed to get dac input channel\n");
 
        env->comp_irq = platform_get_irq_byname(pdev, "comp");
        if (env->comp_irq < 0)
 
        ret = devm_request_irq(dev, env->comp_irq, envelope_detector_comp_isr,
                               0, "envelope-detector", env);
-       if (ret) {
-               if (ret != -EPROBE_DEFER)
-                       dev_err(dev, "failed to request interrupt\n");
-               return ret;
-       }
+       if (ret)
+               return dev_err_probe(dev, ret, "failed to request interrupt\n");
+
        env->comp_irq_trigger = irq_get_trigger_type(env->comp_irq);
        if (env->comp_irq_trigger & IRQF_TRIGGER_RISING)
                env->comp_irq_trigger_inv |= IRQF_TRIGGER_FALLING;