hc
2024-01-03 2f7c68cb55ecb7331f2381deb497c27155f32faf
kernel/sound/soc/fsl/fsl_mqs.c
....@@ -204,10 +204,10 @@
204204 }
205205
206206 mqs_priv->regmap = syscon_node_to_regmap(gpr_np);
207
+ of_node_put(gpr_np);
207208 if (IS_ERR(mqs_priv->regmap)) {
208209 dev_err(&pdev->dev, "failed to get gpr regmap\n");
209
- ret = PTR_ERR(mqs_priv->regmap);
210
- goto err_free_gpr_np;
210
+ return PTR_ERR(mqs_priv->regmap);
211211 }
212212 } else {
213213 regs = devm_platform_ioremap_resource(pdev, 0);
....@@ -236,8 +236,7 @@
236236 if (IS_ERR(mqs_priv->mclk)) {
237237 dev_err(&pdev->dev, "failed to get the clock: %ld\n",
238238 PTR_ERR(mqs_priv->mclk));
239
- ret = PTR_ERR(mqs_priv->mclk);
240
- goto err_free_gpr_np;
239
+ return PTR_ERR(mqs_priv->mclk);
241240 }
242241
243242 dev_set_drvdata(&pdev->dev, mqs_priv);
....@@ -246,13 +245,9 @@
246245 ret = devm_snd_soc_register_component(&pdev->dev, &soc_codec_fsl_mqs,
247246 &fsl_mqs_dai, 1);
248247 if (ret)
249
- goto err_free_gpr_np;
248
+ return ret;
249
+
250250 return 0;
251
-
252
-err_free_gpr_np:
253
- of_node_put(gpr_np);
254
-
255
- return ret;
256251 }
257252
258253 static int fsl_mqs_remove(struct platform_device *pdev)