thermal: qcom: tsens: init debugfs only with successful probe
Subsystems (3)
PATCH v2 1/2 thermal: qcom: tsens: init debugfs only with successful probe
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 Christian Marangi <[email protected]>
Acked-by Thara Gopinath <[email protected]>
---
v2:
- Change sob tag with new name
drivers/thermal/qcom/tsens.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-)
drivers/thermal/qcom/tsens.c +6 -3
@@ -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;
@@ -1153,7 +1151,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)
Signature · 1 line
2.37.2
PATCH v2 2/2 thermal: qcom: tsens: simplify debugfs init function
Simplify debugfs init function.
- Add check for existing dev directory.
- Fix wrong version in dbg_version_show (with version 0.0.0, 0.1.0 was incorrectly reported)
Signed-off-by Christian Marangi <[email protected]>
Reviewed-by Thara Gopinath <[email protected]>
---
v2:
- Change sob tag with new name
drivers/thermal/qcom/tsens.c | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-)
drivers/thermal/qcom/tsens.c +5 -9
@@ -692,7 +692,7 @@ static int dbg_version_show(struct seq_file *s, void *data)return ret;seq_printf (s,"%d.%d.%d\n" , maj_ver, min_ver, step_ver); }else { -seq_puts (s,"0.1.0\n" ); +seq_printf (s,"0.%d.0\n" , priv->feat->ver_major); }return 0 ;
@@ -704,21 +704,17 @@ DEFINE_SHOW_ATTRIBUTE(dbg_sensors);static void tsens_debug_init (struct platform_device *pdev) {struct tsens_priv *priv =platform_get_drvdata (pdev); -struct dentry *root, *file; - root =debugfs_lookup ("tsens" ,NULL ); -if (!root) + priv->debug_root =debugfs_lookup ("tsens" ,NULL ); +if (!priv->debug_root) priv->debug_root =debugfs_create_dir ("tsens" ,NULL ); -else - priv->debug_root = root; - file =debugfs_lookup ("version" , priv->debug_root); -if (!file) +if (!debugfs_lookup ("version" , priv->debug_root))debugfs_create_file ("version" ,0444 , priv->debug_root, pdev, &dbg_version_fops);/* A directory for each instance of the TSENS IP */ - priv->debug =debugfs_create_dir (dev_name (&pdev->dev), priv->debug_root); + priv->debug =debugfs_lookup (dev_name (&pdev->dev), priv->debug_root);debugfs_create_file ("sensors" ,0444 , priv->debug, pdev, &dbg_sensors_fops); }#else
Signature · 1 line
2.37.2