From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.18]) (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 2B80A156CA; Thu, 8 Jan 2026 20:30:37 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=192.198.163.18 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1767904238; cv=none; b=iq1buN6kZwet8mHVIQAQI0CFOOVPdS1xnL97+5V00d3jlCrHuDlrN9oHZran9CktbXLMzZYsglmVR73ogOtm7ojDyNZNNnOfPTxLpyfo5YAcf21zn3q+pNmlRiaADg+HCZUHiIlxrKBdDHF25fcy4rT4Z/Hx2/CV5P1s3oHzMsE= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1767904238; c=relaxed/simple; bh=pEPhZuFQG5WHDMDYcHjF4DXWD4eYs4lWob3YuVcuX9E=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=uggzGoEN8EwNk3eaOPeO9iswl0pO9Q5Sc/kpYKrY2ernVl8/gL6oM5QRpKmFJJOBveQtE9nqgTEcV2/KSiLD2JcoY6XwOyQKtNAWWyC4HAfOG1t3AkC06QhQQykCXQ32tTckA1742pLTSslIl3KDfhBjQM7V1LMHtken5+yp0hQ= 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=CImdBR1n; arc=none smtp.client-ip=192.198.163.18 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="CImdBR1n" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1767904237; x=1799440237; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=pEPhZuFQG5WHDMDYcHjF4DXWD4eYs4lWob3YuVcuX9E=; b=CImdBR1n/th3HVzOWgxkiADJt/kryzDndo5Rl460+VLvqtKK5zXBD0jZ 1XN3rkoV+XjoFDNvyK39w6KHUt/Z+tZUpKGtyBo+3VW/h07Qq3eyWMRUg iSgH8wgU1rQR2geplRfVsshMDXJjft25+jAaMJLhoZDZE8ZKeXFDl6rDU hmzdaYqDQfDUW5rCsudVJUCCOYkQpOQkZKbOZyWR/1Y2mixpegN9byaCH DwbDaZMez/RRAO5adzEXLe+682IdqH3A8ToBDKJgPJ5w6Lth6N4sfe8ph Dy/RT5q34pTcyYqORNpB0BFt9rRRWb0S1Yldas87XH/9njyOReV5+LOJ+ g==; X-CSE-ConnectionGUID: 7ppD9NsQRDaxzjViKPXzAA== X-CSE-MsgGUID: MqdqUFj+TS+uMQjFOp0OoA== X-IronPort-AV: E=McAfee;i="6800,10657,11665"; a="68485912" X-IronPort-AV: E=Sophos;i="6.21,211,1763452800"; d="scan'208";a="68485912" Received: from fmviesa002.fm.intel.com ([10.60.135.142]) by fmvoesa112.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 08 Jan 2026 12:30:36 -0800 X-CSE-ConnectionGUID: W5XxP9kWR4Gl8C7vlTnNzw== X-CSE-MsgGUID: usBzGMbdRSmth0J6YVwrrg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.21,211,1763452800"; d="scan'208";a="226706601" Received: from black.igk.intel.com ([10.91.253.5]) by fmviesa002.fm.intel.com with ESMTP; 08 Jan 2026 12:30:26 -0800 Received: by black.igk.intel.com (Postfix, from userid 1003) id 432F498; Thu, 08 Jan 2026 21:30:17 +0100 (CET) From: Andy Shevchenko To: Mark Brown , Varshini Rajendran , Mikhail Kshevetskiy , AngeloGioacchino Del Regno , Sunny Luo , Janne Grunau , Andy Shevchenko , Chin-Ting Kuo , CL Wang , 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 , Miquel Raynal , Qianfeng Rong , Haibo Chen , Gabor Juhos , Md Sadre Alam , Rosen Penev , Luis de Arquer , Geert Uytterhoeven , Cosmin Tanislav , Tudor Ambarus , Krzysztof Kozlowski , Longbin Li , Patrice Chotard , =?UTF-8?q?Cl=C3=A9ment=20Le=20Goffic?= , Alessandro Grassi , Chen-Yu Tsai , 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 , =?UTF-8?q?C=C3=A9dric=20Le=20Goater?= , 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 , William Zhang , 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 , Martin Blumenstingl , 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 , Heiko Stuebner , 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 , Kunihiko Hayashi , Masami Hiramatsu , =?UTF-8?q?Jonathan=20Neusch=C3=A4fer?= , Michal Simek , Max Filippov Subject: [PATCH v1 1/4] spi: Propagate default fwnode to the SPI controller device Date: Thu, 8 Jan 2026 21:23:38 +0100 Message-ID: <20260108203004.3538449-2-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20260108203004.3538449-1-andriy.shevchenko@linux.intel.com> References: <20260108203004.3538449-1-andriy.shevchenko@linux.intel.com> Precedence: bulk X-Mailing-List: virtualization@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit 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). Signed-off-by: Andy Shevchenko --- 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 *pdev) fwnode_property_read_u32(xu_fwnode, "01fa-sidecar-instances", &nsidecars); + /* + * 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[] = { 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 = &spi_controller_class; ctlr->dev.parent = 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); -- 2.50.1