Defer the probe operation when a reset controller device is expected
but have not yet been probed.
This change replaces use of devm_reset_control_get_exclusive() with
devm_reset_control_get_optional_exclusive() as reset controller is
optional which is now explicitly stated.
Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
Link: https://lore.kernel.org/r/1612551572-495-7-git-send-email-alain.volmat@foss.st.com
Signed-off-by: Mark Brown <broonie@kernel.org>
 
                goto err_clk_disable;
        }
 
-       rst = devm_reset_control_get_exclusive(&pdev->dev, NULL);
-       if (!IS_ERR(rst)) {
+       rst = devm_reset_control_get_optional_exclusive(&pdev->dev, NULL);
+       if (rst) {
+               if (IS_ERR(rst)) {
+                       ret = dev_err_probe(&pdev->dev, PTR_ERR(rst),
+                                           "failed to get reset\n");
+                       goto err_clk_disable;
+               }
+
                reset_control_assert(rst);
                udelay(2);
                reset_control_deassert(rst);