From nobody Sun Feb 8 15:07:59 2026 Received: from mx0b-00128a01.pphosted.com (mx0b-00128a01.pphosted.com [148.163.139.77]) (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 3890E397AA0; Thu, 15 Jan 2026 12:34:28 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=148.163.139.77 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768480474; cv=none; b=Ad6iSrM06pMflEcH6ZUevUC7vnOMlhMNiIatmR/8cFKEcaZtD38N4lTb42iDuATxIqt83XhJrnS2uoOxmQJtEukDk/TAalOlImE3tsyOCKfELN4HRNHLx7ZLRzk3qSOsU0pcuWvRQofxIz4kbakMjWEGzIgGJeHu9g8ZVR++V08= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768480474; c=relaxed/simple; bh=42YW3qdDlBG0/OIlter2QCZV13OhY5S7ogWrR89SVDU=; h=From:To:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=U9OfOVbfxxrCOuY727Kz9fhnR7TkepC/M/zQMexk3/rCwQgSGs2iALSNxJNh3H9Kt15etX6Z1A83TSpZw3MMDZLl1PRjv5CTwQfCXyPOWahY8nUXNaHqIuKsYj738x1wsnQ0dgBVj8YqaaMzKRLSnzec3znRKqH82UJOif8YVrQ= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=analog.com; spf=pass smtp.mailfrom=analog.com; dkim=pass (2048-bit key) header.d=analog.com header.i=@analog.com header.b=0PL0w47F; arc=none smtp.client-ip=148.163.139.77 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=analog.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=analog.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=analog.com header.i=@analog.com header.b="0PL0w47F" Received: from pps.filterd (m0167091.ppops.net [127.0.0.1]) by mx0b-00128a01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 60FARKwj4076099; Thu, 15 Jan 2026 07:34:22 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=analog.com; h= content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=DKIM; bh=xF/FF aH0y6ePp2nimSPem3I4cH0i27tY2yvpLXKexZ4=; b=0PL0w47FI0JFHSd0xP1nm Z8QLyLlkJ7rRHDdXPn6sUgGygNyFrmyLZvU1fvCGmWx/egqLle+gOdb8ektAu7sk WRvsw9BAYs5kZ2Q5lV6wDEiEq6n4Fl/27mI4czqYBZawcPksHl8nvh7BrIz5K9u3 V18gHr+Hi6JOSSUM7fa+yHjYV7TaBxDgAkH8XxWBggYJsWj7ffEMmfRXUD0w1ZdS Ty9GFuoslzjfSL4uBwZDz7I/3ep7ewOWChmjUk36BrymnNNWe0JHKJX214RLDQD/ ffJxL1tGyxSwY1WeLLI5PwHwyAxxLbfRDrbU3ZS2l1wxnm3q4tXFbzcUT466BWlN g== Received: from nwd2mta4.analog.com ([137.71.173.58]) by mx0b-00128a01.pphosted.com (PPS) with ESMTPS id 4bptvkhhgd-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 15 Jan 2026 07:34:22 -0500 (EST) Received: from ASHBMBX9.ad.analog.com (ASHBMBX9.ad.analog.com [10.64.17.10]) by nwd2mta4.analog.com (8.14.7/8.14.7) with ESMTP id 60FCYKdN041546 (version=TLSv1/SSLv3 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=FAIL); Thu, 15 Jan 2026 07:34:20 -0500 Received: from ASHBCASHYB5.ad.analog.com (10.64.17.133) by ASHBMBX9.ad.analog.com (10.64.17.10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1748.37; Thu, 15 Jan 2026 07:34:20 -0500 Received: from ASHBMBX9.ad.analog.com (10.64.17.10) by ASHBCASHYB5.ad.analog.com (10.64.17.133) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1748.37; Thu, 15 Jan 2026 07:34:20 -0500 Received: from zeus.spd.analog.com (10.66.68.11) by ashbmbx9.ad.analog.com (10.64.17.10) with Microsoft SMTP Server id 15.2.1748.37 via Frontend Transport; Thu, 15 Jan 2026 07:34:20 -0500 Received: from HYB-b1tGeUj4GP1.ad.analog.com (HYB-b1tGeUj4GP1.ad.analog.com [10.48.65.177]) by zeus.spd.analog.com (8.15.1/8.15.1) with ESMTP id 60FCVsdF030437; Thu, 15 Jan 2026 07:32:06 -0500 From: Antoniu Miclaus To: Peter Rosin , Rob Herring , "Krzysztof Kozlowski" , Conor Dooley , "Antoniu Miclaus" , Srinivas Kandagatla , David Lechner , Bartosz Golaszewski , , Subject: [PATCH v3 1/4] dt-bindings: mux: gpio-mux: add enable-gpios support Date: Thu, 15 Jan 2026 14:18:19 +0200 Message-ID: <20260115121943.23715-2-antoniu.miclaus@analog.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260115121943.23715-1-antoniu.miclaus@analog.com> References: <20260115121943.23715-1-antoniu.miclaus@analog.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 X-ADIRuleOP-NewSCL: Rule Triggered X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMTE1MDA5MiBTYWx0ZWRfX+ka9M+Eksp+R AaxCqVE+EgdbMvsV3f2JPlcEFQumohuZ4MFKc6uu9f0CFQhuExBMqWkJAvFVn+j0aX8GjvjL2l3 GA3DUOh/8R617EqhGqlpVSEJjXEY7nBNuTUWosrPvo3rjQppwHMzFspoN17gWXMC2Otj/1akMPe D8vyYl8RmCgkqlDkuQaJrv1sbcV1NPjOKUXxWrf5evLKRvWwYA5QN9XpEJyZravC0NAszE2BehP DniOow0hjKQrZinuIvns9p0hGC7V8fLN/kXW81aEKAC7StB96Ol/IgGOD88LqJ9enoSN4tf9VBQ g9+WwIafJBI91oHY0aWzk/coB0ak/E0WHW48dxzjucb1cLYRfQyl8rlDF+DJmcmgwd9RUB4NOer 11om61zoc5YLB6rlys6eZdwqWLl3eWp6pn1kgYIe/GRnhZnSK6oZD0i6AzVw1EBYIxuHdmj2V46 +uC/BhUep0/XcebIFfg== X-Proofpoint-ORIG-GUID: seRsVSqZlw_3eP4zi5A8No4mqFkrnpKP X-Authority-Analysis: v=2.4 cv=PdjyRyhd c=1 sm=1 tr=0 ts=6968dece cx=c_pps a=3WNzaoukacrqR9RwcOSAdA==:117 a=3WNzaoukacrqR9RwcOSAdA==:17 a=vUbySO9Y5rIA:10 a=VkNPw1HP01LnGYTKEx00:22 a=gAnH3GRIAAAA:8 a=UpupB87I3hMshzmTAxEA:9 X-Proofpoint-GUID: seRsVSqZlw_3eP4zi5A8No4mqFkrnpKP X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2026-01-15_03,2026-01-14_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 impostorscore=0 clxscore=1011 phishscore=0 suspectscore=0 priorityscore=1501 adultscore=0 malwarescore=0 bulkscore=0 spamscore=0 lowpriorityscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2512120000 definitions=main-2601150092 Content-Type: text/plain; charset="utf-8" Add support for an optional enable GPIO that allows the multiplexer to be disabled. Signed-off-by: Antoniu Miclaus --- changes in v3: * new patch - extend gpio-mux instead of standalone driver approach --- Documentation/devicetree/bindings/mux/gpio-mux.yaml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/Documentation/devicetree/bindings/mux/gpio-mux.yaml b/Document= ation/devicetree/bindings/mux/gpio-mux.yaml index ef7e33ec85d4..199792d42323 100644 --- a/Documentation/devicetree/bindings/mux/gpio-mux.yaml +++ b/Documentation/devicetree/bindings/mux/gpio-mux.yaml @@ -25,6 +25,13 @@ properties: description: List of gpios used to control the multiplexer, least significant bit= first. =20 + enable-gpios: + description: + Optional GPIO to enable the multiplexer. When present, the mux will = be + disabled before changing address lines and re-enabled after to preve= nt + glitches. Required for MUX_IDLE_DISCONNECT idle-state. + maxItems: 1 + mux-supply: description: Regulator to power on the multiplexer. --=20 2.43.0 From nobody Sun Feb 8 15:07:59 2026 Received: from mx0b-00128a01.pphosted.com (mx0b-00128a01.pphosted.com [148.163.139.77]) (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 76335399037; Thu, 15 Jan 2026 12:34:37 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=148.163.139.77 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768480481; cv=none; b=Li9LbbYg9kKyyvtYdll4z1qIVe2fxhbx3CU5lUUW/8xJpnmPk7nGTOIti1vXt/TFWFgUCbsdec+o6jgLwL7gPcBJ62xcSAVjTIDaKEYpjooViux2Jx+kXJdFHB0/7//0iby5BkV/xXC58adHbnNLzpVljrGpIxHY+i5trhB7j5E= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768480481; c=relaxed/simple; bh=E+dEztOblkzsYEMypPW+vX11tgnXLhbWTmHOFJ5GJG4=; h=From:To:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=HrDhtZCdznEfvietsYpyw5eNYpPUKUM7qSWUmF6MHKz/1RzZWCDS0VI2KpysoZqeE8lrbpJzJc4XQHjIjXBiew2263atadETS13wm8yftdzFuDk1x9vFTNTeVxh9MZMHd7bRlsZXa25rc2rZ8PfLXdW6U2bOe9PzQ1LZdBlQAfA= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=analog.com; spf=pass smtp.mailfrom=analog.com; dkim=pass (2048-bit key) header.d=analog.com header.i=@analog.com header.b=nhREuUsf; arc=none smtp.client-ip=148.163.139.77 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=analog.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=analog.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=analog.com header.i=@analog.com header.b="nhREuUsf" Received: from pps.filterd (m0375854.ppops.net [127.0.0.1]) by mx0b-00128a01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 60FAJgmt3130474; Thu, 15 Jan 2026 07:34:30 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=analog.com; h= content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=DKIM; bh=vfW4I t38HiBvI6Bl5GtD5sK2yHwuFizZ4ckZ+at/3MY=; b=nhREuUsfSdl+MTUgBnv3Z NhMydzu1tdQpwih0CLAbcaPAod4Nj4ibIP3W7OPcSlgoOnIzoQVRDt5LXq6zLiYi qlfdwsC3ZDdmjp6KfRv+n92hWKEIorvdWricsjx23JDgWNExrmyoaBhke45d+Dnv bLqKNQZCrcKrUP1lysfSmONsHbq4+diP0wexdLVFi/M+62S1fzCklc/hBcWbD94N ReG5oEBy014Z12TyXxyczOMpkC1DCcHgfOAgYVALPbvJy78+XRC5JOaem4U3dKIm 8IF50kX12/K6P8DjZCm51WMGA+XGD5iFZuz5CrE+WwIPd3oB9e9EBX57koODneoN g== Received: from nwd2mta4.analog.com ([137.71.173.58]) by mx0b-00128a01.pphosted.com (PPS) with ESMTPS id 4bpxcv8gyk-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 15 Jan 2026 07:34:30 -0500 (EST) Received: from ASHBMBX9.ad.analog.com (ASHBMBX9.ad.analog.com [10.64.17.10]) by nwd2mta4.analog.com (8.14.7/8.14.7) with ESMTP id 60FCYS7F041572 (version=TLSv1/SSLv3 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=FAIL); Thu, 15 Jan 2026 07:34:28 -0500 Received: from ASHBMBX8.ad.analog.com (10.64.17.5) by ASHBMBX9.ad.analog.com (10.64.17.10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1748.37; Thu, 15 Jan 2026 07:34:28 -0500 Received: from zeus.spd.analog.com (10.66.68.11) by ashbmbx8.ad.analog.com (10.64.17.5) with Microsoft SMTP Server id 15.2.1748.37 via Frontend Transport; Thu, 15 Jan 2026 07:34:26 -0500 Received: from HYB-b1tGeUj4GP1.ad.analog.com (HYB-b1tGeUj4GP1.ad.analog.com [10.48.65.177]) by zeus.spd.analog.com (8.15.1/8.15.1) with ESMTP id 60FCVsdG030437; Thu, 15 Jan 2026 07:32:10 -0500 From: Antoniu Miclaus To: Peter Rosin , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Antoniu Miclaus , Srinivas Kandagatla , Linus Walleij , Bartosz Golaszewski , David Lechner , , Subject: [PATCH v3 2/4] mux: gpio-mux: add support for enable GPIO Date: Thu, 15 Jan 2026 14:18:20 +0200 Message-ID: <20260115121943.23715-3-antoniu.miclaus@analog.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260115121943.23715-1-antoniu.miclaus@analog.com> References: <20260115121943.23715-1-antoniu.miclaus@analog.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 X-ADIRuleOP-NewSCL: Rule Triggered X-Proofpoint-GUID: ALnqY-by2MnKfkektNbFJV0T_AH3Wino X-Proofpoint-ORIG-GUID: ALnqY-by2MnKfkektNbFJV0T_AH3Wino X-Authority-Analysis: v=2.4 cv=fvHRpV4f c=1 sm=1 tr=0 ts=6968ded6 cx=c_pps a=3WNzaoukacrqR9RwcOSAdA==:117 a=3WNzaoukacrqR9RwcOSAdA==:17 a=vUbySO9Y5rIA:10 a=VkNPw1HP01LnGYTKEx00:22 a=gAnH3GRIAAAA:8 a=AY8K-kA47ILn5Hm1wlYA:9 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMTE1MDA5MiBTYWx0ZWRfX11QQsfDEQUF+ uxMhJ3wUbNf5Ww5+Nqdc4jqHKsNi2MSdKwrsIOC+Axjoz+f7JSpWYdq1zgifLdVzQDNSRm2E6TE KVm26KI/2/ie7V4+im3sLaSw0zGXXweqeMTH82fjHzUiSFtK8y9Q3CqxeuGowJmQpX2s3s0Kj2F RJO+wFfo2j0oZmnuYe5uw57sxMLJUB1413amXIP5vJ/28bI3fw+tNTYmPoF05NpHy0Rv4G4+2rY um4Yyvs15MniMNB0zIIN3S3zu28HYVohezsV2Tmc6zDC3fkMYszcMLPKyWVZZXR/MFMgXPVq2zH DCdydaj5pXXK+h/KRUP3RZJyHSs9C8xu7nOOs7RAPPUP1f9CfEclzutHWrOWx0yJDZYw/+5sYQH k3kuXrwsyA3YPnjyc+6zCX6DFiSBhszs/y/vSf2wAgOdHtop0cR/jZGf18TmsaGRvJJxfWCQtr+ sdaDCb+7SIj1+7yeFfg== X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2026-01-15_03,2026-01-14_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 impostorscore=0 bulkscore=0 adultscore=0 spamscore=0 phishscore=0 priorityscore=1501 suspectscore=0 clxscore=1011 lowpriorityscore=0 malwarescore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2512120000 definitions=main-2601150092 Content-Type: text/plain; charset="utf-8" Add support for an optional enable GPIO to the gpio-mux driver. This allows the mux to be disabled before changing address lines and re-enabled after, preventing glitches that could briefly activate unintended channels during transitions. The enable GPIO is optional and the driver maintains backward compatibility with existing gpio-mux users. Signed-off-by: Antoniu Miclaus --- changes in v3: * new patch - extend gpio-mux instead of standalone driver approach --- drivers/mux/gpio.c | 32 +++++++++++++++++++++++++++++++- 1 file changed, 31 insertions(+), 1 deletion(-) diff --git a/drivers/mux/gpio.c b/drivers/mux/gpio.c index 4cc3202c58f3..93487483e81f 100644 --- a/drivers/mux/gpio.c +++ b/drivers/mux/gpio.c @@ -19,6 +19,7 @@ =20 struct mux_gpio { struct gpio_descs *gpios; + struct gpio_desc *enable; }; =20 static int mux_gpio_set(struct mux_control *mux, int state) @@ -27,10 +28,28 @@ static int mux_gpio_set(struct mux_control *mux, int st= ate) DECLARE_BITMAP(values, BITS_PER_TYPE(state)); u32 value =3D state; =20 + if (state =3D=3D MUX_IDLE_DISCONNECT) { + if (mux_gpio->enable) + gpiod_set_value_cansleep(mux_gpio->enable, 0); + return 0; + } + + if (mux_gpio->enable) { + /* + * Disable the mux before changing address lines to prevent + * glitches. Changing address while enabled could briefly + * activate an unintended channel during the transition. + */ + gpiod_set_value_cansleep(mux_gpio->enable, 0); + } + bitmap_from_arr32(values, &value, BITS_PER_TYPE(value)); =20 gpiod_multi_set_value_cansleep(mux_gpio->gpios, values); =20 + if (mux_gpio->enable) + gpiod_set_value_cansleep(mux_gpio->enable, 1); + return 0; } =20 @@ -71,9 +90,20 @@ static int mux_gpio_probe(struct platform_device *pdev) WARN_ON(pins !=3D mux_gpio->gpios->ndescs); mux_chip->mux->states =3D BIT(pins); =20 + mux_gpio->enable =3D devm_gpiod_get_optional(dev, "enable", GPIOD_OUT_LOW= ); + if (IS_ERR(mux_gpio->enable)) + return dev_err_probe(dev, PTR_ERR(mux_gpio->enable), + "failed to get enable gpio\n"); + ret =3D device_property_read_u32(dev, "idle-state", (u32 *)&idle_state); if (ret >=3D 0 && idle_state !=3D MUX_IDLE_AS_IS) { - if (idle_state < 0 || idle_state >=3D mux_chip->mux->states) { + if (idle_state =3D=3D MUX_IDLE_DISCONNECT) { + if (!mux_gpio->enable) { + dev_err(dev, + "invalid idle-state (MUX_IDLE_DISCONNECT requires enable-gpios)\n"); + return -EINVAL; + } + } else if (idle_state < 0 || idle_state >=3D mux_chip->mux->states) { dev_err(dev, "invalid idle-state %u\n", idle_state); return -EINVAL; } --=20 2.43.0 From nobody Sun Feb 8 15:07:59 2026 Received: from mx0a-00128a01.pphosted.com (mx0a-00128a01.pphosted.com [148.163.135.77]) (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 9F6F0379989; Thu, 15 Jan 2026 12:33:46 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=148.163.135.77 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768480428; cv=none; b=EAsT+nYXqhFYNpapDnz21DDWLa4TI6A8006ofkV9d71x3jJOPIs21SDmd0iSrVa+HJ24rEOlR2DTiS3MtwvvYv1eegW6zZn4DYj5ne4cPWl3aIPKbrAJo5ukHbbjVrztJXNXRxuGTelLESOatSwYKhGH2LNb9yKTfCkYaiqurqE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768480428; c=relaxed/simple; bh=pswblZNWZ3IP5kltmX4w1+HOYs/JzOwlwVTxZUVckfg=; h=From:To:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=JAVoz6P0SwARSDCl8/UadOKsma2jdh2v7TACJPqowg7NxkpcW45IxA3VML2NJZJctjlpnWVP/pLM+2A/Ng8GAwTLiuGXZ25HMlQ6DwTqD/EkJho61CfLSOUfcNsTf3o1UlNX009qWtkJKB3OSCCrqFJn2LCjfRk0XdshFgA39/0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=analog.com; spf=pass smtp.mailfrom=analog.com; dkim=pass (2048-bit key) header.d=analog.com header.i=@analog.com header.b=y4dR8ut2; arc=none smtp.client-ip=148.163.135.77 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=analog.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=analog.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=analog.com header.i=@analog.com header.b="y4dR8ut2" Received: from pps.filterd (m0167089.ppops.net [127.0.0.1]) by mx0a-00128a01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 60FBeAPl3414874; Thu, 15 Jan 2026 07:33:27 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=analog.com; h= content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=DKIM; bh=fFYpj 168zW9Ws3QThhB/GH4Dk/qIUx2mJb6L3zl+L9k=; b=y4dR8ut20pXWbGEQcoSg9 FyGWcQJEwG0Ur9Ia5lHXA1f6ARpp6qMRCgn7aNc9PjH8tUgabht1gVZqBUpACvcJ ObmGBmN5Im5UHSUalKRjlVfUujrLREUyt0kxk+a9y/WNuLdJ35EWYrzvQnj/OCA6 l62z+8LpIBGsNBBs6UW9TLR6lq+gtYPgXJKVyhE1HQ1NAyccvjIJZhTFhPyH3GS+ oE2sywnHSmLt2UU6XChNMecUkG2MaCDZA5LaQwiK3gNpYPeF42nIF327uOkUKSiW W/FJL5ia8EyowPKwwYE0frJH+N+TdNrR+g/69jbKU8y4BICOk3ZfmABN2C0+Xmyk w== Received: from nwd2mta4.analog.com ([137.71.173.58]) by mx0a-00128a01.pphosted.com (PPS) with ESMTPS id 4bpm0xkpyr-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 15 Jan 2026 07:33:27 -0500 (EST) Received: from ASHBMBX9.ad.analog.com (ASHBMBX9.ad.analog.com [10.64.17.10]) by nwd2mta4.analog.com (8.14.7/8.14.7) with ESMTP id 60FCXQQO041427 (version=TLSv1/SSLv3 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=FAIL); Thu, 15 Jan 2026 07:33:26 -0500 Received: from ASHBCASHYB4.ad.analog.com (10.64.17.132) by ASHBMBX9.ad.analog.com (10.64.17.10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1748.37; Thu, 15 Jan 2026 07:33:26 -0500 Received: from ASHBMBX9.ad.analog.com (10.64.17.10) by ASHBCASHYB4.ad.analog.com (10.64.17.132) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1748.37; Thu, 15 Jan 2026 07:33:25 -0500 Received: from zeus.spd.analog.com (10.66.68.11) by ashbmbx9.ad.analog.com (10.64.17.10) with Microsoft SMTP Server id 15.2.1748.37 via Frontend Transport; Thu, 15 Jan 2026 07:33:25 -0500 Received: from HYB-b1tGeUj4GP1.ad.analog.com (HYB-b1tGeUj4GP1.ad.analog.com [10.48.65.177]) by zeus.spd.analog.com (8.15.1/8.15.1) with ESMTP id 60FCVsdH030437; Thu, 15 Jan 2026 07:32:15 -0500 From: Antoniu Miclaus To: Peter Rosin , Rob Herring , "Krzysztof Kozlowski" , Conor Dooley , "Antoniu Miclaus" , Srinivas Kandagatla , Johan Hovold , Bartosz Golaszewski , David Lechner , , Subject: [PATCH v3 3/4] dt-bindings: mux: gpio-mux: add adi,adg2404 support Date: Thu, 15 Jan 2026 14:18:21 +0200 Message-ID: <20260115121943.23715-4-antoniu.miclaus@analog.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260115121943.23715-1-antoniu.miclaus@analog.com> References: <20260115121943.23715-1-antoniu.miclaus@analog.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 X-ADIRuleOP-NewSCL: Rule Triggered X-Authority-Analysis: v=2.4 cv=QqtTHFyd c=1 sm=1 tr=0 ts=6968de97 cx=c_pps a=3WNzaoukacrqR9RwcOSAdA==:117 a=3WNzaoukacrqR9RwcOSAdA==:17 a=vUbySO9Y5rIA:10 a=VkNPw1HP01LnGYTKEx00:22 a=gAnH3GRIAAAA:8 a=d69XwWKql13BdTNXT4sA:9 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMTE1MDA5MiBTYWx0ZWRfX4aJP8bIWOU8H 2qCRwoPpM9MvcThqou8Jp/N0bjo7QAQhfqc6Aq5t3XaCl6oCv3lYVeKvQvwe6tiDv7Ye30vbnRT EBThUxCiZW2SqVbuFKSPUmWTpgHZpPSF0qT6br2WDgxrM9RGwdUvtcmF5wstxSq5SFhtm99UmfA 53yp8tNlY3B9d++nZo3LOp2hmKK5aSHD/ZA8ACgLN7vhpzantJawbbVNSHAUwROAcDHDTr7jl3G 4EM6Wjjqlt4uAxCmYcgKxDJSR4WEdDZO8p3IgNcONYsATf2fOSeJxLux5Ynwd4paRaoICJ27DC8 ojt/T6MjpCkHCJgTStN/FKcye8ho3T7S/nt038Ytm40XQYDLLFaKBdEFizEDEL3Fe8P3cEMiqsp pIjqYJrrO+rlUdcGv6k0Cau1swLPhJynhd8p/f+DP5Cy3MsimtZ0lENKrFEFV4X6xN3EIolwGtl MdbEBtn8UxtKBtNhU1A== X-Proofpoint-GUID: uMlUc90o8NqbwW4gx8SBJENte20-OuH4 X-Proofpoint-ORIG-GUID: uMlUc90o8NqbwW4gx8SBJENte20-OuH4 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2026-01-15_03,2026-01-14_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 bulkscore=0 spamscore=0 priorityscore=1501 impostorscore=0 phishscore=0 clxscore=1011 suspectscore=0 malwarescore=0 adultscore=0 lowpriorityscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2512120000 definitions=main-2601150092 Content-Type: text/plain; charset="utf-8" Add adi,adg2404 as a compatible string. The ADG2404 is a 4:1 analog multiplexer that uses the enable-gpios feature. Signed-off-by: Antoniu Miclaus --- changes in v3: * integrate with gpio-mux bindings instead of separate adi,adg2404.yaml --- .../devicetree/bindings/mux/gpio-mux.yaml | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/Documentation/devicetree/bindings/mux/gpio-mux.yaml b/Document= ation/devicetree/bindings/mux/gpio-mux.yaml index 199792d42323..f5866b9f46dd 100644 --- a/Documentation/devicetree/bindings/mux/gpio-mux.yaml +++ b/Documentation/devicetree/bindings/mux/gpio-mux.yaml @@ -19,7 +19,9 @@ description: |+ =20 properties: compatible: - const: gpio-mux + enum: + - gpio-mux + - adi,adg2404 =20 mux-gpios: description: @@ -107,4 +109,19 @@ examples: }; }; }; + + - | + /* ADG2404 4:1 multiplexer with enable GPIO */ + #include + + mux-controller { + compatible =3D "adi,adg2404"; + #mux-control-cells =3D <0>; + + mux-gpios =3D <&gpio 1 GPIO_ACTIVE_HIGH>, + <&gpio 2 GPIO_ACTIVE_HIGH>; + enable-gpios =3D <&gpio 3 GPIO_ACTIVE_HIGH>; + + idle-state =3D <0>; /* Select channel S1 when idle */ + }; ... --=20 2.43.0 From nobody Sun Feb 8 15:07:59 2026 Received: from mx0b-00128a01.pphosted.com (mx0a-00128a01.pphosted.com [148.163.135.77]) (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 B00AD399A5B; Thu, 15 Jan 2026 12:33:50 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=148.163.135.77 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768480432; cv=none; b=JMDIZNB0S5asVaHtrbrxZ2fInRlesrbxs+p0GTari5uEhvCKPNbU4e9f1aJMBJm1FT2FRY9OijbuI0FZC5LwK5o//6GP7EW/V8iWtNmLT1pYcnyEIXPv/fC9L9KrVI17wd+aIT+lvQFBLkfY3h69IOzyVnOia6qHi+UWEDSWEsU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768480432; c=relaxed/simple; bh=9mOOR+Je3ReWIlesOdPsIINW//sPs64vu30o+8k7PmY=; h=From:To:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=QYp2k2jsmU8wUNWhd4eGR8qHNuSn7uthfeLfe5zH/Uj/LCfWEGznh2Qslf0FTdXCy6u7eE+DfNAjE8N84AanipuiP6PItjZrGZsQPTuIxNtguSQqPUyu4KneBrM2OTf68txcwBFVhfit+eGVSI9KzeElKqoSHWTsaq1eUGjIse4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=analog.com; spf=pass smtp.mailfrom=analog.com; dkim=pass (2048-bit key) header.d=analog.com header.i=@analog.com header.b=hAhgRoXF; arc=none smtp.client-ip=148.163.135.77 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=analog.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=analog.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=analog.com header.i=@analog.com header.b="hAhgRoXF" Received: from pps.filterd (m0375855.ppops.net [127.0.0.1]) by mx0b-00128a01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 60F84OH11848658; Thu, 15 Jan 2026 07:33:31 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=analog.com; h= content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=DKIM; bh=WQRqL tdESWRnJ1WjtRivtbHmnOEFFZ5mHAIsYFX2iOA=; b=hAhgRoXFydn20nE9XBuph MVbCiLWIKVvRbqS4SmESYdxMLoKIj6Sbokl9Zf2suhlePvdzLcAxPj0rkO0C5+yK lQW4WETvysfswA9SjnFU4H1mNhW6xih6CBVfpu0HfMRDmfHSkV/jMylfQZFx57se TuzaHqSXjkDigkjEns6ebVz9hnFuoDg7Vx6FGMYNdJCOcTW8Dc6R4fQSBZfCpS4W KBLLQ2nM3MaQ0dIawraUTuNxDSmMJfalMapoLjiVB95xYHWmb4cIwM2GK2oi9JiU dL4Phegc623alTKUkHkHtsg1t8il96e2MUpSmkiX8UVn6ZeDXRGZnHsyq/ENQhwk Q== Received: from nwd2mta4.analog.com ([137.71.173.58]) by mx0b-00128a01.pphosted.com (PPS) with ESMTPS id 4bpn4yb5kg-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 15 Jan 2026 07:33:31 -0500 (EST) Received: from ASHBMBX9.ad.analog.com (ASHBMBX9.ad.analog.com [10.64.17.10]) by nwd2mta4.analog.com (8.14.7/8.14.7) with ESMTP id 60FCXUGG041444 (version=TLSv1/SSLv3 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=FAIL); Thu, 15 Jan 2026 07:33:30 -0500 Received: from ASHBMBX8.ad.analog.com (10.64.17.5) by ASHBMBX9.ad.analog.com (10.64.17.10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1748.37; Thu, 15 Jan 2026 07:33:30 -0500 Received: from zeus.spd.analog.com (10.66.68.11) by ashbmbx8.ad.analog.com (10.64.17.5) with Microsoft SMTP Server id 15.2.1748.37 via Frontend Transport; Thu, 15 Jan 2026 07:33:30 -0500 Received: from HYB-b1tGeUj4GP1.ad.analog.com (HYB-b1tGeUj4GP1.ad.analog.com [10.48.65.177]) by zeus.spd.analog.com (8.15.1/8.15.1) with ESMTP id 60FCVsdI030437; Thu, 15 Jan 2026 07:32:19 -0500 From: Antoniu Miclaus To: Peter Rosin , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Antoniu Miclaus , Srinivas Kandagatla , Johan Hovold , Bartosz Golaszewski , Linus Walleij , David Lechner , , Subject: [PATCH v3 4/4] mux: gpio-mux: add adi,adg2404 support Date: Thu, 15 Jan 2026 14:18:22 +0200 Message-ID: <20260115121943.23715-5-antoniu.miclaus@analog.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260115121943.23715-1-antoniu.miclaus@analog.com> References: <20260115121943.23715-1-antoniu.miclaus@analog.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 X-ADIRuleOP-NewSCL: Rule Triggered X-Proofpoint-ORIG-GUID: yH3waMJZfav1JqjTXrkfoRD0r3FHqjhA X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMTE1MDA5MiBTYWx0ZWRfX7/Qo4fmoTaCF YHrtXnx2az1Hy9jXGK0YRhDPcnJ15pjxrbK6dqCdalkwfRD3lZ654U1VnywTVXjdywSh+8AjntN +QAO4nhTX+ISU1BlDHpFxqrzy1hExiZy4C4qnAYMxC26lQbFV5zD3FpzQaG/6oCdrPbpnDectUe q91UmIvVxbZKB5y55a8G641vTngagCI2q3ris2tG5vmfzB1GzahY441eiwmDnlyFQAQtXPnZWD+ vxgxdKbzwTyEgs3/Uq8Nxn+hooiWPPBPjciRFI4YERkawd1th01lXAk7z6rfOdyZvMcqobBEi00 Ykb3tG37eSfhYDSKps/uIpMRyC9GKH2NgGLo09HWZCb7148iG4fBKajXWoGCOygIYzkenBS3JV+ /bbC6KGdnD5YuO7ZRFeJhjLbvSOtHStXDd7xdS/fVHoGAWOmO4pD9QDnzckdFU2BxF/WxXYfikL BNbeorEXG10pL2TNM2w== X-Proofpoint-GUID: yH3waMJZfav1JqjTXrkfoRD0r3FHqjhA X-Authority-Analysis: v=2.4 cv=Xoj3+FF9 c=1 sm=1 tr=0 ts=6968de9b cx=c_pps a=3WNzaoukacrqR9RwcOSAdA==:117 a=3WNzaoukacrqR9RwcOSAdA==:17 a=vUbySO9Y5rIA:10 a=VkNPw1HP01LnGYTKEx00:22 a=gAnH3GRIAAAA:8 a=3zS33ksJxgkuVerCQ9wA:9 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2026-01-15_03,2026-01-14_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 impostorscore=0 phishscore=0 adultscore=0 malwarescore=0 clxscore=1011 lowpriorityscore=0 suspectscore=0 spamscore=0 priorityscore=1501 bulkscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2512120000 definitions=main-2601150092 Content-Type: text/plain; charset="utf-8" Add adi,adg2404 to the compatible list. The ADG2404 is a 4:1 analog multiplexer that benefits from the enable GPIO support to prevent glitches during channel transitions. Signed-off-by: Antoniu Miclaus --- changes in v3: * integrate with gpio-mux driver instead of standalone adg2404 driver --- drivers/mux/gpio.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/mux/gpio.c b/drivers/mux/gpio.c index 93487483e81f..bd8f0c617dd6 100644 --- a/drivers/mux/gpio.c +++ b/drivers/mux/gpio.c @@ -59,6 +59,7 @@ static const struct mux_control_ops mux_gpio_ops =3D { =20 static const struct of_device_id mux_gpio_dt_ids[] =3D { { .compatible =3D "gpio-mux", }, + { .compatible =3D "adi,adg2404", }, { /* sentinel */ } }; MODULE_DEVICE_TABLE(of, mux_gpio_dt_ids); --=20 2.43.0