From nobody Mon Jun 15 12:15:01 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 221883ACA7F; Fri, 10 Apr 2026 08:18:57 +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=1775809137; cv=none; b=T4pHJghA5iAg67xCByq/gKg8ZHqkPGteisnmJlRqJy6VihTmqWH9rV2aa/IkhxVVfgPSQIcfduOHDDp1fMft7O9y2e73NL9qpIDjL0c8sNCUTpvv+md1hNLli9aHDwqmwBOe+fPu4kITM/1GpX0dOuqFxYbOD0R+sRbV5EJk4w8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775809137; c=relaxed/simple; bh=zEWrXvP7ojC8HI7QPE2Vd2hjnJtAEVTOBrxqPApknOw=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=c1bV3Gs4D5Mc1MmmD1kBbPS4QviDZL2liNg26U0T99ApjJaP2IGuojlN+6wgPsIzYIf33xlIXKPsNMuOk+BInVQ21Gs8w24ZHXX6FfnvNhl7dL3hKQTIZ+D2dMJSI+xH55YE+uzO0///MVQJkV/A5qU7Q1PQwU/OBArvjESVZ24= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=M42eVrFR; 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="M42eVrFR" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 860DCC2BCB5; Fri, 10 Apr 2026 08:18:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1775809136; bh=zEWrXvP7ojC8HI7QPE2Vd2hjnJtAEVTOBrxqPApknOw=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=M42eVrFRP/Hsk8tbtwDOipcIue4CE/YS3whO6Ack/d9rFITG/rn00fKtWh6U0HVCU qCWlsdRQxSbxcuka0MElh8q4gC2K2OAJxqxxbDTm6puaKcGANZED8MCQswYsbir0O/ QNb05drbueGrEjTIpKL++qgzcqz1LFqByXLfGS1wFNzf8NO3hMzA3aic2awmi/k6I2 sovYPZJinzewQbRC2SpoDBfBc9m9U1xNKM9scuEFtUqBkPTFEVT1j1QFU7fpoth5w/ DqkVLmf1sDLA463dox5NysC9351zpqlFuHbDAybCPGBalJZffPuIySf4shFRFQ/8XN SFyqFUiWboKUg== Received: from johan by xi.lan with local (Exim 4.98.2) (envelope-from ) id 1wB74n-000000026uI-3SJT; Fri, 10 Apr 2026 10:18:53 +0200 From: Johan Hovold To: Mark Brown Cc: Matthias Brugger , AngeloGioacchino Del Regno , Frank Li , Sascha Hauer , Andrew Jeffery , Avi Fishman , Tomer Maimon , Tali Perry , Linus Walleij , Andi Shyti , Tudor Ambarus , Paul Walmsley , Samuel Holland , Orson Zhai , Baolin Wang , Jernej Skrabec , Masahisa Kojima , Jassi Brar , Laxman Dewangan , Kunihiko Hayashi , Masami Hiramatsu , Michal Simek , linux-spi@vger.kernel.org, linux-kernel@vger.kernel.org, Johan Hovold , stable@vger.kernel.org, Leilk Liu Subject: [PATCH 01/26] spi: mt65xx: fix controller deregistration Date: Fri, 10 Apr 2026 10:17:31 +0200 Message-ID: <20260410081757.503099-2-johan@kernel.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260410081757.503099-1-johan@kernel.org> References: <20260410081757.503099-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" Make sure to deregister the controller before disabling underlying resources like clocks during driver unbind. Fixes: a568231f4632 ("spi: mediatek: Add spi bus for Mediatek MT8173") Cc: stable@vger.kernel.org # 4.3: ace145802350 Cc: stable@vger.kernel.org # 4.3 Cc: Leilk Liu Signed-off-by: Johan Hovold --- drivers/spi/spi-mt65xx.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/spi/spi-mt65xx.c b/drivers/spi/spi-mt65xx.c index 0368a26bca9a..96f8555be983 100644 --- a/drivers/spi/spi-mt65xx.c +++ b/drivers/spi/spi-mt65xx.c @@ -1325,7 +1325,7 @@ static int mtk_spi_probe(struct platform_device *pdev) =20 pm_runtime_enable(dev); =20 - ret =3D devm_spi_register_controller(dev, host); + ret =3D spi_register_controller(host); if (ret) { pm_runtime_disable(dev); return dev_err_probe(dev, ret, "failed to register host\n"); @@ -1340,6 +1340,8 @@ static void mtk_spi_remove(struct platform_device *pd= ev) struct mtk_spi *mdata =3D spi_controller_get_devdata(host); int ret; =20 + spi_unregister_controller(host); + cpu_latency_qos_remove_request(&mdata->qos_request); if (mdata->use_spimem && !completion_done(&mdata->spimem_done)) complete(&mdata->spimem_done); --=20 2.52.0 From nobody Mon Jun 15 12:15:01 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 BCCE837AA99; Fri, 10 Apr 2026 08:18:56 +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=1775809136; cv=none; b=s7D2tKin5kZJTImasOl2Dbqc2cwd6HKZ7xGHuT3uAi4VC/ch2+LD2zzVSCjFXUm7AX6ta2yk362hKieTCSy1Qc3vEZBN2nOl+AsZz5KzKCqKAM0hxHf2ARQcx9khyw1edQEQ4wQ5RYW3/nQzBWBs67rvTzVATuTs/EMlcI4lh3k= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775809136; c=relaxed/simple; bh=ipPc3IvuR1QfaJumaXRxbml2av9cCHPHKfA4rCtGTnA=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=T4043U/jGjxVBPIe82M1D+Bz7/akDwNaxzEkLiUd87uPGJbG6tEnbr44ReEFXhwVZjG+PuRV4oPKM2TKsJ6hPtpOspUaSTd68BXbSnbKBUAnjZnwTKB2RE4wr5oJo7f2uJqlgkI25cyKIlr8/WTgMxkb+x4pZgLOZXzsrO7TP6k= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=hGJzR4LK; 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="hGJzR4LK" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 65461C19424; Fri, 10 Apr 2026 08:18:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1775809136; bh=ipPc3IvuR1QfaJumaXRxbml2av9cCHPHKfA4rCtGTnA=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=hGJzR4LKSmWd7tGI3L7RcUMyqdQ52xPo+RjYZfkOWLx79oMpQQgcc9lNIMMIGPYBX yyGJWnA1ROvBKavokTcmYRDB05eYpR41SvLCFJfWYxvXGlYcoIFHUci/ywCPmQPMMe Yhk5zVaG4Ba+vs7QoVzDZDntQUJooBdIxF4RodB1wTPUEcQSSNlHqPA1i1d91iCanJ 7efBGiXUy7MyCmnQ84ZbazTIjjJ0VliFRkrGzvH2btQlmusDUJtvReRErrq7P7avQ8 ydNR45oW/dwLlXGMfbJbDRQWHKtrijvH5kkDB64JulOIHfZwYnjPU+C+N5h+aVX91m dtDTXBe7KE65g== Received: from johan by xi.lan with local (Exim 4.98.2) (envelope-from ) id 1wB74n-000000026uK-3VBa; Fri, 10 Apr 2026 10:18:53 +0200 From: Johan Hovold To: Mark Brown Cc: Matthias Brugger , AngeloGioacchino Del Regno , Frank Li , Sascha Hauer , Andrew Jeffery , Avi Fishman , Tomer Maimon , Tali Perry , Linus Walleij , Andi Shyti , Tudor Ambarus , Paul Walmsley , Samuel Holland , Orson Zhai , Baolin Wang , Jernej Skrabec , Masahisa Kojima , Jassi Brar , Laxman Dewangan , Kunihiko Hayashi , Masami Hiramatsu , Michal Simek , linux-spi@vger.kernel.org, linux-kernel@vger.kernel.org, Johan Hovold , stable@vger.kernel.org, Chuanhong Guo Subject: [PATCH 02/26] spi: mtk-nor: fix controller deregistration Date: Fri, 10 Apr 2026 10:17:32 +0200 Message-ID: <20260410081757.503099-3-johan@kernel.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260410081757.503099-1-johan@kernel.org> References: <20260410081757.503099-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" Make sure to deregister the controller before disabling underlying resources like clocks during driver unbind. Fixes: 881d1ee9fe81 ("spi: add support for mediatek spi-nor controller") Cc: stable@vger.kernel.org # 5.7 Cc: Chuanhong Guo Signed-off-by: Johan Hovold --- drivers/spi/spi-mtk-nor.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/spi/spi-mtk-nor.c b/drivers/spi/spi-mtk-nor.c index 1e5ec0840174..74f34537b02c 100644 --- a/drivers/spi/spi-mtk-nor.c +++ b/drivers/spi/spi-mtk-nor.c @@ -913,7 +913,7 @@ static int mtk_nor_probe(struct platform_device *pdev) pm_runtime_enable(&pdev->dev); pm_runtime_get_noresume(&pdev->dev); =20 - ret =3D devm_spi_register_controller(&pdev->dev, ctlr); + ret =3D spi_register_controller(ctlr); if (ret < 0) goto err_probe; =20 @@ -938,6 +938,8 @@ static void mtk_nor_remove(struct platform_device *pdev) struct spi_controller *ctlr =3D dev_get_drvdata(&pdev->dev); struct mtk_nor *sp =3D spi_controller_get_devdata(ctlr); =20 + spi_unregister_controller(ctlr); + pm_runtime_disable(&pdev->dev); pm_runtime_set_suspended(&pdev->dev); pm_runtime_dont_use_autosuspend(&pdev->dev); --=20 2.52.0 From nobody Mon Jun 15 12:15:01 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 BCD773A4F5D; Fri, 10 Apr 2026 08:18:56 +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=1775809136; cv=none; b=T5SvgphLLpZmOrt24MPPBs3uoLfK90SPWOPGP9LLGghyln8JJzHMh8yuhHk/s5rrvCD/WW5I7+f3fF5AtWOR+V2GsbockQMuhLaYbw93zpP5pp862yE3RcHLFVcpCeSV1I+0iiFuSHS0U1diJUQ9n40FFLBaG/JjS+6hiW0Cc3c= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775809136; c=relaxed/simple; bh=3MDk07ELTLc65ElB0/PDIBO0H49pzu5s9K4oCp6KKiA=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=WBlBok+4Ytrc8nsqDw/7qDbRoVGDOCi0rJ82LC1YrqMFVUoCETGqU1sXit6a8eZhU/BL0XekZ/s1XaE4S0+7WCqIHGQGXr1CJPyMfJnlYIJZD4/OujnwtB/blBU5oGHa7j94wncjRQtHe/4JZJm3X6RDx+jPMl/t7sgFwHu7k7I= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=KqtvDjcR; 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="KqtvDjcR" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 6F37BC2BC87; Fri, 10 Apr 2026 08:18:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1775809136; bh=3MDk07ELTLc65ElB0/PDIBO0H49pzu5s9K4oCp6KKiA=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=KqtvDjcR5DUtlu3tVa27NZjpInIoluawh+JxExFpcDbHIGYD9M9RbC+pU2EpNyaju OxF0HypCH1s+pc9zIA3jnCcOCQvl3Z5g6w9WqgQhc/D1Q/yMEtHIIOtY0/iNpdent2 GFFWtTe9sTFvCAs+bSAdBWx85ao95DUKMT7ERbg2XlX1mMxuCj+Gpc04j1w27+9QV+ c69ehgEZrSwfhJPjVabIIva7lLX6G8MulL8UhO5YhEHHDrBILDJ0i/ZX9oSX0Wbjyv AwmYIAeFVdPIEnad+7nZXC0RsAsy3s5WQr+PhRiknFKSQGOunmLPZDeUs8hCtkpkCU iTQybTzIUpawQ== Received: from johan by xi.lan with local (Exim 4.98.2) (envelope-from ) id 1wB74n-000000026uM-3Xas; Fri, 10 Apr 2026 10:18:53 +0200 From: Johan Hovold To: Mark Brown Cc: Matthias Brugger , AngeloGioacchino Del Regno , Frank Li , Sascha Hauer , Andrew Jeffery , Avi Fishman , Tomer Maimon , Tali Perry , Linus Walleij , Andi Shyti , Tudor Ambarus , Paul Walmsley , Samuel Holland , Orson Zhai , Baolin Wang , Jernej Skrabec , Masahisa Kojima , Jassi Brar , Laxman Dewangan , Kunihiko Hayashi , Masami Hiramatsu , Michal Simek , linux-spi@vger.kernel.org, linux-kernel@vger.kernel.org, Johan Hovold , stable@vger.kernel.org, Jingoo Han Subject: [PATCH 03/26] spi: mxs: fix controller deregistration Date: Fri, 10 Apr 2026 10:17:33 +0200 Message-ID: <20260410081757.503099-4-johan@kernel.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260410081757.503099-1-johan@kernel.org> References: <20260410081757.503099-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" Make sure to deregister the controller before releasing underlying resources like DMA during driver unbind. Fixes: 33e195acf268 ("spi: mxs: use devm_spi_register_master()") Cc: stable@vger.kernel.org # 3.13 Cc: Jingoo Han Signed-off-by: Johan Hovold --- drivers/spi/spi-mxs.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/drivers/spi/spi-mxs.c b/drivers/spi/spi-mxs.c index b3301c69e2de..0164e04d59a1 100644 --- a/drivers/spi/spi-mxs.c +++ b/drivers/spi/spi-mxs.c @@ -619,7 +619,7 @@ static int mxs_spi_probe(struct platform_device *pdev) if (ret) goto out_pm_runtime_put; =20 - ret =3D devm_spi_register_controller(&pdev->dev, host); + ret =3D spi_register_controller(host); if (ret) { dev_err(&pdev->dev, "Cannot register SPI host, %d\n", ret); goto out_pm_runtime_put; @@ -650,11 +650,17 @@ static void mxs_spi_remove(struct platform_device *pd= ev) spi =3D spi_controller_get_devdata(host); ssp =3D &spi->ssp; =20 + spi_controller_get(host); + + spi_unregister_controller(host); + pm_runtime_disable(&pdev->dev); if (!pm_runtime_status_suspended(&pdev->dev)) mxs_spi_runtime_suspend(&pdev->dev); =20 dma_release_channel(ssp->dmach); + + spi_controller_put(host); } =20 static struct platform_driver mxs_spi_driver =3D { --=20 2.52.0 From nobody Mon Jun 15 12:15:01 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 D5B2C3AA4E9; Fri, 10 Apr 2026 08:18:56 +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=1775809136; cv=none; b=fkd3953ejPpOqPFRWdfq22Ek1qB6KAU1PKinup7zRVTqfXuw9hAcqJT0agcUOWKBQJ/28TGjudDoQ6IS1K+uovp0SrQ63NY5W9g5GDuUw1rFVYSWg1r3vM8wPyl58tLclvRVjRXU+wlbOrQyZBdDOHrMzeAsgHiY+WqJi/UZE/Q= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775809136; c=relaxed/simple; bh=SXm/RBHe515zxULaI16EssAA0uuL015l7Kor1U9rZUQ=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=H1f4jjoEuV46HPVx/kHdm8eV2+Kw83ExIGHT42loWpCgduuL1evJIBhfsGa5jU+gzdHSkWH+8VkMgdYwuUFmVVAScn0czMsI8hMdy+zYoQs3t5v80oZlUEigTMz3OUQjxuM67RbiFBdv/SjtSZK6jaFBgCEanRykvX7FKItAaa8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=GwDgWTQ1; 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="GwDgWTQ1" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 725C1C2BCAF; Fri, 10 Apr 2026 08:18:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1775809136; bh=SXm/RBHe515zxULaI16EssAA0uuL015l7Kor1U9rZUQ=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=GwDgWTQ1+1TTPwoeIIZDGKZR18hrAaL0snvxNPYeon9gRiVh52V4X6F2S/wNP7y/u 55ZfZ2wAKr+y8FAG7JKMsZPFuS9DD+NzWJ+DIiLfwzKADQlV6+wMLM8UQGVBFJUsha eptdNHMR3oFQK1i5+yVifcr1fqAZpMuFapXLIVpltkdw0mjCzsRo5Wk5FsRxPb31z7 1FnCIB8kqlpGRFb7gygxNcXkxecS8SuKjs5QlfKGhth+UJiCGZLGREkkDcL//o88mO btQiyv4yzNY4o/zaOGIA7vkf+gErPjYRwyve9qp+VHaRIQ6AdUA+jtJvWoXcuDqTB4 4cAy5imywt79w== Received: from johan by xi.lan with local (Exim 4.98.2) (envelope-from ) id 1wB74n-000000026uO-3aME; Fri, 10 Apr 2026 10:18:53 +0200 From: Johan Hovold To: Mark Brown Cc: Matthias Brugger , AngeloGioacchino Del Regno , Frank Li , Sascha Hauer , Andrew Jeffery , Avi Fishman , Tomer Maimon , Tali Perry , Linus Walleij , Andi Shyti , Tudor Ambarus , Paul Walmsley , Samuel Holland , Orson Zhai , Baolin Wang , Jernej Skrabec , Masahisa Kojima , Jassi Brar , Laxman Dewangan , Kunihiko Hayashi , Masami Hiramatsu , Michal Simek , linux-spi@vger.kernel.org, linux-kernel@vger.kernel.org, Johan Hovold , stable@vger.kernel.org Subject: [PATCH 04/26] spi: npcm-pspi: fix controller deregistration Date: Fri, 10 Apr 2026 10:17:34 +0200 Message-ID: <20260410081757.503099-5-johan@kernel.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260410081757.503099-1-johan@kernel.org> References: <20260410081757.503099-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" Make sure to deregister the controller before disabling underlying resources like clocks during driver unbind. Fixes: 2a22f1b30cee ("spi: npcm: add NPCM PSPI controller driver") Cc: stable@vger.kernel.org # 5.0 Cc: Tomer Maimon Signed-off-by: Johan Hovold --- drivers/spi/spi-npcm-pspi.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/drivers/spi/spi-npcm-pspi.c b/drivers/spi/spi-npcm-pspi.c index e60b3cc398ec..cffef0a5977d 100644 --- a/drivers/spi/spi-npcm-pspi.c +++ b/drivers/spi/spi-npcm-pspi.c @@ -413,7 +413,7 @@ static int npcm_pspi_probe(struct platform_device *pdev) /* set to default clock rate */ npcm_pspi_set_baudrate(priv, NPCM_PSPI_DEFAULT_CLK); =20 - ret =3D devm_spi_register_controller(&pdev->dev, host); + ret =3D spi_register_controller(host); if (ret) goto out_disable_clk; =20 @@ -434,8 +434,14 @@ static void npcm_pspi_remove(struct platform_device *p= dev) struct spi_controller *host =3D platform_get_drvdata(pdev); struct npcm_pspi *priv =3D spi_controller_get_devdata(host); =20 + spi_controller_get(host); + + spi_unregister_controller(host); + npcm_pspi_reset_hw(priv); clk_disable_unprepare(priv->clk); + + spi_controller_put(host); } =20 static const struct of_device_id npcm_pspi_match[] =3D { --=20 2.52.0 From nobody Mon Jun 15 12:15:01 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 E9DDB3AC0D4; Fri, 10 Apr 2026 08:18:56 +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=1775809137; cv=none; b=ruMKRAfmi6PoK4eSSpO3GNjuFXwvbngipb9RfE5vtTrXu36vJ1PIz2HqfGeRA7kh6f8gOsl67FzXu0yqgQdfiAiQdpFiIGoomdnLy1LCkq8f3gwZkoUR6RgI+SBDDvgd4oTpkxsqsHDrqOspflEf17/sYm2ScG2o80gyX4EoUFw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775809137; c=relaxed/simple; bh=myVQNTSRrfMEDMsyrLlgY1ej6c3ouUnZhQiGPsvtHZM=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=jqCS5uCzBXAYLQpBZCddyaJBEgEO5yBD2lBD3EacmgL0Cn6YAqjyyrQ8yes6E1w8ANoukxuE0qT0GpqzptaDh2LwYvITA+B39xJTfcskOwsganbDjjhn7UmKiT5HUlmAZ57vRckG8zldGHZyIAugDRbIbtNrRR2oADdrrOaunL4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=WKIAyxSv; 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="WKIAyxSv" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 7F79CC2BCB0; Fri, 10 Apr 2026 08:18:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1775809136; bh=myVQNTSRrfMEDMsyrLlgY1ej6c3ouUnZhQiGPsvtHZM=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=WKIAyxSv5w+8fgD+6Juh3XTOrSOeHolzeA+APACpvVSjYHKFdl7yWmjzZPtsXMRs6 c1sOSA6RoYqH4MCIcfmB5OtQIrVPrEUo5FYiF36ue/k74rpkhfAkNYEPRdKC5pISnf x6XWkEJdPPnAKMcANpQjQrzjLPw0/t1UlHxEuuJH+1iRuI6ffpQFwnXqiyZewHOnG9 3FI2Y3NxfexwGxnnZhO/XdNgVxdsLTTbgz+6E408odJVr+AAU0vgLXvB46dYGCaqxA /APFRRWL5r/78oD6Pj33DQnijQp/7D/4nbb2c0czWWMYv6tlvt9q00+95qzjUOCYSh y4PsJ9XWCeVhA== Received: from johan by xi.lan with local (Exim 4.98.2) (envelope-from ) id 1wB74n-000000026uQ-3dJW; Fri, 10 Apr 2026 10:18:53 +0200 From: Johan Hovold To: Mark Brown Cc: Matthias Brugger , AngeloGioacchino Del Regno , Frank Li , Sascha Hauer , Andrew Jeffery , Avi Fishman , Tomer Maimon , Tali Perry , Linus Walleij , Andi Shyti , Tudor Ambarus , Paul Walmsley , Samuel Holland , Orson Zhai , Baolin Wang , Jernej Skrabec , Masahisa Kojima , Jassi Brar , Laxman Dewangan , Kunihiko Hayashi , Masami Hiramatsu , Michal Simek , linux-spi@vger.kernel.org, linux-kernel@vger.kernel.org, Johan Hovold , stable@vger.kernel.org Subject: [PATCH 05/26] spi: omap2-mcspi: fix controller deregistration Date: Fri, 10 Apr 2026 10:17:35 +0200 Message-ID: <20260410081757.503099-6-johan@kernel.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260410081757.503099-1-johan@kernel.org> References: <20260410081757.503099-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" Make sure to deregister the controller before releasing underlying resources like DMA during driver unbind. Fixes: ccdc7bf92573 ("SPI: omap2_mcspi driver") Cc: stable@vger.kernel.org # 2.6.23 Signed-off-by: Johan Hovold --- drivers/spi/spi-omap2-mcspi.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/drivers/spi/spi-omap2-mcspi.c b/drivers/spi/spi-omap2-mcspi.c index a3468e47e77d..56b30ff58771 100644 --- a/drivers/spi/spi-omap2-mcspi.c +++ b/drivers/spi/spi-omap2-mcspi.c @@ -1592,7 +1592,7 @@ static int omap2_mcspi_probe(struct platform_device *= pdev) if (status < 0) goto disable_pm; =20 - status =3D devm_spi_register_controller(&pdev->dev, ctlr); + status =3D spi_register_controller(ctlr); if (status < 0) goto disable_pm; =20 @@ -1613,11 +1613,17 @@ static void omap2_mcspi_remove(struct platform_devi= ce *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); + omap2_mcspi_release_dma(ctlr); =20 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.52.0 From nobody Mon Jun 15 12:15:01 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 1382D3ACA62; Fri, 10 Apr 2026 08:18:57 +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=1775809137; cv=none; b=IrHPjpnRspLXykCgN/VqtDYoiibhqRuf5Slli9xwqA+qKNMCjbUol1fVDzYK3qCOys/WUZ6Xyswcgk3ssaYOgolEtWqkKEEk8kVSuUa/55PS84mpS0bf6mhVwJgWPGXjfGXxdszz54ChFjCW0Njak6re7EVEyQ9f024zARk0XNY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775809137; c=relaxed/simple; bh=XAJF9Dgd3KEivhPnAw48nGC8xHdyG9h1Y+3SmIViMdM=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=DLoTXdrm2wIiMk2TXljpHFPCIhETVec0CXI5ABVI/CrW5qBdd5Os84RS1iNqYbmndr2bQCXEuS+X+DHGlnium3WLIqVRd4Ew/lsDYzaKM6FQ/OGNaH2byeIwzwaFYyRq1CJM5/MqYMRpWEgJ62RI4giiphIpvoi+EJQKFuKcDw4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=hQotE9dV; 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="hQotE9dV" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 7CC3AC2BC9E; Fri, 10 Apr 2026 08:18:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1775809136; bh=XAJF9Dgd3KEivhPnAw48nGC8xHdyG9h1Y+3SmIViMdM=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=hQotE9dVhzgpJLRHqDWAFXWaR21yRt7U0zxc6K6r1tKvxZFn6abnH3CPj3SOMwOdw nKNXa/UaOZnTpE6y8HL7PoCWFU+HCYOciHbov3LLF7W8OG++IeRvWn2t0BXCcc63qf sM0M3GCHtQUEadMp3WPDzDBZUpbC6tzA7Cr+bHV2SEHjpkl1+pHwJVQv0UrYSQP8G4 AirA+8alDEUP0f71WqoDRQfna7/+dCJDPC46QpHfE6KvFrdTCNMb/uC96CXCOiO55h 6TzBs6emJB8UVq/NL/PfNKoq8ROa4XFttlbLCmil5EE04HBk65zNbaASgpOR0gM6I1 gApf0fifZDfsw== Received: from johan by xi.lan with local (Exim 4.98.2) (envelope-from ) id 1wB74n-000000026uS-3fj8; Fri, 10 Apr 2026 10:18:53 +0200 From: Johan Hovold To: Mark Brown Cc: Matthias Brugger , AngeloGioacchino Del Regno , Frank Li , Sascha Hauer , Andrew Jeffery , Avi Fishman , Tomer Maimon , Tali Perry , Linus Walleij , Andi Shyti , Tudor Ambarus , Paul Walmsley , Samuel Holland , Orson Zhai , Baolin Wang , Jernej Skrabec , Masahisa Kojima , Jassi Brar , Laxman Dewangan , Kunihiko Hayashi , Masami Hiramatsu , Michal Simek , linux-spi@vger.kernel.org, linux-kernel@vger.kernel.org, Johan Hovold , stable@vger.kernel.org, Purna Chandra Mandal Subject: [PATCH 06/26] spi: pic32: fix controller deregistration Date: Fri, 10 Apr 2026 10:17:36 +0200 Message-ID: <20260410081757.503099-7-johan@kernel.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260410081757.503099-1-johan@kernel.org> References: <20260410081757.503099-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" Make sure to deregister the controller before releasing underlying resources like DMA during driver unbind. Fixes: 1bcb9f8ceb67 ("spi: spi-pic32: Add PIC32 SPI master driver") Cc: stable@vger.kernel.org # 4.7 Cc: Purna Chandra Mandal Signed-off-by: Johan Hovold --- drivers/spi/spi-pic32.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/drivers/spi/spi-pic32.c b/drivers/spi/spi-pic32.c index 369850d14313..70427e529945 100644 --- a/drivers/spi/spi-pic32.c +++ b/drivers/spi/spi-pic32.c @@ -821,7 +821,7 @@ static int pic32_spi_probe(struct platform_device *pdev) } =20 /* register host */ - ret =3D devm_spi_register_controller(&pdev->dev, host); + ret =3D spi_register_controller(host); if (ret) { dev_err(&host->dev, "failed registering spi host\n"); goto err_bailout; @@ -840,11 +840,16 @@ static int pic32_spi_probe(struct platform_device *pd= ev) =20 static void pic32_spi_remove(struct platform_device *pdev) { - struct pic32_spi *pic32s; + struct pic32_spi *pic32s =3D platform_get_drvdata(pdev); + + spi_controller_get(pic32s->host); + + spi_unregister_controller(pic32s->host); =20 - pic32s =3D platform_get_drvdata(pdev); pic32_spi_disable(pic32s); pic32_spi_dma_unprep(pic32s); + + spi_controller_put(pic32s->host); } =20 static const struct of_device_id pic32_spi_of_match[] =3D { --=20 2.52.0 From nobody Mon Jun 15 12:15:01 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 137913ACA61; Fri, 10 Apr 2026 08:18:57 +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=1775809137; cv=none; b=gxyUuO985I4w6Mqhg6UqP58t3IkJwmrJ6yHLiIKi6idYrvWQGNTu6KR6v/K9A2VBmoJoCzLgkPmbAkZhsChPLHyWS9Jmxm0znW1iERLOCY8KpvYBub+ed3dpCnwStMB2y13pKnocyeH5lUNJaZfoHyVJdB3OcxEpXSnRlST5jYk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775809137; c=relaxed/simple; bh=mBOiglv4c8RVhlq0bsWFsH4QCDFb6P9V9vpukqwXKlY=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=J+TgC9WG9bQD76Ic6IL2LSAKBDFlyA7Kv8h+MpwLnSY3ooXae8Ouv3dBqdp6ZIaCULU/vbpL5iR8omUYrzlBfdibBdTH3oULiu/j8/BmQTrMlp4mvTjEH26Zmy57z8aZMLjIKvyY113jMYi4cHKmG/9230LHmrrVBKOwZDQV/uw= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=QJeZ5mx8; 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="QJeZ5mx8" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 83117C2BCB4; Fri, 10 Apr 2026 08:18:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1775809136; bh=mBOiglv4c8RVhlq0bsWFsH4QCDFb6P9V9vpukqwXKlY=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=QJeZ5mx8kF6UrYv1+lcO3dmF7H3Ag1xveS9Id2lWzv3ADKMGFlJ7+lQsP7J1LHdDI g6LQQ6P0L8jWsmV4AhlXcS6y5lnfHLL/8gJEAwfYhFS66RkFxcy6lTfWvV90qhO4WM A9nNdgrCIZ4lvhbkeiyaTYKrrwDjK0xRCeEFeoTjY91GF+bkfcvA2rJyXP8xuY+QIY PynxmrJodL9F0YJ00NS8cRjdE+7aLqT2oExwRjcloGKTzsoc/ACnvXNyxf5r/48pkl ZpVQHs84s4CAUo0aJARYszByWgcaEsO4pBfYaE0h+JZfBtXExV2rYal5TqSRK6PeFK QcMtpUvg2gvVA== Received: from johan by xi.lan with local (Exim 4.98.2) (envelope-from ) id 1wB74n-000000026uU-3iZV; Fri, 10 Apr 2026 10:18:53 +0200 From: Johan Hovold To: Mark Brown Cc: Matthias Brugger , AngeloGioacchino Del Regno , Frank Li , Sascha Hauer , Andrew Jeffery , Avi Fishman , Tomer Maimon , Tali Perry , Linus Walleij , Andi Shyti , Tudor Ambarus , Paul Walmsley , Samuel Holland , Orson Zhai , Baolin Wang , Jernej Skrabec , Masahisa Kojima , Jassi Brar , Laxman Dewangan , Kunihiko Hayashi , Masami Hiramatsu , Michal Simek , linux-spi@vger.kernel.org, linux-kernel@vger.kernel.org, Johan Hovold , stable@vger.kernel.org, Purna Chandra Mandal Subject: [PATCH 07/26] spi: pic32-sqi: fix controller deregistration Date: Fri, 10 Apr 2026 10:17:37 +0200 Message-ID: <20260410081757.503099-8-johan@kernel.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260410081757.503099-1-johan@kernel.org> References: <20260410081757.503099-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" Make sure to deregister the controller before releasing underlying resources like DMA during driver unbind. Fixes: 3270ac230f66 ("spi: pic32-sqi: add SPI driver for PIC32 SQI controll= er.") Cc: stable@vger.kernel.org # 4.7 Cc: Purna Chandra Mandal Signed-off-by: Johan Hovold --- drivers/spi/spi-pic32-sqi.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/drivers/spi/spi-pic32-sqi.c b/drivers/spi/spi-pic32-sqi.c index 051590038895..41662992dbe5 100644 --- a/drivers/spi/spi-pic32-sqi.c +++ b/drivers/spi/spi-pic32-sqi.c @@ -642,7 +642,7 @@ static int pic32_sqi_probe(struct platform_device *pdev) host->prepare_transfer_hardware =3D pic32_sqi_prepare_hardware; host->unprepare_transfer_hardware =3D pic32_sqi_unprepare_hardware; =20 - ret =3D devm_spi_register_controller(&pdev->dev, host); + ret =3D spi_register_controller(host); if (ret) { dev_err(&host->dev, "failed registering spi host\n"); free_irq(sqi->irq, sqi); @@ -665,9 +665,15 @@ static void pic32_sqi_remove(struct platform_device *p= dev) { struct pic32_sqi *sqi =3D platform_get_drvdata(pdev); =20 + spi_controller_get(sqi->host); + + spi_unregister_controller(sqi->host); + /* release resources */ free_irq(sqi->irq, sqi); ring_desc_ring_free(sqi); + + spi_controller_put(sqi->host); } =20 static const struct of_device_id pic32_sqi_of_ids[] =3D { --=20 2.52.0 From nobody Mon Jun 15 12:15:01 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 0F4133ACA60; Fri, 10 Apr 2026 08:18:57 +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=1775809137; cv=none; b=Wm4YyQsbfDmxut4XlCXtiyJitrEmsCNr7w8zkdbcawzuS1i+enrdTcs7c5ELanupoFGXGn1JG3xS2T6bU0YeAXKGGUMMqiMFRUcIXwqevN1p8u1KdZ63zAKpXs1ATmpj8//Wjw/XVxFWAac5inCKdKs98pUTvTKgUjv6/4VsxjU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775809137; c=relaxed/simple; bh=XJv4swEKIt/F7Gdb4lG5twzMESuy6m63g0aob4Tlodk=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=qmS5/a/xGphwuKgXIQD702KquKIHBGPP/xeINzQetxNlDzxKl4KfU3VuB6QoEzxWdjJcvbECsiW88XwF35Fi82/Dn5/brA1tMjltkPat79ZPELkS+f2peQ23y1PAOLvyS+ELJjgf34vjpLp7tsmugCVCGw1WF8a5s9A0dxk6ZnE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=SvOolfGe; 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="SvOolfGe" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 8E8A4C2BCC4; Fri, 10 Apr 2026 08:18:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1775809136; bh=XJv4swEKIt/F7Gdb4lG5twzMESuy6m63g0aob4Tlodk=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=SvOolfGeDCcbnWf5mFS87ZfpebcTS3qDzfBoXjFjCIv7rjfy7ZEzfoyyA9UCpZnDh uEyPlizGPFN2l4iPdl8XqHpwGyST3RxOhkPxt9EeHPpi/mfq7Cf9cKRPW4NK7QVzXY Sd7mOTYkpU4xAs6w7bi40kgiehpuEUf2SiRBMLedJk4uCGTayeH9P5LhAbibVWcvyu dPrbDpj23AfTZ2cB4XyJSJq0CT9ter8QpPE8Bw9WZfV8M19ABroWfse4n1IToWZjnA PWOtPLOQC4pH1UFzfEnwuo+KGVCCPY9scJ7Vd13I8x4Ob0OQyga4GyNGObY6XGDu43 LSIVVnKTX/esw== Received: from johan by xi.lan with local (Exim 4.98.2) (envelope-from ) id 1wB74n-000000026uW-3kxW; Fri, 10 Apr 2026 10:18:53 +0200 From: Johan Hovold To: Mark Brown Cc: Matthias Brugger , AngeloGioacchino Del Regno , Frank Li , Sascha Hauer , Andrew Jeffery , Avi Fishman , Tomer Maimon , Tali Perry , Linus Walleij , Andi Shyti , Tudor Ambarus , Paul Walmsley , Samuel Holland , Orson Zhai , Baolin Wang , Jernej Skrabec , Masahisa Kojima , Jassi Brar , Laxman Dewangan , Kunihiko Hayashi , Masami Hiramatsu , Michal Simek , linux-spi@vger.kernel.org, linux-kernel@vger.kernel.org, Johan Hovold , stable@vger.kernel.org Subject: [PATCH 08/26] spi: pl022: fix controller deregistration Date: Fri, 10 Apr 2026 10:17:38 +0200 Message-ID: <20260410081757.503099-9-johan@kernel.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260410081757.503099-1-johan@kernel.org> References: <20260410081757.503099-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" Make sure to deregister the controller before releasing underlying resources like DMA during driver unbind. Fixes: b43d65f7e818 ("[ARM] 5546/1: ARM PL022 SSP/SPI driver v3") Cc: stable@vger.kernel.org # 2.6.31 Cc: Linus Walleij Signed-off-by: Johan Hovold --- drivers/spi/spi-pl022.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/drivers/spi/spi-pl022.c b/drivers/spi/spi-pl022.c index bd1d28caa51e..9c0211f94fd0 100644 --- a/drivers/spi/spi-pl022.c +++ b/drivers/spi/spi-pl022.c @@ -1956,7 +1956,7 @@ static int pl022_probe(struct amba_device *adev, cons= t struct amba_id *id) =20 /* Register with the SPI framework */ amba_set_drvdata(adev, pl022); - status =3D devm_spi_register_controller(&adev->dev, host); + status =3D spi_register_controller(host); if (status !=3D 0) { dev_err_probe(&adev->dev, status, "problem registering spi host\n"); @@ -1997,6 +1997,10 @@ pl022_remove(struct amba_device *adev) if (!pl022) return; =20 + spi_controller_get(pl022->host); + + spi_unregister_controller(pl022->host); + /* * undo pm_runtime_put() in probe. I assume that we're not * accessing the primecell here. @@ -2008,6 +2012,8 @@ pl022_remove(struct amba_device *adev) pl022_dma_remove(pl022); =20 amba_release_regions(adev); + + spi_controller_put(pl022->host); } =20 #ifdef CONFIG_PM_SLEEP --=20 2.52.0 From nobody Mon Jun 15 12:15:01 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 E9E9C3AC0EA; Fri, 10 Apr 2026 08:18:56 +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=1775809137; cv=none; b=X2qPG76uUv899tJ4AC0firL8t3v2alcsciq549rvG0hBkpIAz8lLdkBuqc0m7N8Ex6BCv9Nu84o9jmy+8vpmTXVta0Or6/wEA23+zrds2QSwKStYb7M11JFJ4Kj6h5jfFnuVxu+BZJr10ojshDEEiZYdArYOAG0d95iXzrUQslA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775809137; c=relaxed/simple; bh=PgNF6KIfTsr8geLhQ83j+NHXlo6CNE5QENaScwNL7Kc=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=lGXGppuT6hTAJ8ArC1UtoKQewM30Yykn6/c1L2k8WxZ0M6LbZGEMF+TyMSI2vmk5omcy3CRA9J91h/HD9bk5l5tIWy5XB9RGXStXj4B6NvSeMXjErVFlCM+hj69xzpqGdiNo0QS+OpBcQatGE5S7oMPzopvHq1kEIUBr+C2g71U= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=uMjWx2tj; 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="uMjWx2tj" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 80A15C2BCB2; Fri, 10 Apr 2026 08:18:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1775809136; bh=PgNF6KIfTsr8geLhQ83j+NHXlo6CNE5QENaScwNL7Kc=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=uMjWx2tjaQHLrgrCDEqoF3ZdepgTOlqmcY0bfBQLr24HI/VvcthqIG/VdjqBxSegF cxsVMQK/tqmkLl22IexLVcXZDq9t49KGjSuGhmQtO0PwCenhLdnBfG8+MfYGtOikz7 F/6M+JqBUnJDbm9FP2VABu4mjk+xGgZ/Nw5zIW3rOPtC8gnVJn5Z/U4Iq1QkM5SIiN YCfiJfClbKXRrtv+opcmKh4K1K992C09yjvXLj3y9UX1+yxsyccWIBlB0/h/uUhzBE EKUoGQWNmri8h5cI364U/Hh6Yc/eSaGffwQgmtGZdZXwjBCkAvBCJVsLv8/wrKrXi1 37r4axlIeYBNw== Received: from johan by xi.lan with local (Exim 4.98.2) (envelope-from ) id 1wB74n-000000026uY-3nLF; Fri, 10 Apr 2026 10:18:53 +0200 From: Johan Hovold To: Mark Brown Cc: Matthias Brugger , AngeloGioacchino Del Regno , Frank Li , Sascha Hauer , Andrew Jeffery , Avi Fishman , Tomer Maimon , Tali Perry , Linus Walleij , Andi Shyti , Tudor Ambarus , Paul Walmsley , Samuel Holland , Orson Zhai , Baolin Wang , Jernej Skrabec , Masahisa Kojima , Jassi Brar , Laxman Dewangan , Kunihiko Hayashi , Masami Hiramatsu , Michal Simek , linux-spi@vger.kernel.org, linux-kernel@vger.kernel.org, Johan Hovold , stable@vger.kernel.org Subject: [PATCH 09/26] spi: qup: fix controller deregistration Date: Fri, 10 Apr 2026 10:17:39 +0200 Message-ID: <20260410081757.503099-10-johan@kernel.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260410081757.503099-1-johan@kernel.org> References: <20260410081757.503099-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" Make sure to deregister the controller before disabling underlying resources like clocks during driver unbind. Fixes: 64ff247a978f ("spi: Add Qualcomm QUP SPI controller support") Cc: stable@vger.kernel.org # 3.15 Signed-off-by: Johan Hovold --- drivers/spi/spi-qup.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/drivers/spi/spi-qup.c b/drivers/spi/spi-qup.c index 6cbdcd060e8c..45d9b4cb75e4 100644 --- a/drivers/spi/spi-qup.c +++ b/drivers/spi/spi-qup.c @@ -1193,7 +1193,7 @@ static int spi_qup_probe(struct platform_device *pdev) pm_runtime_set_active(dev); pm_runtime_enable(dev); =20 - ret =3D devm_spi_register_controller(dev, host); + ret =3D spi_register_controller(host); if (ret) goto disable_pm; =20 @@ -1320,6 +1320,10 @@ static void spi_qup_remove(struct platform_device *p= dev) struct spi_qup *controller =3D spi_controller_get_devdata(host); int ret; =20 + spi_controller_get(host); + + spi_unregister_controller(host); + ret =3D pm_runtime_get_sync(&pdev->dev); =20 if (ret >=3D 0) { @@ -1339,6 +1343,8 @@ static void spi_qup_remove(struct platform_device *pd= ev) =20 pm_runtime_put_noidle(&pdev->dev); pm_runtime_disable(&pdev->dev); + + spi_controller_put(host); } =20 static const struct of_device_id spi_qup_dt_match[] =3D { --=20 2.52.0 From nobody Mon Jun 15 12:15:01 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 34CD33ACEF8; Fri, 10 Apr 2026 08:18:57 +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=1775809137; cv=none; b=XruaS7QaPjz1LZ5wgxyhoF3es5Ubxneqb04gsH7bz2nwHzZtGAzg+EaQyHtX86sxSEI88njkET8zaxwYLdIw6Fg/whgbtLBpk3cHfj+qHkjRec8bffJ+mFyCjF+Vrw9oF3Ebeir2lCccRTX2f7eGpD/coWpSZ8iSQqmrURylAog= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775809137; c=relaxed/simple; bh=im61OindJCWFbeDsc/7HU2dJM5dG83E5ASeXW+NDShI=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=eCj8URdfsEa22hm0vkEjn/gV2Z1hkP0HVeiCNZinQwd4VXLoRyNahwyelHKNXriuz28FWKOFGEqCe7xo9l37JmryMwhybI5sMBP5zrcNgCQgTJ1ZZm0KPhaRD2Q3T1txNye/kziGDSmxX81Nv1tZYGIFkwpRXdfd8ePFvc4iyF8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=a16U7Nb+; 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="a16U7Nb+" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 9B044C2BCF4; Fri, 10 Apr 2026 08:18:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1775809136; bh=im61OindJCWFbeDsc/7HU2dJM5dG83E5ASeXW+NDShI=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=a16U7Nb+ZmuO1h56nHU2Us6lb+bcGCEjrnOfD/7EFFwlxbFueh+ZItslO2okTVZqz qqtT58+xUTmi8VtamED2NqoBiRVuCACwRYQQV1GGPHcIZeyUdUqO+Jk6yYomMYCWR4 S47gNLJemSvH8guEWcewnTjgnPx0TUmtnlRdr87v32W10YRok0ciUK10QVe8AgmOJ5 dwQB4NgtGIdTbpGvWRj0FS0gEQAiDRYSYrMuCpURgczvumHsTBCPUOsBX1CzAnf/30 pRp6rAPCSANU/6ajmAWiNuzeYqt13ogad1bNRyNfkCdI7gNslLC6xJOs2z4sQkkwF9 ZUOgBy7itL+EA== Received: from johan by xi.lan with local (Exim 4.98.2) (envelope-from ) id 1wB74n-000000026ua-3qH6; Fri, 10 Apr 2026 10:18:53 +0200 From: Johan Hovold To: Mark Brown Cc: Matthias Brugger , AngeloGioacchino Del Regno , Frank Li , Sascha Hauer , Andrew Jeffery , Avi Fishman , Tomer Maimon , Tali Perry , Linus Walleij , Andi Shyti , Tudor Ambarus , Paul Walmsley , Samuel Holland , Orson Zhai , Baolin Wang , Jernej Skrabec , Masahisa Kojima , Jassi Brar , Laxman Dewangan , Kunihiko Hayashi , Masami Hiramatsu , Michal Simek , linux-spi@vger.kernel.org, linux-kernel@vger.kernel.org, Johan Hovold , stable@vger.kernel.org, Jingoo Han Subject: [PATCH 10/26] spi: rspi: fix controller deregistration Date: Fri, 10 Apr 2026 10:17:40 +0200 Message-ID: <20260410081757.503099-11-johan@kernel.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260410081757.503099-1-johan@kernel.org> References: <20260410081757.503099-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" Make sure to deregister the controller before releasing underlying resources like DMA during driver unbind. Fixes: 9e03d05eee4c ("spi: rcar: Use devm_spi_register_master()") Cc: stable@vger.kernel.org # 3.14 Cc: Jingoo Han Signed-off-by: Johan Hovold --- drivers/spi/spi-rspi.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/drivers/spi/spi-rspi.c b/drivers/spi/spi-rspi.c index c739c1998b4c..a8180dece716 100644 --- a/drivers/spi/spi-rspi.c +++ b/drivers/spi/spi-rspi.c @@ -1171,8 +1171,14 @@ static void rspi_remove(struct platform_device *pdev) { struct rspi_data *rspi =3D platform_get_drvdata(pdev); =20 + spi_controller_get(rspi->ctlr); + + spi_unregister_controller(rspi->ctlr); + rspi_release_dma(rspi->ctlr); pm_runtime_disable(&pdev->dev); + + spi_controller_put(rspi->ctlr); } =20 static const struct spi_ops rspi_ops =3D { @@ -1376,9 +1382,9 @@ static int rspi_probe(struct platform_device *pdev) if (ret < 0) dev_warn(&pdev->dev, "DMA not available, using PIO\n"); =20 - ret =3D devm_spi_register_controller(&pdev->dev, ctlr); + ret =3D spi_register_controller(ctlr); if (ret < 0) { - dev_err(&pdev->dev, "devm_spi_register_controller error.\n"); + dev_err(&pdev->dev, "failed to register controller\n"); goto error3; } =20 --=20 2.52.0 From nobody Mon Jun 15 12:15:01 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 220D33ACA7C; Fri, 10 Apr 2026 08:18:57 +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=1775809137; cv=none; b=fq6fwTpsBnk1MR5zdncgp8gFXek1bbpzt/gM8BeGSgXwrpqLKxaA9BiGqUBfrAKjhtnGhaiiXlZjXw6F/HitzxYx3MXD8LPeBwdkelg0DcFyuf5hbimEc8jA5a/tYEmkC5oPYdKe8v2BvN1vTqe0gtgTpVY4Z+NYHzVhhhxtmIk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775809137; c=relaxed/simple; bh=TLi4qGfgMZZZlhmiRkUzE5zMj3I0oiDgiz+990HwJYk=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=XQQ8QjIA3/AayNDeretKiBeY5agW/UA8dX8Sz86esh65i4LSKiA+WldVeF5Q088AlRkYoIWnHHluILkjOLfvvo5FD8Eu8z2Q0FoGViiLER9cd2kVCpLzJ6bVVzoe5UrAgFcLxe+ndrg95gXhB2C4mPG8Ba7FkKTwNdgoqU9ppqY= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=cAsk765v; 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="cAsk765v" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 8944FC2BCB6; Fri, 10 Apr 2026 08:18:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1775809136; bh=TLi4qGfgMZZZlhmiRkUzE5zMj3I0oiDgiz+990HwJYk=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=cAsk765vzVHY8UDHN1nUmD/kOHfpwzLWfEaXKtWIHXnckN9YzfzM3BRJ8FTY5/3Q4 aQ9eger7yB0HxceXvHVkCjflbHxnhTnsSnRIeMbmGZOnHYrRml7ObjgRwKUINuIIph Lc+qT/5xcffgF8u1AyAzi2KW/Ed3MFS8vXAawTPkSRJAD8w+7yORjLovuS83CrEJ0w uzVvPk+V1zvINc0hTrcK8i9cvA6+oSkuJWzCWGJvta7vtAmSarhBXjA4jw3kVMqUy6 +CMEQrvOqAa7X2MWjoiOFM2U9A9GPaCfJ+F6RdPEeyg1HpeLULSAG1dBEYfWAv36RE 8ITc7tNwusHmg== Received: from johan by xi.lan with local (Exim 4.98.2) (envelope-from ) id 1wB74n-000000026uc-3slJ; Fri, 10 Apr 2026 10:18:53 +0200 From: Johan Hovold To: Mark Brown Cc: Matthias Brugger , AngeloGioacchino Del Regno , Frank Li , Sascha Hauer , Andrew Jeffery , Avi Fishman , Tomer Maimon , Tali Perry , Linus Walleij , Andi Shyti , Tudor Ambarus , Paul Walmsley , Samuel Holland , Orson Zhai , Baolin Wang , Jernej Skrabec , Masahisa Kojima , Jassi Brar , Laxman Dewangan , Kunihiko Hayashi , Masami Hiramatsu , Michal Simek , linux-spi@vger.kernel.org, linux-kernel@vger.kernel.org, Johan Hovold , stable@vger.kernel.org Subject: [PATCH 11/26] spi: s3c64xx: fix controller deregistration Date: Fri, 10 Apr 2026 10:17:41 +0200 Message-ID: <20260410081757.503099-12-johan@kernel.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260410081757.503099-1-johan@kernel.org> References: <20260410081757.503099-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" Make sure to deregister the controller before releasing underlying resources like DMA during driver unbind. Fixes: 91800f0e9005 ("spi/s3c64xx: Use managed registration") Cc: stable@vger.kernel.org # 3.13: 76fbad410c0f Cc: stable@vger.kernel.org # 3.13 Signed-off-by: Johan Hovold --- drivers/spi/spi-s3c64xx.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/spi/spi-s3c64xx.c b/drivers/spi/spi-s3c64xx.c index ba85243d6d89..95b61264b679 100644 --- a/drivers/spi/spi-s3c64xx.c +++ b/drivers/spi/spi-s3c64xx.c @@ -1369,7 +1369,7 @@ static int s3c64xx_spi_probe(struct platform_device *= pdev) S3C64XX_SPI_INT_TX_OVERRUN_EN | S3C64XX_SPI_INT_TX_UNDERRUN_EN, sdd->regs + S3C64XX_SPI_INT_EN); =20 - ret =3D devm_spi_register_controller(&pdev->dev, host); + ret =3D spi_register_controller(host); if (ret !=3D 0) { dev_err(&pdev->dev, "cannot register SPI host: %d\n", ret); goto err_pm_put; @@ -1399,6 +1399,8 @@ static void s3c64xx_spi_remove(struct platform_device= *pdev) =20 pm_runtime_get_sync(&pdev->dev); =20 + spi_unregister_controller(host); + writel(0, sdd->regs + S3C64XX_SPI_INT_EN); =20 if (!is_polling(sdd)) { --=20 2.52.0 From nobody Mon Jun 15 12:15:01 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 34DEB3ACF0B; Fri, 10 Apr 2026 08:18:57 +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=1775809137; cv=none; b=BjtwqcdlfLrUxpL2uqhgyfhgt6y4nr6DWB45VbViFjArTHJuXrcZjmQ/jQFKmxznME25/HaBufVbgMlz5mpRUEwDoS7kgMpovLT51OQO0i7+Jb35u+oRFYEKgR5xC7ASzP2Sh6C4fueGTmaIBXfpzkzOwr1dDwHEWJ+cyf2IaYk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775809137; c=relaxed/simple; bh=SHAf3I+yXF6tFQdQ6E9G7b2TWAaGV8lr5L4tBHqtFGM=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=mV0SnXH3iiZjGXw0AaGeSOwIzlALXw3C/MpggQIGKGAi6ffwz5pgXHVV80fe6VB3lT2/iY0diFgqZ8eXQ9s9g5UqU/Bwaj3vpwqTgP2cu7hzwSdYs+6cOKy3JTrkmCMg/5yTEIJHQ7fmDODPANQ/YksU++NdG7nR4WUAxLyuCQ0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=hzJ+aOVJ; 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="hzJ+aOVJ" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 96E53C2BCC6; Fri, 10 Apr 2026 08:18:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1775809136; bh=SHAf3I+yXF6tFQdQ6E9G7b2TWAaGV8lr5L4tBHqtFGM=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=hzJ+aOVJBjwWhkmSrUOop98ozUK83FJJdEV5izdavhefnuzW/xjNw8E28I6xEg491 TGmhx+WSJI166QJvzBIDpIp39ngKL4jiitoWRmCmNzJo5Zz3QoyGEF6vBe3PDRu1Ks YG/yjU9NWjIZW0OWKkWmfFxobFiwGUeIBaneyUGLa6FClAGV4eskOd0HRSEsq9/ZjC pSYiJAm1JdcYoLrMWTRfBG3v2eYD2dr05I1pm2nCm7nKcOWCegWkAvuUgNMLaK/5yR CIgm+2RSrQTRZ/BIKSvJe8LszO8RbJ8WQFfs+gxsE8PuQNV5mB6EqfdnJwK1AgvtoX +YA5uhFYvQuMQ== Received: from johan by xi.lan with local (Exim 4.98.2) (envelope-from ) id 1wB74n-000000026ue-3vCw; Fri, 10 Apr 2026 10:18:53 +0200 From: Johan Hovold To: Mark Brown Cc: Matthias Brugger , AngeloGioacchino Del Regno , Frank Li , Sascha Hauer , Andrew Jeffery , Avi Fishman , Tomer Maimon , Tali Perry , Linus Walleij , Andi Shyti , Tudor Ambarus , Paul Walmsley , Samuel Holland , Orson Zhai , Baolin Wang , Jernej Skrabec , Masahisa Kojima , Jassi Brar , Laxman Dewangan , Kunihiko Hayashi , Masami Hiramatsu , Michal Simek , linux-spi@vger.kernel.org, linux-kernel@vger.kernel.org, Johan Hovold , stable@vger.kernel.org Subject: [PATCH 12/26] spi: sh-hspi: fix controller deregistration Date: Fri, 10 Apr 2026 10:17:42 +0200 Message-ID: <20260410081757.503099-13-johan@kernel.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260410081757.503099-1-johan@kernel.org> References: <20260410081757.503099-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" Make sure to deregister the controller before releasing underlying resources like clocks during driver unbind. Fixes: 49e599b8595f ("spi: sh-hspi: control spi clock more correctly") Cc: stable@vger.kernel.org # 3.4 Signed-off-by: Johan Hovold --- drivers/spi/spi-sh-hspi.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/drivers/spi/spi-sh-hspi.c b/drivers/spi/spi-sh-hspi.c index e03eaca1b1a7..1e3ca718ca73 100644 --- a/drivers/spi/spi-sh-hspi.c +++ b/drivers/spi/spi-sh-hspi.c @@ -257,9 +257,9 @@ static int hspi_probe(struct platform_device *pdev) ctlr->transfer_one_message =3D hspi_transfer_one_message; ctlr->bits_per_word_mask =3D SPI_BPW_MASK(8); =20 - ret =3D devm_spi_register_controller(&pdev->dev, ctlr); + ret =3D spi_register_controller(ctlr); if (ret < 0) { - dev_err(&pdev->dev, "devm_spi_register_controller error.\n"); + dev_err(&pdev->dev, "failed to register controller\n"); goto error2; } =20 @@ -279,9 +279,15 @@ static void hspi_remove(struct platform_device *pdev) { struct hspi_priv *hspi =3D platform_get_drvdata(pdev); =20 + spi_controller_get(hspi->ctlr); + + spi_unregister_controller(hspi->ctlr); + pm_runtime_disable(&pdev->dev); =20 clk_put(hspi->clk); + + spi_controller_put(hspi->ctlr); } =20 static const struct of_device_id hspi_of_match[] =3D { --=20 2.52.0 From nobody Mon Jun 15 12:15:01 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 37B733ACF14; Fri, 10 Apr 2026 08:18:57 +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=1775809137; cv=none; b=cr/j6NzV+rH3ygLe8oaDIAlSMQFNg+djd1z7/30bHw0hrsLTEIFm+HCjm4qHdbUPZRGz2dF90EqHhuzHheTz5xsQURf547riI76+YyZxnQrEFazTk7uzhwOVge2KVZ+Ns59GF6iFIQNah2McLDT7pc73iPsXuT62C9+VEop89SY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775809137; c=relaxed/simple; bh=o0vXBeK2SgguF0rsfM5b6rJ0D7VG7idXDew+BdwPXro=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=S9hhq8yjCo+55CkpZ23cZPR2uol06qrPWkuQ9l8AH9t8M1dGiK9qdnCDc4d9A85lcqsakqnQR9tpvFHGEPAU5s4LlfB3EaaDEJFBVb1x6KuPhNHTNE7CKdlR0QZzdhvbaO4vPa/V3uzqrki9gkaNNstgEhzrp4wX2OU97WQPOEc= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=Pwf6v3Id; 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="Pwf6v3Id" Received: by smtp.kernel.org (Postfix) with ESMTPSA id A575BC2BCB7; Fri, 10 Apr 2026 08:18:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1775809136; bh=o0vXBeK2SgguF0rsfM5b6rJ0D7VG7idXDew+BdwPXro=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=Pwf6v3Id3kuqyR244ThJ9QoniphIr4Z27UsLc0NgaJHnx8a5LTLVXdK/DQO8v/vir psz2w4xJd9hsCtXAy7Bl5Z1q8kUqd+EZqkw+D9zfTkIYGhQEbWqB8hVJGjG0eHheiv SkwR18v82EGCUKsWweLMDPLqJt71EmQIGaKyjzQuCSNxXkxqT/jaqzNUEfZpFPi/mD yWAhNysds1cMPNEZU1wq28qbsHckhkLa56jw4GWfIHSBTA1Gbvy25k+dxMtPRSenfv IoanASpqQ9/jc7BZbh3u6VZybjmpg0jeYXxvQWwiVf5a2yZY9VVV4P0HHYjeDnbN1X 19QV44ED4OqiA== Received: from johan by xi.lan with local (Exim 4.98.2) (envelope-from ) id 1wB74n-000000026ug-3xxG; Fri, 10 Apr 2026 10:18:53 +0200 From: Johan Hovold To: Mark Brown Cc: Matthias Brugger , AngeloGioacchino Del Regno , Frank Li , Sascha Hauer , Andrew Jeffery , Avi Fishman , Tomer Maimon , Tali Perry , Linus Walleij , Andi Shyti , Tudor Ambarus , Paul Walmsley , Samuel Holland , Orson Zhai , Baolin Wang , Jernej Skrabec , Masahisa Kojima , Jassi Brar , Laxman Dewangan , Kunihiko Hayashi , Masami Hiramatsu , Michal Simek , linux-spi@vger.kernel.org, linux-kernel@vger.kernel.org, Johan Hovold , stable@vger.kernel.org, Geert Uytterhoeven Subject: [PATCH 13/26] spi: sh-msiof: fix controller deregistration Date: Fri, 10 Apr 2026 10:17:43 +0200 Message-ID: <20260410081757.503099-14-johan@kernel.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260410081757.503099-1-johan@kernel.org> References: <20260410081757.503099-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" Make sure to deregister the controller before releasing underlying resources like DMA during driver unbind. Fixes: 1bd6363bc0c6 ("spi: sh-msiof: Use core message handling instead of s= pi-bitbang") Cc: stable@vger.kernel.org # 3.15 Cc: Geert Uytterhoeven Signed-off-by: Johan Hovold --- drivers/spi/spi-sh-msiof.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/drivers/spi/spi-sh-msiof.c b/drivers/spi/spi-sh-msiof.c index 7f3e08810560..f114b6313f4f 100644 --- a/drivers/spi/spi-sh-msiof.c +++ b/drivers/spi/spi-sh-msiof.c @@ -1289,9 +1289,9 @@ static int sh_msiof_spi_probe(struct platform_device = *pdev) if (ret < 0) dev_warn(dev, "DMA not available, using PIO\n"); =20 - ret =3D devm_spi_register_controller(dev, ctlr); + ret =3D spi_register_controller(ctlr); if (ret < 0) { - dev_err(dev, "devm_spi_register_controller error.\n"); + dev_err(dev, "failed to register controller\n"); goto err2; } =20 @@ -1309,8 +1309,14 @@ static void sh_msiof_spi_remove(struct platform_devi= ce *pdev) { struct sh_msiof_spi_priv *p =3D platform_get_drvdata(pdev); =20 + spi_controller_get(p->ctlr); + + spi_unregister_controller(p->ctlr); + sh_msiof_release_dma(p); pm_runtime_disable(&pdev->dev); + + spi_controller_put(p->ctlr); } =20 static const struct platform_device_id spi_driver_ids[] =3D { --=20 2.52.0 From nobody Mon Jun 15 12:15:01 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 321F43ACEFD; Fri, 10 Apr 2026 08:18:57 +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=1775809137; cv=none; b=atgHW5p7I1I1Xr2DGoRTt7F37k8/teSJulieeW9srnl+OSl4LvfT1tFbBDxet3p7wb/SB3ZQOZSl9lb1VhRgmrifHeBSlaTBH7Q/NIHLP82ydZPMEZAFHpJARqu2QaHyV4VW6FExsZLzWluXp8cbHO9jDXTT5oH+cFIMqTH2MF4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775809137; c=relaxed/simple; bh=wWTTYuWiW92SRM4Rfco7ThNu3zooqDKXAYr/i/dV+78=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=aX26541B9hf7faWdZXnfkonbn8eCEMVc6v4JRYhzQXsS2wnrXgCY2Bj34oMLz1Z4/xpaS5yDYaiAm7B59F7Sd8h8RO5xoPI16aN6RQtViX3B4FHzkPZ4MzPhV0bwaIfy/09LULRpSS1Zyz5ucpYvUqnGR1uRUkyXTN+Ni9KwpF0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=VZg4og6i; 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="VZg4og6i" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 9ED3FC2BCF6; Fri, 10 Apr 2026 08:18:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1775809136; bh=wWTTYuWiW92SRM4Rfco7ThNu3zooqDKXAYr/i/dV+78=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=VZg4og6iMbQcxAgaZuzyoe++nr+DOXPstoQmGLb6LA8FVKXqqbISGN0IwEt/edTi0 v9O3kskB5j03/bPJud4EozS7VgZPfg9ju20Q7E7zh4o89RsASFFq3Jh5ibYXzYzhhU sq7DTRqtyCV/LR2ChamFVxb8M2lbIhoNUrl5DeArZr/Enaw7b7n3EpmMHaNxPgoQlN /aka5iwoE2uX09wwCm8Zbcrx/375OjNm++2zk7P97PhpynyIWf/ZLe6nKoCoUaOQoV lQuNkiSJDG8as38dVlclyWxtp2dX9GbDn7gTUyY8IT5vapFbf8P2Zhw6aZzrLeu+bO 3QFOCiwzjX97w== Received: from johan by xi.lan with local (Exim 4.98.2) (envelope-from ) id 1wB74n-000000026ui-40iJ; Fri, 10 Apr 2026 10:18:53 +0200 From: Johan Hovold To: Mark Brown Cc: Matthias Brugger , AngeloGioacchino Del Regno , Frank Li , Sascha Hauer , Andrew Jeffery , Avi Fishman , Tomer Maimon , Tali Perry , Linus Walleij , Andi Shyti , Tudor Ambarus , Paul Walmsley , Samuel Holland , Orson Zhai , Baolin Wang , Jernej Skrabec , Masahisa Kojima , Jassi Brar , Laxman Dewangan , Kunihiko Hayashi , Masami Hiramatsu , Michal Simek , linux-spi@vger.kernel.org, linux-kernel@vger.kernel.org, Johan Hovold , stable@vger.kernel.org, Yash Shah Subject: [PATCH 14/26] spi: sifive: fix controller deregistration Date: Fri, 10 Apr 2026 10:17:44 +0200 Message-ID: <20260410081757.503099-15-johan@kernel.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260410081757.503099-1-johan@kernel.org> References: <20260410081757.503099-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" Make sure to deregister the controller before disabling underlying resources like interrupts during driver unbind. Note that clocks were also disabled before the recent commit 140039c23aca ("spi: sifive: Simplify clock handling with devm_clk_get_enabled()"). Fixes: 484a9a68d669 ("spi: sifive: Add driver for the SiFive SPI controller= ") Cc: stable@vger.kernel.org # 5.1 Cc: Yash Shah Signed-off-by: Johan Hovold --- drivers/spi/spi-sifive.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/drivers/spi/spi-sifive.c b/drivers/spi/spi-sifive.c index 54adbc057af6..74a3e32fd2b5 100644 --- a/drivers/spi/spi-sifive.c +++ b/drivers/spi/spi-sifive.c @@ -392,7 +392,7 @@ static int sifive_spi_probe(struct platform_device *pde= v) dev_info(&pdev->dev, "mapped; irq=3D%d, cs=3D%d\n", irq, host->num_chipselect); =20 - ret =3D devm_spi_register_controller(&pdev->dev, host); + ret =3D spi_register_controller(host); if (ret < 0) { dev_err(&pdev->dev, "spi_register_host failed\n"); goto put_host; @@ -411,8 +411,14 @@ static void sifive_spi_remove(struct platform_device *= pdev) struct spi_controller *host =3D platform_get_drvdata(pdev); struct sifive_spi *spi =3D spi_controller_get_devdata(host); =20 + spi_controller_get(host); + + spi_unregister_controller(host); + /* Disable all the interrupts just in case */ sifive_spi_write(spi, SIFIVE_SPI_REG_IE, 0); + + spi_controller_put(host); } =20 static int sifive_spi_suspend(struct device *dev) --=20 2.52.0 From nobody Mon Jun 15 12:15:01 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 34D623ACF07; Fri, 10 Apr 2026 08:18:57 +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=1775809137; cv=none; b=G5a+Un89geonew/O4be8uskFJGE0beEVkbxtBqXo2kEeDJKhGXZM5F8BSj3ey2n7QD5xy1Op4vYd67eY9s03t8BS8dmxgTwdgQKdg1ZAt96ZvdbqIErj+SYoH9g7qLRKuGdLepDcgsxm/pZgUNRaNC+4CX3gL3hTsXPAgd7c7Jc= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775809137; c=relaxed/simple; bh=UYGlDi1cPoopc+/rV7EGEP17fwrJo+7fHh3T+dg3/bQ=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=VlD20Sh7rs0Y+MKC+Zb1sfZkUCE9ucJzl1y3+E0p4DPzkNjCoB1pRpTv3lU6hGI0T2e3OJprRteW0/tQOwj9OgUEYrJE0qdEfZFGxWPI29c7eD9Td+Z+LBmqcA7/Ptw2c1y4nOFhJVeP5SoCVcDWxh753HbovMng9M2wN3kipew= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=az6fv2rf; 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="az6fv2rf" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 9863DC2BCC9; Fri, 10 Apr 2026 08:18:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1775809136; bh=UYGlDi1cPoopc+/rV7EGEP17fwrJo+7fHh3T+dg3/bQ=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=az6fv2rf1uNhu+Zx/knqA2/WkMsBVre7Q510MlAegOtuelUJeMFz6cyFnZdcohtAr wlQ8S/KW0XoYXe84FZ9TYHw9LRWAPvQ5hi25ucO0EQGucy3s5BfEucF05Ti54UTZoK dCj/wH0wwhqlBAzuEiwdyPePs+XWOdeWuvNrNqS7p7o1yp6aNBEvmsO0TCSCj19ale zXsfHdzVnVaWAzshrwS2w1pmD6UGBCnIpyAo9XBemTZJ4LP7p4CqauP0zNinJRWDCX 2WE3Xnq/8O+famIU9M0sAUJXDktTf2rtXnUhuynzOQWjeVcwjatmpg8I/PFkhKJpPP 1Yim7V2On3/0w== Received: from johan by xi.lan with local (Exim 4.98.2) (envelope-from ) id 1wB74n-000000026uk-43fo; Fri, 10 Apr 2026 10:18:53 +0200 From: Johan Hovold To: Mark Brown Cc: Matthias Brugger , AngeloGioacchino Del Regno , Frank Li , Sascha Hauer , Andrew Jeffery , Avi Fishman , Tomer Maimon , Tali Perry , Linus Walleij , Andi Shyti , Tudor Ambarus , Paul Walmsley , Samuel Holland , Orson Zhai , Baolin Wang , Jernej Skrabec , Masahisa Kojima , Jassi Brar , Laxman Dewangan , Kunihiko Hayashi , Masami Hiramatsu , Michal Simek , linux-spi@vger.kernel.org, linux-kernel@vger.kernel.org, Johan Hovold , stable@vger.kernel.org, Leilk Liu Subject: [PATCH 15/26] spi: slave-mt27xx: fix controller deregistration Date: Fri, 10 Apr 2026 10:17:45 +0200 Message-ID: <20260410081757.503099-16-johan@kernel.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260410081757.503099-1-johan@kernel.org> References: <20260410081757.503099-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" Make sure to deregister the controller before disabling underlying resources like clocks (by disabling runtime PM) during driver unbind. Fixes: 805be7ddf367 ("spi: mediatek: add spi slave for Mediatek MT2712") Cc: stable@vger.kernel.org # 4.20 Cc: Leilk Liu Signed-off-by: Johan Hovold --- drivers/spi/spi-slave-mt27xx.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/drivers/spi/spi-slave-mt27xx.c b/drivers/spi/spi-slave-mt27xx.c index ce889cb33228..7aedeaa5889d 100644 --- a/drivers/spi/spi-slave-mt27xx.c +++ b/drivers/spi/spi-slave-mt27xx.c @@ -453,7 +453,7 @@ static int mtk_spi_slave_probe(struct platform_device *= pdev) =20 pm_runtime_enable(&pdev->dev); =20 - ret =3D devm_spi_register_controller(&pdev->dev, ctlr); + ret =3D spi_register_controller(ctlr); clk_disable_unprepare(mdata->spi_clk); if (ret) { dev_err(&pdev->dev, @@ -473,7 +473,15 @@ static int mtk_spi_slave_probe(struct platform_device = *pdev) =20 static void mtk_spi_slave_remove(struct platform_device *pdev) { + struct spi_controller *ctlr =3D platform_get_drvdata(pdev); + + spi_controller_get(ctlr); + + spi_unregister_controller(ctlr); + pm_runtime_disable(&pdev->dev); + + spi_controller_put(ctlr); } =20 #ifdef CONFIG_PM_SLEEP --=20 2.52.0 From nobody Mon Jun 15 12:15:01 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 37AD13ACF13; Fri, 10 Apr 2026 08:18:57 +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=1775809137; cv=none; b=qw/RGA1WbfGqZv+nmBGkXw6wbAFDgKAm9EABrnjmSFGzorQZIDojOmxXGq75oCPyV7mqYk1CdLJs1q7AaehOH3CW1R/nW6b2D/KMfUBNHd78jPVuvf7Ljqby/iDgCs59+jtadP8TN8GoQRcA4AGrlfYM+WnKbnhYeiZE67c0fns= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775809137; c=relaxed/simple; bh=Bx3P5pYklrEMI671aCg7axzrAexelH1e0IFNqcMv9eQ=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=Gil33g7BxIYoN0pkNxJJSlAib/kFTROf6XSEZDDuYdTXADmInG9TvOTzRr3tGTs2O/DoNTCPwjZWndQ2rDD+B0cOuKPyxgy2MhQ+vtc4nsZZCbg+5gtRp6AtgL6EATVdKQ458/+Sv9iPluW/ItP3vQvn4ccbyalzivRnHANW2GU= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=g6XigBO5; 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="g6XigBO5" Received: by smtp.kernel.org (Postfix) with ESMTPSA id A6592C4AF11; Fri, 10 Apr 2026 08:18:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1775809136; bh=Bx3P5pYklrEMI671aCg7axzrAexelH1e0IFNqcMv9eQ=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=g6XigBO5npE9h/Wi7xxJZV671oFeFPiYFdbZCDN6s5i4FZnRfc1jMvERruke/XmWu s+m51mh6MP3+y/8eX964O9U3hq+858qel1VGK9dffWJT2rTZ/eC43DwkdURZZyLvjR ajMuDhQ01WSVh37MZI/RgBIui25WDSTgGD0vGceYEV5U8bwRBL1Ma1GofNXgGXWs8d Pgj3s8Ten8vviFOt4EKCLqoLOGAJvZZ6YWEF1/R3dQCiCiddBIQ4Av/Z4C+T+1KaEZ mIWKv7UjeNkJQF49EcgNMBxmNMd1vAKUbUU4P2d0HkU1EV2MBDDFIEdlJ7/oROw+4+ 6r+lgT7xaiY4g== Received: from johan by xi.lan with local (Exim 4.98.2) (envelope-from ) id 1wB74n-000000026um-46Je; Fri, 10 Apr 2026 10:18:53 +0200 From: Johan Hovold To: Mark Brown Cc: Matthias Brugger , AngeloGioacchino Del Regno , Frank Li , Sascha Hauer , Andrew Jeffery , Avi Fishman , Tomer Maimon , Tali Perry , Linus Walleij , Andi Shyti , Tudor Ambarus , Paul Walmsley , Samuel Holland , Orson Zhai , Baolin Wang , Jernej Skrabec , Masahisa Kojima , Jassi Brar , Laxman Dewangan , Kunihiko Hayashi , Masami Hiramatsu , Michal Simek , linux-spi@vger.kernel.org, linux-kernel@vger.kernel.org, Johan Hovold , stable@vger.kernel.org, Lanqing Liu Subject: [PATCH 16/26] spi: sprd: fix controller deregistration Date: Fri, 10 Apr 2026 10:17:46 +0200 Message-ID: <20260410081757.503099-17-johan@kernel.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260410081757.503099-1-johan@kernel.org> References: <20260410081757.503099-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" Make sure to deregister the controller before disabling underlying resources like clocks during driver unbind. Note that the controller is suspended before disabling and releasing resources since commit de082d866cce ("spi: sprd: Add the SPI irq function for the SPI DMA mode") which avoids issues like unclocked accesses but prevents SPI device drivers from doing I/O during deregistration. Fixes: e7d973a31c24 ("spi: sprd: Add SPI driver for Spreadtrum SC9860") Cc: stable@vger.kernel.org # 4.20 Cc: Lanqing Liu Signed-off-by: Johan Hovold --- drivers/spi/spi-sprd.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/drivers/spi/spi-sprd.c b/drivers/spi/spi-sprd.c index 0f9fc320363c..fd3fd0ce122c 100644 --- a/drivers/spi/spi-sprd.c +++ b/drivers/spi/spi-sprd.c @@ -977,7 +977,7 @@ static int sprd_spi_probe(struct platform_device *pdev) goto err_rpm_put; } =20 - ret =3D devm_spi_register_controller(&pdev->dev, sctlr); + ret =3D spi_register_controller(sctlr); if (ret) goto err_rpm_put; =20 @@ -1008,7 +1008,9 @@ static void sprd_spi_remove(struct platform_device *p= dev) if (ret < 0) dev_err(ss->dev, "failed to resume SPI controller\n"); =20 - spi_controller_suspend(sctlr); + spi_controller_get(sctlr); + + spi_unregister_controller(sctlr); =20 if (ret >=3D 0) { if (ss->dma.enable) @@ -1017,6 +1019,8 @@ static void sprd_spi_remove(struct platform_device *p= dev) } pm_runtime_put_noidle(&pdev->dev); pm_runtime_disable(&pdev->dev); + + spi_controller_put(sctlr); } =20 static int __maybe_unused sprd_spi_runtime_suspend(struct device *dev) --=20 2.52.0 From nobody Mon Jun 15 12:15:01 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 6384E3AE196; Fri, 10 Apr 2026 08:18:57 +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=1775809137; cv=none; b=IQXvF5adsyKLVplX0qBKD3UZJK6C+mDnhUH2Yj4pp6dRJK7udYw7ZaKvJrZx71I4VVgwIJjigajIak1M8ihgnYNVhqz40duclnuO7FhIuhJfhBzzxtoVOa+xzR+EIMb8M3JeTrQalGvGDP+eUtaLt1rjPdc7K09VxwUSMpOXbhI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775809137; c=relaxed/simple; bh=uOexjg/vLArFedhRI5E2v6SLQj6aJ4WVqhjN4mRf364=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=u6npjbP6ursUFGnjTT4lWErtL9zaVacYotgGnV4KhpB0unuA7lCR4n7MUiGziXwIoIK5Oe47lj33zUOYu5q8DnB5RgAj4UccJDG5+dVAMhEnzTGhoiYsnysBk0hywXUaN0fEzQKNHFO3EFMeS4OEF6QIx5W1GtkWLMraajfGJpk= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=OFMyzlvz; 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="OFMyzlvz" Received: by smtp.kernel.org (Postfix) with ESMTPSA id B7966C4AF0B; Fri, 10 Apr 2026 08:18:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1775809136; bh=uOexjg/vLArFedhRI5E2v6SLQj6aJ4WVqhjN4mRf364=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=OFMyzlvzmFzFzw5JcponkWGLgFBSta98hNyqHfZtPmwzqRjsn15tiyP8v6pVQQDoE Xeji4SxwmOmuFPcxqbi5NuO7JU4de5dy640cY3/e9It118biFfn7eLOjIxyytks+/c xvFdEEDe3zVbPE3FOWuUobSwJul5k8dDvfBGK3gKOHoTiWLYUgHO0K9mXVysQYHIAu wBKdY96fEIv4BbAOT8KQEYKG9cOjG5Of5TSg2zD8eUlhHCRHn0WT4v56FNy3yTX0Px WfyizLv9rSKrIZ2PUceobeSKb1vQw9GW7on/tKUbbmtQQ7ttYu/NrUab2Tuqc7ieUQ RdpcBk3q40iCA== Received: from johan by xi.lan with local (Exim 4.98.2) (envelope-from ) id 1wB74n-000000026uo-48wV; Fri, 10 Apr 2026 10:18:53 +0200 From: Johan Hovold To: Mark Brown Cc: Matthias Brugger , AngeloGioacchino Del Regno , Frank Li , Sascha Hauer , Andrew Jeffery , Avi Fishman , Tomer Maimon , Tali Perry , Linus Walleij , Andi Shyti , Tudor Ambarus , Paul Walmsley , Samuel Holland , Orson Zhai , Baolin Wang , Jernej Skrabec , Masahisa Kojima , Jassi Brar , Laxman Dewangan , Kunihiko Hayashi , Masami Hiramatsu , Michal Simek , linux-spi@vger.kernel.org, linux-kernel@vger.kernel.org, Johan Hovold , stable@vger.kernel.org, Lee Jones Subject: [PATCH 17/26] spi: st-ssc4: fix controller deregistration Date: Fri, 10 Apr 2026 10:17:47 +0200 Message-ID: <20260410081757.503099-18-johan@kernel.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260410081757.503099-1-johan@kernel.org> References: <20260410081757.503099-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" Make sure to deregister the controller before disabling underlying resources like clocks during driver unbind. Fixes: 9e862375c542 ("spi: Add new driver for STMicroelectronics' SPI Contr= oller") Cc: stable@vger.kernel.org # 4.0 Cc: Lee Jones Signed-off-by: Johan Hovold --- drivers/spi/spi-st-ssc4.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/drivers/spi/spi-st-ssc4.c b/drivers/spi/spi-st-ssc4.c index b173ef70d77e..9c8099fe6e19 100644 --- a/drivers/spi/spi-st-ssc4.c +++ b/drivers/spi/spi-st-ssc4.c @@ -349,7 +349,7 @@ static int spi_st_probe(struct platform_device *pdev) =20 platform_set_drvdata(pdev, host); =20 - ret =3D devm_spi_register_controller(&pdev->dev, host); + ret =3D spi_register_controller(host); if (ret) { dev_err(&pdev->dev, "Failed to register host\n"); goto rpm_disable; @@ -371,10 +371,16 @@ static void spi_st_remove(struct platform_device *pde= v) struct spi_controller *host =3D platform_get_drvdata(pdev); struct spi_st *spi_st =3D spi_controller_get_devdata(host); =20 + spi_controller_get(host); + + spi_unregister_controller(host); + pm_runtime_disable(&pdev->dev); =20 clk_disable_unprepare(spi_st->clk); =20 + spi_controller_put(host); + pinctrl_pm_select_sleep_state(&pdev->dev); } =20 --=20 2.52.0 From nobody Mon Jun 15 12:15:01 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 633A33AE195; Fri, 10 Apr 2026 08:18:57 +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=1775809137; cv=none; b=a69PEoL6PA65Z7cEpgewCozPgEPp2NSEN2Uw/ll2MrAAoBeAEdksWA2R4D52WAXYK5WYf/TkN8Y4+zN2paHx57CAy1/TeAEMimIsO8w5wPja3IRma7/Y2t4z6OCMY2T6HKXRA1UtJn+bLHIqs0nFpTqSTLRpdBdzaqKwJqgAzNE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775809137; c=relaxed/simple; bh=E6LBLCR9Dx3gSdjYmZz7WjDYYx7rCmY0rROSyfTrtP4=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=rASePTcjt5k7jNer39dX/MFeOBSKTdPa6C3NXsEBEn7E+dlJsIOIz56xqfnpSYkNcbnMkFbB1YbYkgqYw+TkKZvTKduqWptVwMFCJWBiIp4SX9GqQmdPfZOxpBfhPQxO15Pyzh8aet3BANrdah2nc8nrCAUBIpBxoHYaXDziwzA= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=fwc4QKB1; 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="fwc4QKB1" Received: by smtp.kernel.org (Postfix) with ESMTPSA id B1D5EC4AF17; Fri, 10 Apr 2026 08:18:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1775809136; bh=E6LBLCR9Dx3gSdjYmZz7WjDYYx7rCmY0rROSyfTrtP4=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=fwc4QKB1kX1ut7Zz8ytYLXknCbJB8YGFYvDHyyyCVv4H5XK61yctFPDF8E9oeCjPL xfxPuWMqltLIVXAC30fIWD4eZqEzNOsfjfbMIB0sBG+gA5dSrytjFdaprRLoTz9UvE 5BIXEoHnQSSY68wG2CfutrNKM+OTEfkfapl1JrLV5cZXQ8InWC0Jqy203AbOD2Blvc mvYW8qkia4fz29JCfW+BaCg8Sbd1UObIpUgenwpCiQylwNziuvxsFhLLtaq6dSbKwg Rwa6QkzepTpCijFODcsnAmTMrFAz0JzT++tA9hyrEzclCOCgXfCTXKqGW9zSDumgOS x79ICshpekAHw== Received: from johan by xi.lan with local (Exim 4.98.2) (envelope-from ) id 1wB74n-000000026uq-4Bbt; Fri, 10 Apr 2026 10:18:54 +0200 From: Johan Hovold To: Mark Brown Cc: Matthias Brugger , AngeloGioacchino Del Regno , Frank Li , Sascha Hauer , Andrew Jeffery , Avi Fishman , Tomer Maimon , Tali Perry , Linus Walleij , Andi Shyti , Tudor Ambarus , Paul Walmsley , Samuel Holland , Orson Zhai , Baolin Wang , Jernej Skrabec , Masahisa Kojima , Jassi Brar , Laxman Dewangan , Kunihiko Hayashi , Masami Hiramatsu , Michal Simek , linux-spi@vger.kernel.org, linux-kernel@vger.kernel.org, Johan Hovold , stable@vger.kernel.org, Maxime Ripard Subject: [PATCH 18/26] spi: sun4i: fix controller deregistration Date: Fri, 10 Apr 2026 10:17:48 +0200 Message-ID: <20260410081757.503099-19-johan@kernel.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260410081757.503099-1-johan@kernel.org> References: <20260410081757.503099-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" Make sure to deregister the controller before disabling underlying resources like clocks during driver unbind. Fixes: b5f6517948cc ("spi: sunxi: Add Allwinner A10 SPI controller driver") Cc: stable@vger.kernel.org # 3.15 Cc: Maxime Ripard Signed-off-by: Johan Hovold --- drivers/spi/spi-sun4i.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/drivers/spi/spi-sun4i.c b/drivers/spi/spi-sun4i.c index bfdf419a583c..b7fbb5270edb 100644 --- a/drivers/spi/spi-sun4i.c +++ b/drivers/spi/spi-sun4i.c @@ -504,7 +504,7 @@ static int sun4i_spi_probe(struct platform_device *pdev) pm_runtime_enable(&pdev->dev); pm_runtime_idle(&pdev->dev); =20 - ret =3D devm_spi_register_controller(&pdev->dev, host); + ret =3D spi_register_controller(host); if (ret) { dev_err(&pdev->dev, "cannot register SPI host\n"); goto err_pm_disable; @@ -522,7 +522,15 @@ static int sun4i_spi_probe(struct platform_device *pde= v) =20 static void sun4i_spi_remove(struct platform_device *pdev) { + struct spi_controller *host =3D platform_get_drvdata(pdev); + + spi_controller_get(host); + + spi_unregister_controller(host); + pm_runtime_force_suspend(&pdev->dev); + + spi_controller_put(host); } =20 static const struct of_device_id sun4i_spi_match[] =3D { --=20 2.52.0 From nobody Mon Jun 15 12:15:01 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 4283B3AD507; Fri, 10 Apr 2026 08:18:57 +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=1775809137; cv=none; b=ePbJ3VfV17imVY6Gi0PZxIeXs4/tjhuUSUwg0DsoCtsYmK+Q/3C22vAYy9EqVueVEuhmzgNYcZNfj9pv/pRlDI0RMQEKCWs0DcfCZOGvMQsv3zzzGi341WU3GzK/GfTIYHp0wPgSU8ft2zhnyX5r7ZQq/k8t9Ag/XCx62E4GEZU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775809137; c=relaxed/simple; bh=Fn5B119nUyTCP5N8nKKW4q40wJHmjGjR/V6mYnoy5hI=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=C8blPst736HrMoPjbTL0vOPoRrhOmWXaOD1iSfqGa9m3GYRMWdRNDxCaJ+cKIf42RB6xFk3gx+UkgO6WV8QPahe+ao87FhTPU5Oyaxkyu/OmHXzgFwMTLD4rbrgoyQCjD881Vq3QE1OPfUK7V4CY8m0stEiL6U3lhH3FjAj3IeQ= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=V8hSSorq; 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="V8hSSorq" Received: by smtp.kernel.org (Postfix) with ESMTPSA id B20ACC4AF18; Fri, 10 Apr 2026 08:18:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1775809136; bh=Fn5B119nUyTCP5N8nKKW4q40wJHmjGjR/V6mYnoy5hI=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=V8hSSorqTVlmQPN8+xobHECuBw5MxRqJInC7ZrrQIQvYkAa88zAQmsTjgwr78JE17 CWBsytjo9gQW2RMG24oLzKZuVNPLVJdnxxKR1qZboV6pfmUd+e9lnm1xt83vO/kVXK 2d1RMeKMqQ0dzOhs3Thw7OpT/YRHddtwr4++amcK11ZGH9dlSY4UBTipaizrwEaQb4 lhYuc/Z1gywVVseoJYN0sOceEeIcsHbMbwsx5GlrJApcLe+KNPun09Sx6ABaflEFH0 eqGaLRdj79U+lbF/6UWB6mATd9EiXFwNdNN13pgdpSSb+5ZkEnzKKeMnuVWZrxEgP2 OIaZjnFn5AP4A== Received: from johan by xi.lan with local (Exim 4.98.2) (envelope-from ) id 1wB74o-000000026us-02R6; Fri, 10 Apr 2026 10:18:54 +0200 From: Johan Hovold To: Mark Brown Cc: Matthias Brugger , AngeloGioacchino Del Regno , Frank Li , Sascha Hauer , Andrew Jeffery , Avi Fishman , Tomer Maimon , Tali Perry , Linus Walleij , Andi Shyti , Tudor Ambarus , Paul Walmsley , Samuel Holland , Orson Zhai , Baolin Wang , Jernej Skrabec , Masahisa Kojima , Jassi Brar , Laxman Dewangan , Kunihiko Hayashi , Masami Hiramatsu , Michal Simek , linux-spi@vger.kernel.org, linux-kernel@vger.kernel.org, Johan Hovold , stable@vger.kernel.org, Maxime Ripard Subject: [PATCH 19/26] spi: sun6i: fix controller deregistration Date: Fri, 10 Apr 2026 10:17:49 +0200 Message-ID: <20260410081757.503099-20-johan@kernel.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260410081757.503099-1-johan@kernel.org> References: <20260410081757.503099-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" Make sure to deregister the controller before disabling underlying resources like clocks during driver unbind. Fixes: 3558fe900e8a ("spi: sunxi: Add Allwinner A31 SPI controller driver") Cc: stable@vger.kernel.org # 3.15 Cc: Maxime Ripard Signed-off-by: Johan Hovold --- drivers/spi/spi-sun6i.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/drivers/spi/spi-sun6i.c b/drivers/spi/spi-sun6i.c index 240e46f84f7b..5ac73d324d06 100644 --- a/drivers/spi/spi-sun6i.c +++ b/drivers/spi/spi-sun6i.c @@ -742,7 +742,7 @@ static int sun6i_spi_probe(struct platform_device *pdev) pm_runtime_set_active(&pdev->dev); pm_runtime_enable(&pdev->dev); =20 - ret =3D devm_spi_register_controller(&pdev->dev, host); + ret =3D spi_register_controller(host); if (ret) { dev_err(&pdev->dev, "cannot register SPI host\n"); goto err_pm_disable; @@ -768,12 +768,18 @@ static void sun6i_spi_remove(struct platform_device *= pdev) { struct spi_controller *host =3D platform_get_drvdata(pdev); =20 + spi_controller_get(host); + + spi_unregister_controller(host); + pm_runtime_force_suspend(&pdev->dev); =20 if (host->dma_tx) dma_release_channel(host->dma_tx); if (host->dma_rx) dma_release_channel(host->dma_rx); + + spi_controller_put(host); } =20 static const struct sun6i_spi_cfg sun6i_a31_spi_cfg =3D { --=20 2.52.0 From nobody Mon Jun 15 12:15:01 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 71AAD3AE6F8; Fri, 10 Apr 2026 08:18:57 +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=1775809137; cv=none; b=X1dAoaf+TibSJzglhSJGgILUm0JeLOUsI+Q5T4+89s6GNcDVA1RoxwpZG41hrhX6Id3kWf9cleSY+ltztuZ8LOOdB0xUYjztmKvDMGicpWqu6rqeNNJLP59L3WBvTBDzspFu3zEyOg8ZJ1J4rNejOpEfQLBfrWRte62SzxzwWh8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775809137; c=relaxed/simple; bh=C8UBH5bPbrlP3dh1Dls2keMpeyV18D6q87El/jPrm+g=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=frK38lTK8/nTDNx1BsQ+ArnFw0fTLsUbXkjWO928VsnNwFMZ/TryU+XUvBb6+UQHIA2kfEREYvcoLR07dLmf9JBwbithpp3hkZ2qHwIoz1TjqxyL/9lrRvB90iwtHFJThySqaX3v6QGwheQKMF2s3UtKO9tJCezKnZcUt8ouvT4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=RXdSHc3n; 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="RXdSHc3n" Received: by smtp.kernel.org (Postfix) with ESMTPSA id D0851C4AF54; Fri, 10 Apr 2026 08:18:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1775809136; bh=C8UBH5bPbrlP3dh1Dls2keMpeyV18D6q87El/jPrm+g=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=RXdSHc3nXMFmKJz5w5pIFPMzOLzJ9YGRnbY/KcyUGXCNEJsi+J0oSzDmmfb+AhE3n 0YsuFHlTKVezIh7ZAmDhHkDVxkf0GSSEA6hp2Elgh+LDXVLNhuQBPFh50GKGtb7fDf 2YjqzmeG5rlMhi2YI7FQTn6Bfb0JMjAAq9wOjbCxlCZGDBCgwBPAIm6HQL6ggXs7N4 6n8H8Ol9FlEjAk9yh3eLkTvoMUt4+c1H4zIeB6D1LTwaMU/T7NJ6soukejd2pr49NG cDUxZye7f9CRPlOrvvKuakuk6JsVp048hsCySvelHMhSZdD893qiIVCkAqEVErJQ7m boVC53rSNOTZA== Received: from johan by xi.lan with local (Exim 4.98.2) (envelope-from ) id 1wB74o-000000026uu-04rK; Fri, 10 Apr 2026 10:18:54 +0200 From: Johan Hovold To: Mark Brown Cc: Matthias Brugger , AngeloGioacchino Del Regno , Frank Li , Sascha Hauer , Andrew Jeffery , Avi Fishman , Tomer Maimon , Tali Perry , Linus Walleij , Andi Shyti , Tudor Ambarus , Paul Walmsley , Samuel Holland , Orson Zhai , Baolin Wang , Jernej Skrabec , Masahisa Kojima , Jassi Brar , Laxman Dewangan , Kunihiko Hayashi , Masami Hiramatsu , Michal Simek , linux-spi@vger.kernel.org, linux-kernel@vger.kernel.org, Johan Hovold , stable@vger.kernel.org, Masahisa Kojima Subject: [PATCH 20/26] spi: syncuacer: fix controller deregistration Date: Fri, 10 Apr 2026 10:17:50 +0200 Message-ID: <20260410081757.503099-21-johan@kernel.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260410081757.503099-1-johan@kernel.org> References: <20260410081757.503099-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" Make sure to deregister the controller before disabling underlying resources like clocks during driver unbind. Fixes: b0823ee35cf9 ("spi: Add spi driver for Socionext SynQuacer platform") Cc: stable@vger.kernel.org # 5.3 Cc: Masahisa Kojima Signed-off-by: Johan Hovold --- drivers/spi/spi-synquacer.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/drivers/spi/spi-synquacer.c b/drivers/spi/spi-synquacer.c index d0a875249910..290c439897c4 100644 --- a/drivers/spi/spi-synquacer.c +++ b/drivers/spi/spi-synquacer.c @@ -716,7 +716,7 @@ static int synquacer_spi_probe(struct platform_device *= pdev) pm_runtime_set_active(sspi->dev); pm_runtime_enable(sspi->dev); =20 - ret =3D devm_spi_register_controller(sspi->dev, host); + ret =3D spi_register_controller(host); if (ret) goto disable_pm; =20 @@ -737,9 +737,15 @@ static void synquacer_spi_remove(struct platform_devic= e *pdev) struct spi_controller *host =3D platform_get_drvdata(pdev); struct synquacer_spi *sspi =3D spi_controller_get_devdata(host); =20 + spi_controller_get(host); + + spi_unregister_controller(host); + pm_runtime_disable(sspi->dev); =20 clk_disable_unprepare(sspi->clk); + + spi_controller_put(host); } =20 static int __maybe_unused synquacer_spi_suspend(struct device *dev) --=20 2.52.0 From nobody Mon Jun 15 12:15:01 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 885553AEF4C; Fri, 10 Apr 2026 08:18:57 +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=1775809137; cv=none; b=f9wvqRz9eKVgWjBe30bGuDWxU9yw+RzCYR4NgOU4jGdmJ7PyTsT22mhqa5jUQPbtaGLowgz2HK9geuD00ijVlWjHeVgof36bOIJhUDkyyYUjtmAjLWQThDmw/7BxXzrgvF0wWf5g5Y9gwqyioDoojS82814Q0Wx0mR7nXEnlVm8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775809137; c=relaxed/simple; bh=MDcZdJIHnKnZfXL/qi9xpoigJT6qJGjKFoI7URmLNkQ=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=GRuuXZtdRgNIpE2VmT0O5rzyW0ZVCOM2hXxJz2nbL0gX5WpKCqN+5ZtCuM6KXubgARB3lGw47YlUtEId7jTCAo+vPuYAjx8Bog8+wp4cq4d3urBO3xRutUFosVWXEmeoezGSvQAfIPr31mafrWeNcsPdwOGmjHWKXfClCrmEfZI= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=QGLfdc3D; 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="QGLfdc3D" Received: by smtp.kernel.org (Postfix) with ESMTPSA id CBE40C4AF51; Fri, 10 Apr 2026 08:18:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1775809136; bh=MDcZdJIHnKnZfXL/qi9xpoigJT6qJGjKFoI7URmLNkQ=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=QGLfdc3D6TFfPuNAvSuXqd8U4UsdKCY+k4w5Jwi7WdfCMNgTE80PQxNh8m8duKNT4 d2Ra6hg/vKaspDBLdIPKHO9QwTqaF3vm+JXEwUJ1J14nbGZpufyuE/Asrrap/c3ydi 8+ZC7jyzSUmSVO7lxnwPwjYk8i7NWiHAFRzcuVLmy0Cxtufg7UpjWPMfJolKytaHBs jkvDWRxLzn2IpP/0a8Pr+kF0JiiFh2nmh6fgqsojShuvmN6AawCfHGG90f69riPfxI 09rNTGA39jhDyM7SDj9KxHP2UqJ9dgNGHvNX92Jrath6bBiYWGkU6pRU+DSCQOuoSv MBjUIKocOE8HQ== Received: from johan by xi.lan with local (Exim 4.98.2) (envelope-from ) id 1wB74o-000000026uw-07Eq; Fri, 10 Apr 2026 10:18:54 +0200 From: Johan Hovold To: Mark Brown Cc: Matthias Brugger , AngeloGioacchino Del Regno , Frank Li , Sascha Hauer , Andrew Jeffery , Avi Fishman , Tomer Maimon , Tali Perry , Linus Walleij , Andi Shyti , Tudor Ambarus , Paul Walmsley , Samuel Holland , Orson Zhai , Baolin Wang , Jernej Skrabec , Masahisa Kojima , Jassi Brar , Laxman Dewangan , Kunihiko Hayashi , Masami Hiramatsu , Michal Simek , linux-spi@vger.kernel.org, linux-kernel@vger.kernel.org, Johan Hovold , stable@vger.kernel.org, Jingoo Han Subject: [PATCH 21/26] spi: tegra114: fix controller deregistration Date: Fri, 10 Apr 2026 10:17:51 +0200 Message-ID: <20260410081757.503099-22-johan@kernel.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260410081757.503099-1-johan@kernel.org> References: <20260410081757.503099-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" Make sure to deregister the controller before disabling underlying resources like clocks during driver unbind. Fixes: 5c8096439600 ("spi: tegra114: use devm_spi_register_master()") Cc: stable@vger.kernel.org # 3.13 Cc: Jingoo Han Signed-off-by: Johan Hovold --- drivers/spi/spi-tegra114.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/drivers/spi/spi-tegra114.c b/drivers/spi/spi-tegra114.c index 848cb6836bd5..b8b0ebe0fe93 100644 --- a/drivers/spi/spi-tegra114.c +++ b/drivers/spi/spi-tegra114.c @@ -1415,7 +1415,7 @@ static int tegra_spi_probe(struct platform_device *pd= ev) goto exit_pm_disable; } =20 - ret =3D devm_spi_register_controller(&pdev->dev, host); + ret =3D spi_register_controller(host); if (ret < 0) { dev_err(&pdev->dev, "can not register to host err %d\n", ret); goto exit_free_irq; @@ -1441,6 +1441,10 @@ static void tegra_spi_remove(struct platform_device = *pdev) struct spi_controller *host =3D platform_get_drvdata(pdev); struct tegra_spi_data *tspi =3D spi_controller_get_devdata(host); =20 + spi_controller_get(host); + + spi_unregister_controller(host); + free_irq(tspi->irq, tspi); =20 if (tspi->tx_dma_chan) @@ -1452,6 +1456,8 @@ static void tegra_spi_remove(struct platform_device *= pdev) pm_runtime_disable(&pdev->dev); if (!pm_runtime_status_suspended(&pdev->dev)) tegra_spi_runtime_suspend(&pdev->dev); + + spi_controller_put(host); } =20 #ifdef CONFIG_PM_SLEEP --=20 2.52.0 From nobody Mon Jun 15 12:15:01 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 674DB3AE19B; Fri, 10 Apr 2026 08:18:57 +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=1775809137; cv=none; b=to9sUd9j9I2rtoH0mmFb4O+acXXSiUI+1ygD34IQ8gTsGHITvINTMRwoPITfbP40RfeV9y6xRXcVyNBITNbwDB3WqW/l+5zd+9shauBLM2y3nw4TslVSOFueiRlKAcxFtdl1RDOa5LZR6lNugBMD3SeUMwmCu3gxD/DqF+yKEUc= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775809137; c=relaxed/simple; bh=+1G0p8bXWSQOcdEhs/Gm8CKcKsG3wwwQO4VMpksKxdM=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=sPikjLAAB4l3ljmJ1Liid2wePO0Zopy0poSr55x8g4sPxy6CLFavIPcr7qZAU9QcL7L/lrc/HwoMO23mCMpfPcu8vmU90SRa2bUXIAwSEoSoSNe5Lm1xIfKJwyXyetl1yRaufkVrBqnYe9apJqQmRfyjMLM/YK+mGsCXROy4smw= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=dfFlyhYn; 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="dfFlyhYn" Received: by smtp.kernel.org (Postfix) with ESMTPSA id BBB6FC4AF4D; Fri, 10 Apr 2026 08:18:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1775809136; bh=+1G0p8bXWSQOcdEhs/Gm8CKcKsG3wwwQO4VMpksKxdM=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=dfFlyhYn42zP2bZRr+j5hhAdh/ug9aRJl/uTgz2uDJyKV16CyHAYgxKW7yCI3iZEW wu9lYUa+TCYjB+wufngLAa3eHSpBUFCAj5TU31LoDelN0fNRZx7P0yqevmTnAW/ImX trP1LjbI6DkQq8PGqMx5V+i7QnFpuhvhoho5xUlSkYtQd/GX5uarhDfBVT9LV3wfs/ p0SfOFhdBOeVcdetcMiBoQ5HVl7Q6mNLTXMDNgK2uSR3mNu67rqYJjZQMvmikWoJ2c TxGhJpgBvXv9nE5QM6jIArdd7+Z3kFaBZy1CEsMCp+TNR6GhnSLPk+DC2vCY78epl9 GCxzXTV25C+sA== Received: from johan by xi.lan with local (Exim 4.98.2) (envelope-from ) id 1wB74o-000000026uy-0A2Q; Fri, 10 Apr 2026 10:18:54 +0200 From: Johan Hovold To: Mark Brown Cc: Matthias Brugger , AngeloGioacchino Del Regno , Frank Li , Sascha Hauer , Andrew Jeffery , Avi Fishman , Tomer Maimon , Tali Perry , Linus Walleij , Andi Shyti , Tudor Ambarus , Paul Walmsley , Samuel Holland , Orson Zhai , Baolin Wang , Jernej Skrabec , Masahisa Kojima , Jassi Brar , Laxman Dewangan , Kunihiko Hayashi , Masami Hiramatsu , Michal Simek , linux-spi@vger.kernel.org, linux-kernel@vger.kernel.org, Johan Hovold , stable@vger.kernel.org, Jingoo Han Subject: [PATCH 22/26] spi: tegra20-sflash: fix controller deregistration Date: Fri, 10 Apr 2026 10:17:52 +0200 Message-ID: <20260410081757.503099-23-johan@kernel.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260410081757.503099-1-johan@kernel.org> References: <20260410081757.503099-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" Make sure to deregister the controller before disabling underlying resources like clocks during driver unbind. Fixes: f12f7318c44a ("spi: tegra20-sflash: use devm_spi_register_master()") Cc: stable@vger.kernel.org # 3.13 Cc: Jingoo Han Signed-off-by: Johan Hovold --- drivers/spi/spi-tegra20-sflash.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/drivers/spi/spi-tegra20-sflash.c b/drivers/spi/spi-tegra20-sfl= ash.c index d9d536d7f7b6..9256729f2d49 100644 --- a/drivers/spi/spi-tegra20-sflash.c +++ b/drivers/spi/spi-tegra20-sflash.c @@ -505,7 +505,7 @@ static int tegra_sflash_probe(struct platform_device *p= dev) tegra_sflash_writel(tsd, tsd->def_command_reg, SPI_COMMAND); pm_runtime_put(&pdev->dev); =20 - ret =3D devm_spi_register_controller(&pdev->dev, host); + ret =3D spi_register_controller(host); if (ret < 0) { dev_err(&pdev->dev, "can not register to host err %d\n", ret); goto exit_pm_disable; @@ -528,11 +528,17 @@ static void tegra_sflash_remove(struct platform_devic= e *pdev) struct spi_controller *host =3D platform_get_drvdata(pdev); struct tegra_sflash_data *tsd =3D spi_controller_get_devdata(host); =20 + spi_controller_get(host); + + spi_unregister_controller(host); + free_irq(tsd->irq, tsd); =20 pm_runtime_disable(&pdev->dev); if (!pm_runtime_status_suspended(&pdev->dev)) tegra_sflash_runtime_suspend(&pdev->dev); + + spi_controller_put(host); } =20 #ifdef CONFIG_PM_SLEEP --=20 2.52.0 From nobody Mon Jun 15 12:15:01 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 8CD8E3AEF5C; Fri, 10 Apr 2026 08:18:57 +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=1775809137; cv=none; b=UXC68GFmaIMq911P9DEgx9ZED7h0udj1PmpHfvY8tkkkFSWclPdZJpuWAgtQLlKkPEJTX6eR9ZqAcnHxhB74b04xyxrJmKobJ1phzRaCITnjrv8EdcUAdNxH4qTJO85wVcmkpbv1FDj42aDTEtqSi29yG2ryciAOq+jWQm55iXY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775809137; c=relaxed/simple; bh=tQQxsN8J624vyJL19f/zZB5glHjuQJ9UEw5ZMILF0gQ=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=cd+4g1f+ljedjeFwRglq/3Yig+pCMLTFoN8v+OsxxM12JaE7KpeKUyxEwSYQ31YHd/MzuqVAUv+frVIU6P7qF9w0+paF8zpg1CByQthTaMQva/YFLihf23rC2iaHXxxO2t/l5bmDiu2ROw/ip8rRplOuSiLIC2K9KzjUvkpHT2I= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=awGcN0E3; 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="awGcN0E3" Received: by smtp.kernel.org (Postfix) with ESMTPSA id D3798C4AF60; Fri, 10 Apr 2026 08:18:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1775809137; bh=tQQxsN8J624vyJL19f/zZB5glHjuQJ9UEw5ZMILF0gQ=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=awGcN0E3s2FvTPS2QKXzhjz+xy9uko/PoWKO7gH6cWPPlcderCuFWJr43a3wIv8Xo zxjq0w0Raobwbl+efZCf7W5uX7TsnV0mZIOy0FNRN4WYtEzq/qYnmkYCoyos6g7xrR IP747KYQAIJqmrV/r9UmGE9pQ6FK/6JVOyjhX7svOZfWlLhzTzAXiKMWTye861WrGI 6cwXgGu6wSviF1jakmb+yoXZ3WIU2oFSjipo1kDANXN23zcjw1H4W+D2Y+9bbXJf3N 5bgQoH3cb4efeKzjzrmBD+nvJHoeB6PNMjyTVCk7I9Llt1BKWDWrwXSCzvYGaUlzNP efD4+ndTQ3aPQ== Received: from johan by xi.lan with local (Exim 4.98.2) (envelope-from ) id 1wB74o-000000026v0-0CRO; Fri, 10 Apr 2026 10:18:54 +0200 From: Johan Hovold To: Mark Brown Cc: Matthias Brugger , AngeloGioacchino Del Regno , Frank Li , Sascha Hauer , Andrew Jeffery , Avi Fishman , Tomer Maimon , Tali Perry , Linus Walleij , Andi Shyti , Tudor Ambarus , Paul Walmsley , Samuel Holland , Orson Zhai , Baolin Wang , Jernej Skrabec , Masahisa Kojima , Jassi Brar , Laxman Dewangan , Kunihiko Hayashi , Masami Hiramatsu , Michal Simek , linux-spi@vger.kernel.org, linux-kernel@vger.kernel.org, Johan Hovold , stable@vger.kernel.org, Sebastian Andrzej Siewior Subject: [PATCH 23/26] spi: ti-qspi: fix controller deregistration Date: Fri, 10 Apr 2026 10:17:53 +0200 Message-ID: <20260410081757.503099-24-johan@kernel.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260410081757.503099-1-johan@kernel.org> References: <20260410081757.503099-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" Make sure to deregister the controller before disabling underlying resources like clocks during driver unbind. Note that the controller is suspended before disabling and releasing resources since commit 3ac066e2227c ("spi: spi-ti-qspi: Suspend the queue before removing the device") which avoids issues like unclocked accesses but prevents SPI device drivers from doing I/O during deregistration. Fixes: 3b3a80019ff1 ("spi: ti-qspi: one only one interrupt handler") Cc: stable@vger.kernel.org # 3.13 Cc: Sebastian Andrzej Siewior Signed-off-by: Johan Hovold --- drivers/spi/spi-ti-qspi.c | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/drivers/spi/spi-ti-qspi.c b/drivers/spi/spi-ti-qspi.c index d1d880a8ed7d..1fbd710d616f 100644 --- a/drivers/spi/spi-ti-qspi.c +++ b/drivers/spi/spi-ti-qspi.c @@ -888,7 +888,7 @@ static int ti_qspi_probe(struct platform_device *pdev) qspi->mmap_enabled =3D false; qspi->current_cs =3D -1; =20 - ret =3D devm_spi_register_controller(&pdev->dev, host); + ret =3D spi_register_controller(host); if (!ret) return 0; =20 @@ -903,19 +903,17 @@ static int ti_qspi_probe(struct platform_device *pdev) static void ti_qspi_remove(struct platform_device *pdev) { struct ti_qspi *qspi =3D platform_get_drvdata(pdev); - int rc; =20 - rc =3D spi_controller_suspend(qspi->host); - if (rc) { - dev_alert(&pdev->dev, "spi_controller_suspend() failed (%pe)\n", - ERR_PTR(rc)); - return; - } + spi_controller_get(qspi->host); + + spi_unregister_controller(qspi->host); =20 pm_runtime_put_sync(&pdev->dev); pm_runtime_disable(&pdev->dev); =20 ti_qspi_dma_cleanup(qspi); + + spi_controller_put(qspi->host); } =20 static const struct dev_pm_ops ti_qspi_pm_ops =3D { --=20 2.52.0 From nobody Mon Jun 15 12:15:01 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 6A3153AE1A1; Fri, 10 Apr 2026 08:18:57 +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=1775809137; cv=none; b=h6QxLlnGeR4Jr+ei80iLbYfMRQGAl4G5pMQ/cNHwC6N/14//zz7/N+XMoN2LnRb6fiwhDukj/NO31JUi8JSJR2QlBBLifcEnurxXhQyyZzw0MmDnpGcx35LJi8bmxWEpWTcOMsG0U3ov69aFu/bvzilU69d5a45116sBNxOO8Ag= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775809137; c=relaxed/simple; bh=J++olfZKGvgRaUorhcT7TaxDLMHnJoZ0qwnNHRnbmKg=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=UfCGON/lXGZ5e1dAdIAstkZoNHBoorKBdTFzecSyFH0mtmjLKQ1joxUd5lUEoJWCC6T/T8RqFXCdqUiA06BthjIeXgMXgPuKjT0VdUsYpjyXvlnaT4YZtBlAs2X9h3mKPBcAnQIMAVA5FZ4o252Gr8gVJG1db3mXPyick7/OLww= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=tNQYAB5P; 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="tNQYAB5P" Received: by smtp.kernel.org (Postfix) with ESMTPSA id CBE99C4AF52; Fri, 10 Apr 2026 08:18:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1775809136; bh=J++olfZKGvgRaUorhcT7TaxDLMHnJoZ0qwnNHRnbmKg=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=tNQYAB5PFzsBIhYZKreSpvV8tMnRLSedjbTxkwmTSe/AUs+1FOEqzpTtOcmgQDntR c90jfv8Xw5bmogpofvJaqUjsyt3N1RfcaOYHmjgril0HQ2dZsXvnY+a4Q+MTEOIVry qslO7G2dAGU/3M0nnisKgmca+f7OQDgQGuDFnACJPW1vQbq9JXtgLfbbf45tsZNC1V XfO3s92/5j1bAJ5NF+L7ABOyolNDB6YjweNTghy24On/v/0p1JFSzd1bT5Zs5wB+9A 6InswJyVao7nfofJhe4sxp3Fuj02KNi9g80rlkotDiZA3O2qUJWCSBXx4R22jjZT3f AaHueMXuVfB2w== Received: from johan by xi.lan with local (Exim 4.98.2) (envelope-from ) id 1wB74o-000000026v2-0FKT; Fri, 10 Apr 2026 10:18:54 +0200 From: Johan Hovold To: Mark Brown Cc: Matthias Brugger , AngeloGioacchino Del Regno , Frank Li , Sascha Hauer , Andrew Jeffery , Avi Fishman , Tomer Maimon , Tali Perry , Linus Walleij , Andi Shyti , Tudor Ambarus , Paul Walmsley , Samuel Holland , Orson Zhai , Baolin Wang , Jernej Skrabec , Masahisa Kojima , Jassi Brar , Laxman Dewangan , Kunihiko Hayashi , Masami Hiramatsu , Michal Simek , linux-spi@vger.kernel.org, linux-kernel@vger.kernel.org, Johan Hovold , stable@vger.kernel.org, Keiji Hayashibara Subject: [PATCH 24/26] spi: uniphier: fix controller deregistration Date: Fri, 10 Apr 2026 10:17:54 +0200 Message-ID: <20260410081757.503099-25-johan@kernel.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260410081757.503099-1-johan@kernel.org> References: <20260410081757.503099-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" Make sure to deregister the controller before releasing underlying resources like DMA during driver unbind. Note that clocks were also disabled before the recent commit fdca270f8f87 ("spi: uniphier: Simplify clock handling with devm_clk_get_enabled()"). Fixes: 5ba155a4d4cc ("spi: add SPI controller driver for UniPhier SoC") Cc: stable@vger.kernel.org # 4.19 Cc: Keiji Hayashibara Signed-off-by: Johan Hovold --- drivers/spi/spi-uniphier.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/drivers/spi/spi-uniphier.c b/drivers/spi/spi-uniphier.c index 1b815ee2ed1b..eac6c3e8908b 100644 --- a/drivers/spi/spi-uniphier.c +++ b/drivers/spi/spi-uniphier.c @@ -746,7 +746,7 @@ static int uniphier_spi_probe(struct platform_device *p= dev) =20 host->max_dma_len =3D min(dma_tx_burst, dma_rx_burst); =20 - ret =3D devm_spi_register_controller(&pdev->dev, host); + ret =3D spi_register_controller(host); if (ret) goto out_release_dma; =20 @@ -771,10 +771,16 @@ static void uniphier_spi_remove(struct platform_devic= e *pdev) { struct spi_controller *host =3D platform_get_drvdata(pdev); =20 + spi_controller_get(host); + + spi_unregister_controller(host); + if (host->dma_tx) dma_release_channel(host->dma_tx); if (host->dma_rx) dma_release_channel(host->dma_rx); + + spi_controller_put(host); } =20 static const struct of_device_id uniphier_spi_match[] =3D { --=20 2.52.0 From nobody Mon Jun 15 12:15:01 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 886463AEF55; Fri, 10 Apr 2026 08:18:57 +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=1775809137; cv=none; b=ke3KdPWNLl8mwMsOWK2sVj2d1eKQcEkhiNRcKVqI8TQhqx641O5O03QR+GMXks/Bbfmd8UfbB6am4t0D7m0ErLwm2OzbfDziOfQGukr1tR6VOgPdknsKXvWF7A9+fa2MucLD/cb45PeDtZlds7NtUi/IahP4H3ggLmzwgu2A3no= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775809137; c=relaxed/simple; bh=oIoO31Tr4BrNrbzjJkVs3aKhZMdVhAa7NWZUPdbCDIQ=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=DUQaEf7NX9KKW/24RkZWFEr4mZXkHyzweAdOEQGffU93AFaf2+sp/WJtYNo/X/lDU8zp3NIVtsqLS886Jxfvh1BjdOd0IFs0KKKm69wx4GPkC+RVRz8M2dhTE4Xe4I771vlzBkh70XY0KPy2OypW+fmj3QSEX1Q31vc1yt56Dnw= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=J8I/AqTu; 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="J8I/AqTu" Received: by smtp.kernel.org (Postfix) with ESMTPSA id D19CFC4AF53; Fri, 10 Apr 2026 08:18:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1775809137; bh=oIoO31Tr4BrNrbzjJkVs3aKhZMdVhAa7NWZUPdbCDIQ=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=J8I/AqTuF1e80i6xP8cUi48p5r6O9s7PTFyK6xIXU6mvNHB/8gvx/e8Qb57A+jreQ 60A06aZwvROlBtkEbX8Z3598gbym8pmMEmFa2l3mbz8/2HxpXpaS/sKqUhPjBmmBar GkICw+PoyRnr/RdO+dmBSXtO9vY3JR3p5rOip+H+FyxJKDDIEJqP3BDSWS1GoNbw69 3gVumM021v9BnlMmuBBv3rg4IZrJt++snRVvEcwMNOzEuUv4HvljS69yGnrkGFnRlP NioHGGmD52qu/7W6J3JPp29p1W4NzGHuv2n6qagd/CDD9oYZUa+UzDglZhHEXFhC+y znCCxPYCXlQ9g== Received: from johan by xi.lan with local (Exim 4.98.2) (envelope-from ) id 1wB74o-000000026v4-0I9J; Fri, 10 Apr 2026 10:18:54 +0200 From: Johan Hovold To: Mark Brown Cc: Matthias Brugger , AngeloGioacchino Del Regno , Frank Li , Sascha Hauer , Andrew Jeffery , Avi Fishman , Tomer Maimon , Tali Perry , Linus Walleij , Andi Shyti , Tudor Ambarus , Paul Walmsley , Samuel Holland , Orson Zhai , Baolin Wang , Jernej Skrabec , Masahisa Kojima , Jassi Brar , Laxman Dewangan , Kunihiko Hayashi , Masami Hiramatsu , Michal Simek , linux-spi@vger.kernel.org, linux-kernel@vger.kernel.org, Johan Hovold , stable@vger.kernel.org, Ranjit Waghmode Subject: [PATCH 25/26] spi: zynqmp-gqspi: fix controller deregistration Date: Fri, 10 Apr 2026 10:17:55 +0200 Message-ID: <20260410081757.503099-26-johan@kernel.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260410081757.503099-1-johan@kernel.org> References: <20260410081757.503099-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" Make sure to deregister the controller before disabling underlying resources like clocks during driver unbind. Fixes: dfe11a11d523 ("spi: Add support for Zynq Ultrascale+ MPSoC GQSPI con= troller") Cc: stable@vger.kernel.org # 4.2: 64640f6c972e Cc: stable@vger.kernel.org # 4.2 Cc: Ranjit Waghmode Signed-off-by: Johan Hovold --- drivers/spi/spi-zynqmp-gqspi.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/spi/spi-zynqmp-gqspi.c b/drivers/spi/spi-zynqmp-gqspi.c index 502fd5eccc83..f9a1427dabad 100644 --- a/drivers/spi/spi-zynqmp-gqspi.c +++ b/drivers/spi/spi-zynqmp-gqspi.c @@ -1324,7 +1324,7 @@ static int zynqmp_qspi_probe(struct platform_device *= pdev) ctlr->dev.of_node =3D np; ctlr->auto_runtime_pm =3D true; =20 - ret =3D devm_spi_register_controller(&pdev->dev, ctlr); + ret =3D spi_register_controller(ctlr); if (ret) { dev_err(&pdev->dev, "spi_register_controller failed\n"); goto clk_dis_all; @@ -1362,6 +1362,8 @@ static void zynqmp_qspi_remove(struct platform_device= *pdev) =20 pm_runtime_get_sync(&pdev->dev); =20 + spi_unregister_controller(xqspi->ctlr); + zynqmp_gqspi_write(xqspi, GQSPI_EN_OFST, 0x0); =20 pm_runtime_disable(&pdev->dev); --=20 2.52.0 From nobody Mon Jun 15 12:15:01 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 6A3FC3AE1A3; Fri, 10 Apr 2026 08:18:57 +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=1775809137; cv=none; b=AiX6Xldgm11jSHxq4H4sj6bfLSUcZtkI1kgjwVbYLV25PIsYAHdIYnh5e9maQTYw1e00ZpLvLvGxO6IO+zAPoDFGGyPu0HHGe5HsH5JP9W873AIFl0CQkM2QZ1Z+gp0TZ7N1oNBTzoa4truDN23onQ3ZomzwmGPuy8H7msMMy9g= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775809137; c=relaxed/simple; bh=6qpvDK+D39vYskh1A0D06Ay6d+QTGZD5ES00ceu6HvQ=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=gdsN9+W1L0HOaI1ouXsDG6U1P3nHk8mCbBZRVHVe9Peyc3JU9VurcscIdNxQ2ugu5VVYPdongwwWUFMrwZ+Z4mv7KpyMh3H0psaFzqNWo0NQIvabVLhdGdMCNw4WxjKN4Fokc/XzWut+s4VL/LHREAac4YtMM0vMVcqJ2Q+Gsag= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=LrukzgyA; 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="LrukzgyA" Received: by smtp.kernel.org (Postfix) with ESMTPSA id CFF33C4AF0E; Fri, 10 Apr 2026 08:18:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1775809136; bh=6qpvDK+D39vYskh1A0D06Ay6d+QTGZD5ES00ceu6HvQ=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=LrukzgyAG0McZs9Q9eguGVr33ZLSuVZzD/J9PyVfw840gjRdf8Pll0o8d3Kp1M5Fa LSi8zQp/pEWRDx56Yz0A2uolGWs4hmtLDoCgZzisms67KPNuJ7R5n1UK8Xv88+t42b xdeBrYovNNNc98qE6m8paGpQHeURAxVenuE31cALjIbVdqZBWhu3gXTgJT58UlJheN VAAteDFLWbI4UDj/A6q3OOmlR1M9csJ4wlh2pK5NAHJaSudcHtq7GQFFdWs3CuUfg5 /0T+vZDzy3CqxzTO0p0cHJHOudwr46C/bPnRGJEa1Ib+KD2rxvTefIoUaA9S1+AbRx w94IkhqtwXOKQ== Received: from johan by xi.lan with local (Exim 4.98.2) (envelope-from ) id 1wB74o-000000026v6-0KYC; Fri, 10 Apr 2026 10:18:54 +0200 From: Johan Hovold To: Mark Brown Cc: Matthias Brugger , AngeloGioacchino Del Regno , Frank Li , Sascha Hauer , Andrew Jeffery , Avi Fishman , Tomer Maimon , Tali Perry , Linus Walleij , Andi Shyti , Tudor Ambarus , Paul Walmsley , Samuel Holland , Orson Zhai , Baolin Wang , Jernej Skrabec , Masahisa Kojima , Jassi Brar , Laxman Dewangan , Kunihiko Hayashi , Masami Hiramatsu , Michal Simek , linux-spi@vger.kernel.org, linux-kernel@vger.kernel.org, Johan Hovold , stable@vger.kernel.org, Naga Sureshkumar Relli Subject: [PATCH 26/26] spi: zynq-qspi: fix controller deregistration Date: Fri, 10 Apr 2026 10:17:56 +0200 Message-ID: <20260410081757.503099-27-johan@kernel.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260410081757.503099-1-johan@kernel.org> References: <20260410081757.503099-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" Make sure to deregister the controller before disabling it during driver unbind. Note that clocks were also disabled before the recent commit 1f8fd9490e31 ("spi: zynq-qspi: Simplify clock handling with devm_clk_get_enabled()"). Fixes: 67dca5e580f1 ("spi: spi-mem: Add support for Zynq QSPI controller") Cc: stable@vger.kernel.org # 5.2: 8eb2fd00f65a Cc: stable@vger.kernel.org # 5.2 Cc: Naga Sureshkumar Relli Signed-off-by: Johan Hovold --- drivers/spi/spi-zynq-qspi.c | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/drivers/spi/spi-zynq-qspi.c b/drivers/spi/spi-zynq-qspi.c index af252500195c..406fd9d5337e 100644 --- a/drivers/spi/spi-zynq-qspi.c +++ b/drivers/spi/spi-zynq-qspi.c @@ -643,7 +643,7 @@ static int zynq_qspi_probe(struct platform_device *pdev) =20 xqspi =3D spi_controller_get_devdata(ctlr); xqspi->dev =3D dev; - platform_set_drvdata(pdev, xqspi); + platform_set_drvdata(pdev, ctlr); xqspi->regs =3D devm_platform_ioremap_resource(pdev, 0); if (IS_ERR(xqspi->regs)) { ret =3D PTR_ERR(xqspi->regs); @@ -702,9 +702,9 @@ static int zynq_qspi_probe(struct platform_device *pdev) /* QSPI controller initializations */ zynq_qspi_init_hw(xqspi, ctlr->num_chipselect); =20 - ret =3D devm_spi_register_controller(&pdev->dev, ctlr); + ret =3D spi_register_controller(ctlr); if (ret) { - dev_err(&pdev->dev, "devm_spi_register_controller failed\n"); + dev_err(&pdev->dev, "failed to register controller\n"); goto remove_ctlr; } =20 @@ -728,9 +728,16 @@ static int zynq_qspi_probe(struct platform_device *pde= v) */ static void zynq_qspi_remove(struct platform_device *pdev) { - struct zynq_qspi *xqspi =3D platform_get_drvdata(pdev); + struct spi_controller *ctlr =3D platform_get_drvdata(pdev); + struct zynq_qspi *xqspi =3D spi_controller_get_devdata(ctlr); + + spi_controller_get(ctlr); + + spi_unregister_controller(ctlr); =20 zynq_qspi_write(xqspi, ZYNQ_QSPI_ENABLE_OFFSET, 0); + + spi_controller_put(ctlr); } =20 static const struct of_device_id zynq_qspi_of_match[] =3D { --=20 2.52.0