From nobody Tue Sep 9 05:50:29 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (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 DD27D26C391; Sat, 6 Sep 2025 09:09:59 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1757149800; cv=none; b=om/KNePq8xy9Mw0oxJCT4AqKKxQXPWYKow5NfPUrLozQdZd8r0SdeXK4A//Vxp9DZAfdonInHYPPT6TSHWpl2tv+I1sxp6a35qB/MIY2WGEzL1+L/3GW4Ww1ybaLrCX1f2CqIcX4XapezBgJ8Yb4HC//P1BcceIJX2YYQqpyRV0= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1757149800; c=relaxed/simple; bh=CKaMxVjr2jWFkmaLip35qyMUvXrsM1VU1NB2L1dKWEQ=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=rNn3UIwTmLlfZZzDWdNgaA7IZABtwa27/XRXDjAMIXa23/NuEz2S0X0wl7/wNCx8otO6Sgr03y7NXsi+EjQDMMFwrC8/deGyhux1ExkA9rpJl/cmn9g/0eeKfWzmtv5DzFTRuLvyFF90ilRwqu4ZTZRPKCa4vHSQP9DvywlQaow= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=SAHSwb6+; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="SAHSwb6+" Received: by smtp.kernel.org (Postfix) with ESMTPSA id A9439C4CEF4; Sat, 6 Sep 2025 09:09:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1757149799; bh=CKaMxVjr2jWFkmaLip35qyMUvXrsM1VU1NB2L1dKWEQ=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=SAHSwb6+5FMtTO2rsGdBGumNvDHdj7GS7PyaP6UEEIjQapAB4Y1FazsW02ps3qxb3 ognqgZA5+nqu2Kz/TeMZ03Iij2Mmxsgy7ED+QHlUO0vtJm1Opb3Yob6WOgxpfpktfD d5n7oMid81tHG6hR8CEZvW83JN6nfXGt3QcA7GnNg7BrYz+lH6IWnfQUBQMny6EHbV 8D8fiAQ/Mg7Q5eikqBJlml+lCFyapnMDGNqbk41GnIEfJUbGl6npyy15tUIXoi/tzx X13Is9+7djfdQ5qJO11sowFxi9hNa9gBsfCe9Yaz9wfYjxFF/d61PD3q3wr06Q5X3L BDAvDPQ49KXDg== From: Andreas Kemnade Date: Sat, 06 Sep 2025 11:09:12 +0200 Subject: [PATCH 1/4] dt-bindings: mfd: sy7636a: Add missing gpio pins and supply 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: <20250906-sy7636-rsrc-v1-1-e2886a9763a7@kernel.org> References: <20250906-sy7636-rsrc-v1-0-e2886a9763a7@kernel.org> In-Reply-To: <20250906-sy7636-rsrc-v1-0-e2886a9763a7@kernel.org> To: Lee Jones , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Alistair Francis , Liam Girdwood , Mark Brown , Shawn Guo , Sascha Hauer , Pengutronix Kernel Team , Fabio Estevam Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, imx@lists.linux.dev, linux-arm-kernel@lists.infradead.org, Andreas Kemnade X-Mailer: b4 0.15-dev-50721 X-Developer-Signature: v=1; a=openpgp-sha256; l=1407; i=akemnade@kernel.org; h=from:subject:message-id; bh=CKaMxVjr2jWFkmaLip35qyMUvXrsM1VU1NB2L1dKWEQ=; b=owGbwMvMwCEm/rzkS6lq2x3G02pJDBm7fwVY2l80u7DcT/GRy07WRQYZ/9nvBn2cvvOc8oUJ3 Ffydm+M6ChlYRDjYJAVU2T5Za3g9knlWW7w1Ah7mDmsTCBDGLg4BWAi0msYGZ6FiL2exPV/iX1L dtO+P8+sfj1pKFUwbL9949K/1JMbV3gxMnz/cuqHprc7m+sGic9pPBb1mz4vzIuR+Oz82oXlmEj tD34A X-Developer-Key: i=akemnade@kernel.org; a=openpgp; fpr=EEC0DB858E66C0DA70620AC07DBD6AC74DE29324 To be able to fully describe how the SY7636A is connected to the system, add properties for the EN and VCOM_EN pins. To squeeze out every bit of unused current, in many devices it is possible to power off the complete chip. Add an input regulator to allow that. Signed-off-by: Andreas Kemnade --- .../devicetree/bindings/mfd/silergy,sy7636a.yaml | 16 ++++++++++++= ++++ 1 file changed, 16 insertions(+) diff --git a/Documentation/devicetree/bindings/mfd/silergy,sy7636a.yaml b/D= ocumentation/devicetree/bindings/mfd/silergy,sy7636a.yaml index ee0be32ac0204..08ad593e237f1 100644 --- a/Documentation/devicetree/bindings/mfd/silergy,sy7636a.yaml +++ b/Documentation/devicetree/bindings/mfd/silergy,sy7636a.yaml @@ -32,6 +32,22 @@ properties: Specifying the power good GPIOs. maxItems: 1 =20 + en-gpios: + description: + If EN pin is not hardwired, specify it here to have it set up. + maxItems: 1 + + vcom-en-gpios: + description: + If VCOM_EN pin is not hardwired, specify it here to have it set up. + maxItems: 1 + + vin-supply: + description: + Supply for the chip. Some vendor kernels and devicetrees declare this + as a GPIO named "pwrall" which does not exist in the datasheet, + disabling it makes the chip disappear on the bus. + regulators: type: object =20 --=20 2.39.5 From nobody Tue Sep 9 05:50:29 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (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 A1BE826C391; Sat, 6 Sep 2025 09:10:03 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1757149804; cv=none; b=LLzbS2I+IXCF6w/10U2WOgifdtmZG37gHJcKeF2Jiai+Bf0TqzqpFnVgrh4MElL8dZ5CUR+q7fZe9o+luJNwaZuPpRS3EVbYDNRMQ78BmDqm+psD42yM7OUGe8DmrxdaeCQkBzGVRuqhUVBrzi1XP3U6xcsD0Q6zqThHeK1CB+c= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1757149804; c=relaxed/simple; bh=pSNaD3syxyAkp0oDtLOoghbbuLA05KsJaZn/Ggv/oP4=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=oMsnebIR9VHFfF8cvaC2OzX3MjxdzSuTxPDIeuThQSDpZDqxnYuDz/Yiq7yF52iLojKjVE4d8lWutuLbynihIAlitjrFYeXAD3hQwnzbDl7/fe0EOVjdSyXvP6HL3GpV7FSJlwdstvLLZl1HVaDtJT6EjV4TyuDHbm6JTdKaDnk= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=sIqnrFE+; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="sIqnrFE+" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 31934C4CEE7; Sat, 6 Sep 2025 09:10:00 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1757149803; bh=pSNaD3syxyAkp0oDtLOoghbbuLA05KsJaZn/Ggv/oP4=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=sIqnrFE+V5sSoLhGvf63EJsJQ4sFaV9HrAMbCzZufeFudIhg8FpopUUV55yCPxnAa XI10q7gDIf2BmXGLaPlH5fy0nwBf8g540IgDQC5diMOh9TsGDhOwsvTt9df1vBr3kt ZbJHelzGBH+P8zr0uVXeaj/ym+ZNk15TOb5EGLHv9H+wVC6W+zT6ZsvgyqDe6+kLLw SUjJ291vQRNqTgGrN9QKKK2yNjTAO0QaHvlhXe2xDVdcxnO1pKWL6rXJMEfuWBHeGa PIeRKooJITwMWhvZu1R+lZKzYobCrLXYon1OPNA1QEd8962N39wzvRxjik3wtLzBj2 7zOFxa+3w/Irw== From: Andreas Kemnade Date: Sat, 06 Sep 2025 11:09:13 +0200 Subject: [PATCH 2/4] regulator: sy7636a: fix lifecycle of power good gpio 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: <20250906-sy7636-rsrc-v1-2-e2886a9763a7@kernel.org> References: <20250906-sy7636-rsrc-v1-0-e2886a9763a7@kernel.org> In-Reply-To: <20250906-sy7636-rsrc-v1-0-e2886a9763a7@kernel.org> To: Lee Jones , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Alistair Francis , Liam Girdwood , Mark Brown , Shawn Guo , Sascha Hauer , Pengutronix Kernel Team , Fabio Estevam Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, imx@lists.linux.dev, linux-arm-kernel@lists.infradead.org, Andreas Kemnade X-Mailer: b4 0.15-dev-50721 X-Developer-Signature: v=1; a=openpgp-sha256; l=1431; i=akemnade@kernel.org; h=from:subject:message-id; bh=pSNaD3syxyAkp0oDtLOoghbbuLA05KsJaZn/Ggv/oP4=; b=owGbwMvMwCEm/rzkS6lq2x3G02pJDBm7fwWK56ua/g/9yiC7ZtoOJ/YFupcWsWl0fAz7sNnj5 7QrOpNOdJSyMIhxMMiKKbL8slZw+6TyLDd4aoQ9zBxWJpAhDFycAjCR/eKMDH0tLwL0hcxZD6gy FfxW2rXypqL61DIBh4jYY1skLjD8tWT4H8e/5VKNO3P1myMFlqvyw4SSGmbdb42OnLJrUtXzg7y ZzAA= X-Developer-Key: i=akemnade@kernel.org; a=openpgp; fpr=EEC0DB858E66C0DA70620AC07DBD6AC74DE29324 Attach the power good gpio to the regulator device devres instead of the parent device to fix problems if probe is run multiple times (rmmod/insmod or some deferral). Fixes: 8c485bedfb785 ("regulator: sy7636a: Initial commit") Signed-off-by: Andreas Kemnade Reviewed-by: Alistair Francis Reviewed-by: Peng Fan --- drivers/regulator/sy7636a-regulator.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/drivers/regulator/sy7636a-regulator.c b/drivers/regulator/sy76= 36a-regulator.c index d1e7ba1fb3e1a..27e3d939b7bb9 100644 --- a/drivers/regulator/sy7636a-regulator.c +++ b/drivers/regulator/sy7636a-regulator.c @@ -83,9 +83,11 @@ static int sy7636a_regulator_probe(struct platform_devic= e *pdev) if (!regmap) return -EPROBE_DEFER; =20 - gdp =3D devm_gpiod_get(pdev->dev.parent, "epd-pwr-good", GPIOD_IN); + device_set_of_node_from_dev(&pdev->dev, pdev->dev.parent); + + gdp =3D devm_gpiod_get(&pdev->dev, "epd-pwr-good", GPIOD_IN); if (IS_ERR(gdp)) { - dev_err(pdev->dev.parent, "Power good GPIO fault %ld\n", PTR_ERR(gdp)); + dev_err(&pdev->dev, "Power good GPIO fault %ld\n", PTR_ERR(gdp)); return PTR_ERR(gdp); } =20 @@ -105,7 +107,6 @@ static int sy7636a_regulator_probe(struct platform_devi= ce *pdev) } =20 config.dev =3D &pdev->dev; - config.dev->of_node =3D pdev->dev.parent->of_node; config.regmap =3D regmap; =20 rdev =3D devm_regulator_register(&pdev->dev, &desc, &config); --=20 2.39.5 From nobody Tue Sep 9 05:50:29 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (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 4D9A62C1780; Sat, 6 Sep 2025 09:10:06 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1757149807; cv=none; b=JjgV8PLUAoYUPPrm0wCYWG+1GQGbk+ow40VR2Jiqt+QeZhs1+tZWtU72J+hOEZqDE6y8SlHayPx/CiTT4aSxPF+AysemVt2wK0UwWJIxfNERQf3vK5vF+BVX60Hs8L0YOB/P2Fo53KiLQRCoO/p42k+HbOL6C+1AWeJ0c8Kge6A= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1757149807; c=relaxed/simple; bh=msEvFUeisbWsJc6bi1by+MeXaWzZWt4ywptS+2LY1cc=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=TP6Yrq5qSoy5MwVd4VOfljGEErg7S7e8qRX1MYdeeVYp8wqC+rHfiH1t1+qRukQFBlCAwitkxPKcW9mqr7uQwh9ALDK0E6APXlCfxn8VEm/FTRFTyIiy3h9ylyl95QpdcDJo3MfVkz+PRXwLaPQ+XItsYGFCe/DtPgsyBohYON0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=kkkU5gVq; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="kkkU5gVq" Received: by smtp.kernel.org (Postfix) with ESMTPSA id B8212C4CEF9; Sat, 6 Sep 2025 09:10:03 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1757149806; bh=msEvFUeisbWsJc6bi1by+MeXaWzZWt4ywptS+2LY1cc=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=kkkU5gVqUfZJcXEKrsU0vjRRCs93ObZOOdvb/2Ir4sweO4xVcDHaK1+85a3Bi/F1p HD0DCKCVdacG0LnIM6+pWq/HEuUFJ02yNpqdbXN/YfPZ9dB3a1RK0DhZDpeUAY1+mv qrTyb8fnycaXtj70UNPpqRVaQQu+W4f7W+g64bdFO6AaR+j64tl5lAKw52i/djKgVl EOMM/oJctUiG4PAKkxndQA4lYf6gvHKmbjyNg1kFUt4Yq6/QMQJ0c+nPqWlyge0OEv 8r+AdES5UDDCVpug/WIocnhY23vXngjbQbbS2oHpHrMlf4AakQtr610B8QmIyErYxN 8eqfesb7JoKZA== From: Andreas Kemnade Date: Sat, 06 Sep 2025 11:09:14 +0200 Subject: [PATCH 3/4] regulator: sy7636a: add gpios and input regulator 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: <20250906-sy7636-rsrc-v1-3-e2886a9763a7@kernel.org> References: <20250906-sy7636-rsrc-v1-0-e2886a9763a7@kernel.org> In-Reply-To: <20250906-sy7636-rsrc-v1-0-e2886a9763a7@kernel.org> To: Lee Jones , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Alistair Francis , Liam Girdwood , Mark Brown , Shawn Guo , Sascha Hauer , Pengutronix Kernel Team , Fabio Estevam Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, imx@lists.linux.dev, linux-arm-kernel@lists.infradead.org, Andreas Kemnade X-Mailer: b4 0.15-dev-50721 X-Developer-Signature: v=1; a=openpgp-sha256; l=2073; i=akemnade@kernel.org; h=from:subject:message-id; bh=msEvFUeisbWsJc6bi1by+MeXaWzZWt4ywptS+2LY1cc=; b=owGbwMvMwCEm/rzkS6lq2x3G02pJDBm7fwUuqNWOnBQgvK/Jrv5Vprr5Mb7sDzIy3y69lQ6zt p36PuNrRykLgxgHg6yYIssvawW3TyrPcoOnRtjDzGFlAhnCwMUpABMRfMDw32399+sOxpUN+0IX Z6+3XSA/pUEuwz14pat2fg7X7Jzycwz/I240bth+Zet+t/0byvhjkp+IajZbXpRljlA5fSws9eI LHgA= X-Developer-Key: i=akemnade@kernel.org; a=openpgp; fpr=EEC0DB858E66C0DA70620AC07DBD6AC74DE29324 Initialize input regulator and gpios to proper values to have things basically working as well as in the case when these things are hardwired. Signed-off-by: Andreas Kemnade --- drivers/regulator/sy7636a-regulator.c | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/drivers/regulator/sy7636a-regulator.c b/drivers/regulator/sy76= 36a-regulator.c index 27e3d939b7bb9..bd8739624c727 100644 --- a/drivers/regulator/sy7636a-regulator.c +++ b/drivers/regulator/sy7636a-regulator.c @@ -12,6 +12,7 @@ #include #include #include +#include #include #include #include @@ -19,6 +20,8 @@ struct sy7636a_data { struct regmap *regmap; struct gpio_desc *pgood_gpio; + struct gpio_desc *en_gpio; + struct gpio_desc *vcom_en_gpio; }; =20 static int sy7636a_get_vcom_voltage_op(struct regulator_dev *rdev) @@ -98,6 +101,29 @@ static int sy7636a_regulator_probe(struct platform_devi= ce *pdev) data->regmap =3D regmap; data->pgood_gpio =3D gdp; =20 + ret =3D devm_regulator_get_enable_optional(&pdev->dev, "vin"); + if (ret) + return dev_err_probe(&pdev->dev, ret, + "failed to get vin regulator\n"); + + data->en_gpio =3D devm_gpiod_get_optional(&pdev->dev, "en", + GPIOD_OUT_HIGH); + if (IS_ERR(data->en_gpio)) + return dev_err_probe(&pdev->dev, + PTR_ERR(data->en_gpio), + "failed to get en gpio\n"); + + /* Let VCOM just follow the default power on sequence */ + data->vcom_en_gpio =3D devm_gpiod_get_optional(&pdev->dev, + "vcom-en", GPIOD_OUT_LOW); + if (IS_ERR(data->vcom_en_gpio)) + return dev_err_probe(&pdev->dev, + PTR_ERR(data->en_gpio), + "failed to get en gpio\n"); + + if (data->en_gpio) + usleep_range(2500, 4000); + platform_set_drvdata(pdev, data); =20 ret =3D regmap_write(regmap, SY7636A_REG_POWER_ON_DELAY_TIME, 0x0); --=20 2.39.5 From nobody Tue Sep 9 05:50:29 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (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 C22A92989B0; Sat, 6 Sep 2025 09:10:10 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1757149810; cv=none; b=hwpbom2dMVBSPMm+iA/xVmg7u3p/Sh8QaYp6troUNUWb5x6SolDhrI3c5hdfBvgqk/airbMMmTgle8kvSA775tPWJlBQFsPpw0bzgAzpbTNwliIzx1zYTzXTbLP+uD8zRDrqEp2ODg8IWe5d+SlxYlcQ9uB1q4ZUicM87qcG0SA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1757149810; c=relaxed/simple; bh=n7BaLx5oCoMZmaq4FFR+ACT0mdO1lnO5qbl1jAWEp2Q=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=EotYBZ54KrpgDNHpojpscRMhptzvQHoGtfWnq3cgZMKg+SKKaMs1PUa7+3rC5k4BxSsl/ayQ9GM4kU2v/LVl8FHyrPpE729xIMjCMq23dPXmj0nBWRDsBU4Zh3OvOotDb48yb05M0EEpmygNQiHzdomWKBCBKLI+2qkWGjbTnAg= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=a9tJUrFA; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="a9tJUrFA" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 3ED41C4CEF4; Sat, 6 Sep 2025 09:10:07 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1757149810; bh=n7BaLx5oCoMZmaq4FFR+ACT0mdO1lnO5qbl1jAWEp2Q=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=a9tJUrFAagBKbyPjXV3/d0t7wE/INc6tjYGqLwaErDO7RyA0or12RCNquhWJQNMu5 aDCj9uq4lFaLQ2TPqkPu7nrcNINxuuqn+7eTqPycG5mS07dc8u5yo7oTq0R0fqNCR9 LfKOirgyJEhD9vBcZThVsZVmMee3ohCUnyMQFNi1yzvgsAU8LGVDa/XeXHnHXhG4zs +9khMFURFcJrKao8oz/49o2t92XVEc/mn80eSw916Qvke5dYGiMdXrSYshJsiiUat7 Zog31XG0fO7LcJRYkP/CDxwu7QGoQUTvA7CrvxrVRCJuiWTvSGe0gNBpuE7qUWAPLU BNE1IpKOe+0dw== From: Andreas Kemnade Date: Sat, 06 Sep 2025 11:09:15 +0200 Subject: [PATCH 4/4] ARM: dts: imx: e70k02: add sy7636 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: <20250906-sy7636-rsrc-v1-4-e2886a9763a7@kernel.org> References: <20250906-sy7636-rsrc-v1-0-e2886a9763a7@kernel.org> In-Reply-To: <20250906-sy7636-rsrc-v1-0-e2886a9763a7@kernel.org> To: Lee Jones , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Alistair Francis , Liam Girdwood , Mark Brown , Shawn Guo , Sascha Hauer , Pengutronix Kernel Team , Fabio Estevam Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, imx@lists.linux.dev, linux-arm-kernel@lists.infradead.org, Andreas Kemnade X-Mailer: b4 0.15-dev-50721 X-Developer-Signature: v=1; a=openpgp-sha256; l=4828; i=akemnade@kernel.org; h=from:subject:message-id; bh=n7BaLx5oCoMZmaq4FFR+ACT0mdO1lnO5qbl1jAWEp2Q=; b=owGbwMvMwCEm/rzkS6lq2x3G02pJDBm7fyXICnhyTshu6ZCy+OtrE1nseop3kkeQQVHVk6fa+ y/fti7qKGVhEONgkBVTZPllreD2SeVZbvDUCHuYOaxMIEMYuDgFYCInsxgZjok4yEzkD5Ir5pz0 aJfoifSEr6aL/Pb2H++Mfl+7SGptMMP/TM4MY8O7Vz+3qhWbtvJyH/pZ6Rxx+cSV1uBDd3Iez+F gBAA= X-Developer-Key: i=akemnade@kernel.org; a=openpgp; fpr=EEC0DB858E66C0DA70620AC07DBD6AC74DE29324 Add the EPD PMIC for the e70k02 based devices as a step towards full EPD support. Signed-off-by: Andreas Kemnade Acked-by: Alistair Francis --- arch/arm/boot/dts/nxp/imx/e70k02.dtsi | 25 ++++++++++++++++++= +++- .../arm/boot/dts/nxp/imx/imx6sl-tolino-vision5.dts | 24 ++++++++++++++++++= +++ .../arm/boot/dts/nxp/imx/imx6sll-kobo-librah2o.dts | 24 ++++++++++++++++++= +++ 3 files changed, 72 insertions(+), 1 deletion(-) diff --git a/arch/arm/boot/dts/nxp/imx/e70k02.dtsi b/arch/arm/boot/dts/nxp/= imx/e70k02.dtsi index dcc3c9d488a88..5f6b7545a0c0c 100644 --- a/arch/arm/boot/dts/nxp/imx/e70k02.dtsi +++ b/arch/arm/boot/dts/nxp/imx/e70k02.dtsi @@ -69,6 +69,14 @@ memory@80000000 { reg =3D <0x80000000 0x20000000>; }; =20 + epd_pmic_supply: regulator-epd-pmic-in { + compatible =3D "regulator-fixed"; + regulator-name =3D "epd_pmic_supply"; + gpio =3D <&gpio2 14 GPIO_ACTIVE_HIGH>; + startup-delay-us =3D <20000>; + enable-active-high; + }; + reg_wifi: regulator-wifi { compatible =3D "regulator-fixed"; regulator-name =3D "SD3_SPWR"; @@ -133,7 +141,22 @@ touchscreen@24 { vdd-supply =3D <&ldo5_reg>; }; =20 - /* TODO: SY7636 PMIC for E Ink at 0x62 */ + sy7636: pmic@62 { + compatible =3D "silergy,sy7636a"; + reg =3D <0x62>; + en-gpios =3D <&gpio2 8 GPIO_ACTIVE_HIGH>; + vcom-en-gpios =3D <&gpio2 3 GPIO_ACTIVE_HIGH>; + epd-pwr-good-gpios =3D <&gpio2 13 GPIO_ACTIVE_HIGH>; + vin-supply =3D <&epd_pmic_supply>; + + #thermal-sensor-cells =3D <0>; + + regulators { + reg_epdpmic: vcom { + regulator-name =3D "vcom"; + }; + }; + }; =20 }; =20 diff --git a/arch/arm/boot/dts/nxp/imx/imx6sl-tolino-vision5.dts b/arch/arm= /boot/dts/nxp/imx/imx6sl-tolino-vision5.dts index a2534c422a522..f8709a9524093 100644 --- a/arch/arm/boot/dts/nxp/imx/imx6sl-tolino-vision5.dts +++ b/arch/arm/boot/dts/nxp/imx/imx6sl-tolino-vision5.dts @@ -26,6 +26,11 @@ / { compatible =3D "kobo,tolino-vision5", "fsl,imx6sl"; }; =20 +&epd_pmic_supply { + pinctrl-names =3D "default"; + pinctrl-0 =3D <&pinctrl_epd_pmic_supply>; +}; + &gpio_keys { pinctrl-names =3D "default"; pinctrl-0 =3D <&pinctrl_gpio_keys>; @@ -59,6 +64,12 @@ MX6SL_PAD_FEC_RXD1__GPIO4_IO18 0x10059 /* TP_RS= T */ >; }; =20 + pinctrl_epd_pmic_supply: epd-pmic-supplygrp { + fsl,pins =3D < + MX6SL_PAD_EPDC_PWRWAKEUP__GPIO2_IO14 0x40010059 + >; + }; + pinctrl_gpio_keys: gpio-keysgrp { fsl,pins =3D < MX6SL_PAD_FEC_CRS_DV__GPIO4_IO25 0x17059 /* PWR_SW */ @@ -159,6 +170,14 @@ MX6SL_PAD_KEY_COL2__GPIO3_IO28 0x1b8b1 /* ricoh619 ba= t_low_int */ >; }; =20 + pinctrl_sy7636_gpio: sy7636-gpiogrp { + fsl,pins =3D < + MX6SL_PAD_EPDC_VCOM0__GPIO2_IO03 0x40010059 /* VCOM_CTRL */ + MX6SL_PAD_EPDC_PWRCTRL1__GPIO2_IO08 0x40010059 /* EN */ + MX6SL_PAD_EPDC_PWRSTAT__GPIO2_IO13 0x17059 /* PWR_GOOD */ + >; + }; + pinctrl_uart1: uart1grp { fsl,pins =3D < MX6SL_PAD_UART1_TXD__UART1_TX_DATA 0x1b0b1 @@ -329,6 +348,11 @@ &ricoh619 { pinctrl-0 =3D <&pinctrl_ricoh_gpio>; }; =20 +&sy7636 { + pinctrl-names =3D "default"; + pinctrl-0 =3D <&pinctrl_sy7636_gpio>; +}; + &uart1 { pinctrl-names =3D "default"; pinctrl-0 =3D <&pinctrl_uart1>; diff --git a/arch/arm/boot/dts/nxp/imx/imx6sll-kobo-librah2o.dts b/arch/arm= /boot/dts/nxp/imx/imx6sll-kobo-librah2o.dts index 660620d226f71..19bbe60331b36 100644 --- a/arch/arm/boot/dts/nxp/imx/imx6sll-kobo-librah2o.dts +++ b/arch/arm/boot/dts/nxp/imx/imx6sll-kobo-librah2o.dts @@ -36,6 +36,11 @@ &cpu0 { soc-supply =3D <&dcdc1_reg>; }; =20 +&epd_pmic_supply { + pinctrl-names =3D "default"; + pinctrl-0 =3D <&pinctrl_epd_pmic_supply>; +}; + &gpio_keys { pinctrl-names =3D "default"; pinctrl-0 =3D <&pinctrl_gpio_keys>; @@ -69,6 +74,12 @@ MX6SLL_PAD_GPIO4_IO18__GPIO4_IO18 0x10059 /* TP_RST */ >; }; =20 + pinctrl_epd_pmic_supply: epd-pmic-supplygrp { + fsl,pins =3D < + MX6SLL_PAD_EPDC_PWR_WAKE__GPIO2_IO14 0x40010059 + >; + }; + pinctrl_gpio_keys: gpio-keysgrp { fsl,pins =3D < MX6SLL_PAD_GPIO4_IO25__GPIO4_IO25 0x17059 /* PWR_SW */ @@ -169,6 +180,14 @@ MX6SLL_PAD_KEY_COL2__GPIO3_IO28 0x1b8b1 /* ricoh619 b= at_low_int */ >; }; =20 + pinctrl_sy7636_gpio: sy7636-gpiogrp { + fsl,pins =3D < + MX6SLL_PAD_EPDC_VCOM0__GPIO2_IO03 0x40010059 /* VCOM_CTRL */ + MX6SLL_PAD_EPDC_PWR_CTRL1__GPIO2_IO08 0x40010059 /* EN */ + MX6SLL_PAD_EPDC_PWR_STAT__GPIO2_IO13 0x17059 /* PWR_GOOD */ + >; + }; + pinctrl_uart1: uart1grp { fsl,pins =3D < MX6SLL_PAD_UART1_TXD__UART1_DCE_TX 0x1b0b1 @@ -319,6 +338,11 @@ &ricoh619 { pinctrl-0 =3D <&pinctrl_ricoh_gpio>; }; =20 +&sy7636 { + pinctrl-names =3D "default"; + pinctrl-0 =3D <&pinctrl_sy7636_gpio>; +}; + &uart1 { pinctrl-names =3D "default"; pinctrl-0 =3D <&pinctrl_uart1>; --=20 2.39.5