From nobody Tue Jun 16 15:53:58 2026 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 9ACDC40242C; Thu, 30 Apr 2026 12:03:19 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777550599; cv=none; b=qNps6F0KnNjG9Q0MRwVsRCf+fGkDiGX6/vNIqUtjBvDYPYtdr7zqryETnHg14LJxAiO1dPFakhvsAJVjzhSVVvkLr75ZDDV2x5ylJwilzmaRE8FrAhE1RkpwAhEyYKQ3BOwpioSEp+pvoQ5E0hJpRqcPFAUjfK9mFwKc+TDDzC4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777550599; c=relaxed/simple; bh=lLfz7qYzWq7gYilZMBVkCQO8ehYw3cSV9/09cE0lJuM=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=G+8AsD3d+md+xThX5d/vuQqIInG10Eg5dNE2ATWfATRw0jbVvdumI2lW1cDb49NE/J0/U4ccZinvEEmzcedj6gTUZHzTc7NfFsoYSDHHm/T0ZNSt7y+dYkQOZ1QDTDcx+I5wU7w6IOleafbae4sxuAuwpztI3wQW1Lz9ifHDTf0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=am+uQjYs; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="am+uQjYs" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 62EE6C2BCC6; Thu, 30 Apr 2026 12:03:19 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1777550599; bh=lLfz7qYzWq7gYilZMBVkCQO8ehYw3cSV9/09cE0lJuM=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=am+uQjYsxF9QZpTAg0HXJ6oAOX11TZ1/iplZR+f/6TUn+4ytRb/Mb99+Lfrc2XI9d I1CoqoqbIfR1AyvopGJbLxLLdkRw/krzlKD5sIptUDV3h8DBBKkOgl/NTWFvj/73Yu a8y3Ui7okYImPZHSqX+I9gLpynEPosFjHmS69XZZYjOIj/4HxN2AscnayUV2xaG0i8 sbpOPYRoXFtbQP3YEqf/SEPNxxH0ZIxtAx9F0NjZTl6pmiGaM/BI/Hz3Oor7DxkU0A vbVAsNTwB4u3+Uev6iN/xFKwxUG/xcpWMlsJzN24zWlrp1ZKGJALKh6p4qVEue9x32 oNA6XOdEkNNNA== Received: from johan by xi.lan with local (Exim 4.98.2) (envelope-from ) id 1wIQ6v-000000012sv-0jAV; Thu, 30 Apr 2026 14:03:17 +0200 From: Johan Hovold To: Mark Brown Cc: linux-spi@vger.kernel.org, linux-kernel@vger.kernel.org, Johan Hovold Subject: [PATCH v2 1/3] spi: omap2-mcspi: switch to managed controller allocation Date: Thu, 30 Apr 2026 14:01:58 +0200 Message-ID: <20260430120200.249323-2-johan@kernel.org> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260430120200.249323-1-johan@kernel.org> References: <20260430120200.249323-1-johan@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Switch to device managed controller allocation to simplify error handling and to avoid having to take another reference during deregistration. Signed-off-by: Johan Hovold --- drivers/spi/spi-omap2-mcspi.c | 23 ++++++++--------------- 1 file changed, 8 insertions(+), 15 deletions(-) diff --git a/drivers/spi/spi-omap2-mcspi.c b/drivers/spi/spi-omap2-mcspi.c index 56b30ff58771..60c05eb91781 100644 --- a/drivers/spi/spi-omap2-mcspi.c +++ b/drivers/spi/spi-omap2-mcspi.c @@ -1484,9 +1484,9 @@ static int omap2_mcspi_probe(struct platform_device *= pdev) const struct of_device_id *match; =20 if (of_property_read_bool(node, "spi-slave")) - ctlr =3D spi_alloc_target(&pdev->dev, sizeof(*mcspi)); + ctlr =3D devm_spi_alloc_target(&pdev->dev, sizeof(*mcspi)); else - ctlr =3D spi_alloc_host(&pdev->dev, sizeof(*mcspi)); + ctlr =3D devm_spi_alloc_host(&pdev->dev, sizeof(*mcspi)); if (!ctlr) return -ENOMEM; =20 @@ -1530,10 +1530,9 @@ static int omap2_mcspi_probe(struct platform_device = *pdev) } =20 mcspi->base =3D devm_platform_get_and_ioremap_resource(pdev, 0, &r); - if (IS_ERR(mcspi->base)) { - status =3D PTR_ERR(mcspi->base); - goto free_ctlr; - } + if (IS_ERR(mcspi->base)) + return PTR_ERR(mcspi->base); + mcspi->phys =3D r->start + regs_offset; mcspi->base +=3D regs_offset; =20 @@ -1544,10 +1543,8 @@ static int omap2_mcspi_probe(struct platform_device = *pdev) mcspi->dma_channels =3D devm_kcalloc(&pdev->dev, ctlr->num_chipselect, sizeof(struct omap2_mcspi_dma), GFP_KERNEL); - if (mcspi->dma_channels =3D=3D NULL) { - status =3D -ENOMEM; - goto free_ctlr; - } + if (mcspi->dma_channels =3D=3D NULL) + return -ENOMEM; =20 for (i =3D 0; i < ctlr->num_chipselect; i++) { sprintf(mcspi->dma_channels[i].dma_rx_ch_name, "rx%d", i); @@ -1604,7 +1601,7 @@ static int omap2_mcspi_probe(struct platform_device *= pdev) pm_runtime_disable(&pdev->dev); free_ctlr: omap2_mcspi_release_dma(ctlr); - spi_controller_put(ctlr); + return status; } =20 @@ -1613,8 +1610,6 @@ static void omap2_mcspi_remove(struct platform_device= *pdev) struct spi_controller *ctlr =3D platform_get_drvdata(pdev); struct omap2_mcspi *mcspi =3D spi_controller_get_devdata(ctlr); =20 - spi_controller_get(ctlr); - spi_unregister_controller(ctlr); =20 omap2_mcspi_release_dma(ctlr); @@ -1622,8 +1617,6 @@ static void omap2_mcspi_remove(struct platform_device= *pdev) pm_runtime_dont_use_autosuspend(mcspi->dev); pm_runtime_put_sync(mcspi->dev); pm_runtime_disable(&pdev->dev); - - spi_controller_put(ctlr); } =20 /* work with hotplug and coldplug */ --=20 2.53.0 From nobody Tue Jun 16 15:53:58 2026 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id AF9AF40242D; Thu, 30 Apr 2026 12:03:19 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777550599; cv=none; b=OCzsY1EhtrSdj87F5lENlrnAVMpZWjUcCYxJvh+tdebl09VIHQdDZu/1KlLsYTXB/tFiSza7zPJ1+bc85pd3RzCpNS63rZ6NaE41NcmqR4QNd2eA6/JxyhI0f4Sz+AwS62igmgfVqnCgtIpG8LwkTeLMVTYLd97U/hu4m6e0FLo= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777550599; c=relaxed/simple; bh=Cb2ieVkoQgY7Y51P7otiSAutj9E10FQ/pO62xvb3MjQ=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=qWGomizbtZPNtLaEdRRSMlJCrdeItUaNSXfL9YN0Jetn4TkLEcZoJccF/ejwQus/RKyFf+m4S+jZ9oTMIaC0xjDczH9fINCRcKiqvsmpvS/NAnCR5DQG+bg+idn+0N0o1zQ6447rS4RBC49o8lyuXBHVnGZIPHXdf65Z0dlVWJU= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=dpt3fE8a; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="dpt3fE8a" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 5D6E2C2BCB3; Thu, 30 Apr 2026 12:03:19 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1777550599; bh=Cb2ieVkoQgY7Y51P7otiSAutj9E10FQ/pO62xvb3MjQ=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=dpt3fE8a8vZvaOZSpSiB/X/WvyO6gZ1Fb6OmUHo8INBlxFqDi6Wu8gIZasVYp0zzw oPMMxmxVR4Dut+OZWGymzqevcwnJkF6MxXB2zxeDx4PaHrCMJpaLVbbsqEASj3V25e h4BTllqCv/NBas7nKfcoYn7ARsJbcvklBhMU4+v1QDsSFn006lKk1K4xJtKbMjCjVP Ypo1e8MQNIqh/W72HS9Sk4G3A+noL4QKNHOoJ3hNha1v9gvULdJpV6mEwGB6vvMG8z 12ouqFL2i9Yf+aHgfDLQActtJTTu59PG7ZzZCaBNOu2Uxil1aL3QjWP88Gzw6nhlk5 cLj3+z1hMnF0A== Received: from johan by xi.lan with local (Exim 4.98.2) (envelope-from ) id 1wIQ6v-000000012sx-0lgF; Thu, 30 Apr 2026 14:03:17 +0200 From: Johan Hovold To: Mark Brown Cc: linux-spi@vger.kernel.org, linux-kernel@vger.kernel.org, Johan Hovold Subject: [PATCH v2 2/3] spi: omap2-mcspi: clean up error labels Date: Thu, 30 Apr 2026 14:01:59 +0200 Message-ID: <20260430120200.249323-3-johan@kernel.org> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260430120200.249323-1-johan@kernel.org> References: <20260430120200.249323-1-johan@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Clean up the error labels by adding a common prefix and naming them after what they do. Signed-off-by: Johan Hovold --- drivers/spi/spi-omap2-mcspi.c | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/drivers/spi/spi-omap2-mcspi.c b/drivers/spi/spi-omap2-mcspi.c index 60c05eb91781..59ebdf7edbd2 100644 --- a/drivers/spi/spi-omap2-mcspi.c +++ b/drivers/spi/spi-omap2-mcspi.c @@ -1553,26 +1553,27 @@ static int omap2_mcspi_probe(struct platform_device= *pdev) status =3D omap2_mcspi_request_dma(mcspi, &mcspi->dma_channels[i]); if (status =3D=3D -EPROBE_DEFER) - goto free_ctlr; + goto err_release_dma; } =20 status =3D platform_get_irq(pdev, 0); if (status < 0) - goto free_ctlr; + goto err_release_dma; + init_completion(&mcspi->txdone); status =3D devm_request_irq(&pdev->dev, status, omap2_mcspi_irq_handler, 0, pdev->name, mcspi); if (status) { dev_err(&pdev->dev, "Cannot request IRQ"); - goto free_ctlr; + goto err_release_dma; } =20 mcspi->ref_clk =3D devm_clk_get_optional_enabled(&pdev->dev, NULL); if (IS_ERR(mcspi->ref_clk)) { status =3D PTR_ERR(mcspi->ref_clk); dev_err_probe(&pdev->dev, status, "Failed to get ref_clk"); - goto free_ctlr; + goto err_release_dma; } if (mcspi->ref_clk) mcspi->ref_clk_hz =3D clk_get_rate(mcspi->ref_clk); @@ -1587,19 +1588,19 @@ static int omap2_mcspi_probe(struct platform_device= *pdev) =20 status =3D omap2_mcspi_controller_setup(mcspi); if (status < 0) - goto disable_pm; + goto err_disable_rpm; =20 status =3D spi_register_controller(ctlr); if (status < 0) - goto disable_pm; + goto err_disable_rpm; =20 return status; =20 -disable_pm: +err_disable_rpm: pm_runtime_dont_use_autosuspend(&pdev->dev); pm_runtime_put_sync(&pdev->dev); pm_runtime_disable(&pdev->dev); -free_ctlr: +err_release_dma: omap2_mcspi_release_dma(ctlr); =20 return status; --=20 2.53.0 From nobody Tue Jun 16 15:53:58 2026 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 9ABD440242B; Thu, 30 Apr 2026 12:03:19 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777550599; cv=none; b=e2u47n69eZejbX7zcmUop2IQW9qCxLlszxVNZ7m/OkT6Fn2F45DEDvp7ssZ5U8Jss0TvqkirCKEkAaFFd8MOFFvmJ1vwSPRib6rQY0fzItODCPykmRVrz2R3yt4GAvOHdT02lgapdS6VG/NssQwivEUMUGy5MiHOMhaBwRPBxsA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777550599; c=relaxed/simple; bh=fm+pzn+AlX7t+BsZwPVcVopQSTIjM9i1hIELQ4MxFN0=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=fsY8ldzm3sBwOcPSR8nmY/whh6ph5I4LL7xMhHd5PqV2T006G+0CKuwmHYOwDbP3TLH/RGGME81MQgYn7XtMAgCNnsNJJ3Sv3BC/3vWavy0G9QhEu5JGv0UCbipkdgkJFgX0vDfp0FTQqwKPEzijUrYlhejeGeCNloO422kLI7g= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=JeMrEKk+; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="JeMrEKk+" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 65BDEC2BCC7; Thu, 30 Apr 2026 12:03:19 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1777550599; bh=fm+pzn+AlX7t+BsZwPVcVopQSTIjM9i1hIELQ4MxFN0=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=JeMrEKk+YiGiopes+khnlgqzxu9nXvMwr7iXqmAqNFqJVU+NAdAbqukvL8VDWDCwx UYE6nKbmYLQwbXw3HuioUYg16FC1O3/8cus+9ekNuwD2mMl/xtAeiLrTlSCm3e6sM0 3lV7mMCyByxznFdlw6L/ZVHdFb9frlakje111CsSvZS/y4HB7VDxHzx6sjug20boyK m8HNSwDA6GWjxNFJV+SeD1N7PnN8MEVmcjl7NfAofe7xQYs/UmlKl3uJcwovtuALl6 7uAYRggPTPJw79MvTdjtAMDnGAnCQLO2uhnEwVNhCd9R/x0F3N9xzs1S7g23N0o6BF RIa7uxiim7OZg== Received: from johan by xi.lan with local (Exim 4.98.2) (envelope-from ) id 1wIQ6v-000000012sz-0ont; Thu, 30 Apr 2026 14:03:17 +0200 From: Johan Hovold To: Mark Brown Cc: linux-spi@vger.kernel.org, linux-kernel@vger.kernel.org, Johan Hovold Subject: [PATCH v2 3/3] spi: omap2-mcspi: clean up probe return value Date: Thu, 30 Apr 2026 14:02:00 +0200 Message-ID: <20260430120200.249323-4-johan@kernel.org> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260430120200.249323-1-johan@kernel.org> References: <20260430120200.249323-1-johan@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Return explicit zero on successful probe to clearly separate the success and error paths and make the code more readable. Signed-off-by: Johan Hovold --- drivers/spi/spi-omap2-mcspi.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/spi/spi-omap2-mcspi.c b/drivers/spi/spi-omap2-mcspi.c index 59ebdf7edbd2..d53f98aa0aac 100644 --- a/drivers/spi/spi-omap2-mcspi.c +++ b/drivers/spi/spi-omap2-mcspi.c @@ -1594,7 +1594,7 @@ static int omap2_mcspi_probe(struct platform_device *= pdev) if (status < 0) goto err_disable_rpm; =20 - return status; + return 0; =20 err_disable_rpm: pm_runtime_dont_use_autosuspend(&pdev->dev); --=20 2.53.0