hc
2024-01-03 2f7c68cb55ecb7331f2381deb497c27155f32faf
kernel/sound/soc/fsl/imx-audmix.c
....@@ -230,6 +230,8 @@
230230
231231 dai_name = devm_kasprintf(&pdev->dev, GFP_KERNEL, "%s%s",
232232 fe_name_pref, args.np->full_name + 1);
233
+ if (!dai_name)
234
+ return -ENOMEM;
233235
234236 dev_info(pdev->dev.parent, "DAI FE name:%s\n", dai_name);
235237
....@@ -238,6 +240,8 @@
238240 capture_dai_name =
239241 devm_kasprintf(&pdev->dev, GFP_KERNEL, "%s %s",
240242 dai_name, "CPU-Capture");
243
+ if (!capture_dai_name)
244
+ return -ENOMEM;
241245 }
242246
243247 priv->dai[i].cpus = &dlc[0];
....@@ -268,6 +272,8 @@
268272 "AUDMIX-Playback-%d", i);
269273 be_cp = devm_kasprintf(&pdev->dev, GFP_KERNEL,
270274 "AUDMIX-Capture-%d", i);
275
+ if (!be_name || !be_pb || !be_cp)
276
+ return -ENOMEM;
271277
272278 priv->dai[num_dai + i].cpus = &dlc[3];
273279 priv->dai[num_dai + i].codecs = &dlc[4];
....@@ -295,6 +301,9 @@
295301 priv->dapm_routes[i].source =
296302 devm_kasprintf(&pdev->dev, GFP_KERNEL, "%s %s",
297303 dai_name, "CPU-Playback");
304
+ if (!priv->dapm_routes[i].source)
305
+ return -ENOMEM;
306
+
298307 priv->dapm_routes[i].sink = be_pb;
299308 priv->dapm_routes[num_dai + i].source = be_pb;
300309 priv->dapm_routes[num_dai + i].sink = be_cp;
....@@ -313,7 +322,7 @@
313322 if (IS_ERR(priv->cpu_mclk)) {
314323 ret = PTR_ERR(priv->cpu_mclk);
315324 dev_err(&cpu_pdev->dev, "failed to get DAI mclk1: %d\n", ret);
316
- return -EINVAL;
325
+ return ret;
317326 }
318327
319328 priv->audmix_pdev = audmix_pdev;