On Mon, Jun 12, 2023 at 09:49:32AM +0200, Ricardo Ribalda Delgado wrote: > @@ -1175,14 +1179,11 @@ static int mt8173_afe_pcm_dev_probe(struct platform_device *pdev) > if (ret) > goto err_cleanup_components; > > - irq_id = platform_get_irq(pdev, 0); > - if (irq_id <= 0) > - return irq_id < 0 ? irq_id : -ENXIO; > ret = devm_request_irq(afe->dev, irq_id, mt8173_afe_irq_handler, > 0, "Afe_ISR_Handle", (void *)afe); > if (ret) { > dev_err(afe->dev, "could not request_irq\n"); > - goto err_pm_disable; > + goto err_cleanup_components; Hm... I hadn't noticed that. You're right, but I don't think your patch goes far enough. I think everything after the first successful call to snd_soc_add_component() should be goto err_cleanup_components; But I am not 100% sure. regards, dan carpenter > } >