From nobody Mon Apr 6 13:13:07 2026 Received: from mx0b-0031df01.pphosted.com (mx0b-0031df01.pphosted.com [205.220.180.131]) (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 EBF693E92B8 for ; Thu, 19 Mar 2026 16:11:15 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.180.131 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773936680; cv=none; b=auybvHYFvTPKIEF6nIjQL1Ef0HToA/7tyRb05abS7hW+7IxSO9IEFHwyMs31EDTdOCfsjHZ/sNXFqHxtMVbIgjOBfXWFp+O5Iwb3Yhin5mvxk2yrn/Uui7ROfd+bQmGbNqQ1Qi5LCuwnw/PTqjah+X/tbukvHeqGC1/PVyR6a+M= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773936680; c=relaxed/simple; bh=kyQWpc+s6LyGB+cuyTPjoSS5DZ25LWb/g6VCYSKQJQ4=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=aZHLhrhDLDpOHwhzqxpjjqEzSxrpUBCXa4EqDOcIhyUI4R2+a2+BG6prbCsBeghj08HJtOf7kjCLGWSxr37eQgi4n3ITIPx7gHTxEoqUs6k3oDzKwiYXbkU9QgK69EyhpXZ3BeRCQ5KALSn2xn/QVzVpQGCIf8E3ki6XuMl5/g8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com; spf=pass smtp.mailfrom=oss.qualcomm.com; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b=HNaSJJna; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=bnNZAjzh; arc=none smtp.client-ip=205.220.180.131 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b="HNaSJJna"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="bnNZAjzh" Received: from pps.filterd (m0279871.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 62JEW7S12981440 for ; Thu, 19 Mar 2026 16:11:14 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= n+3e6RrrE6nJ0WW2f1xgH0NuNkol6/On6k5K+mXa1Qc=; b=HNaSJJnaPZB/375t jgSeiStPttPRFUhjs/PQ8Ngrlbz+QGeqWvWPKcSOZEPFKw8yXBsf8jazlwlbB5HV h/B5bCoYECDdx54tSsVtMdHxcvXARd7FnnqU+P9qOrY8j78zeWmLz7t8AABsOuYb xTKYgIOoDTkSkK769CMn7liHQhlX+iTwX2Tl3FWqDva4iAMAblTIFESNRF+chLZi v/SwlISGNLOmDFswigvcpJ37whKpxSRFkf6hoI3ELK9Iuo9KmNKJULIrgony4/By +UyBbuW8Pb4Lx6GTvzteJBjcmfa6VKStWO1rt8JvaZSQj9JTQMour4OT+1j+xAYl TyQQHQ== Received: from mail-vs1-f70.google.com (mail-vs1-f70.google.com [209.85.217.70]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4d0k080bmy-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Thu, 19 Mar 2026 16:11:14 +0000 (GMT) Received: by mail-vs1-f70.google.com with SMTP id ada2fe7eead31-602878b0398so1432409137.3 for ; Thu, 19 Mar 2026 09:11:14 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1773936674; x=1774541474; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=n+3e6RrrE6nJ0WW2f1xgH0NuNkol6/On6k5K+mXa1Qc=; b=bnNZAjzhvlrVCQkZ6J1fjE9i53NppxrDFQvNUDZSL7FRJeIU8ELmVMjFk2OdUxUa+6 HSfhCd6CfNR5nmrcTiMKy57Txy/luDi81lxyDutsmAzgBZt1FhoiS7IixYcFObiOD87L l6pxpOHclC3KMqUzWWboIWgMKQBsubwrZ+2XI5bvvpWTCXs6no9IhOHX6uoZs43v3/Dn 19r1E785uNCn6GHI9LIR3Wiy5uDxVY+XD4b3Zh/o9DhXDA9kB8/1q55a1RaLhkfpaddt zi416TDaGh9DN1/o2U0iYF0c5pU/AqRJYYP8ZAL3geKg/tVXwyh/Mg6HTW6SsPY87YMz MAjQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1773936674; x=1774541474; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=n+3e6RrrE6nJ0WW2f1xgH0NuNkol6/On6k5K+mXa1Qc=; b=BTPtCfkDrJwdHY84xn/hR0jkB3qDR7E0QOOlNru9AwhFx1/ml6Yqd3hRsiF+jTFoj8 wnmq7dPwHdg7OBaoX2W6rKIu7ftKipeLx4MVKm6KK8C5cV8SSbBy7E3pkpJb0Wo90Jah PudnefZ3/jRdUBu0ZOCwCzS32TM/Eqod8ec+ai7PF6OEiJusFXZgPFLNRZ6Ntpk+TkgF SxORAVs1xICRP2MvP2y8Ek65krpoEwFkoKIKdH7t5mHL/jX3qBC0wQvLRhTK5P9q1aiR sGJwFI2JI/83H/KJEe+2C1kDS59dM9IU4cBpLMeHuGtepDmC1bfB+SWz4WNr9+4Fy7pi c0Ww== X-Forwarded-Encrypted: i=1; AJvYcCUpuECsvsVAySSZkuaj4ySOlVyK+PEIVcY5E2UF81EuC8/6yQyfW6iw0dkAKlpUH6wc07Fky1jMyJ2/IRI=@vger.kernel.org X-Gm-Message-State: AOJu0Yy97Cdm8WcFl30+PEAOh7h0hgVtw+JbwHvPFzdq0OfjgQM/NWhu O3OqrVGRRPO5qZI0mMVCRu9FpxlEqtGFT6K+CIumgk5nu5hXk8eyE6OTyw2YYgWWZxa2uB/oDIK r8EE7CAXClWFMXSagmZNtRZoWXW59HA6D++RcUF5MmM/QedeGtfOLOT4jcsSAgnJkNGo= X-Gm-Gg: ATEYQzyFxZAiygiTEdMMuHPqvQ3drLq/LxTGvwBcEKJBuafJoYe/f72Hs8QybphGNCy oY5agsGO2tToM7achfYaz+T4o9VQpi9BYhhZMivFfUAsLy+CO1b4i7jMfZD6f8Cd5XYH4Gqspmh Rf85ITaLCKI0vRHScncklQxPvMlL1rR8LemQozPGOIVVQ/pObHdP9CVlrJQlQKF/967rirFcoPs 0hfdnX2TQ/8dmt9UQO0CEpI5e6Hl2OP3WNW89UcBQu238cyOIV/YWLJIl58eCEWsWZ0t/Opx8bP N0MskKPv5a3ivOuTcm1ZyMaHGyTpuNSj/IR7oIe7hykL+KWochaleNjU/oug5s3OUkEp/Gs98v1 5J+A5daFvTQCGSuE8SslMs65qXfCi+QY4ZktqyHJRAPwIFj9xbrUP X-Received: by 2002:a05:6102:1620:b0:5db:fe0d:7fd5 with SMTP id ada2fe7eead31-602aeaffb34mr60893137.10.1773936673674; Thu, 19 Mar 2026 09:11:13 -0700 (PDT) X-Received: by 2002:a05:6102:1620:b0:5db:fe0d:7fd5 with SMTP id ada2fe7eead31-602aeaffb34mr60853137.10.1773936673125; Thu, 19 Mar 2026 09:11:13 -0700 (PDT) Received: from brgl-qcom.local ([2a01:cb1d:dc:7e00:9d74:8015:408c:d719]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-486f4e5495csm83756915e9.2.2026.03.19.09.11.11 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 19 Mar 2026 09:11:12 -0700 (PDT) From: Bartosz Golaszewski Date: Thu, 19 Mar 2026 17:10:55 +0100 Subject: [PATCH 2/4] pinctrl: intel: expose software nodes for baytrail GPIO devices 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 Message-Id: <20260319-baytrail-real-swnode-v1-2-75f2264ae49f@oss.qualcomm.com> References: <20260319-baytrail-real-swnode-v1-0-75f2264ae49f@oss.qualcomm.com> In-Reply-To: <20260319-baytrail-real-swnode-v1-0-75f2264ae49f@oss.qualcomm.com> To: Andy Shevchenko , Daniel Scally , Heikki Krogerus , Sakari Ailus , Greg Kroah-Hartman , "Rafael J. Wysocki" , Danilo Krummrich , Mika Westerberg , Andy Shevchenko , Linus Walleij , Hans de Goede , =?utf-8?q?Ilpo_J=C3=A4rvinen?= , Dmitry Torokhov Cc: linux-acpi@vger.kernel.org, driver-core@lists.linux.dev, linux-kernel@vger.kernel.org, linux-gpio@vger.kernel.org, platform-driver-x86@vger.kernel.org, Bartosz Golaszewski X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=3084; i=bartosz.golaszewski@oss.qualcomm.com; h=from:subject:message-id; bh=kyQWpc+s6LyGB+cuyTPjoSS5DZ25LWb/g6VCYSKQJQ4=; b=owEBbQKS/ZANAwAKAQWdLsv/NoTDAcsmYgBpvCAWd/YCTQb1ZpJO3nLK2ALOKvuo/gh4sQpxD NZKbSmFQVyJAjMEAAEKAB0WIQSR5RMt5bVGHXuiZfwFnS7L/zaEwwUCabwgFgAKCRAFnS7L/zaE w0X8D/0bgfGvEb2pvErq1zJpsj5AKN2FholT28W7NlXp/35ot8SBkYRIp+s0nFspf20bQ7psQTz sWMAraTPQQ9rikZxk6pZ/38l0bUAl74JMpX21PBM4NBZBgoTwZJyLbRTLPWWh9FCFM0PeO5Wd5e Ir/aju4y5ybblGAWOLmnZ9E8CC+OpBod5fgduXJa9Xrfv9OpX1O4DueusUQilG6Id/LlBA0NS7z s2lxyePsa6rPEUGSFxTnyWQieC4bUVtvgynmTpBvIM5sN8oTWwSXISPKt/wvFu3CASmNtuBZr7u e9nIQvOuUUA3wHt2rCcON8UgCtU093uL0YY3LiHppMc0L4dU2FrczGPz08ilQ01RtE0o6vajcvL Yd+ZhjMX/JPa6z37M0W1Bk/Bzbky/Ooy6AgXtJKHuDxGDSbIPN78HMEzhEStMijexYkhkDNjWt6 wJXTQyWX4NmzY/ImFOOn5yvEbat6yqUxyRrNYvAVIE1e7mj2EHw1FjtBPrgkY3iihR7sMAERCHA jAFkanfTkja73k5GyEJnRbqItJnuLeEeKw2RbHole9eevfAtSflfk6EoeReoO/ZHo1M3Vondc/J DTtHvihyA4Rs47Yo64ET4i0N+Web+EqtzT7xPQ2azvY9xzM/30fTYKrF8hLtE5jM+Y70LIDm+94 MqdlioRoOi4r2bw== X-Developer-Key: i=bartosz.golaszewski@oss.qualcomm.com; a=openpgp; fpr=169DEB6C0BC3C46013D2C79F11A72EA01471D772 X-Authority-Analysis: v=2.4 cv=MYhhep/f c=1 sm=1 tr=0 ts=69bc2022 cx=c_pps a=N1BjEkVkxJi3uNfLdpvX3g==:117 a=xqWC_Br6kY4A:10 a=IkcTkHD0fZMA:10 a=Yq5XynenixoA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=3WHJM1ZQz_JShphwDgj5:22 a=EUspDBNiAAAA:8 a=kPuSsqDpjDp9iQEZ0-0A:9 a=QEXdDO2ut3YA:10 a=crWF4MFLhNY0qMRaF8an:22 X-Proofpoint-ORIG-GUID: Mkx_K09VELIs1PeuHieTUco9Wxd-Bn1i X-Proofpoint-GUID: Mkx_K09VELIs1PeuHieTUco9Wxd-Bn1i X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMzE5MDEyOSBTYWx0ZWRfXxfL0/MrjXlHk zRL/RooqCEldXQb0kIEWIYy8HUnTe9JvbrGuRZfT3DHsFpfpqZ1JMmWLTb+1pWy3rrvj7mwWG3z PPcvCiTICxFsTmrsFcabYSsPJkNrH6DkQ2RcoO8VVO7jPT88Fqqc4xJEFENCQ4SMu4mEymnVCvi 7MqFPDf2iktmJNjZUKy+ayHKsIr+s12f0foIEEERNYWyX60WnK9M6h6NhEhQIBvCBzF8r4d9DFV efVesTeyxJz9uyutuD2rHQ9VgznQn+588hb7Qt/QQyxu8oOW54LRyRG9XWn7LcST9k+oZwLqVSI 1rNuCpInl6KcXAWmwe20HgoxogJLdtMpYN1NyYJkdimNe9sqWMfsLiJuij/gd3SSAIpsrL4DXTQ X/l90MeF1isodEHv2M1tyuNA31vcVptYJa/7kHSSJIhyWspo1U4tcTEc5RbVTlg+8IO7zRA/f7U raNzcBEf51ivMNUQrgw== X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.51,FMLib:17.12.100.49 definitions=2026-03-19_02,2026-03-19_05,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 clxscore=1015 spamscore=0 suspectscore=0 phishscore=0 priorityscore=1501 lowpriorityscore=0 malwarescore=0 impostorscore=0 adultscore=0 bulkscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2603050001 definitions=main-2603190129 Use the new automatic secondary fwnode API to ensure that when the baytrail pinctrl device is added to the platform bus, the static software node provided for drivers not able to use ACPI will get automatically assigned as the secondary fwnode of the primary ACPI node. Create a new header under linux/pinctrl/ containing intel-specific symbols and declare the new variables there. Signed-off-by: Bartosz Golaszewski --- drivers/pinctrl/intel/pinctrl-baytrail.c | 40 ++++++++++++++++++++++++++++= +++- include/linux/pinctrl/intel.h | 12 ++++++++++ 2 files changed, 51 insertions(+), 1 deletion(-) diff --git a/drivers/pinctrl/intel/pinctrl-baytrail.c b/drivers/pinctrl/int= el/pinctrl-baytrail.c index 02fdadf2189afb0ff654c80c131f813b59d623d6..bd0ba7c3351c021584127b3679c= 59d7463cc8a57 100644 --- a/drivers/pinctrl/intel/pinctrl-baytrail.c +++ b/drivers/pinctrl/intel/pinctrl-baytrail.c @@ -22,6 +22,7 @@ #include #include =20 +#include #include #include #include @@ -1723,9 +1724,46 @@ static struct platform_driver byt_gpio_driver =3D { }, }; =20 +const struct software_node baytrail_gpio_node_00 =3D { + .name =3D "INT33FC:00", +}; +EXPORT_SYMBOL_NS_GPL(baytrail_gpio_node_00, "PINCTRL_INTEL"); + +const struct software_node baytrail_gpio_node_01 =3D { + .name =3D "INT33FC:01", +}; +EXPORT_SYMBOL_NS_GPL(baytrail_gpio_node_01, "PINCTRL_INTEL"); + +const struct software_node baytrail_gpio_node_02 =3D { + .name =3D "INT33FC:02", +}; +EXPORT_SYMBOL_NS_GPL(baytrail_gpio_node_02, "PINCTRL_INTEL"); + +static const struct software_node *baytrail_gpio_node_group[] =3D { + &baytrail_gpio_node_00, + &baytrail_gpio_node_01, + &baytrail_gpio_node_02, + NULL +}; + +static struct software_node_auto_secondary byt_auto_secondary =3D { + .node_group =3D baytrail_gpio_node_group, + .bus =3D &platform_bus_type, +}; + static int __init byt_gpio_init(void) { - return platform_driver_register(&byt_gpio_driver); + int ret; + + ret =3D software_node_register_auto_secondary(&byt_auto_secondary); + if (ret) + return ret; + + ret =3D platform_driver_register(&byt_gpio_driver); + if (ret) + software_node_unregister_auto_secondary(&byt_auto_secondary); + + return ret; } subsys_initcall(byt_gpio_init); =20 diff --git a/include/linux/pinctrl/intel.h b/include/linux/pinctrl/intel.h new file mode 100644 index 0000000000000000000000000000000000000000..d45f090adc1f532f866c98aeca1= 44a4d83fa28f4 --- /dev/null +++ b/include/linux/pinctrl/intel.h @@ -0,0 +1,12 @@ +/* SPDX-License-Identifier: GPL-2.0 */ + +#ifndef __LINUX_PINCTRL_INTEL_H +#define __LINUX_PINCTRL_INTEL_H + +struct software_node; + +extern const struct software_node baytrail_gpio_node_00; +extern const struct software_node baytrail_gpio_node_01; +extern const struct software_node baytrail_gpio_node_02; + +#endif /* __LINUX_PINCTRL_INTEL_H */ --=20 2.47.3