calibrate and tsens_register can fail or PROBE_DEFER. This will cause a
double or a wrong init of the debugfs information. Init debugfs only
with successful probe fixing warning about directory already present.

Signed-off-by: Ansuel Smith <[email protected]>
---
 drivers/thermal/qcom/tsens.c | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/drivers/thermal/qcom/tsens.c b/drivers/thermal/qcom/tsens.c
index 4c7ebd1d3..f9d50a67e 100644
--- a/drivers/thermal/qcom/tsens.c
+++ b/drivers/thermal/qcom/tsens.c
@@ -918,8 +918,6 @@ int __init init_common(struct tsens_priv *priv)
        if (tsens_version(priv) >= VER_0_1)
                tsens_enable_irq(priv);
 
-       tsens_debug_init(op);
-
 err_put_device:
        put_device(&op->dev);
        return ret;
@@ -1158,7 +1156,12 @@ static int tsens_probe(struct platform_device *pdev)
                }
        }
 
-       return tsens_register(priv);
+       ret = tsens_register(priv);
+
+       if (!ret)
+               tsens_debug_init(pdev);
+
+       return ret;
 }
 
 static int tsens_remove(struct platform_device *pdev)
-- 
2.30.2

Reply via email to