From nobody Sun Feb 8 01:33:34 2026 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.17]) (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 C522D33EAE6; Mon, 12 Jan 2026 20:35:50 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=198.175.65.17 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768250152; cv=none; b=ao+Qed1GgqeB2tXExxU58sfaA/THhUGGJr16eSfJMUUTbjhuEKvb5rGanVf1eHVHjc523p5nBpsCMtukFuu0DZoK0+VYkM4UhA162DZJrPawVeTTmdEV8ZmblTVwQPkHPEAu08efYngw6zZ6fhA8CKSxJyUv8/f2FTW8SB/GwB8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768250152; c=relaxed/simple; bh=dzIlNxBLNcrWr8IC/y57DQTFAbop0n5nPnrevzaacBI=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=eI88JJAgQmtM4GaHB+ENhltn41En4blBjY0kApkYjQ/UaitS9/3PXGRGdBYNJv5r5o10NuL++SeTLJgvRG1FaTBeiMLanyEcbC+/mFOk/8iSrDqWjLszIM3xBafD5BmClQILFPCsrLRzpm8CHDqBMAVffFR3s8OpgMAQus5Wj7g= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com; spf=pass smtp.mailfrom=linux.intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=jzuHypuq; arc=none smtp.client-ip=198.175.65.17 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="jzuHypuq" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1768250151; x=1799786151; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=dzIlNxBLNcrWr8IC/y57DQTFAbop0n5nPnrevzaacBI=; b=jzuHypuqUGo6qOQ8r7cE3yRV3G+hWUMp9KuTvJZ2acGIVnhePUJt/Iw2 NXLrgeOKPMcImfwzGXjRteUcRfTHwAU8csHlpaeK+vO6TzEvLLEzgYSyU 2uMPLYP8tJL8XnYbC0RNClM8KX8UGit8DdrYILJjK6myjSg58fu9FH6mo jyJM1Vlnnk3TKWq5ymicd3oHqkJE4TsHz+Bb7HnWFY3NQwMPYyHKm6Alw PWdijHKCG7J5PT8o27Bi7DJAqxH4LYIgpeHmSoZRjZspFcd997V2Q77u/ hTqBgqdkv3XvxhoAFq1WHcm0Oj195UoqNqC/zN+VUmGwHWpUg9bHyiYjS g==; X-CSE-ConnectionGUID: Uy1vY54vQw+Fe3Jw5jqXag== X-CSE-MsgGUID: l6MzxHBzRhyUGTcsn2/GSg== X-IronPort-AV: E=McAfee;i="6800,10657,11669"; a="69515881" X-IronPort-AV: E=Sophos;i="6.21,221,1763452800"; d="scan'208";a="69515881" Received: from orviesa005.jf.intel.com ([10.64.159.145]) by orvoesa109.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 12 Jan 2026 12:35:50 -0800 X-CSE-ConnectionGUID: Wd9Pd5v0RsaC3tx7hFm2fQ== X-CSE-MsgGUID: aPk0SsUFTRe0eIv2P2Fwzg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.21,221,1763452800"; d="scan'208";a="209262083" Received: from black.igk.intel.com ([10.91.253.5]) by orviesa005.jf.intel.com with ESMTP; 12 Jan 2026 12:35:40 -0800 Received: by black.igk.intel.com (Postfix, from userid 1003) id 6FF4698; Mon, 12 Jan 2026 21:35:37 +0100 (CET) From: Andy Shevchenko To: Mark Brown , Varshini Rajendran , Mikhail Kshevetskiy , AngeloGioacchino Del Regno , Haotian Zhang , Sunny Luo , Janne Grunau , Andy Shevchenko , Martin Blumenstingl , Geert Uytterhoeven , Chen-Yu Tsai , Amelie Delaunay , Chin-Ting Kuo , CL Wang , Patrice Chotard , Heiko Stuebner , William Zhang , =?UTF-8?q?C=C3=A9dric=20Le=20Goater?= , Manikandan Muralidharan , David Lechner , Florian Fainelli , Jonas Gorski , Hang Zhou <929513338@qq.com>, Jun Guo , Philipp Stanner , Charles Keepax , Bartosz Golaszewski , =?UTF-8?q?Beno=C3=AEt=20Monin?= , Shiji Yang , James Clark , Jonathan Marek , Carlos Song , Sakari Ailus , Huacai Chen , Xianwei Zhao , Prajna Rajendra Kumar , Sergio Perez Gonzalez , Qianfeng Rong , Haibo Chen , Gabor Juhos , Md Sadre Alam , Rosen Penev , Marek Szyprowski , Luis de Arquer , Cosmin Tanislav , Tudor Ambarus , Krzysztof Kozlowski , Longbin Li , Kunihiko Hayashi , =?UTF-8?q?Cl=C3=A9ment=20Le=20Goffic?= , Alessandro Grassi , Darshan R , Aaron Kling , Vishwaroop A , Haixu Cui , Darshan Rathod , linux-spi@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-amlogic@lists.infradead.org, asahi@lists.linux.dev, linux-aspeed@lists.ozlabs.org, openbmc@lists.ozlabs.org, linux-rpi-kernel@lists.infradead.org, linux-sound@vger.kernel.org, patches@opensource.cirrus.com, imx@lists.linux.dev, linux-arm-msm@vger.kernel.org, linux-riscv@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-rockchip@lists.infradead.org, linux-renesas-soc@vger.kernel.org, linux-samsung-soc@vger.kernel.org, linux-stm32@st-md-mailman.stormreply.com, linux-sunxi@lists.linux.dev, linux-tegra@vger.kernel.org, virtualization@lists.linux.dev Cc: Nicolas Ferre , Alexandre Belloni , Claudiu Beznea , Lorenzo Bianconi , Ray Liu , Sven Peter , Neal Gompa , Joel Stanley , Andrew Jeffery , Ryan Wanner , Michael Hennerich , =?UTF-8?q?Nuno=20S=C3=A1?= , Kamal Dasu , Broadcom internal kernel review list , Ray Jui , Scott Branden , Kursad Oney , Anand Gore , =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= , David Rhodes , Richard Fitzgerald , Vladimir Oltean , Frank Li , Jean-Marie Verdun , Nick Hawkins , Yang Shen , Shawn Guo , Sascha Hauer , Pengutronix Kernel Team , Fabio Estevam , Lixu Zhang , Yinbo Zhu , Neil Armstrong , Kevin Hilman , Jerome Brunet , Conor Dooley , Daire McNamara , Matthias Brugger , Avi Fishman , Tomer Maimon , Tali Perry , Patrick Venture , Nancy Yuen , Benjamin Fair , Han Xu , Yogesh Gaur , Linus Walleij , Daniel Mack , Haojian Zhuang , Robert Jarzmik , Chris Packham , Fabrizio Castro , Andi Shyti , Alim Akhtar , Paul Walmsley , Samuel Holland , Orson Zhai , Baolin Wang , Chunyan Zhang , Maxime Coquelin , Alexandre Torgue , Alain Volmat , Jernej Skrabec , Li-hao Kuo , Masahisa Kojima , Jassi Brar , Laxman Dewangan , Thierry Reding , Jonathan Hunter , Sowjanya Komatineni , Masami Hiramatsu , =?UTF-8?q?Jonathan=20Neusch=C3=A4fer?= , Michal Simek , Max Filippov Subject: [PATCH v2 1/4] spi: Propagate default fwnode to the SPI controller device Date: Mon, 12 Jan 2026 21:21:23 +0100 Message-ID: <20260112203534.4186261-2-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20260112203534.4186261-1-andriy.shevchenko@linux.intel.com> References: <20260112203534.4186261-1-andriy.shevchenko@linux.intel.com> 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" Most of the SPI controller drivers share the parent's fwnode by explicit assignment. Propagate the default by SPI core, so they may drop that in the code. Only corner cases may require a special treatment and we simply (re)assign the controller's fwnode explicitly (as it's done right now, no changes required for that). Reviewed-by: Charles Keepax Tested-by: Charles Keepax Signed-off-by: Andy Shevchenko Reviewed-by: Linus Walleij --- drivers/spi/spi-cs42l43.c | 8 ++++++++ drivers/spi/spi.c | 3 +++ 2 files changed, 11 insertions(+) diff --git a/drivers/spi/spi-cs42l43.c b/drivers/spi/spi-cs42l43.c index 4b6b65f450a8..a4a650c8d740 100644 --- a/drivers/spi/spi-cs42l43.c +++ b/drivers/spi/spi-cs42l43.c @@ -371,6 +371,14 @@ static int cs42l43_spi_probe(struct platform_device *p= dev) =20 fwnode_property_read_u32(xu_fwnode, "01fa-sidecar-instances", &nsidecars); =20 + /* + * Depending on the value of nsidecars we either create a software node + * or assign an fwnode. We don't want software node to be attached to + * the default one. That's why we need to clear the SPI controller fwnode + * first. + */ + device_set_node(&priv->ctlr->dev, NULL); + if (nsidecars) { struct software_node_ref_args args[] =3D { SOFTWARE_NODE_REFERENCE(fwnode, 0, GPIO_ACTIVE_LOW), diff --git a/drivers/spi/spi.c b/drivers/spi/spi.c index f077ea74e299..b773c297f8b1 100644 --- a/drivers/spi/spi.c +++ b/drivers/spi/spi.c @@ -3072,6 +3072,9 @@ struct spi_controller *__spi_alloc_controller(struct = device *dev, else ctlr->dev.class =3D &spi_controller_class; ctlr->dev.parent =3D dev; + + device_set_node(&ctlr->dev, dev_fwnode(dev)); + pm_suspend_ignore_children(&ctlr->dev, true); spi_controller_set_devdata(ctlr, (void *)ctlr + ctlr_size); =20 --=20 2.50.1 From nobody Sun Feb 8 01:33:34 2026 Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.11]) (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 10A3433C511; Mon, 12 Jan 2026 20:36:03 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=192.198.163.11 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768250167; cv=none; b=mGYBvIlBURe/Emq+lXE8l04Xxub7qnuvzW3T8ZSvECiD6PMPxukzyNPoXZT/IllqV+xwOqrtmX1O96BPrbpTxEYhsdX7pQDvmzrSTtCIfEBgpsFFaQ9MjQFUWtrAby14MRNKM2fP2/4xDaNzzmaQ6tDIfuAs9SG83EiV4fTVgx8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768250167; c=relaxed/simple; bh=LFpOWf/HrVd+gnqj2IlTH+6JFu2ADL0X5JZIfwrXLLk=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=fivdYQXRwkj0mPbrl3YW+Se48gjAyXav4++x/BCcvR1t5nKgHSEr+V8XtBm+6VvlZBGmt+pFuffPv5ibq8eOGOOm0kiX9WvOpQ/Njxpjvn6HdtEGdOXd3yH4hBTTyMQE3j4tanGlWJesUjtUWSulhUdfWjlPqAAXYGbVETJDt6Q= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com; spf=pass smtp.mailfrom=linux.intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=Jp0F6dwD; arc=none smtp.client-ip=192.198.163.11 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="Jp0F6dwD" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1768250164; x=1799786164; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=LFpOWf/HrVd+gnqj2IlTH+6JFu2ADL0X5JZIfwrXLLk=; b=Jp0F6dwDZusBujUOl+nr4fihE8d1XOXxrA2cEbVoHhLi3LDBP/3+uL4g 71dzfWBNNOWVI/vAHhbIPYvo3gQlY1uXqOxy9RmTe9Z7iRIiMAayOEJ2b buczZU5NBkj2A5ILsKMvye94MJ5okaDw57w4wkeQjq3FQ/GqeU6VB5LqH IKPx8u65EsBPSNon8A9uS9alnNY1In6wo4pcvzQ6Ik+fWZ4B8HmrO2cYQ SNZEwxH/J0xd7x68R11yIXWp/iWvAVpkH4Z3s01xteYOmVIVNqdGuNSfw Dr/ogMwUPep2kB+f/Tl042krBf47lvk+hCtdDMY6tp+UylyIrFiaEC1dc w==; X-CSE-ConnectionGUID: qVJ1M7c8Ssmhfq5W/LArDA== X-CSE-MsgGUID: uxIxxmS/TSeM419hiqegHw== X-IronPort-AV: E=McAfee;i="6800,10657,11669"; a="80173798" X-IronPort-AV: E=Sophos;i="6.21,221,1763452800"; d="scan'208";a="80173798" Received: from orviesa004.jf.intel.com ([10.64.159.144]) by fmvoesa105.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 12 Jan 2026 12:35:59 -0800 X-CSE-ConnectionGUID: 2YbZwpH6TYO2sX7krH9pCQ== X-CSE-MsgGUID: 6yT3Psv0RRKn2GUW+VxIjg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.21,221,1763452800"; d="scan'208";a="208707608" Received: from black.igk.intel.com ([10.91.253.5]) by orviesa004.jf.intel.com with ESMTP; 12 Jan 2026 12:35:49 -0800 Received: by black.igk.intel.com (Postfix, from userid 1003) id 795E699; Mon, 12 Jan 2026 21:35:37 +0100 (CET) From: Andy Shevchenko To: Mark Brown , Varshini Rajendran , Mikhail Kshevetskiy , AngeloGioacchino Del Regno , Haotian Zhang , Sunny Luo , Janne Grunau , Andy Shevchenko , Martin Blumenstingl , Geert Uytterhoeven , Chen-Yu Tsai , Amelie Delaunay , Chin-Ting Kuo , CL Wang , Patrice Chotard , Heiko Stuebner , William Zhang , =?UTF-8?q?C=C3=A9dric=20Le=20Goater?= , Manikandan Muralidharan , David Lechner , Florian Fainelli , Jonas Gorski , Hang Zhou <929513338@qq.com>, Jun Guo , Philipp Stanner , Charles Keepax , Bartosz Golaszewski , =?UTF-8?q?Beno=C3=AEt=20Monin?= , Shiji Yang , James Clark , Jonathan Marek , Carlos Song , Sakari Ailus , Huacai Chen , Xianwei Zhao , Prajna Rajendra Kumar , Sergio Perez Gonzalez , Qianfeng Rong , Haibo Chen , Gabor Juhos , Md Sadre Alam , Rosen Penev , Marek Szyprowski , Luis de Arquer , Cosmin Tanislav , Tudor Ambarus , Krzysztof Kozlowski , Longbin Li , Kunihiko Hayashi , =?UTF-8?q?Cl=C3=A9ment=20Le=20Goffic?= , Alessandro Grassi , Darshan R , Aaron Kling , Vishwaroop A , Haixu Cui , Darshan Rathod , linux-spi@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-amlogic@lists.infradead.org, asahi@lists.linux.dev, linux-aspeed@lists.ozlabs.org, openbmc@lists.ozlabs.org, linux-rpi-kernel@lists.infradead.org, linux-sound@vger.kernel.org, patches@opensource.cirrus.com, imx@lists.linux.dev, linux-arm-msm@vger.kernel.org, linux-riscv@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-rockchip@lists.infradead.org, linux-renesas-soc@vger.kernel.org, linux-samsung-soc@vger.kernel.org, linux-stm32@st-md-mailman.stormreply.com, linux-sunxi@lists.linux.dev, linux-tegra@vger.kernel.org, virtualization@lists.linux.dev Cc: Nicolas Ferre , Alexandre Belloni , Claudiu Beznea , Lorenzo Bianconi , Ray Liu , Sven Peter , Neal Gompa , Joel Stanley , Andrew Jeffery , Ryan Wanner , Michael Hennerich , =?UTF-8?q?Nuno=20S=C3=A1?= , Kamal Dasu , Broadcom internal kernel review list , Ray Jui , Scott Branden , Kursad Oney , Anand Gore , =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= , David Rhodes , Richard Fitzgerald , Vladimir Oltean , Frank Li , Jean-Marie Verdun , Nick Hawkins , Yang Shen , Shawn Guo , Sascha Hauer , Pengutronix Kernel Team , Fabio Estevam , Lixu Zhang , Yinbo Zhu , Neil Armstrong , Kevin Hilman , Jerome Brunet , Conor Dooley , Daire McNamara , Matthias Brugger , Avi Fishman , Tomer Maimon , Tali Perry , Patrick Venture , Nancy Yuen , Benjamin Fair , Han Xu , Yogesh Gaur , Linus Walleij , Daniel Mack , Haojian Zhuang , Robert Jarzmik , Chris Packham , Fabrizio Castro , Andi Shyti , Alim Akhtar , Paul Walmsley , Samuel Holland , Orson Zhai , Baolin Wang , Chunyan Zhang , Maxime Coquelin , Alexandre Torgue , Alain Volmat , Jernej Skrabec , Li-hao Kuo , Masahisa Kojima , Jassi Brar , Laxman Dewangan , Thierry Reding , Jonathan Hunter , Sowjanya Komatineni , Masami Hiramatsu , =?UTF-8?q?Jonathan=20Neusch=C3=A4fer?= , Michal Simek , Max Filippov Subject: [PATCH v2 2/4] spi: Drop duplicate of_node assignment Date: Mon, 12 Jan 2026 21:21:24 +0100 Message-ID: <20260112203534.4186261-3-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20260112203534.4186261-1-andriy.shevchenko@linux.intel.com> References: <20260112203534.4186261-1-andriy.shevchenko@linux.intel.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable The SPI core provides the default of_node for the controller, inherited from the actual (parent) device. No need to repeat it in the driver. Acked-by: Heiko Stuebner Reviewed-by: William Zhang Acked-by: Chen-Yu Tsai # sun4i, sun6i Reviewed-by: C=C3=A9dric Le Goater Reviewed-by: Amelie Delaunay Reviewed-by: Geert Uytterhoeven # renesas Reviewed-by: Martin Blumenstingl Reviewed-by: Patrice Chotard Signed-off-by: Andy Shevchenko Reviewed-by: Linus Walleij Tested-by: Prajna Rajendra Kumar --- drivers/spi/atmel-quadspi.c | 1 - drivers/spi/spi-altera-platform.c | 2 -- drivers/spi/spi-amlogic-spifc-a1.c | 1 - drivers/spi/spi-amlogic-spisg.c | 1 - drivers/spi/spi-apple.c | 1 - drivers/spi/spi-ar934x.c | 1 - drivers/spi/spi-armada-3700.c | 4 +--- drivers/spi/spi-aspeed-smc.c | 1 - drivers/spi/spi-atcspi200.c | 1 - drivers/spi/spi-ath79.c | 1 - drivers/spi/spi-atmel.c | 1 - drivers/spi/spi-axi-spi-engine.c | 1 - drivers/spi/spi-bcm-qspi.c | 1 - drivers/spi/spi-bcm2835.c | 1 - drivers/spi/spi-bcm2835aux.c | 1 - drivers/spi/spi-bcm63xx-hsspi.c | 1 - drivers/spi/spi-bcm63xx.c | 1 - drivers/spi/spi-bcmbca-hsspi.c | 1 - drivers/spi/spi-cadence-quadspi.c | 1 - drivers/spi/spi-cadence-xspi.c | 1 - drivers/spi/spi-cadence.c | 1 - drivers/spi/spi-cavium-octeon.c | 1 - drivers/spi/spi-cavium-thunderx.c | 1 - drivers/spi/spi-clps711x.c | 1 - drivers/spi/spi-davinci.c | 1 - drivers/spi/spi-falcon.c | 1 - drivers/spi/spi-fsl-dspi.c | 1 - drivers/spi/spi-fsl-espi.c | 1 - drivers/spi/spi-fsl-lib.c | 1 - drivers/spi/spi-fsl-lpspi.c | 1 - drivers/spi/spi-geni-qcom.c | 1 - drivers/spi/spi-gxp.c | 1 - drivers/spi/spi-img-spfi.c | 1 - drivers/spi/spi-imx.c | 1 - drivers/spi/spi-ingenic.c | 1 - drivers/spi/spi-lantiq-ssc.c | 1 - drivers/spi/spi-lp8841-rtc.c | 1 - drivers/spi/spi-meson-spicc.c | 1 - drivers/spi/spi-meson-spifc.c | 1 - drivers/spi/spi-microchip-core-spi.c | 1 - drivers/spi/spi-mpc52xx.c | 1 - drivers/spi/spi-mpfs.c | 1 - drivers/spi/spi-mt65xx.c | 1 - drivers/spi/spi-mt7621.c | 1 - drivers/spi/spi-mtk-nor.c | 1 - drivers/spi/spi-mtk-snfi.c | 1 - drivers/spi/spi-mux.c | 1 - drivers/spi/spi-mxic.c | 1 - drivers/spi/spi-npcm-fiu.c | 1 - drivers/spi/spi-npcm-pspi.c | 1 - drivers/spi/spi-nxp-xspi.c | 1 - drivers/spi/spi-oc-tiny.c | 1 - drivers/spi/spi-orion.c | 1 - drivers/spi/spi-pl022.c | 1 - drivers/spi/spi-qcom-qspi.c | 1 - drivers/spi/spi-qpic-snand.c | 1 - drivers/spi/spi-qup.c | 1 - drivers/spi/spi-rb4xx.c | 1 - drivers/spi/spi-realtek-rtl.c | 1 - drivers/spi/spi-rockchip-sfc.c | 1 - drivers/spi/spi-rockchip.c | 1 - drivers/spi/spi-rspi.c | 1 - drivers/spi/spi-s3c64xx.c | 1 - drivers/spi/spi-sg2044-nor.c | 1 - drivers/spi/spi-sh-hspi.c | 1 - drivers/spi/spi-sh-msiof.c | 1 - drivers/spi/spi-sifive.c | 1 - drivers/spi/spi-slave-mt27xx.c | 1 - drivers/spi/spi-sn-f-ospi.c | 1 - drivers/spi/spi-sprd-adi.c | 1 - drivers/spi/spi-sprd.c | 1 - drivers/spi/spi-stm32-ospi.c | 1 - drivers/spi/spi-stm32-qspi.c | 1 - drivers/spi/spi-stm32.c | 1 - drivers/spi/spi-sun4i.c | 1 - drivers/spi/spi-sun6i.c | 1 - drivers/spi/spi-tegra114.c | 1 - drivers/spi/spi-tegra20-sflash.c | 1 - drivers/spi/spi-tegra20-slink.c | 1 - drivers/spi/spi-tegra210-quad.c | 1 - drivers/spi/spi-ti-qspi.c | 1 - drivers/spi/spi-uniphier.c | 1 - drivers/spi/spi-wpcm-fiu.c | 1 - drivers/spi/spi-xcomm.c | 1 - drivers/spi/spi-xilinx.c | 1 - drivers/spi/spi-xlp.c | 1 - drivers/spi/spi-xtensa-xtfpga.c | 1 - 87 files changed, 1 insertion(+), 90 deletions(-) diff --git a/drivers/spi/atmel-quadspi.c b/drivers/spi/atmel-quadspi.c index d7a3d85d00c2..aaf7f4c46b22 100644 --- a/drivers/spi/atmel-quadspi.c +++ b/drivers/spi/atmel-quadspi.c @@ -1382,7 +1382,6 @@ static int atmel_qspi_probe(struct platform_device *p= dev) ctrl->bus_num =3D -1; ctrl->mem_ops =3D &atmel_qspi_mem_ops; ctrl->num_chipselect =3D 1; - ctrl->dev.of_node =3D pdev->dev.of_node; platform_set_drvdata(pdev, ctrl); =20 /* Map the registers */ diff --git a/drivers/spi/spi-altera-platform.c b/drivers/spi/spi-altera-pla= tform.c index e163774fd65b..fc81de2610ef 100644 --- a/drivers/spi/spi-altera-platform.c +++ b/drivers/spi/spi-altera-platform.c @@ -67,8 +67,6 @@ static int altera_spi_probe(struct platform_device *pdev) host->bits_per_word_mask =3D SPI_BPW_RANGE_MASK(1, 16); } =20 - host->dev.of_node =3D pdev->dev.of_node; - hw =3D spi_controller_get_devdata(host); hw->dev =3D &pdev->dev; =20 diff --git a/drivers/spi/spi-amlogic-spifc-a1.c b/drivers/spi/spi-amlogic-s= pifc-a1.c index eb503790017b..7ee4c92e6e09 100644 --- a/drivers/spi/spi-amlogic-spifc-a1.c +++ b/drivers/spi/spi-amlogic-spifc-a1.c @@ -358,7 +358,6 @@ static int amlogic_spifc_a1_probe(struct platform_devic= e *pdev) return ret; =20 ctrl->num_chipselect =3D 1; - ctrl->dev.of_node =3D pdev->dev.of_node; ctrl->bits_per_word_mask =3D SPI_BPW_MASK(8); ctrl->auto_runtime_pm =3D true; ctrl->mem_ops =3D &amlogic_spifc_a1_mem_ops; diff --git a/drivers/spi/spi-amlogic-spisg.c b/drivers/spi/spi-amlogic-spis= g.c index bcd7ec291ad0..1509df2b17ae 100644 --- a/drivers/spi/spi-amlogic-spisg.c +++ b/drivers/spi/spi-amlogic-spisg.c @@ -781,7 +781,6 @@ static int aml_spisg_probe(struct platform_device *pdev) pm_runtime_resume_and_get(&spisg->pdev->dev); =20 ctlr->num_chipselect =3D 4; - ctlr->dev.of_node =3D pdev->dev.of_node; ctlr->mode_bits =3D SPI_CPHA | SPI_CPOL | SPI_LSB_FIRST | SPI_3WIRE | SPI_TX_QUAD | SPI_RX_QUAD; ctlr->max_speed_hz =3D 1000 * 1000 * 100; diff --git a/drivers/spi/spi-apple.c b/drivers/spi/spi-apple.c index 2fee7057ecc9..61eefb08d2a7 100644 --- a/drivers/spi/spi-apple.c +++ b/drivers/spi/spi-apple.c @@ -485,7 +485,6 @@ static int apple_spi_probe(struct platform_device *pdev) if (ret) return dev_err_probe(&pdev->dev, ret, "Unable to bind to interrupt\n"); =20 - ctlr->dev.of_node =3D pdev->dev.of_node; ctlr->bus_num =3D pdev->id; ctlr->num_chipselect =3D 1; ctlr->mode_bits =3D SPI_CPHA | SPI_CPOL | SPI_LSB_FIRST; diff --git a/drivers/spi/spi-ar934x.c b/drivers/spi/spi-ar934x.c index 86c54fff9d6e..2210186feab8 100644 --- a/drivers/spi/spi-ar934x.c +++ b/drivers/spi/spi-ar934x.c @@ -195,7 +195,6 @@ static int ar934x_spi_probe(struct platform_device *pde= v) ctlr->transfer_one_message =3D ar934x_spi_transfer_one_message; ctlr->bits_per_word_mask =3D SPI_BPW_MASK(32) | SPI_BPW_MASK(24) | SPI_BPW_MASK(16) | SPI_BPW_MASK(8); - ctlr->dev.of_node =3D pdev->dev.of_node; ctlr->num_chipselect =3D 3; =20 dev_set_drvdata(&pdev->dev, ctlr); diff --git a/drivers/spi/spi-armada-3700.c b/drivers/spi/spi-armada-3700.c index 02c1e625742d..78248729d3e9 100644 --- a/drivers/spi/spi-armada-3700.c +++ b/drivers/spi/spi-armada-3700.c @@ -813,7 +813,6 @@ MODULE_DEVICE_TABLE(of, a3700_spi_dt_ids); static int a3700_spi_probe(struct platform_device *pdev) { struct device *dev =3D &pdev->dev; - struct device_node *of_node =3D dev->of_node; struct spi_controller *host; struct a3700_spi *spi; u32 num_cs =3D 0; @@ -826,14 +825,13 @@ static int a3700_spi_probe(struct platform_device *pd= ev) goto out; } =20 - if (of_property_read_u32(of_node, "num-cs", &num_cs)) { + if (of_property_read_u32(dev->of_node, "num-cs", &num_cs)) { dev_err(dev, "could not find num-cs\n"); ret =3D -ENXIO; goto error; } =20 host->bus_num =3D pdev->id; - host->dev.of_node =3D of_node; host->mode_bits =3D SPI_MODE_3; host->num_chipselect =3D num_cs; host->bits_per_word_mask =3D SPI_BPW_MASK(8) | SPI_BPW_MASK(32); diff --git a/drivers/spi/spi-aspeed-smc.c b/drivers/spi/spi-aspeed-smc.c index db3e096f2eb0..fc565065c8fd 100644 --- a/drivers/spi/spi-aspeed-smc.c +++ b/drivers/spi/spi-aspeed-smc.c @@ -898,7 +898,6 @@ static int aspeed_spi_probe(struct platform_device *pde= v) ctlr->setup =3D aspeed_spi_setup; ctlr->cleanup =3D aspeed_spi_cleanup; ctlr->num_chipselect =3D of_get_available_child_count(dev->of_node); - ctlr->dev.of_node =3D dev->of_node; =20 aspi->num_cs =3D ctlr->num_chipselect; =20 diff --git a/drivers/spi/spi-atcspi200.c b/drivers/spi/spi-atcspi200.c index 0af7446642e5..60a37ff5c6f5 100644 --- a/drivers/spi/spi-atcspi200.c +++ b/drivers/spi/spi-atcspi200.c @@ -552,7 +552,6 @@ static void atcspi_init_controller(struct platform_devi= ce *pdev, /* Initialize controller properties */ host->bus_num =3D pdev->id; host->mode_bits =3D SPI_CPOL | SPI_CPHA | SPI_RX_QUAD | SPI_TX_QUAD; - host->dev.of_node =3D pdev->dev.of_node; host->num_chipselect =3D ATCSPI_MAX_CS_NUM; host->mem_ops =3D &atcspi_mem_ops; host->max_speed_hz =3D spi->sclk_rate; diff --git a/drivers/spi/spi-ath79.c b/drivers/spi/spi-ath79.c index 9a705a9fddd2..2f61e5b9943c 100644 --- a/drivers/spi/spi-ath79.c +++ b/drivers/spi/spi-ath79.c @@ -180,7 +180,6 @@ static int ath79_spi_probe(struct platform_device *pdev) } =20 sp =3D spi_controller_get_devdata(host); - host->dev.of_node =3D pdev->dev.of_node; platform_set_drvdata(pdev, sp); =20 host->use_gpio_descriptors =3D true; diff --git a/drivers/spi/spi-atmel.c b/drivers/spi/spi-atmel.c index 89977bff76d2..d71c0dbf1f38 100644 --- a/drivers/spi/spi-atmel.c +++ b/drivers/spi/spi-atmel.c @@ -1536,7 +1536,6 @@ static int atmel_spi_probe(struct platform_device *pd= ev) host->use_gpio_descriptors =3D true; host->mode_bits =3D SPI_CPOL | SPI_CPHA | SPI_CS_HIGH; host->bits_per_word_mask =3D SPI_BPW_RANGE_MASK(8, 16); - host->dev.of_node =3D pdev->dev.of_node; host->bus_num =3D pdev->id; host->num_chipselect =3D 4; host->setup =3D atmel_spi_setup; diff --git a/drivers/spi/spi-axi-spi-engine.c b/drivers/spi/spi-axi-spi-eng= ine.c index e06f412190fd..91805eae9263 100644 --- a/drivers/spi/spi-axi-spi-engine.c +++ b/drivers/spi/spi-axi-spi-engine.c @@ -1080,7 +1080,6 @@ static int spi_engine_probe(struct platform_device *p= dev) if (ret) return ret; =20 - host->dev.of_node =3D pdev->dev.of_node; host->mode_bits =3D SPI_CPOL | SPI_CPHA | SPI_3WIRE; host->bits_per_word_mask =3D SPI_BPW_RANGE_MASK(1, 32); host->max_speed_hz =3D clk_get_rate(spi_engine->ref_clk) / 2; diff --git a/drivers/spi/spi-bcm-qspi.c b/drivers/spi/spi-bcm-qspi.c index cfdaa5eaec76..9c06ac562f3e 100644 --- a/drivers/spi/spi-bcm-qspi.c +++ b/drivers/spi/spi-bcm-qspi.c @@ -1529,7 +1529,6 @@ int bcm_qspi_probe(struct platform_device *pdev, host->transfer_one =3D bcm_qspi_transfer_one; host->mem_ops =3D &bcm_qspi_mem_ops; host->cleanup =3D bcm_qspi_cleanup; - host->dev.of_node =3D dev->of_node; host->num_chipselect =3D NUM_CHIPSELECT; host->use_gpio_descriptors =3D true; =20 diff --git a/drivers/spi/spi-bcm2835.c b/drivers/spi/spi-bcm2835.c index 192cc5ef65fb..35ae50ca37ac 100644 --- a/drivers/spi/spi-bcm2835.c +++ b/drivers/spi/spi-bcm2835.c @@ -1368,7 +1368,6 @@ static int bcm2835_spi_probe(struct platform_device *= pdev) ctlr->transfer_one =3D bcm2835_spi_transfer_one; ctlr->handle_err =3D bcm2835_spi_handle_err; ctlr->prepare_message =3D bcm2835_spi_prepare_message; - ctlr->dev.of_node =3D pdev->dev.of_node; =20 bs =3D spi_controller_get_devdata(ctlr); bs->ctlr =3D ctlr; diff --git a/drivers/spi/spi-bcm2835aux.c b/drivers/spi/spi-bcm2835aux.c index 90698d7d809d..f6847d3a76de 100644 --- a/drivers/spi/spi-bcm2835aux.c +++ b/drivers/spi/spi-bcm2835aux.c @@ -502,7 +502,6 @@ static int bcm2835aux_spi_probe(struct platform_device = *pdev) host->handle_err =3D bcm2835aux_spi_handle_err; host->prepare_message =3D bcm2835aux_spi_prepare_message; host->unprepare_message =3D bcm2835aux_spi_unprepare_message; - host->dev.of_node =3D pdev->dev.of_node; host->use_gpio_descriptors =3D true; =20 bs =3D spi_controller_get_devdata(host); diff --git a/drivers/spi/spi-bcm63xx-hsspi.c b/drivers/spi/spi-bcm63xx-hssp= i.c index d9e972ef2abd..612f8802e690 100644 --- a/drivers/spi/spi-bcm63xx-hsspi.c +++ b/drivers/spi/spi-bcm63xx-hsspi.c @@ -822,7 +822,6 @@ static int bcm63xx_hsspi_probe(struct platform_device *= pdev) init_completion(&bs->done); =20 host->mem_ops =3D &bcm63xx_hsspi_mem_ops; - host->dev.of_node =3D dev->of_node; if (!dev->of_node) host->bus_num =3D HSSPI_BUS_NUM; =20 diff --git a/drivers/spi/spi-bcm63xx.c b/drivers/spi/spi-bcm63xx.c index 4c549f166b0f..47266bb23a33 100644 --- a/drivers/spi/spi-bcm63xx.c +++ b/drivers/spi/spi-bcm63xx.c @@ -571,7 +571,6 @@ static int bcm63xx_spi_probe(struct platform_device *pd= ev) goto out_err; } =20 - host->dev.of_node =3D dev->of_node; host->bus_num =3D bus_num; host->num_chipselect =3D num_cs; host->transfer_one_message =3D bcm63xx_spi_transfer_one; diff --git a/drivers/spi/spi-bcmbca-hsspi.c b/drivers/spi/spi-bcmbca-hsspi.c index f16298b75236..ece22260f570 100644 --- a/drivers/spi/spi-bcmbca-hsspi.c +++ b/drivers/spi/spi-bcmbca-hsspi.c @@ -500,7 +500,6 @@ static int bcmbca_hsspi_probe(struct platform_device *p= dev) mutex_init(&bs->msg_mutex); init_completion(&bs->done); =20 - host->dev.of_node =3D dev->of_node; if (!dev->of_node) host->bus_num =3D HSSPI_BUS_NUM; =20 diff --git a/drivers/spi/spi-cadence-quadspi.c b/drivers/spi/spi-cadence-qu= adspi.c index b1cf182d6566..791015abafee 100644 --- a/drivers/spi/spi-cadence-quadspi.c +++ b/drivers/spi/spi-cadence-quadspi.c @@ -1827,7 +1827,6 @@ static int cqspi_probe(struct platform_device *pdev) host->mode_bits =3D SPI_RX_QUAD | SPI_RX_DUAL; host->mem_ops =3D &cqspi_mem_ops; host->mem_caps =3D &cqspi_mem_caps; - host->dev.of_node =3D pdev->dev.of_node; =20 cqspi =3D spi_controller_get_devdata(host); =20 diff --git a/drivers/spi/spi-cadence-xspi.c b/drivers/spi/spi-cadence-xspi.c index c4ab6b2fb43f..72384d90d113 100644 --- a/drivers/spi/spi-cadence-xspi.c +++ b/drivers/spi/spi-cadence-xspi.c @@ -1157,7 +1157,6 @@ static int cdns_xspi_probe(struct platform_device *pd= ev) cdns_xspi->sdma_handler =3D &cdns_xspi_sdma_handle; cdns_xspi->set_interrupts_handler =3D &cdns_xspi_set_interrupts; } - host->dev.of_node =3D pdev->dev.of_node; host->bus_num =3D -1; =20 platform_set_drvdata(pdev, host); diff --git a/drivers/spi/spi-cadence.c b/drivers/spi/spi-cadence.c index 47054da630d0..6cac015cfb5b 100644 --- a/drivers/spi/spi-cadence.c +++ b/drivers/spi/spi-cadence.c @@ -651,7 +651,6 @@ static int cdns_spi_probe(struct platform_device *pdev) return -ENOMEM; =20 xspi =3D spi_controller_get_devdata(ctlr); - ctlr->dev.of_node =3D pdev->dev.of_node; platform_set_drvdata(pdev, ctlr); =20 xspi->regs =3D devm_platform_ioremap_resource(pdev, 0); diff --git a/drivers/spi/spi-cavium-octeon.c b/drivers/spi/spi-cavium-octeo= n.c index a5ad90d66ec0..155085a053a1 100644 --- a/drivers/spi/spi-cavium-octeon.c +++ b/drivers/spi/spi-cavium-octeon.c @@ -54,7 +54,6 @@ static int octeon_spi_probe(struct platform_device *pdev) host->bits_per_word_mask =3D SPI_BPW_MASK(8); host->max_speed_hz =3D OCTEON_SPI_MAX_CLOCK_HZ; =20 - host->dev.of_node =3D pdev->dev.of_node; err =3D devm_spi_register_controller(&pdev->dev, host); if (err) { dev_err(&pdev->dev, "register host failed: %d\n", err); diff --git a/drivers/spi/spi-cavium-thunderx.c b/drivers/spi/spi-cavium-thu= nderx.c index 367ae7120bb3..99aac40a1bba 100644 --- a/drivers/spi/spi-cavium-thunderx.c +++ b/drivers/spi/spi-cavium-thunderx.c @@ -67,7 +67,6 @@ static int thunderx_spi_probe(struct pci_dev *pdev, host->transfer_one_message =3D octeon_spi_transfer_one_message; host->bits_per_word_mask =3D SPI_BPW_MASK(8); host->max_speed_hz =3D OCTEON_SPI_MAX_CLOCK_HZ; - host->dev.of_node =3D pdev->dev.of_node; =20 pci_set_drvdata(pdev, host); =20 diff --git a/drivers/spi/spi-clps711x.c b/drivers/spi/spi-clps711x.c index 5552ccd716fc..d6458e59d41b 100644 --- a/drivers/spi/spi-clps711x.c +++ b/drivers/spi/spi-clps711x.c @@ -107,7 +107,6 @@ static int spi_clps711x_probe(struct platform_device *p= dev) host->bus_num =3D -1; host->mode_bits =3D SPI_CPHA | SPI_CS_HIGH; host->bits_per_word_mask =3D SPI_BPW_RANGE_MASK(1, 8); - host->dev.of_node =3D pdev->dev.of_node; host->prepare_message =3D spi_clps711x_prepare_message; host->transfer_one =3D spi_clps711x_transfer_one; =20 diff --git a/drivers/spi/spi-davinci.c b/drivers/spi/spi-davinci.c index 21a14e800eed..d680142a059f 100644 --- a/drivers/spi/spi-davinci.c +++ b/drivers/spi/spi-davinci.c @@ -988,7 +988,6 @@ static int davinci_spi_probe(struct platform_device *pd= ev) } =20 host->use_gpio_descriptors =3D true; - host->dev.of_node =3D pdev->dev.of_node; host->bus_num =3D pdev->id; host->num_chipselect =3D pdata->num_chipselect; host->bits_per_word_mask =3D SPI_BPW_RANGE_MASK(2, 16); diff --git a/drivers/spi/spi-falcon.c b/drivers/spi/spi-falcon.c index faa893f83dc5..cb15faabd88f 100644 --- a/drivers/spi/spi-falcon.c +++ b/drivers/spi/spi-falcon.c @@ -405,7 +405,6 @@ static int falcon_sflash_probe(struct platform_device *= pdev) host->flags =3D SPI_CONTROLLER_HALF_DUPLEX; host->setup =3D falcon_sflash_setup; host->transfer_one_message =3D falcon_sflash_xfer_one; - host->dev.of_node =3D pdev->dev.of_node; =20 ret =3D devm_spi_register_controller(&pdev->dev, host); if (ret) diff --git a/drivers/spi/spi-fsl-dspi.c b/drivers/spi/spi-fsl-dspi.c index 83ea296597e9..76f142a54254 100644 --- a/drivers/spi/spi-fsl-dspi.c +++ b/drivers/spi/spi-fsl-dspi.c @@ -1555,7 +1555,6 @@ static int dspi_probe(struct platform_device *pdev) =20 ctlr->setup =3D dspi_setup; ctlr->transfer_one_message =3D dspi_transfer_one_message; - ctlr->dev.of_node =3D pdev->dev.of_node; =20 ctlr->cleanup =3D dspi_cleanup; ctlr->target_abort =3D dspi_target_abort; diff --git a/drivers/spi/spi-fsl-espi.c b/drivers/spi/spi-fsl-espi.c index f2f1d3298e6c..b06555a457f8 100644 --- a/drivers/spi/spi-fsl-espi.c +++ b/drivers/spi/spi-fsl-espi.c @@ -675,7 +675,6 @@ static int fsl_espi_probe(struct device *dev, struct re= source *mem, =20 host->mode_bits =3D SPI_RX_DUAL | SPI_CPOL | SPI_CPHA | SPI_CS_HIGH | SPI_LSB_FIRST | SPI_LOOP; - host->dev.of_node =3D dev->of_node; host->bits_per_word_mask =3D SPI_BPW_RANGE_MASK(4, 16); host->setup =3D fsl_espi_setup; host->cleanup =3D fsl_espi_cleanup; diff --git a/drivers/spi/spi-fsl-lib.c b/drivers/spi/spi-fsl-lib.c index bb7a625db5b0..1f8960f15483 100644 --- a/drivers/spi/spi-fsl-lib.c +++ b/drivers/spi/spi-fsl-lib.c @@ -91,7 +91,6 @@ void mpc8xxx_spi_probe(struct device *dev, struct resourc= e *mem, ctlr->mode_bits =3D SPI_CPOL | SPI_CPHA | SPI_CS_HIGH | SPI_LSB_FIRST | SPI_LOOP; =20 - ctlr->dev.of_node =3D dev->of_node; =20 mpc8xxx_spi =3D spi_controller_get_devdata(ctlr); mpc8xxx_spi->dev =3D dev; diff --git a/drivers/spi/spi-fsl-lpspi.c b/drivers/spi/spi-fsl-lpspi.c index 8f45ead23836..6c692568bdf5 100644 --- a/drivers/spi/spi-fsl-lpspi.c +++ b/drivers/spi/spi-fsl-lpspi.c @@ -949,7 +949,6 @@ static int fsl_lpspi_probe(struct platform_device *pdev) controller->unprepare_transfer_hardware =3D lpspi_unprepare_xfer_hardware; controller->mode_bits =3D SPI_CPOL | SPI_CPHA | SPI_CS_HIGH; controller->flags =3D SPI_CONTROLLER_MUST_RX | SPI_CONTROLLER_MUST_TX; - controller->dev.of_node =3D pdev->dev.of_node; controller->bus_num =3D pdev->id; controller->num_chipselect =3D num_cs; controller->target_abort =3D fsl_lpspi_target_abort; diff --git a/drivers/spi/spi-geni-qcom.c b/drivers/spi/spi-geni-qcom.c index 5cca356cb673..0e5fd9df1a8f 100644 --- a/drivers/spi/spi-geni-qcom.c +++ b/drivers/spi/spi-geni-qcom.c @@ -1057,7 +1057,6 @@ static int spi_geni_probe(struct platform_device *pde= v) } =20 spi->bus_num =3D -1; - spi->dev.of_node =3D dev->of_node; spi->mode_bits =3D SPI_CPOL | SPI_CPHA | SPI_LOOP | SPI_CS_HIGH; spi->bits_per_word_mask =3D SPI_BPW_RANGE_MASK(4, 32); spi->num_chipselect =3D 4; diff --git a/drivers/spi/spi-gxp.c b/drivers/spi/spi-gxp.c index 3aff5a166c94..97d2420108c0 100644 --- a/drivers/spi/spi-gxp.c +++ b/drivers/spi/spi-gxp.c @@ -284,7 +284,6 @@ static int gxp_spifi_probe(struct platform_device *pdev) ctlr->mem_ops =3D &gxp_spi_mem_ops; ctlr->setup =3D gxp_spi_setup; ctlr->num_chipselect =3D data->max_cs; - ctlr->dev.of_node =3D dev->of_node; =20 ret =3D devm_spi_register_controller(dev, ctlr); if (ret) { diff --git a/drivers/spi/spi-img-spfi.c b/drivers/spi/spi-img-spfi.c index 168ccf51f6d4..902fb64815c9 100644 --- a/drivers/spi/spi-img-spfi.c +++ b/drivers/spi/spi-img-spfi.c @@ -587,7 +587,6 @@ static int img_spfi_probe(struct platform_device *pdev) host->mode_bits =3D SPI_CPOL | SPI_CPHA | SPI_TX_DUAL | SPI_RX_DUAL; if (of_property_read_bool(spfi->dev->of_node, "img,supports-quad-mode")) host->mode_bits |=3D SPI_TX_QUAD | SPI_RX_QUAD; - host->dev.of_node =3D pdev->dev.of_node; host->bits_per_word_mask =3D SPI_BPW_MASK(32) | SPI_BPW_MASK(8); host->max_speed_hz =3D clk_get_rate(spfi->spfi_clk) / 4; host->min_speed_hz =3D clk_get_rate(spfi->spfi_clk) / 512; diff --git a/drivers/spi/spi-imx.c b/drivers/spi/spi-imx.c index 69c288c8c737..f65c0bf11a73 100644 --- a/drivers/spi/spi-imx.c +++ b/drivers/spi/spi-imx.c @@ -2368,7 +2368,6 @@ static int spi_imx_probe(struct platform_device *pdev) =20 spi_imx->devtype_data->intctrl(spi_imx, 0); =20 - controller->dev.of_node =3D pdev->dev.of_node; ret =3D spi_register_controller(controller); if (ret) { dev_err_probe(&pdev->dev, ret, "register controller failed\n"); diff --git a/drivers/spi/spi-ingenic.c b/drivers/spi/spi-ingenic.c index 318b0768701e..adcf85bccbcc 100644 --- a/drivers/spi/spi-ingenic.c +++ b/drivers/spi/spi-ingenic.c @@ -442,7 +442,6 @@ static int spi_ingenic_probe(struct platform_device *pd= ev) ctlr->use_gpio_descriptors =3D true; ctlr->max_native_cs =3D pdata->max_native_cs; ctlr->num_chipselect =3D num_cs; - ctlr->dev.of_node =3D pdev->dev.of_node; =20 if (spi_ingenic_request_dma(ctlr, dev)) dev_warn(dev, "DMA not available.\n"); diff --git a/drivers/spi/spi-lantiq-ssc.c b/drivers/spi/spi-lantiq-ssc.c index 60849e07f674..f83cb63c9d0c 100644 --- a/drivers/spi/spi-lantiq-ssc.c +++ b/drivers/spi/spi-lantiq-ssc.c @@ -962,7 +962,6 @@ static int lantiq_ssc_probe(struct platform_device *pde= v) spi->bits_per_word =3D 8; spi->speed_hz =3D 0; =20 - host->dev.of_node =3D pdev->dev.of_node; host->num_chipselect =3D num_cs; host->use_gpio_descriptors =3D true; host->setup =3D lantiq_ssc_setup; diff --git a/drivers/spi/spi-lp8841-rtc.c b/drivers/spi/spi-lp8841-rtc.c index 382e2a69f7a7..e466866d5e80 100644 --- a/drivers/spi/spi-lp8841-rtc.c +++ b/drivers/spi/spi-lp8841-rtc.c @@ -200,7 +200,6 @@ spi_lp8841_rtc_probe(struct platform_device *pdev) host->transfer_one =3D spi_lp8841_rtc_transfer_one; host->bits_per_word_mask =3D SPI_BPW_MASK(8); #ifdef CONFIG_OF - host->dev.of_node =3D pdev->dev.of_node; #endif =20 data =3D spi_controller_get_devdata(host); diff --git a/drivers/spi/spi-meson-spicc.c b/drivers/spi/spi-meson-spicc.c index 6b9137307533..a7001b9e36e6 100644 --- a/drivers/spi/spi-meson-spicc.c +++ b/drivers/spi/spi-meson-spicc.c @@ -1054,7 +1054,6 @@ static int meson_spicc_probe(struct platform_device *= pdev) device_reset_optional(&pdev->dev); =20 host->num_chipselect =3D 4; - host->dev.of_node =3D pdev->dev.of_node; host->mode_bits =3D SPI_CPHA | SPI_CPOL | SPI_CS_HIGH | SPI_LOOP; host->flags =3D (SPI_CONTROLLER_MUST_RX | SPI_CONTROLLER_MUST_TX); host->min_speed_hz =3D spicc->data->min_speed_hz; diff --git a/drivers/spi/spi-meson-spifc.c b/drivers/spi/spi-meson-spifc.c index ef7efeaeee97..b818950a8cb7 100644 --- a/drivers/spi/spi-meson-spifc.c +++ b/drivers/spi/spi-meson-spifc.c @@ -322,7 +322,6 @@ static int meson_spifc_probe(struct platform_device *pd= ev) rate =3D clk_get_rate(spifc->clk); =20 host->num_chipselect =3D 1; - host->dev.of_node =3D pdev->dev.of_node; host->bits_per_word_mask =3D SPI_BPW_MASK(8); host->auto_runtime_pm =3D true; host->transfer_one =3D meson_spifc_transfer_one; diff --git a/drivers/spi/spi-microchip-core-spi.c b/drivers/spi/spi-microch= ip-core-spi.c index c8ebb58e0369..a4c128ae391b 100644 --- a/drivers/spi/spi-microchip-core-spi.c +++ b/drivers/spi/spi-microchip-core-spi.c @@ -360,7 +360,6 @@ static int mchp_corespi_probe(struct platform_device *p= dev) host->bits_per_word_mask =3D SPI_BPW_RANGE_MASK(4, 32); host->transfer_one =3D mchp_corespi_transfer_one; host->set_cs =3D mchp_corespi_set_cs; - host->dev.of_node =3D dev->of_node; =20 ret =3D of_property_read_u32(dev->of_node, "fifo-depth", &spi->fifo_depth= ); if (ret) diff --git a/drivers/spi/spi-mpc52xx.c b/drivers/spi/spi-mpc52xx.c index 6d4dde15ac54..14188a6ba5a1 100644 --- a/drivers/spi/spi-mpc52xx.c +++ b/drivers/spi/spi-mpc52xx.c @@ -430,7 +430,6 @@ static int mpc52xx_spi_probe(struct platform_device *op) host->transfer =3D mpc52xx_spi_transfer; host->mode_bits =3D SPI_CPOL | SPI_CPHA | SPI_LSB_FIRST; host->bits_per_word_mask =3D SPI_BPW_MASK(8); - host->dev.of_node =3D op->dev.of_node; =20 platform_set_drvdata(op, host); =20 diff --git a/drivers/spi/spi-mpfs.c b/drivers/spi/spi-mpfs.c index 7e9e64d8e6c8..64d15a6188ac 100644 --- a/drivers/spi/spi-mpfs.c +++ b/drivers/spi/spi-mpfs.c @@ -550,7 +550,6 @@ static int mpfs_spi_probe(struct platform_device *pdev) host->transfer_one =3D mpfs_spi_transfer_one; host->prepare_message =3D mpfs_spi_prepare_message; host->set_cs =3D mpfs_spi_set_cs; - host->dev.of_node =3D pdev->dev.of_node; =20 spi =3D spi_controller_get_devdata(host); =20 diff --git a/drivers/spi/spi-mt65xx.c b/drivers/spi/spi-mt65xx.c index 90e5813cfdc3..0368a26bca9a 100644 --- a/drivers/spi/spi-mt65xx.c +++ b/drivers/spi/spi-mt65xx.c @@ -1184,7 +1184,6 @@ static int mtk_spi_probe(struct platform_device *pdev) return -ENOMEM; =20 host->auto_runtime_pm =3D true; - host->dev.of_node =3D dev->of_node; host->mode_bits =3D SPI_CPOL | SPI_CPHA | SPI_LSB_FIRST; =20 host->set_cs =3D mtk_spi_set_cs; diff --git a/drivers/spi/spi-mt7621.c b/drivers/spi/spi-mt7621.c index 3770b8e096a4..bbedfad2ccae 100644 --- a/drivers/spi/spi-mt7621.c +++ b/drivers/spi/spi-mt7621.c @@ -348,7 +348,6 @@ static int mt7621_spi_probe(struct platform_device *pde= v) host->set_cs =3D mt7621_spi_set_native_cs; host->transfer_one =3D mt7621_spi_transfer_one; host->bits_per_word_mask =3D SPI_BPW_MASK(8); - host->dev.of_node =3D pdev->dev.of_node; host->max_native_cs =3D MT7621_NATIVE_CS_COUNT; host->num_chipselect =3D MT7621_NATIVE_CS_COUNT; host->use_gpio_descriptors =3D true; diff --git a/drivers/spi/spi-mtk-nor.c b/drivers/spi/spi-mtk-nor.c index 5cc4632e13d7..1e5ec0840174 100644 --- a/drivers/spi/spi-mtk-nor.c +++ b/drivers/spi/spi-mtk-nor.c @@ -851,7 +851,6 @@ static int mtk_nor_probe(struct platform_device *pdev) } =20 ctlr->bits_per_word_mask =3D SPI_BPW_MASK(8); - ctlr->dev.of_node =3D pdev->dev.of_node; ctlr->max_message_size =3D mtk_max_msg_size; ctlr->mem_ops =3D &mtk_nor_mem_ops; ctlr->mode_bits =3D SPI_RX_DUAL | SPI_RX_QUAD | SPI_TX_DUAL | SPI_TX_QUAD; diff --git a/drivers/spi/spi-mtk-snfi.c b/drivers/spi/spi-mtk-snfi.c index ae38c244e258..7f7d0dfec743 100644 --- a/drivers/spi/spi-mtk-snfi.c +++ b/drivers/spi/spi-mtk-snfi.c @@ -1448,7 +1448,6 @@ static int mtk_snand_probe(struct platform_device *pd= ev) ctlr->mem_caps =3D &mtk_snand_mem_caps; ctlr->bits_per_word_mask =3D SPI_BPW_MASK(8); ctlr->mode_bits =3D SPI_RX_DUAL | SPI_RX_QUAD | SPI_TX_DUAL | SPI_TX_QUAD; - ctlr->dev.of_node =3D pdev->dev.of_node; ret =3D spi_register_controller(ctlr); if (ret) { dev_err(&pdev->dev, "spi_register_controller failed.\n"); diff --git a/drivers/spi/spi-mux.c b/drivers/spi/spi-mux.c index 0eb35c4e3987..bd122de152c0 100644 --- a/drivers/spi/spi-mux.c +++ b/drivers/spi/spi-mux.c @@ -161,7 +161,6 @@ static int spi_mux_probe(struct spi_device *spi) ctlr->setup =3D spi_mux_setup; ctlr->num_chipselect =3D mux_control_states(priv->mux); ctlr->bus_num =3D -1; - ctlr->dev.of_node =3D spi->dev.of_node; ctlr->must_async =3D true; ctlr->defer_optimize_message =3D true; =20 diff --git a/drivers/spi/spi-mxic.c b/drivers/spi/spi-mxic.c index eeaea6a5e310..f9369c69911c 100644 --- a/drivers/spi/spi-mxic.c +++ b/drivers/spi/spi-mxic.c @@ -768,7 +768,6 @@ static int mxic_spi_probe(struct platform_device *pdev) mxic =3D spi_controller_get_devdata(host); mxic->dev =3D &pdev->dev; =20 - host->dev.of_node =3D pdev->dev.of_node; =20 mxic->ps_clk =3D devm_clk_get(&pdev->dev, "ps_clk"); if (IS_ERR(mxic->ps_clk)) diff --git a/drivers/spi/spi-npcm-fiu.c b/drivers/spi/spi-npcm-fiu.c index cccd17f24775..3961b0ccdb4b 100644 --- a/drivers/spi/spi-npcm-fiu.c +++ b/drivers/spi/spi-npcm-fiu.c @@ -746,7 +746,6 @@ static int npcm_fiu_probe(struct platform_device *pdev) ctrl->bus_num =3D -1; ctrl->mem_ops =3D &npcm_fiu_mem_ops; ctrl->num_chipselect =3D fiu->info->max_cs; - ctrl->dev.of_node =3D dev->of_node; =20 return devm_spi_register_controller(dev, ctrl); } diff --git a/drivers/spi/spi-npcm-pspi.c b/drivers/spi/spi-npcm-pspi.c index 98b6479b961c..e60b3cc398ec 100644 --- a/drivers/spi/spi-npcm-pspi.c +++ b/drivers/spi/spi-npcm-pspi.c @@ -401,7 +401,6 @@ static int npcm_pspi_probe(struct platform_device *pdev) host->max_speed_hz =3D DIV_ROUND_UP(clk_hz, NPCM_PSPI_MIN_CLK_DIVIDER); host->min_speed_hz =3D DIV_ROUND_UP(clk_hz, NPCM_PSPI_MAX_CLK_DIVIDER); host->mode_bits =3D SPI_CPHA | SPI_CPOL; - host->dev.of_node =3D pdev->dev.of_node; host->bus_num =3D -1; host->bits_per_word_mask =3D SPI_BPW_MASK(8) | SPI_BPW_MASK(16); host->transfer_one =3D npcm_pspi_transfer_one; diff --git a/drivers/spi/spi-nxp-xspi.c b/drivers/spi/spi-nxp-xspi.c index 25339492bf3a..06fcdf22990b 100644 --- a/drivers/spi/spi-nxp-xspi.c +++ b/drivers/spi/spi-nxp-xspi.c @@ -1290,7 +1290,6 @@ static int nxp_xspi_probe(struct platform_device *pde= v) ctlr->num_chipselect =3D NXP_XSPI_MAX_CHIPSELECT; ctlr->mem_ops =3D &nxp_xspi_mem_ops; ctlr->mem_caps =3D &nxp_xspi_mem_caps; - ctlr->dev.of_node =3D dev->of_node; =20 return devm_spi_register_controller(dev, ctlr); } diff --git a/drivers/spi/spi-oc-tiny.c b/drivers/spi/spi-oc-tiny.c index cba229920357..29333b1f82d7 100644 --- a/drivers/spi/spi-oc-tiny.c +++ b/drivers/spi/spi-oc-tiny.c @@ -192,7 +192,6 @@ static int tiny_spi_of_probe(struct platform_device *pd= ev) =20 if (!np) return 0; - hw->bitbang.ctlr->dev.of_node =3D pdev->dev.of_node; if (!of_property_read_u32(np, "clock-frequency", &val)) hw->freq =3D val; if (!of_property_read_u32(np, "baud-width", &val)) diff --git a/drivers/spi/spi-orion.c b/drivers/spi/spi-orion.c index 43bd9f21137f..7a2186b51b4c 100644 --- a/drivers/spi/spi-orion.c +++ b/drivers/spi/spi-orion.c @@ -780,7 +780,6 @@ static int orion_spi_probe(struct platform_device *pdev) if (status < 0) goto out_rel_pm; =20 - host->dev.of_node =3D pdev->dev.of_node; status =3D spi_register_controller(host); if (status < 0) goto out_rel_pm; diff --git a/drivers/spi/spi-pl022.c b/drivers/spi/spi-pl022.c index 9e56e8774614..c32a1fba31ef 100644 --- a/drivers/spi/spi-pl022.c +++ b/drivers/spi/spi-pl022.c @@ -1893,7 +1893,6 @@ static int pl022_probe(struct amba_device *adev, cons= t struct amba_id *id) host->handle_err =3D pl022_handle_err; host->unprepare_transfer_hardware =3D pl022_unprepare_transfer_hardware; host->rt =3D platform_info->rt; - host->dev.of_node =3D dev->of_node; host->use_gpio_descriptors =3D true; =20 /* diff --git a/drivers/spi/spi-qcom-qspi.c b/drivers/spi/spi-qcom-qspi.c index 3aeddada58e1..7e39038160e0 100644 --- a/drivers/spi/spi-qcom-qspi.c +++ b/drivers/spi/spi-qcom-qspi.c @@ -763,7 +763,6 @@ static int qcom_qspi_probe(struct platform_device *pdev) host->dma_alignment =3D QSPI_ALIGN_REQ; host->num_chipselect =3D QSPI_NUM_CS; host->bus_num =3D -1; - host->dev.of_node =3D pdev->dev.of_node; host->mode_bits =3D SPI_MODE_0 | SPI_TX_DUAL | SPI_RX_DUAL | SPI_TX_QUAD | SPI_RX_QUAD; diff --git a/drivers/spi/spi-qpic-snand.c b/drivers/spi/spi-qpic-snand.c index 0334ba738bef..d7fef48f20ef 100644 --- a/drivers/spi/spi-qpic-snand.c +++ b/drivers/spi/spi-qpic-snand.c @@ -1583,7 +1583,6 @@ static int qcom_spi_probe(struct platform_device *pde= v) ctlr->num_chipselect =3D QPIC_QSPI_NUM_CS; ctlr->mem_ops =3D &qcom_spi_mem_ops; ctlr->mem_caps =3D &qcom_spi_mem_caps; - ctlr->dev.of_node =3D pdev->dev.of_node; ctlr->mode_bits =3D SPI_TX_DUAL | SPI_RX_DUAL | SPI_TX_QUAD | SPI_RX_QUAD; =20 diff --git a/drivers/spi/spi-qup.c b/drivers/spi/spi-qup.c index 7d647edf6bc3..6cbdcd060e8c 100644 --- a/drivers/spi/spi-qup.c +++ b/drivers/spi/spi-qup.c @@ -1091,7 +1091,6 @@ static int spi_qup_probe(struct platform_device *pdev) host->bits_per_word_mask =3D SPI_BPW_RANGE_MASK(4, 32); host->max_speed_hz =3D max_freq; host->transfer_one =3D spi_qup_transfer_one; - host->dev.of_node =3D pdev->dev.of_node; host->auto_runtime_pm =3D true; host->dma_alignment =3D dma_get_cache_alignment(); host->max_dma_len =3D SPI_MAX_XFER; diff --git a/drivers/spi/spi-rb4xx.c b/drivers/spi/spi-rb4xx.c index 22b86fc89132..7b944f2819ec 100644 --- a/drivers/spi/spi-rb4xx.c +++ b/drivers/spi/spi-rb4xx.c @@ -160,7 +160,6 @@ static int rb4xx_spi_probe(struct platform_device *pdev) if (IS_ERR(ahb_clk)) return PTR_ERR(ahb_clk); =20 - host->dev.of_node =3D pdev->dev.of_node; host->bus_num =3D 0; host->num_chipselect =3D 3; host->mode_bits =3D SPI_TX_DUAL; diff --git a/drivers/spi/spi-realtek-rtl.c b/drivers/spi/spi-realtek-rtl.c index 0b0123e20b54..d7acc02105ca 100644 --- a/drivers/spi/spi-realtek-rtl.c +++ b/drivers/spi/spi-realtek-rtl.c @@ -169,7 +169,6 @@ static int realtek_rtl_spi_probe(struct platform_device= *pdev) =20 init_hw(rtspi); =20 - ctrl->dev.of_node =3D pdev->dev.of_node; ctrl->flags =3D SPI_CONTROLLER_HALF_DUPLEX; ctrl->set_cs =3D rt_set_cs; ctrl->transfer_one =3D transfer_one; diff --git a/drivers/spi/spi-rockchip-sfc.c b/drivers/spi/spi-rockchip-sfc.c index b3c2b03b1153..2990bf85ee47 100644 --- a/drivers/spi/spi-rockchip-sfc.c +++ b/drivers/spi/spi-rockchip-sfc.c @@ -622,7 +622,6 @@ static int rockchip_sfc_probe(struct platform_device *p= dev) host->flags =3D SPI_CONTROLLER_HALF_DUPLEX; host->mem_ops =3D &rockchip_sfc_mem_ops; host->mem_caps =3D &rockchip_sfc_mem_caps; - host->dev.of_node =3D pdev->dev.of_node; host->mode_bits =3D SPI_TX_QUAD | SPI_TX_DUAL | SPI_RX_QUAD | SPI_RX_DUAL; host->max_speed_hz =3D SFC_MAX_SPEED; host->num_chipselect =3D SFC_MAX_CHIPSELECT_NUM; diff --git a/drivers/spi/spi-rockchip.c b/drivers/spi/spi-rockchip.c index 1a6381de6f33..3ab3f43a80d5 100644 --- a/drivers/spi/spi-rockchip.c +++ b/drivers/spi/spi-rockchip.c @@ -858,7 +858,6 @@ static int rockchip_spi_probe(struct platform_device *p= dev) ctlr->num_chipselect =3D num_cs; ctlr->use_gpio_descriptors =3D true; } - ctlr->dev.of_node =3D pdev->dev.of_node; ctlr->bits_per_word_mask =3D SPI_BPW_MASK(16) | SPI_BPW_MASK(8) | SPI_BPW= _MASK(4); ctlr->min_speed_hz =3D rs->freq / BAUDR_SCKDV_MAX; ctlr->max_speed_hz =3D min(rs->freq / BAUDR_SCKDV_MIN, MAX_SCLK_OUT); diff --git a/drivers/spi/spi-rspi.c b/drivers/spi/spi-rspi.c index 8e1d911b88b5..c739c1998b4c 100644 --- a/drivers/spi/spi-rspi.c +++ b/drivers/spi/spi-rspi.c @@ -1338,7 +1338,6 @@ static int rspi_probe(struct platform_device *pdev) ctlr->min_speed_hz =3D DIV_ROUND_UP(clksrc, ops->max_div); ctlr->max_speed_hz =3D DIV_ROUND_UP(clksrc, ops->min_div); ctlr->flags =3D ops->flags; - ctlr->dev.of_node =3D pdev->dev.of_node; ctlr->use_gpio_descriptors =3D true; ctlr->max_native_cs =3D rspi->ops->num_hw_ss; =20 diff --git a/drivers/spi/spi-s3c64xx.c b/drivers/spi/spi-s3c64xx.c index aab36c779c06..4fbefd85d2e2 100644 --- a/drivers/spi/spi-s3c64xx.c +++ b/drivers/spi/spi-s3c64xx.c @@ -1295,7 +1295,6 @@ static int s3c64xx_spi_probe(struct platform_device *= pdev) sdd->tx_dma.direction =3D DMA_MEM_TO_DEV; sdd->rx_dma.direction =3D DMA_DEV_TO_MEM; =20 - host->dev.of_node =3D pdev->dev.of_node; host->bus_num =3D -1; host->setup =3D s3c64xx_spi_setup; host->cleanup =3D s3c64xx_spi_cleanup; diff --git a/drivers/spi/spi-sg2044-nor.c b/drivers/spi/spi-sg2044-nor.c index 37f1cfe10be4..f3bcb8a1b92b 100644 --- a/drivers/spi/spi-sg2044-nor.c +++ b/drivers/spi/spi-sg2044-nor.c @@ -455,7 +455,6 @@ static int sg2044_spifmc_probe(struct platform_device *= pdev) return PTR_ERR(spifmc->io_base); =20 ctrl->num_chipselect =3D 1; - ctrl->dev.of_node =3D pdev->dev.of_node; ctrl->bits_per_word_mask =3D SPI_BPW_MASK(8); ctrl->auto_runtime_pm =3D false; ctrl->mem_ops =3D &sg2044_spifmc_mem_ops; diff --git a/drivers/spi/spi-sh-hspi.c b/drivers/spi/spi-sh-hspi.c index 93017faeb7b5..e03eaca1b1a7 100644 --- a/drivers/spi/spi-sh-hspi.c +++ b/drivers/spi/spi-sh-hspi.c @@ -253,7 +253,6 @@ static int hspi_probe(struct platform_device *pdev) =20 ctlr->bus_num =3D pdev->id; ctlr->mode_bits =3D SPI_CPOL | SPI_CPHA; - ctlr->dev.of_node =3D pdev->dev.of_node; ctlr->auto_runtime_pm =3D true; ctlr->transfer_one_message =3D hspi_transfer_one_message; ctlr->bits_per_word_mask =3D SPI_BPW_MASK(8); diff --git a/drivers/spi/spi-sh-msiof.c b/drivers/spi/spi-sh-msiof.c index b695870fae8c..7f3e08810560 100644 --- a/drivers/spi/spi-sh-msiof.c +++ b/drivers/spi/spi-sh-msiof.c @@ -1276,7 +1276,6 @@ static int sh_msiof_spi_probe(struct platform_device = *pdev) ctlr->flags =3D chipdata->ctlr_flags; ctlr->bus_num =3D pdev->id; ctlr->num_chipselect =3D p->info->num_chipselect; - ctlr->dev.of_node =3D dev->of_node; ctlr->setup =3D sh_msiof_spi_setup; ctlr->prepare_message =3D sh_msiof_prepare_message; ctlr->target_abort =3D sh_msiof_target_abort; diff --git a/drivers/spi/spi-sifive.c b/drivers/spi/spi-sifive.c index 87bde2a207a3..6c7aba8befa0 100644 --- a/drivers/spi/spi-sifive.c +++ b/drivers/spi/spi-sifive.c @@ -368,7 +368,6 @@ static int sifive_spi_probe(struct platform_device *pde= v) } =20 /* Define our host */ - host->dev.of_node =3D pdev->dev.of_node; host->bus_num =3D pdev->id; host->num_chipselect =3D num_cs; host->mode_bits =3D SPI_CPHA | SPI_CPOL diff --git a/drivers/spi/spi-slave-mt27xx.c b/drivers/spi/spi-slave-mt27xx.c index e331df967385..ce889cb33228 100644 --- a/drivers/spi/spi-slave-mt27xx.c +++ b/drivers/spi/spi-slave-mt27xx.c @@ -395,7 +395,6 @@ static int mtk_spi_slave_probe(struct platform_device *= pdev) } =20 ctlr->auto_runtime_pm =3D true; - ctlr->dev.of_node =3D pdev->dev.of_node; ctlr->mode_bits =3D SPI_CPOL | SPI_CPHA; ctlr->mode_bits |=3D SPI_LSB_FIRST; =20 diff --git a/drivers/spi/spi-sn-f-ospi.c b/drivers/spi/spi-sn-f-ospi.c index c4969f66a0ba..bfcc140df810 100644 --- a/drivers/spi/spi-sn-f-ospi.c +++ b/drivers/spi/spi-sn-f-ospi.c @@ -628,7 +628,6 @@ static int f_ospi_probe(struct platform_device *pdev) return -ENOMEM; } ctlr->num_chipselect =3D num_cs; - ctlr->dev.of_node =3D dev->of_node; =20 ospi =3D spi_controller_get_devdata(ctlr); ospi->dev =3D dev; diff --git a/drivers/spi/spi-sprd-adi.c b/drivers/spi/spi-sprd-adi.c index 262c11d977ea..a05cc9a0a4ae 100644 --- a/drivers/spi/spi-sprd-adi.c +++ b/drivers/spi/spi-sprd-adi.c @@ -571,7 +571,6 @@ static int sprd_adi_probe(struct platform_device *pdev) if (sadi->data->wdg_rst) sadi->data->wdg_rst(sadi); =20 - ctlr->dev.of_node =3D pdev->dev.of_node; ctlr->bus_num =3D pdev->id; ctlr->num_chipselect =3D num_chipselect; ctlr->flags =3D SPI_CONTROLLER_HALF_DUPLEX; diff --git a/drivers/spi/spi-sprd.c b/drivers/spi/spi-sprd.c index ad75f5f0f2bf..0f9fc320363c 100644 --- a/drivers/spi/spi-sprd.c +++ b/drivers/spi/spi-sprd.c @@ -936,7 +936,6 @@ static int sprd_spi_probe(struct platform_device *pdev) =20 ss->phy_base =3D res->start; ss->dev =3D &pdev->dev; - sctlr->dev.of_node =3D pdev->dev.of_node; sctlr->mode_bits =3D SPI_CPOL | SPI_CPHA | SPI_3WIRE | SPI_TX_DUAL; sctlr->bus_num =3D pdev->id; sctlr->set_cs =3D sprd_spi_chipselect; diff --git a/drivers/spi/spi-stm32-ospi.c b/drivers/spi/spi-stm32-ospi.c index 58d8cec74c7b..c98afe02a1b6 100644 --- a/drivers/spi/spi-stm32-ospi.c +++ b/drivers/spi/spi-stm32-ospi.c @@ -942,7 +942,6 @@ static int stm32_ospi_probe(struct platform_device *pde= v) ctrl->use_gpio_descriptors =3D true; ctrl->transfer_one_message =3D stm32_ospi_transfer_one_message; ctrl->num_chipselect =3D STM32_OSPI_MAX_NORCHIP; - ctrl->dev.of_node =3D dev->of_node; =20 pm_runtime_enable(ospi->dev); pm_runtime_set_autosuspend_delay(ospi->dev, STM32_AUTOSUSPEND_DELAY); diff --git a/drivers/spi/spi-stm32-qspi.c b/drivers/spi/spi-stm32-qspi.c index 5354faef936a..df1bbacec90a 100644 --- a/drivers/spi/spi-stm32-qspi.c +++ b/drivers/spi/spi-stm32-qspi.c @@ -860,7 +860,6 @@ static int stm32_qspi_probe(struct platform_device *pde= v) ctrl->use_gpio_descriptors =3D true; ctrl->transfer_one_message =3D stm32_qspi_transfer_one_message; ctrl->num_chipselect =3D STM32_QSPI_MAX_NORCHIP; - ctrl->dev.of_node =3D dev->of_node; =20 pm_runtime_set_autosuspend_delay(dev, STM32_AUTOSUSPEND_DELAY); pm_runtime_use_autosuspend(dev); diff --git a/drivers/spi/spi-stm32.c b/drivers/spi/spi-stm32.c index 5c1e685a65d9..b99de8c4cc99 100644 --- a/drivers/spi/spi-stm32.c +++ b/drivers/spi/spi-stm32.c @@ -2464,7 +2464,6 @@ static int stm32_spi_probe(struct platform_device *pd= ev) goto err_clk_disable; } =20 - ctrl->dev.of_node =3D pdev->dev.of_node; ctrl->auto_runtime_pm =3D true; ctrl->bus_num =3D pdev->id; ctrl->mode_bits =3D SPI_CPHA | SPI_CPOL | SPI_CS_HIGH | SPI_LSB_FIRST | diff --git a/drivers/spi/spi-sun4i.c b/drivers/spi/spi-sun4i.c index aa92fd5a35a9..bfdf419a583c 100644 --- a/drivers/spi/spi-sun4i.c +++ b/drivers/spi/spi-sun4i.c @@ -471,7 +471,6 @@ static int sun4i_spi_probe(struct platform_device *pdev) host->num_chipselect =3D 4; host->mode_bits =3D SPI_CPOL | SPI_CPHA | SPI_CS_HIGH | SPI_LSB_FIRST; host->bits_per_word_mask =3D SPI_BPW_MASK(8); - host->dev.of_node =3D pdev->dev.of_node; host->auto_runtime_pm =3D true; host->max_transfer_size =3D sun4i_spi_max_transfer_size; =20 diff --git a/drivers/spi/spi-sun6i.c b/drivers/spi/spi-sun6i.c index d1de6c99e762..240e46f84f7b 100644 --- a/drivers/spi/spi-sun6i.c +++ b/drivers/spi/spi-sun6i.c @@ -673,7 +673,6 @@ static int sun6i_spi_probe(struct platform_device *pdev) host->mode_bits =3D SPI_CPOL | SPI_CPHA | SPI_CS_HIGH | SPI_LSB_FIRST | sspi->cfg->mode_bits; host->bits_per_word_mask =3D SPI_BPW_MASK(8); - host->dev.of_node =3D pdev->dev.of_node; host->auto_runtime_pm =3D true; host->max_transfer_size =3D sun6i_spi_max_transfer_size; =20 diff --git a/drivers/spi/spi-tegra114.c b/drivers/spi/spi-tegra114.c index 795a8482c2c7..391823c3483f 100644 --- a/drivers/spi/spi-tegra114.c +++ b/drivers/spi/spi-tegra114.c @@ -1412,7 +1412,6 @@ static int tegra_spi_probe(struct platform_device *pd= ev) goto exit_pm_disable; } =20 - host->dev.of_node =3D pdev->dev.of_node; ret =3D devm_spi_register_controller(&pdev->dev, host); if (ret < 0) { dev_err(&pdev->dev, "can not register to host err %d\n", ret); diff --git a/drivers/spi/spi-tegra20-sflash.c b/drivers/spi/spi-tegra20-sfl= ash.c index d5c8ee20b8e5..d9d536d7f7b6 100644 --- a/drivers/spi/spi-tegra20-sflash.c +++ b/drivers/spi/spi-tegra20-sflash.c @@ -505,7 +505,6 @@ 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 - host->dev.of_node =3D pdev->dev.of_node; ret =3D devm_spi_register_controller(&pdev->dev, host); if (ret < 0) { dev_err(&pdev->dev, "can not register to host err %d\n", ret); diff --git a/drivers/spi/spi-tegra20-slink.c b/drivers/spi/spi-tegra20-slin= k.c index fe452d03c1ee..7d6f3fe8b7e3 100644 --- a/drivers/spi/spi-tegra20-slink.c +++ b/drivers/spi/spi-tegra20-slink.c @@ -1103,7 +1103,6 @@ static int tegra_slink_probe(struct platform_device *= pdev) tegra_slink_writel(tspi, tspi->def_command_reg, SLINK_COMMAND); tegra_slink_writel(tspi, tspi->def_command2_reg, SLINK_COMMAND2); =20 - host->dev.of_node =3D pdev->dev.of_node; ret =3D spi_register_controller(host); if (ret < 0) { dev_err(&pdev->dev, "can not register to host err %d\n", ret); diff --git a/drivers/spi/spi-tegra210-quad.c b/drivers/spi/spi-tegra210-qua= d.c index cdc3cb7c01f9..8b5f5ded7943 100644 --- a/drivers/spi/spi-tegra210-quad.c +++ b/drivers/spi/spi-tegra210-quad.c @@ -1743,7 +1743,6 @@ static int tegra_qspi_probe(struct platform_device *p= dev) goto exit_pm_disable; } =20 - host->dev.of_node =3D pdev->dev.of_node; ret =3D spi_register_controller(host); if (ret < 0) { dev_err(&pdev->dev, "failed to register host: %d\n", ret); diff --git a/drivers/spi/spi-ti-qspi.c b/drivers/spi/spi-ti-qspi.c index 0b7eaccbc797..d1d880a8ed7d 100644 --- a/drivers/spi/spi-ti-qspi.c +++ b/drivers/spi/spi-ti-qspi.c @@ -775,7 +775,6 @@ static int ti_qspi_probe(struct platform_device *pdev) host->setup =3D ti_qspi_setup; host->auto_runtime_pm =3D true; host->transfer_one_message =3D ti_qspi_start_transfer_one; - host->dev.of_node =3D pdev->dev.of_node; host->bits_per_word_mask =3D SPI_BPW_MASK(32) | SPI_BPW_MASK(16) | SPI_BPW_MASK(8); host->mem_ops =3D &ti_qspi_mem_ops; diff --git a/drivers/spi/spi-uniphier.c b/drivers/spi/spi-uniphier.c index ff2142f87277..9e1d364a6198 100644 --- a/drivers/spi/spi-uniphier.c +++ b/drivers/spi/spi-uniphier.c @@ -697,7 +697,6 @@ static int uniphier_spi_probe(struct platform_device *p= dev) host->max_speed_hz =3D DIV_ROUND_UP(clk_rate, SSI_MIN_CLK_DIVIDER); host->min_speed_hz =3D DIV_ROUND_UP(clk_rate, SSI_MAX_CLK_DIVIDER); host->mode_bits =3D SPI_CPOL | SPI_CPHA | SPI_CS_HIGH | SPI_LSB_FIRST; - host->dev.of_node =3D pdev->dev.of_node; host->bus_num =3D pdev->id; host->bits_per_word_mask =3D SPI_BPW_RANGE_MASK(1, 32); =20 diff --git a/drivers/spi/spi-wpcm-fiu.c b/drivers/spi/spi-wpcm-fiu.c index a9aee2a6c7dc..0e3ee5516587 100644 --- a/drivers/spi/spi-wpcm-fiu.c +++ b/drivers/spi/spi-wpcm-fiu.c @@ -471,7 +471,6 @@ static int wpcm_fiu_probe(struct platform_device *pdev) ctrl->bus_num =3D -1; ctrl->mem_ops =3D &wpcm_fiu_mem_ops; ctrl->num_chipselect =3D 4; - ctrl->dev.of_node =3D dev->of_node; =20 /* * The FIU doesn't include a clock divider, the clock is entirely diff --git a/drivers/spi/spi-xcomm.c b/drivers/spi/spi-xcomm.c index 33b78c537520..130a3d716dd4 100644 --- a/drivers/spi/spi-xcomm.c +++ b/drivers/spi/spi-xcomm.c @@ -260,7 +260,6 @@ static int spi_xcomm_probe(struct i2c_client *i2c) host->bits_per_word_mask =3D SPI_BPW_MASK(8); host->flags =3D SPI_CONTROLLER_HALF_DUPLEX; host->transfer_one_message =3D spi_xcomm_transfer_one; - host->dev.of_node =3D i2c->dev.of_node; =20 ret =3D devm_spi_register_controller(&i2c->dev, host); if (ret < 0) diff --git a/drivers/spi/spi-xilinx.c b/drivers/spi/spi-xilinx.c index c86dc56f38b4..7d8f5460bebf 100644 --- a/drivers/spi/spi-xilinx.c +++ b/drivers/spi/spi-xilinx.c @@ -447,7 +447,6 @@ static int xilinx_spi_probe(struct platform_device *pde= v) =20 host->bus_num =3D pdev->id; host->num_chipselect =3D num_cs; - host->dev.of_node =3D pdev->dev.of_node; =20 /* * Detect endianess on the IP via loop bit in CR. Detection diff --git a/drivers/spi/spi-xlp.c b/drivers/spi/spi-xlp.c index 2fec18b68449..be8bbe1cbba3 100644 --- a/drivers/spi/spi-xlp.c +++ b/drivers/spi/spi-xlp.c @@ -409,7 +409,6 @@ static int xlp_spi_probe(struct platform_device *pdev) host->mode_bits =3D SPI_CPOL | SPI_CPHA | SPI_CS_HIGH; host->setup =3D xlp_spi_setup; host->transfer_one =3D xlp_spi_transfer_one; - host->dev.of_node =3D pdev->dev.of_node; =20 init_completion(&xspi->done); spi_controller_set_devdata(host, xspi); diff --git a/drivers/spi/spi-xtensa-xtfpga.c b/drivers/spi/spi-xtensa-xtfpg= a.c index 1b54d8f9f5ec..71f0f176cfd9 100644 --- a/drivers/spi/spi-xtensa-xtfpga.c +++ b/drivers/spi/spi-xtensa-xtfpga.c @@ -90,7 +90,6 @@ static int xtfpga_spi_probe(struct platform_device *pdev) host->flags =3D SPI_CONTROLLER_NO_RX; host->bits_per_word_mask =3D SPI_BPW_RANGE_MASK(1, 16); host->bus_num =3D pdev->dev.id; - host->dev.of_node =3D pdev->dev.of_node; =20 xspi =3D spi_controller_get_devdata(host); xspi->bitbang.ctlr =3D host; --=20 2.50.1 From nobody Sun Feb 8 01:33:34 2026 Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.11]) (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 75CCC33EAE6; Mon, 12 Jan 2026 20:36:02 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=192.198.163.11 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768250164; cv=none; b=MC4h9QkT4dT/jwBkHLMVY50DjOVv+1tMRC8H64k9K+VASZ27tHRaO0LTFJRYtkUT46AwHm77wYl42vSkHXvQWLu+kx4MRjsPXxTBn+JocDOGtLQCvhMaObjlT7OXo+oSLlYnvcuFRRasp54hYp4F0IK0pYeHI6jwVzynPfed9PQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768250164; c=relaxed/simple; bh=gweGXKEQGc4/hwMnHXoXPIZG21hxC6IQVTr9HcEdhzU=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=g3JARpsHuQWiPGuoM9r27ggDt1iHdc/A5dyRieLKycwQpnDg5rapsY0AGOkLrueZgvYIuw/FcNQn77f+qc7rxswhJ50LpWz5+ka21dpJCeszgkG7c0zGvwu5SJLJUdQ8JL3GDPvXr9nRSp4hqT3YKLKSW/ZhCchk7pEOBTBlZ9A= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com; spf=pass smtp.mailfrom=linux.intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=Cj+TuGMc; arc=none smtp.client-ip=192.198.163.11 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="Cj+TuGMc" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1768250162; x=1799786162; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=gweGXKEQGc4/hwMnHXoXPIZG21hxC6IQVTr9HcEdhzU=; b=Cj+TuGMcKlX6OH8yAOfGX4ghj1T3/jhXJsFfkdU5acVz4CfKl/160Dau MN79Jvw5UcZnHbEEN8u91bBFIeMRGyrEu786G3ctu+Pn1f4K+GtfUH63x NfOMeqDMiDWob9pczqumL0kXB7tnKfOvVMyCBjC0hUqOBG9PQwDvN/suM uzH0bcigPLgDZOWpI+3EKcsJyRasnEZbyVRQSUUlJaF2+95ZuXrVY3SS4 Zy81HKu0sLVb6BiIeRM2PIKQSe2smGWUvwMkvmvU+FLsRcMoGNUkGLN0v SqpGg9sKIyZZe4EaK3gC159gPCrXyVm/jpr4AA/rFOi/6gqgePr7R4I6i A==; X-CSE-ConnectionGUID: qdu1Ct86TBWw+pArh1vPBQ== X-CSE-MsgGUID: qYcSUnBSSLudpPzmuXQf/A== X-IronPort-AV: E=McAfee;i="6800,10657,11669"; a="80173753" X-IronPort-AV: E=Sophos;i="6.21,221,1763452800"; d="scan'208";a="80173753" Received: from orviesa004.jf.intel.com ([10.64.159.144]) by fmvoesa105.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 12 Jan 2026 12:35:59 -0800 X-CSE-ConnectionGUID: V6kqdm86Qq2sA5nBwLqZCg== X-CSE-MsgGUID: 3iTyxoRSTjquGcvO61VDgQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.21,221,1763452800"; d="scan'208";a="208707611" Received: from black.igk.intel.com ([10.91.253.5]) by orviesa004.jf.intel.com with ESMTP; 12 Jan 2026 12:35:49 -0800 Received: by black.igk.intel.com (Postfix, from userid 1003) id 822B19B; Mon, 12 Jan 2026 21:35:37 +0100 (CET) From: Andy Shevchenko To: Mark Brown , Varshini Rajendran , Mikhail Kshevetskiy , AngeloGioacchino Del Regno , Haotian Zhang , Sunny Luo , Janne Grunau , Andy Shevchenko , Martin Blumenstingl , Geert Uytterhoeven , Chen-Yu Tsai , Amelie Delaunay , Chin-Ting Kuo , CL Wang , Patrice Chotard , Heiko Stuebner , William Zhang , =?UTF-8?q?C=C3=A9dric=20Le=20Goater?= , Manikandan Muralidharan , David Lechner , Florian Fainelli , Jonas Gorski , Hang Zhou <929513338@qq.com>, Jun Guo , Philipp Stanner , Charles Keepax , Bartosz Golaszewski , =?UTF-8?q?Beno=C3=AEt=20Monin?= , Shiji Yang , James Clark , Jonathan Marek , Carlos Song , Sakari Ailus , Huacai Chen , Xianwei Zhao , Prajna Rajendra Kumar , Sergio Perez Gonzalez , Qianfeng Rong , Haibo Chen , Gabor Juhos , Md Sadre Alam , Rosen Penev , Marek Szyprowski , Luis de Arquer , Cosmin Tanislav , Tudor Ambarus , Krzysztof Kozlowski , Longbin Li , Kunihiko Hayashi , =?UTF-8?q?Cl=C3=A9ment=20Le=20Goffic?= , Alessandro Grassi , Darshan R , Aaron Kling , Vishwaroop A , Haixu Cui , Darshan Rathod , linux-spi@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-amlogic@lists.infradead.org, asahi@lists.linux.dev, linux-aspeed@lists.ozlabs.org, openbmc@lists.ozlabs.org, linux-rpi-kernel@lists.infradead.org, linux-sound@vger.kernel.org, patches@opensource.cirrus.com, imx@lists.linux.dev, linux-arm-msm@vger.kernel.org, linux-riscv@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-rockchip@lists.infradead.org, linux-renesas-soc@vger.kernel.org, linux-samsung-soc@vger.kernel.org, linux-stm32@st-md-mailman.stormreply.com, linux-sunxi@lists.linux.dev, linux-tegra@vger.kernel.org, virtualization@lists.linux.dev Cc: Nicolas Ferre , Alexandre Belloni , Claudiu Beznea , Lorenzo Bianconi , Ray Liu , Sven Peter , Neal Gompa , Joel Stanley , Andrew Jeffery , Ryan Wanner , Michael Hennerich , =?UTF-8?q?Nuno=20S=C3=A1?= , Kamal Dasu , Broadcom internal kernel review list , Ray Jui , Scott Branden , Kursad Oney , Anand Gore , =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= , David Rhodes , Richard Fitzgerald , Vladimir Oltean , Frank Li , Jean-Marie Verdun , Nick Hawkins , Yang Shen , Shawn Guo , Sascha Hauer , Pengutronix Kernel Team , Fabio Estevam , Lixu Zhang , Yinbo Zhu , Neil Armstrong , Kevin Hilman , Jerome Brunet , Conor Dooley , Daire McNamara , Matthias Brugger , Avi Fishman , Tomer Maimon , Tali Perry , Patrick Venture , Nancy Yuen , Benjamin Fair , Han Xu , Yogesh Gaur , Linus Walleij , Daniel Mack , Haojian Zhuang , Robert Jarzmik , Chris Packham , Fabrizio Castro , Andi Shyti , Alim Akhtar , Paul Walmsley , Samuel Holland , Orson Zhai , Baolin Wang , Chunyan Zhang , Maxime Coquelin , Alexandre Torgue , Alain Volmat , Jernej Skrabec , Li-hao Kuo , Masahisa Kojima , Jassi Brar , Laxman Dewangan , Thierry Reding , Jonathan Hunter , Sowjanya Komatineni , Masami Hiramatsu , =?UTF-8?q?Jonathan=20Neusch=C3=A4fer?= , Michal Simek , Max Filippov Subject: [PATCH v2 3/4] spi: Drop duplicate fwnode assignment Date: Mon, 12 Jan 2026 21:21:25 +0100 Message-ID: <20260112203534.4186261-4-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20260112203534.4186261-1-andriy.shevchenko@linux.intel.com> References: <20260112203534.4186261-1-andriy.shevchenko@linux.intel.com> 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" The SPI core provides the default fwnode for the controller, inherited from the actual (parent) device. No need to repeat it in the driver. Signed-off-by: Andy Shevchenko Reviewed-by: Linus Walleij --- drivers/spi/spi-hisi-kunpeng.c | 1 - drivers/spi/spi-synquacer.c | 3 --- 2 files changed, 4 deletions(-) diff --git a/drivers/spi/spi-hisi-kunpeng.c b/drivers/spi/spi-hisi-kunpeng.c index dadf558dd9c0..afe51adcc507 100644 --- a/drivers/spi/spi-hisi-kunpeng.c +++ b/drivers/spi/spi-hisi-kunpeng.c @@ -497,7 +497,6 @@ static int hisi_spi_probe(struct platform_device *pdev) host->cleanup =3D hisi_spi_cleanup; host->transfer_one =3D hisi_spi_transfer_one; host->handle_err =3D hisi_spi_handle_err; - host->dev.fwnode =3D dev->fwnode; host->min_speed_hz =3D DIV_ROUND_UP(host->max_speed_hz, CLK_DIV_MAX); =20 hisi_spi_hw_init(hs); diff --git a/drivers/spi/spi-synquacer.c b/drivers/spi/spi-synquacer.c index eaf560487591..d0a875249910 100644 --- a/drivers/spi/spi-synquacer.c +++ b/drivers/spi/spi-synquacer.c @@ -600,7 +600,6 @@ static irqreturn_t sq_spi_tx_handler(int irq, void *pri= v) =20 static int synquacer_spi_probe(struct platform_device *pdev) { - struct device_node *np =3D pdev->dev.of_node; struct spi_controller *host; struct synquacer_spi *sspi; int ret; @@ -699,8 +698,6 @@ static int synquacer_spi_probe(struct platform_device *= pdev) goto disable_clk; } =20 - host->dev.of_node =3D np; - host->dev.fwnode =3D pdev->dev.fwnode; host->auto_runtime_pm =3D true; host->bus_num =3D pdev->id; =20 --=20 2.50.1 From nobody Sun Feb 8 01:33:34 2026 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.17]) (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 030E333C50F; Mon, 12 Jan 2026 20:36:01 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=198.175.65.17 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768250165; cv=none; b=Fc0q578VY+hQ26okyMZ0JCLnjMh3ogXWbPolEnqOWvAQNhtjdkA0b74ATnO7mUY7va7K1xVA+507ixb2vcvFHo/xZfw8onu44JPadTLrL2ztvh1Mpc+2KjXYkKiu8vDyQEaIyqX90vQgAjg1NKGuXy06pJri9X1XtVo0yXhf5ec= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768250165; c=relaxed/simple; bh=qUj8niNVfX9+vDdYMcQmMtutkkFc8vAbK8eRfRuvapk=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=LBFtuJ+a5wThjSovKE7Rax4kS3PErC70nWpKD4ai84j1jzIdaaGzq1Ovt/zf5GOp+B/6AFr8dE0nRXlejvRVKUUcidx22F80gA0/B9Q8jSrh5NuGgy0fEArfG0HSqpSLJ/z4wJwyT5ccZJTnRfbV1BzV0Co5MlYSA3A1LAx9RQs= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com; spf=pass smtp.mailfrom=linux.intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=ZCUwE37w; arc=none smtp.client-ip=198.175.65.17 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="ZCUwE37w" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1768250163; x=1799786163; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=qUj8niNVfX9+vDdYMcQmMtutkkFc8vAbK8eRfRuvapk=; b=ZCUwE37w0DyAg6/SuoSndUuDCrdiTEHJ9MfGHuJblFQdhBWxXx8FVSh0 qb/FKGFz0dUUIXy3aP9DUsP4v7fUL5orfnd2+BUgvID8fpeEbdqo21yHT B2hr2hKPZUMOtvhJSxVHfSBYuQtTlCejkNSJ5uCvSBvcs+kW1pF7TzpGK GQj2IoY2oo31fhWxPagCT37+fr3j6G1HhH406TBEEf6d1KB5Ss7B0iyb5 YX/fEhq7ALmrwy2qRCBkigXhJxP1mPQ89TWq2ug2hFXFVZuPi9edXeJkV KQzL1LFX+bu2TbRPXQk2RjMJQVkHfhFPY6eg0hL2ww2nXvXEfgqq1NB/K w==; X-CSE-ConnectionGUID: I6YCc/NMTNqvF3/aMycZBA== X-CSE-MsgGUID: RvC0VqROR7m/nIRUcM/igQ== X-IronPort-AV: E=McAfee;i="6800,10657,11669"; a="69515953" X-IronPort-AV: E=Sophos;i="6.21,221,1763452800"; d="scan'208";a="69515953" Received: from orviesa005.jf.intel.com ([10.64.159.145]) by orvoesa109.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 12 Jan 2026 12:36:02 -0800 X-CSE-ConnectionGUID: KbqM50wVTBi9mkZFufPllA== X-CSE-MsgGUID: EmIaMJEFQ0yXjAOlv7xnIQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.21,221,1763452800"; d="scan'208";a="209262148" Received: from black.igk.intel.com ([10.91.253.5]) by orviesa005.jf.intel.com with ESMTP; 12 Jan 2026 12:35:51 -0800 Received: by black.igk.intel.com (Postfix, from userid 1003) id 8AD1A9D; Mon, 12 Jan 2026 21:35:37 +0100 (CET) From: Andy Shevchenko To: Mark Brown , Varshini Rajendran , Mikhail Kshevetskiy , AngeloGioacchino Del Regno , Haotian Zhang , Sunny Luo , Janne Grunau , Andy Shevchenko , Martin Blumenstingl , Geert Uytterhoeven , Chen-Yu Tsai , Amelie Delaunay , Chin-Ting Kuo , CL Wang , Patrice Chotard , Heiko Stuebner , William Zhang , =?UTF-8?q?C=C3=A9dric=20Le=20Goater?= , Manikandan Muralidharan , David Lechner , Florian Fainelli , Jonas Gorski , Hang Zhou <929513338@qq.com>, Jun Guo , Philipp Stanner , Charles Keepax , Bartosz Golaszewski , =?UTF-8?q?Beno=C3=AEt=20Monin?= , Shiji Yang , James Clark , Jonathan Marek , Carlos Song , Sakari Ailus , Huacai Chen , Xianwei Zhao , Prajna Rajendra Kumar , Sergio Perez Gonzalez , Qianfeng Rong , Haibo Chen , Gabor Juhos , Md Sadre Alam , Rosen Penev , Marek Szyprowski , Luis de Arquer , Cosmin Tanislav , Tudor Ambarus , Krzysztof Kozlowski , Longbin Li , Kunihiko Hayashi , =?UTF-8?q?Cl=C3=A9ment=20Le=20Goffic?= , Alessandro Grassi , Darshan R , Aaron Kling , Vishwaroop A , Haixu Cui , Darshan Rathod , linux-spi@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-amlogic@lists.infradead.org, asahi@lists.linux.dev, linux-aspeed@lists.ozlabs.org, openbmc@lists.ozlabs.org, linux-rpi-kernel@lists.infradead.org, linux-sound@vger.kernel.org, patches@opensource.cirrus.com, imx@lists.linux.dev, linux-arm-msm@vger.kernel.org, linux-riscv@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-rockchip@lists.infradead.org, linux-renesas-soc@vger.kernel.org, linux-samsung-soc@vger.kernel.org, linux-stm32@st-md-mailman.stormreply.com, linux-sunxi@lists.linux.dev, linux-tegra@vger.kernel.org, virtualization@lists.linux.dev Cc: Nicolas Ferre , Alexandre Belloni , Claudiu Beznea , Lorenzo Bianconi , Ray Liu , Sven Peter , Neal Gompa , Joel Stanley , Andrew Jeffery , Ryan Wanner , Michael Hennerich , =?UTF-8?q?Nuno=20S=C3=A1?= , Kamal Dasu , Broadcom internal kernel review list , Ray Jui , Scott Branden , Kursad Oney , Anand Gore , =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= , David Rhodes , Richard Fitzgerald , Vladimir Oltean , Frank Li , Jean-Marie Verdun , Nick Hawkins , Yang Shen , Shawn Guo , Sascha Hauer , Pengutronix Kernel Team , Fabio Estevam , Lixu Zhang , Yinbo Zhu , Neil Armstrong , Kevin Hilman , Jerome Brunet , Conor Dooley , Daire McNamara , Matthias Brugger , Avi Fishman , Tomer Maimon , Tali Perry , Patrick Venture , Nancy Yuen , Benjamin Fair , Han Xu , Yogesh Gaur , Linus Walleij , Daniel Mack , Haojian Zhuang , Robert Jarzmik , Chris Packham , Fabrizio Castro , Andi Shyti , Alim Akhtar , Paul Walmsley , Samuel Holland , Orson Zhai , Baolin Wang , Chunyan Zhang , Maxime Coquelin , Alexandre Torgue , Alain Volmat , Jernej Skrabec , Li-hao Kuo , Masahisa Kojima , Jassi Brar , Laxman Dewangan , Thierry Reding , Jonathan Hunter , Sowjanya Komatineni , Masami Hiramatsu , =?UTF-8?q?Jonathan=20Neusch=C3=A4fer?= , Michal Simek , Max Filippov Subject: [PATCH v2 4/4] spi: Drop duplicate device_set_node() call Date: Mon, 12 Jan 2026 21:21:26 +0100 Message-ID: <20260112203534.4186261-5-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20260112203534.4186261-1-andriy.shevchenko@linux.intel.com> References: <20260112203534.4186261-1-andriy.shevchenko@linux.intel.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable The SPI core provides the default fwnode for the controller, assigned by device_set_node(). No need to repeat it in the driver. Tested-by: Beno=C3=AEt Monin # dw mobileye Reviewed-by: Geert Uytterhoeven # renesas Signed-off-by: Andy Shevchenko Reviewed-by: Linus Walleij --- drivers/spi/spi-airoha-snfi.c | 1 - drivers/spi/spi-dln2.c | 3 --- drivers/spi/spi-dw-core.c | 2 -- drivers/spi/spi-ep93xx.c | 1 - drivers/spi/spi-gpio.c | 1 - drivers/spi/spi-ljca.c | 1 - drivers/spi/spi-loongson-core.c | 1 - drivers/spi/spi-mpc512x-psc.c | 2 -- drivers/spi/spi-mpc52xx-psc.c | 2 -- drivers/spi/spi-nxp-fspi.c | 2 -- drivers/spi/spi-pxa2xx.c | 2 -- drivers/spi/spi-realtek-rtl-snand.c | 1 - drivers/spi/spi-rzv2h-rspi.c | 2 -- drivers/spi/spi-rzv2m-csi.c | 2 -- drivers/spi/spi-sc18is602.c | 2 -- drivers/spi/spi-sunplus-sp7021.c | 1 - drivers/spi/spi-virtio.c | 2 -- 17 files changed, 28 deletions(-) diff --git a/drivers/spi/spi-airoha-snfi.c b/drivers/spi/spi-airoha-snfi.c index 70327aebc26b..7b6c09f91fef 100644 --- a/drivers/spi/spi-airoha-snfi.c +++ b/drivers/spi/spi-airoha-snfi.c @@ -1124,7 +1124,6 @@ static int airoha_snand_probe(struct platform_device = *pdev) ctrl->bits_per_word_mask =3D SPI_BPW_MASK(8); ctrl->mode_bits =3D SPI_RX_DUAL; ctrl->setup =3D airoha_snand_setup; - device_set_node(&ctrl->dev, dev_fwnode(dev)); =20 err =3D airoha_snand_nfi_init(as_ctrl); if (err) diff --git a/drivers/spi/spi-dln2.c b/drivers/spi/spi-dln2.c index 2013bc56ded8..d90282960ab6 100644 --- a/drivers/spi/spi-dln2.c +++ b/drivers/spi/spi-dln2.c @@ -682,15 +682,12 @@ static int dln2_spi_probe(struct platform_device *pde= v) struct spi_controller *host; struct dln2_spi *dln2; struct dln2_platform_data *pdata =3D dev_get_platdata(&pdev->dev); - struct device *dev =3D &pdev->dev; int ret; =20 host =3D spi_alloc_host(&pdev->dev, sizeof(*dln2)); if (!host) return -ENOMEM; =20 - device_set_node(&host->dev, dev_fwnode(dev)); - platform_set_drvdata(pdev, host); =20 dln2 =3D spi_controller_get_devdata(host); diff --git a/drivers/spi/spi-dw-core.c b/drivers/spi/spi-dw-core.c index 9ebf244294f8..0d59c141beb0 100644 --- a/drivers/spi/spi-dw-core.c +++ b/drivers/spi/spi-dw-core.c @@ -936,8 +936,6 @@ int dw_spi_add_controller(struct device *dev, struct dw= _spi *dws) if (!ctlr) return -ENOMEM; =20 - device_set_node(&ctlr->dev, dev_fwnode(dev)); - dws->ctlr =3D ctlr; dws->dma_addr =3D (dma_addr_t)(dws->paddr + DW_SPI_DR); =20 diff --git a/drivers/spi/spi-ep93xx.c b/drivers/spi/spi-ep93xx.c index e1d097091925..90d5f3ea6508 100644 --- a/drivers/spi/spi-ep93xx.c +++ b/drivers/spi/spi-ep93xx.c @@ -689,7 +689,6 @@ static int ep93xx_spi_probe(struct platform_device *pde= v) /* make sure that the hardware is disabled */ writel(0, espi->mmio + SSPCR1); =20 - device_set_node(&host->dev, dev_fwnode(&pdev->dev)); error =3D devm_spi_register_controller(&pdev->dev, host); if (error) { dev_err(&pdev->dev, "failed to register SPI host\n"); diff --git a/drivers/spi/spi-gpio.c b/drivers/spi/spi-gpio.c index c8dadb532c40..072127a38fad 100644 --- a/drivers/spi/spi-gpio.c +++ b/drivers/spi/spi-gpio.c @@ -351,7 +351,6 @@ static int spi_gpio_probe(struct platform_device *pdev) return -ENOMEM; =20 if (fwnode) { - device_set_node(&host->dev, fwnode); host->use_gpio_descriptors =3D true; } else { status =3D spi_gpio_probe_pdata(pdev, host); diff --git a/drivers/spi/spi-ljca.c b/drivers/spi/spi-ljca.c index 3f412cf8f1cd..0c6e6248d8ba 100644 --- a/drivers/spi/spi-ljca.c +++ b/drivers/spi/spi-ljca.c @@ -238,7 +238,6 @@ static int ljca_spi_probe(struct auxiliary_device *auxd= ev, controller->auto_runtime_pm =3D false; controller->max_speed_hz =3D LJCA_SPI_BUS_MAX_HZ; =20 - device_set_node(&ljca_spi->controller->dev, dev_fwnode(&auxdev->dev)); auxiliary_set_drvdata(auxdev, controller); =20 ret =3D spi_register_controller(controller); diff --git a/drivers/spi/spi-loongson-core.c b/drivers/spi/spi-loongson-cor= e.c index b46f072a0387..f50423c3db4c 100644 --- a/drivers/spi/spi-loongson-core.c +++ b/drivers/spi/spi-loongson-core.c @@ -210,7 +210,6 @@ int loongson_spi_init_controller(struct device *dev, vo= id __iomem *regs) controller->unprepare_message =3D loongson_spi_unprepare_message; controller->set_cs =3D loongson_spi_set_cs; controller->num_chipselect =3D 4; - device_set_node(&controller->dev, dev_fwnode(dev)); dev_set_drvdata(dev, controller); =20 spi =3D spi_controller_get_devdata(controller); diff --git a/drivers/spi/spi-mpc512x-psc.c b/drivers/spi/spi-mpc512x-psc.c index 3c1638ba5bee..a1aeb5403a74 100644 --- a/drivers/spi/spi-mpc512x-psc.c +++ b/drivers/spi/spi-mpc512x-psc.c @@ -480,8 +480,6 @@ static int mpc512x_psc_spi_of_probe(struct platform_dev= ice *pdev) host->use_gpio_descriptors =3D true; host->cleanup =3D mpc512x_psc_spi_cleanup; =20 - device_set_node(&host->dev, dev_fwnode(dev)); - tempp =3D devm_platform_get_and_ioremap_resource(pdev, 0, NULL); if (IS_ERR(tempp)) return dev_err_probe(dev, PTR_ERR(tempp), "could not ioremap I/O port ra= nge\n"); diff --git a/drivers/spi/spi-mpc52xx-psc.c b/drivers/spi/spi-mpc52xx-psc.c index 3bbeb8d5bfb8..73d2383461ca 100644 --- a/drivers/spi/spi-mpc52xx-psc.c +++ b/drivers/spi/spi-mpc52xx-psc.c @@ -319,8 +319,6 @@ static int mpc52xx_psc_spi_of_probe(struct platform_dev= ice *pdev) host->transfer_one_message =3D mpc52xx_psc_spi_transfer_one_message; host->cleanup =3D mpc52xx_psc_spi_cleanup; =20 - device_set_node(&host->dev, dev_fwnode(dev)); - mps->psc =3D devm_platform_get_and_ioremap_resource(pdev, 0, NULL); if (IS_ERR(mps->psc)) return dev_err_probe(dev, PTR_ERR(mps->psc), "could not ioremap I/O port= range\n"); diff --git a/drivers/spi/spi-nxp-fspi.c b/drivers/spi/spi-nxp-fspi.c index 50a7e4916a60..320b3d93df57 100644 --- a/drivers/spi/spi-nxp-fspi.c +++ b/drivers/spi/spi-nxp-fspi.c @@ -1383,8 +1383,6 @@ static int nxp_fspi_probe(struct platform_device *pde= v) else ctlr->mem_caps =3D &nxp_fspi_mem_caps; =20 - device_set_node(&ctlr->dev, fwnode); - ret =3D devm_add_action_or_reset(dev, nxp_fspi_cleanup, f); if (ret) return ret; diff --git a/drivers/spi/spi-pxa2xx.c b/drivers/spi/spi-pxa2xx.c index ec7117a94d5f..78c399e95ef2 100644 --- a/drivers/spi/spi-pxa2xx.c +++ b/drivers/spi/spi-pxa2xx.c @@ -1290,8 +1290,6 @@ int pxa2xx_spi_probe(struct device *dev, struct ssp_d= evice *ssp, drv_data->controller_info =3D platform_info; drv_data->ssp =3D ssp; =20 - device_set_node(&controller->dev, dev_fwnode(dev)); - /* The spi->mode bits understood by this driver: */ controller->mode_bits =3D SPI_CPOL | SPI_CPHA | SPI_CS_HIGH | SPI_LOOP; =20 diff --git a/drivers/spi/spi-realtek-rtl-snand.c b/drivers/spi/spi-realtek-= rtl-snand.c index 741cf2af3e91..7d5853d202c6 100644 --- a/drivers/spi/spi-realtek-rtl-snand.c +++ b/drivers/spi/spi-realtek-rtl-snand.c @@ -400,7 +400,6 @@ static int rtl_snand_probe(struct platform_device *pdev) ctrl->mem_ops =3D &rtl_snand_mem_ops; ctrl->bits_per_word_mask =3D SPI_BPW_MASK(8); ctrl->mode_bits =3D SPI_RX_DUAL | SPI_RX_QUAD | SPI_TX_DUAL | SPI_TX_QUAD; - device_set_node(&ctrl->dev, dev_fwnode(dev)); =20 return devm_spi_register_controller(dev, ctrl); } diff --git a/drivers/spi/spi-rzv2h-rspi.c b/drivers/spi/spi-rzv2h-rspi.c index aae916882915..23f0e92ae208 100644 --- a/drivers/spi/spi-rzv2h-rspi.c +++ b/drivers/spi/spi-rzv2h-rspi.c @@ -797,8 +797,6 @@ static int rzv2h_rspi_probe(struct platform_device *pde= v) controller->dma_rx =3D NULL; } =20 - device_set_node(&controller->dev, dev_fwnode(dev)); - ret =3D devm_spi_register_controller(dev, controller); if (ret) dev_err(dev, "register controller failed\n"); diff --git a/drivers/spi/spi-rzv2m-csi.c b/drivers/spi/spi-rzv2m-csi.c index 7c0442883ac0..5d80939dddb5 100644 --- a/drivers/spi/spi-rzv2m-csi.c +++ b/drivers/spi/spi-rzv2m-csi.c @@ -634,8 +634,6 @@ static int rzv2m_csi_probe(struct platform_device *pdev) controller->use_gpio_descriptors =3D true; controller->target_abort =3D rzv2m_csi_target_abort; =20 - device_set_node(&controller->dev, dev_fwnode(dev)); - ret =3D devm_request_irq(dev, irq, rzv2m_csi_irq_handler, 0, dev_name(dev), csi); if (ret) diff --git a/drivers/spi/spi-sc18is602.c b/drivers/spi/spi-sc18is602.c index 1627aa66c965..78c558e7228e 100644 --- a/drivers/spi/spi-sc18is602.c +++ b/drivers/spi/spi-sc18is602.c @@ -251,8 +251,6 @@ static int sc18is602_probe(struct i2c_client *client) if (!host) return -ENOMEM; =20 - device_set_node(&host->dev, dev_fwnode(dev)); - hw =3D spi_controller_get_devdata(host); =20 /* assert reset and then release */ diff --git a/drivers/spi/spi-sunplus-sp7021.c b/drivers/spi/spi-sunplus-sp7= 021.c index 256ae07db6be..789b092fe8c0 100644 --- a/drivers/spi/spi-sunplus-sp7021.c +++ b/drivers/spi/spi-sunplus-sp7021.c @@ -419,7 +419,6 @@ static int sp7021_spi_controller_probe(struct platform_= device *pdev) ctlr =3D devm_spi_alloc_host(dev, sizeof(*pspim)); if (!ctlr) return -ENOMEM; - device_set_node(&ctlr->dev, dev_fwnode(dev)); ctlr->bus_num =3D pdev->id; ctlr->mode_bits =3D SPI_CPOL | SPI_CPHA | SPI_CS_HIGH | SPI_LSB_FIRST; ctlr->auto_runtime_pm =3D true; diff --git a/drivers/spi/spi-virtio.c b/drivers/spi/spi-virtio.c index 6aad9f1fd016..9e66c917fb75 100644 --- a/drivers/spi/spi-virtio.c +++ b/drivers/spi/spi-virtio.c @@ -344,8 +344,6 @@ static int virtio_spi_probe(struct virtio_device *vdev) priv->vdev =3D vdev; vdev->priv =3D priv; =20 - device_set_node(&ctrl->dev, dev_fwnode(&vdev->dev)); - dev_set_drvdata(&vdev->dev, ctrl); =20 virtio_spi_read_config(vdev); --=20 2.50.1