From patchwork Thu Apr 24 07:33:25 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Haibo Chen X-Patchwork-Id: 884734 Received: from EUR03-VI1-obe.outbound.protection.outlook.com (mail-vi1eur03on2061.outbound.protection.outlook.com [40.107.103.61]) (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 EB37921FF3C; Thu, 24 Apr 2025 07:32:02 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.103.61 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1745479925; cv=fail; b=QmXMQQja+A65iNSmBa8c84GAUkvyjisY4se/yEOoDzpAUYulWPRKFmMWug9FP/xIImuEAj6r05ItJDH3V421DEFpk+eJP3H+RxhDjInRH+HiV1AbxvXVrU2Edm8V/75ziE3oF6LaEKZUMtp8+0gkltJ6LZButdaehPTEuK4k46U= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1745479925; c=relaxed/simple; bh=R+E0blCnr84VOgWVUzaNmlI5G0tHD3+mnj0wlyBAGLc=; h=From:Date:Subject:Content-Type:Message-Id:References:In-Reply-To: To:Cc:MIME-Version; b=sCaYx8FNaY2BsMjhpljQtcYqli6ljVcjBqRyUacfvZVD2VIKJalPlIaR8vxhfqMJ5kpcCyv1C1gkqj9SWjeXsNdCxsWMzNPrES9UcIgW5QcSzogRsxCaaqqyYb0RYkokgYkFZ1xtwG3q83FDj32N8p093s/H3XJqt0HfGR1EKnw= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=nxp.com; spf=pass smtp.mailfrom=nxp.com; dkim=pass (2048-bit key) header.d=nxp.com header.i=@nxp.com header.b=YCsuKRPZ; arc=fail smtp.client-ip=40.107.103.61 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=nxp.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=nxp.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=nxp.com header.i=@nxp.com header.b="YCsuKRPZ" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=PMmboskBjVtXodqExxEIY3w36yJTjAnicAwMQjE9+0AGQvMg8UJYg4iGu98dlvWOjRyk9zpVH1CaKs+J6C6wFkCPjOP6V5HVAW0N0cA2+COXb8nNLbHC7yGqqQN9zJ5Shkr3RicmLIwIyZ0H9fSupCIOpM+oDKb7Y3x92WHIyhN1lH6YRL4J9UMLyeI1vjS+ikZzJUqrg8/lyo7m3PdmUka81HsREZd13suD5QPxzxQGtyRyVLs5rWnRVVi49hk9S2tv0D6BFGN67fnH1Exat25HlRiaHgqqgi9Qe/YLsE233tlTwAoDE7HWjNac5ski28CWKcaS+9C8s8NjGceg0w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=rkoc45T7BYUh7B6StD6VS++pbiV1SAITGBvZZWupjxI=; b=S9w3dGYpfAlZBWFJ2d/3YAvGKeOY7WHG6xEZgX3pM5twWHxBsHcrtZoSIznBo9fusVh55+uWF1/nyffWauEuaWoWL2++F9r06RspM2Nic7qjbTmq9RMHJIWdf7cx363f5MNJNlq66L/XXq6KvUrfjo2Dsrk+85l4/ZGJ3GCx2p64a18pg0gBHGUe/DE6Z0382PhTYpL2MReP+WDub2g3Psz/vuQMgEXRpSQ6ez/WjTNe6CaSzCa6lpaUjey/anEamhCI8mMhZMNl1a6xTqwF8VaheCnDDpo4KGLY5NqiNi/1PWVdxsi72gSctp5FAsMqqxg2s9MMHZiU/y6QCiB+nw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nxp.com; dmarc=pass action=none header.from=nxp.com; dkim=pass header.d=nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=rkoc45T7BYUh7B6StD6VS++pbiV1SAITGBvZZWupjxI=; b=YCsuKRPZFrf4Pi4TbDFEqvLIleoSSgpas5y7yZnnuvy63y5DofqkRkEYIHATFt699JfrWz/DmfHI2uSaxGTIAFrOeyCaG8X4WElLHTmGNlNlpGEAzJG3cF58oPio6rSv4lGOVa3G16XH4MaBENhf3S6uR4K3+4mdeQM70Df8qcQ9084UZUlCSaEd5q40pesCMjqoQ+1LCzWGjg2PDsss8rT9+RLIx3Nc1lpbiuRNY2yY5woUQXRHoF8Bwpf45aJUISt1WT2NUuDCCWXIGQgVYVGC+HHiYCqyDgXroADco/4SNEZf2FMccBN0RGN4gBlQNPL6s5CSymnhWV6y1tyItg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nxp.com; Received: from DU0PR04MB9496.eurprd04.prod.outlook.com (2603:10a6:10:32d::19) by VI2PR04MB10594.eurprd04.prod.outlook.com (2603:10a6:800:26f::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8678.23; Thu, 24 Apr 2025 07:32:00 +0000 Received: from DU0PR04MB9496.eurprd04.prod.outlook.com ([fe80::4fa3:7420:14ed:5334]) by DU0PR04MB9496.eurprd04.prod.outlook.com ([fe80::4fa3:7420:14ed:5334%5]) with mapi id 15.20.8655.033; Thu, 24 Apr 2025 07:32:00 +0000 From: Haibo Chen Date: Thu, 24 Apr 2025 15:33:25 +0800 Subject: [PATCH v2 1/5] spi: spi-nxp-fspi: remove the goto in probe Message-Id: <20250424-flexspipatch-v2-1-e9eb643e2286@nxp.com> References: <20250424-flexspipatch-v2-0-e9eb643e2286@nxp.com> In-Reply-To: <20250424-flexspipatch-v2-0-e9eb643e2286@nxp.com> To: Haibo Chen , Han Xu , Yogesh Gaur , Mark Brown Cc: linux-spi@vger.kernel.org, imx@lists.linux.dev, linux-kernel@vger.kernel.org X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1745480038; l=4520; i=haibo.chen@nxp.com; s=20250421; h=from:subject:message-id; bh=R+E0blCnr84VOgWVUzaNmlI5G0tHD3+mnj0wlyBAGLc=; b=VLw7pidXB8Jqsl+z6xMnvl1vH/mrPU7Ni3qayDG8iuJR1492g6x4/2V6ijAIKepo9O5K2fErL 7UyZaT71w0uCnfYwYpMVvnv5Rd2sFWVdV237z1sYnjisccNtitrO2Js X-Developer-Key: i=haibo.chen@nxp.com; a=ed25519; pk=HR9LLTuVOg3BUNeAf4/FNOIkMaZvuwVJdNrGpvKDKaI= X-ClientProxiedBy: SI1PR02CA0055.apcprd02.prod.outlook.com (2603:1096:4:1f5::16) To DU0PR04MB9496.eurprd04.prod.outlook.com (2603:10a6:10:32d::19) Precedence: bulk X-Mailing-List: linux-spi@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DU0PR04MB9496:EE_|VI2PR04MB10594:EE_ X-MS-Office365-Filtering-Correlation-Id: dd2e8777-9105-41e5-9cc3-08dd830219ba X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|52116014|376014|366016|1800799024|38350700014; X-Microsoft-Antispam-Message-Info: =?utf-8?q?gf293GdAXDoYIiar2OS8ikoK95sKJcb?= =?utf-8?q?59cwFaiPRgnmHRZMxenB67eIq2+9tCaEZcNhYZZ9+betp6sVRjAokPpS0I7bqYgfB?= =?utf-8?q?3P+SG79tAtQW2tONVbASoBkpTn/VCYJQqtfUOAyMxLA0uW/9aOFHAgCxRFN2woaRB?= =?utf-8?q?b4NKrQtVpVyGPrvuzSNNTzQIItVgXd1iZ5/7LtjfwNdsgve+sSqn7WGMo1SGT9Zwt?= =?utf-8?q?0GQ6HKGemz729hNjEvj+Y+c9Je297f6SuwF24rJeY3NQ5+LlLK977QVZCsVrm+MgT?= =?utf-8?q?07tJriSBh3tVICWYH9Uu4Oy1NfAnSqlQ/VDvaqLGJTUuhdm5VpRk7HCQLeC7TynYo?= =?utf-8?q?a2j8lsvu3fERyc7/ckXjrSqAZ3kVTWdbXoWGFYQ6yvZq15g657NLkS2+AdevFgtRK?= =?utf-8?q?ijpOQ75wN34co8j+4N1/zbRA/4QerQ8f+V2rnY5snLK9BkMi7n5TjBdWQ63mjt0Z8?= =?utf-8?q?jPhpGMrp8Cn6GnGVJMV0TOBMjqFEifFtIaxdej61kHMmDHY3yHQZLLoo6dvGYhkp+?= =?utf-8?q?+VYWGQxC7qxs5+HRXapWi2Z16K3mNT2vCmOBHpkQ3gjpO+v3NANSQcaTWwkSsXUUu?= =?utf-8?q?XVHfEXCP/fX3yGAmxminokEzJSIiAVkwpmh0s2tRPRjdoW5fa+niXfaHchPJnfDgJ?= =?utf-8?q?SBzfpLejsOD0v5jOGQfYc7l/unjyFtwJE9ieseP624jlHoHQQ5vBOnG2wJ/CbjiQd?= =?utf-8?q?dJ2JeXoXq5t34CFSrR64dMHgSr1Ptjs771bhNEpQux976kl4X9UOzpEAp/hsvpFDZ?= =?utf-8?q?LXXBtdfQYVzWI24LXKmT2o8MqQyWBF1OntkWB8C9twWe0S6MWeKGgVuR1Ptm82DYt?= =?utf-8?q?TA7oJkJ7u8O9JAI68crZFvPN8ywXMhqP2r0YmkMLW7xK1jvODCuzxt/+IA8Qq8vv3?= =?utf-8?q?bEsrRTGNmfvIE3MIRryBAck+dq7DwWCOqiQYELlCsUOkjOyU4fvoz7YLud6MDTFON?= =?utf-8?q?OAhUNwwW8z58OdYNY2WRzglDQ9lc2R//UTpdI6UKD7Y9LkTI61sbqR4zc3NltQ1gL?= =?utf-8?q?68tLF3UkazBZSDFR51R63Gk7ky1sQkUJtFNCghnEkF8jhJYQeVtkk20WQXO+m+OaS?= =?utf-8?q?oJnxu7pgfn8zWQ+JILw+BgHEmkRtElZmcxVS2uNHowvbVR6dKSkPqwNMvrUdzHNdC?= =?utf-8?q?crpupx1Pa26cAoucD4YikA+ruPQAyWBEkdbcaAEvjznz/jnOUXpFwMBy/Cqd6bxFQ?= =?utf-8?q?6cU5dXn/BcLELnumk9wHJw77els7Urn4duHZwSRWyojsJsoyByc3RQSum9FX444L2?= =?utf-8?q?kPcInJ1Vs6sYWnx23witfBWzHvDS91sPHcwoStuGkJKuNm+GKhAmnKgmb7tcyd1Cy?= =?utf-8?q?khfrsiGvD8rI7lsktufGO74XMEMBseBYH7z8Eq16IPydya3kpJqPLxFSWGCel1MwS?= =?utf-8?q?IbQdgb1bxh7iYnfwXAQpibDBJNDQtjyU++kmxHWCOesztxDjScLq9I=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DU0PR04MB9496.eurprd04.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(52116014)(376014)(366016)(1800799024)(38350700014); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?ozzIHEQ8zUBT89+T1jcFl4TI7pqW?= =?utf-8?q?kb+VwKsekIkmvJwvsVvRAsLTX//AtxK0E7mD9w432d0BxUonJ0vt4/Us6iKOg4Pmg?= =?utf-8?q?r0lLBP2RXYfttGwRqg3MrxEeGLahn8RP37xiwIvpZpLWTag51gdQqX0lZkYHTqKzo?= =?utf-8?q?SDi1nEL3Xcw3OwMoMgXc2sXjqpMnB2Ksodvg0tiy7j/WPuTatec6wHx16fLtBSijy?= =?utf-8?q?DVCwnygwIpp1g8sEh792GRWyfihDObl7BI2mD/YQVSj8VTs3SZURyOddj0kriU68q?= =?utf-8?q?e93ba/wCbLwT2GPYQM1BXeKSCTruv4fqnb4OzXl5r4lQCHXhC7I6CG8bFVzIzZg1R?= =?utf-8?q?WCKjEJqDZZOPZ8ud7DcoeaASoGyIHD+Pl6srioN9WsrbJIcK7B6gkoRa0qpkcPWDw?= =?utf-8?q?QNbQDj7pfg0qxitzg+/ZgdQp6fKTR+TXyverQBXh71bJzomRi5mNM16pzQarKNIzK?= =?utf-8?q?MNn4MU2yCWWiU4t+uOSouAIkqyKGFhVOawGgKo4Q7xBu+kGU7OU7SHTxrEdNoo2VP?= =?utf-8?q?iP4EHKKPG3jzzmaA+gmUmpHXReRl+7oU4CKduTCIxNGqECNlpH4tMIWK0KseNzuE0?= =?utf-8?q?gKRzecwAT5uhp4ro7CG2WNYLDy9ay/QHkvOy3ePizXFFRo98qvJ4630y7iDlp2YWS?= =?utf-8?q?in1TXYlQtiHsVL4gxNKObfU8SvLn8TZLQZvZzAQTpIaSsVtS/sc8l/BogneMy3VHQ?= =?utf-8?q?qMyQACUb6xqwFSYZb4LUOb+b7YV8M/s+aaio1txOe3ZtFwxFbuqZTE2hgD34Ibhm7?= =?utf-8?q?v3MIDjQeHfjZBcfUFEU+dHi9FxHOYkyvUyh0WH4jhJR6AiYVkl4igPfLnac64NBmF?= =?utf-8?q?/lqIhrsZJhluCHaUatLsl6KL4iprSojjJCIUQ3OWp9qmmtjfVMPrOd4K86UNrJ6m6?= =?utf-8?q?Y7O8BN7QlnqDlWhAcqnk8UTP0KSlZwalu7L9y9R+E8CvzhT7pzaB/T27UWkmD5Xgq?= =?utf-8?q?9x2xZNiPi0YepL4PFY1VD7jPgT8vwE5629IUk6wOoGWQtLWqJ3sd+D/bTTFdzinym?= =?utf-8?q?av6aeb+X1/hIN7VBfM+3Q7MqltN6nsUTxg412xpYcxBePPAbggMEUGzzJYJzBF2pX?= =?utf-8?q?3T9uNq6aXAQt6kDd4xUW8B5Go5ZjQ0rvtDTLGSJjQK9WDdJ6VlamJjxAXtsJf/8ol?= =?utf-8?q?i6u7rKb1lnyU+jl2pjS1yoRuUrVbwS+RVfRD7Q81ehqmkdM6Yg9RfWUcGabKjqMLB?= =?utf-8?q?tFKm/vEiTCsGqGJ2or/LmbYFKsQgdQCbsC16QnRPitj4ZOVO6ZyZQbJlEWET+yWZj?= =?utf-8?q?RZcOxG8neRAhpiitYGDecdRMjRN/TVGA5jCc70kAT12TJRXbKkAJWPAK3gxqXXS2q?= =?utf-8?q?JBxuk2oeKZoksc2JVBUkr+rEMMKluQiJ7aWcO0bOBQfg5xNXVYiMOno2WzXW9cJbJ?= =?utf-8?q?kYvmecxks14XaPeYo0Wl3md1cE32VawDmAgpDxuQW7F5Gsbxj+wEvWtyLYVEzql5E?= =?utf-8?q?sjZ0Imjj7ttGJaNWq9tGPzasKbMVgh0KPkDvWbrfb+VHlmyzSMnoeUidvn2cxF5At?= =?utf-8?q?yAR3YfkDrV7t?= X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: dd2e8777-9105-41e5-9cc3-08dd830219ba X-MS-Exchange-CrossTenant-AuthSource: DU0PR04MB9496.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Apr 2025 07:32:00.5228 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: PeJwCQlTihRVTkLHoQMhhcx439uBwfox2+2iQgAXFLc3Q2oARuTOPOpOLHQtioDHXC7DX1CyHjThZMCZuEJtsA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI2PR04MB10594 Remove all the goto in probe to simplify the driver. Signed-off-by: Haibo Chen --- drivers/spi/spi-nxp-fspi.c | 87 ++++++++++++++-------------------------------- 1 file changed, 27 insertions(+), 60 deletions(-) diff --git a/drivers/spi/spi-nxp-fspi.c b/drivers/spi/spi-nxp-fspi.c index bad6b30bab0ecb90d0aaf603b6de5bc834d19de6..00da184be88a026bf562c9808e18e2335a0959e9 100644 --- a/drivers/spi/spi-nxp-fspi.c +++ b/drivers/spi/spi-nxp-fspi.c @@ -1161,10 +1161,10 @@ static int nxp_fspi_probe(struct platform_device *pdev) struct device_node *np = dev->of_node; struct resource *res; struct nxp_fspi *f; - int ret; + int ret, irq; u32 reg; - ctlr = spi_alloc_host(&pdev->dev, sizeof(*f)); + ctlr = devm_spi_alloc_host(&pdev->dev, sizeof(*f)); if (!ctlr) return -ENOMEM; @@ -1174,10 +1174,8 @@ static int nxp_fspi_probe(struct platform_device *pdev) f = spi_controller_get_devdata(ctlr); f->dev = dev; f->devtype_data = (struct nxp_fspi_devtype_data *)device_get_match_data(dev); - if (!f->devtype_data) { - ret = -ENODEV; - goto err_put_ctrl; - } + if (!f->devtype_data) + return -ENODEV; platform_set_drvdata(pdev, f); @@ -1186,11 +1184,8 @@ static int nxp_fspi_probe(struct platform_device *pdev) f->iobase = devm_platform_ioremap_resource(pdev, 0); else f->iobase = devm_platform_ioremap_resource_byname(pdev, "fspi_base"); - - if (IS_ERR(f->iobase)) { - ret = PTR_ERR(f->iobase); - goto err_put_ctrl; - } + if (IS_ERR(f->iobase)) + return PTR_ERR(f->iobase); /* find the resources - controller memory mapped space */ if (is_acpi_node(dev_fwnode(f->dev))) @@ -1198,11 +1193,8 @@ static int nxp_fspi_probe(struct platform_device *pdev) else res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "fspi_mmap"); - - if (!res) { - ret = -ENODEV; - goto err_put_ctrl; - } + if (!res) + return -ENODEV; /* assign memory mapped starting address and mapped size. */ f->memmap_phy = res->start; @@ -1211,69 +1203,46 @@ static int nxp_fspi_probe(struct platform_device *pdev) /* find the clocks */ if (dev_of_node(&pdev->dev)) { f->clk_en = devm_clk_get(dev, "fspi_en"); - if (IS_ERR(f->clk_en)) { - ret = PTR_ERR(f->clk_en); - goto err_put_ctrl; - } + if (IS_ERR(f->clk_en)) + return PTR_ERR(f->clk_en); f->clk = devm_clk_get(dev, "fspi"); - if (IS_ERR(f->clk)) { - ret = PTR_ERR(f->clk); - goto err_put_ctrl; - } - - ret = nxp_fspi_clk_prep_enable(f); - if (ret) { - dev_err(dev, "can not enable the clock\n"); - goto err_put_ctrl; - } + if (IS_ERR(f->clk)) + return PTR_ERR(f->clk); } + /* find the irq */ + irq = platform_get_irq(pdev, 0); + if (irq < 0) + return dev_err_probe(dev, irq, "Failed to get irq source"); + + ret = nxp_fspi_clk_prep_enable(f); + if (ret) + return dev_err_probe(dev, ret, "Can't enable the clock\n"); + /* Clear potential interrupts */ reg = fspi_readl(f, f->iobase + FSPI_INTR); if (reg) fspi_writel(f, reg, f->iobase + FSPI_INTR); - /* find the irq */ - ret = platform_get_irq(pdev, 0); - if (ret < 0) - goto err_disable_clk; + nxp_fspi_default_setup(f); - ret = devm_request_irq(dev, ret, + ret = devm_request_irq(dev, irq, nxp_fspi_irq_handler, 0, pdev->name, f); if (ret) { - dev_err(dev, "failed to request irq: %d\n", ret); - goto err_disable_clk; + nxp_fspi_clk_disable_unprep(f); + return dev_err_probe(dev, ret, "Failed to request irq\n"); } - mutex_init(&f->lock); + devm_mutex_init(dev, &f->lock); ctlr->bus_num = -1; ctlr->num_chipselect = NXP_FSPI_MAX_CHIPSELECT; ctlr->mem_ops = &nxp_fspi_mem_ops; ctlr->mem_caps = &nxp_fspi_mem_caps; - - nxp_fspi_default_setup(f); - ctlr->dev.of_node = np; - ret = devm_spi_register_controller(&pdev->dev, ctlr); - if (ret) - goto err_destroy_mutex; - - return 0; - -err_destroy_mutex: - mutex_destroy(&f->lock); - -err_disable_clk: - nxp_fspi_clk_disable_unprep(f); - -err_put_ctrl: - spi_controller_put(ctlr); - - dev_err(dev, "NXP FSPI probe failed\n"); - return ret; + return devm_spi_register_controller(&pdev->dev, ctlr); } static void nxp_fspi_remove(struct platform_device *pdev) @@ -1285,8 +1254,6 @@ static void nxp_fspi_remove(struct platform_device *pdev) nxp_fspi_clk_disable_unprep(f); - mutex_destroy(&f->lock); - if (f->ahb_addr) iounmap(f->ahb_addr); }