From nobody Sun Feb 8 19:13:06 2026 Received: from smtpdh18-1.aruba.it (smtpdh18-1.aruba.it [62.149.155.132]) (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 F1DCF4F5FA for ; Thu, 11 Apr 2024 17:01:10 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=62.149.155.132 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1712854874; cv=none; b=o3Z4GJr8X1ON6cI8LBjQEzpyZPDIS8yJ0v0vzRkz0Xk6tsvXAdXe2+0q29y2VVuCHUteq20sDbksCd8800C7FAC2MiASEN68yHXKm985ufwxJH+YaSrVS60FCfSkRZWETuxtwrR2dTqscmhkDFoOoGpHON2eon9gUjxKsyVCvo0= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1712854874; c=relaxed/simple; bh=wokwSIBQiIeFcBRXPB14uD6rIQQtKsyeMXpmFXC5hCc=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=BVToAoksSM6ID2MfoWC3J4fTP9X2VzRz3symjeQ0L+8cmvSEfbEp4an2C7NZMIwHZaQ3vFyWPk+2Uuz1ktoHFD8MW6B9fiLrFQ7oG1eIORwoH/TNmMO8keb176tQTIF6URWDaw7DStLXX68SVuRZxglmuAiJ3BrKAujW4UPSEyo= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=engicam.com; spf=pass smtp.mailfrom=engicam.com; dkim=pass (2048-bit key) header.d=aruba.it header.i=@aruba.it header.b=YCeYWXVg; arc=none smtp.client-ip=62.149.155.132 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=engicam.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=engicam.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=aruba.it header.i=@aruba.it header.b="YCeYWXVg" Received: from engicam.com ([77.32.15.153]) by Aruba Outgoing Smtp with ESMTPSA id uxkPr7ow7wcFeuxkQrcyeL; Thu, 11 Apr 2024 18:58:02 +0200 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=aruba.it; s=a1; t=1712854682; bh=wokwSIBQiIeFcBRXPB14uD6rIQQtKsyeMXpmFXC5hCc=; h=From:To:Subject:Date:MIME-Version; b=YCeYWXVg928xf8y/IWDS+fmzqnm9YeCAz5vbm7ReRvzFqfzyFtIRKqOQvqMKQ/MCo MYrO+GpkxsNYCmXd3AJHQfYQqNU6RU0ECHbdnK1GAqDEfAAT6KZbiOCa+Q3jAkuDvg /5zzQQV5X6DyzJASfiks236XxWgBH89SfsNJh1FX06UyhTj6iAnV2/nkjaY6Fln/GH ydN/vGFmoAnZBGlNiINlpqEK8g3ArVbt2inrrMICovgqz1eQojQWUI2/eYv0NymIjP 0KdFjmnhq6Zd7hvaSKjjYL0BwrgaUztF9r70UN/flRvOyyoI5PZeCU8uyGr2zlRbi1 VRaNs3nX+OM3w== From: Fabio Aiuto To: Mark Brown , Liam Girdwood , Krzysztof Kozlowski , Rob Herring , Conor Dooley Cc: Robin Gong , devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Matteo Lisi , Mirko Ardinghi Subject: [PATCH v3 1/2] regulator: dt-bindings: pca9450: add PMIC_RST_B warm reset property Date: Thu, 11 Apr 2024 18:58:00 +0200 Message-Id: <20240411165801.143160-2-fabio.aiuto@engicam.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20240411165801.143160-1-fabio.aiuto@engicam.com> References: <20240411165801.143160-1-fabio.aiuto@engicam.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-CMAE-Envelope: MS4xfJYRY/5Ve08dc1q/JaUZVbtbk14aNWluJ7DfA7lGePbtos/ErNjMJzXXPKUbX/pIHdlzqbCgyaHmVkWKnqfO//WkXh9vAdXvAySzk82jYhykv1eSISF4 9qn8lRVbuQFqiHUGVT0q8CVbDwvTNsZcMhwknMyazijrz3eztZQl4O1vmP/lvGzwvP3R8THiPQBWx9/mRK+0lLoRfl8AZ0jrbeZXEn2CaJGnVgCjFceH5oL3 J/SuoMUILSUCcaGlXOXN+kS/oo3IZieC+jYeGvTQZI17LzJqzMu7eV2c9BRIyiwpd515qaR5XsqROrir0ROvd5OQ+LlSPK6JUGd/FkKCfQ9N0RY1yMpkCEwb J57ktMvaQHtOa4pELOrv0Z+r9qF87rNTPhXym+IW9rqu8NIt7MBqN5J8lTmAL7MovtfZPtA/EMM6wUYqX1+FFtwhQW4f6lQRwoPpmHQ2jiWVwqhuM1aBwAhw jsw2Zv8mlL8I4ehV Content-Type: text/plain; charset="utf-8" Add property to trigger warm reset on PMIC_RST_B assertion Cc: Matteo Lisi Cc: Mirko Ardinghi Signed-off-by: Fabio Aiuto --- .../bindings/regulator/nxp,pca9450-regulator.yaml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Documentation/devicetree/bindings/regulator/nxp,pca9450-regula= tor.yaml b/Documentation/devicetree/bindings/regulator/nxp,pca9450-regulato= r.yaml index 849bfa50bdba..865b259dac37 100644 --- a/Documentation/devicetree/bindings/regulator/nxp,pca9450-regulator.yaml +++ b/Documentation/devicetree/bindings/regulator/nxp,pca9450-regulator.yaml @@ -93,6 +93,12 @@ properties: When WDOG_B signal is asserted a warm reset will be done instead of = cold reset. =20 + nxp,pmic-rst-b-warm-reset: + type: boolean + description: + When PMIC_RST_B signal is asserted a warm reset will be done instead= of cold + reset. + required: - compatible - reg --=20 2.34.1 From nobody Sun Feb 8 19:13:06 2026 Received: from smtpdh18-1.aruba.it (smtpdh18-1.aruba.it [62.149.155.132]) (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 AE8704F890 for ; Thu, 11 Apr 2024 17:01:11 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=62.149.155.132 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1712854875; cv=none; b=fav5rciTK7gqPk5O1QMNIGUpk5IarzftRyGeazu3c7uxG68bPsq27vb2ytBBmxStZSNTsMR6pF0zLpQG6AA0hFiZb+TKnIxDwToBrlGacNc0ujLA46AsvGd1joCehVQYTNCXTjbUEGG2lvw/vNYMUt/DObEWQd4jgcVw4DpvZ7g= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1712854875; c=relaxed/simple; bh=KCcJfOmxJYJnvn9ISK24CrnwVdcYHY0uQ34DDVMZgBw=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=gQSSK0YZBsVGZnBDJljnDWA079n/i/fxysEUczAFYZfwooI+kvTN3o6dxGjgISmLjSzOlClTIqm9JUJ4/M6aKowvA+3vsgPh9ewEYXDPfrlfUiI7JzyMkI+qn7NTKujSyMERspSif0z1Z7Gy5FFbOSmLhk/BlyJtmN+sU2lNppE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=engicam.com; spf=pass smtp.mailfrom=engicam.com; dkim=pass (2048-bit key) header.d=aruba.it header.i=@aruba.it header.b=ew59QKNq; arc=none smtp.client-ip=62.149.155.132 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=engicam.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=engicam.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=aruba.it header.i=@aruba.it header.b="ew59QKNq" Received: from engicam.com ([77.32.15.153]) by Aruba Outgoing Smtp with ESMTPSA id uxkPr7ow7wcFeuxkQrcyee; Thu, 11 Apr 2024 18:58:03 +0200 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=aruba.it; s=a1; t=1712854683; bh=KCcJfOmxJYJnvn9ISK24CrnwVdcYHY0uQ34DDVMZgBw=; h=From:To:Subject:Date:MIME-Version; b=ew59QKNq/dbvf09XUQXPFM11uk+0XOHJ0L01PPrB145QB6nseDenN0R/m6y0i2fMt 1lKGtSMvmbFnnxoz4obSrXvTJZiuub0+lopDsrR6qJwItZgPt9exbDDLauMnDnnIrs oNaETgyzbnYUPYk6w+FOP05AmY67FgnOWMcCyCfq36BbblePZZUn8ZdCAx4UFepcOK Jdi13I0WyL5QbxS8hPjdiFCSk6MPajnKA3/U0WM8uPmDnpgIyUhJG6cZeZ+/uk1v50 RT13Ocd8mYGQuqau2RZ2JApU7HemZxpRhix9AHFGTIQaE/54wfCOKPCHgBSoZqQC2F DFqECU4xYBHNA== From: Fabio Aiuto To: Mark Brown , Liam Girdwood , Krzysztof Kozlowski , Rob Herring , Conor Dooley Cc: Robin Gong , devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Matteo Lisi , Mirko Ardinghi Subject: [PATCH v3 2/2] regulator: pca9450: make warm reset on PMIC_RST_B assertion Date: Thu, 11 Apr 2024 18:58:01 +0200 Message-Id: <20240411165801.143160-3-fabio.aiuto@engicam.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20240411165801.143160-1-fabio.aiuto@engicam.com> References: <20240411165801.143160-1-fabio.aiuto@engicam.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-CMAE-Envelope: MS4xfOXgWXYZkPR/W7EqJpK6GrkzYKGI0D0u392Yt7Fs5V+n1UKQ0kZz1z5NNWtuu83KC+bc2AsD01BF4lsLIHtmmxD18xu/ggXjIkamosPq/eXf5voqd842 OlWURp/RrHmZFQye1IKTPPMimN94zyC9ZbS7VyLC64ml7sMCQzTznDA/IR/oD1ui0pD6TW4Ls5tmkjoq5HOxLS4Y9RWrVAQbrjaL5hgF0/LhonKWESleI9Ek qa6UIESedr5cYNDiPAX9t9+nJ0bLKjlZcFO32o9zFoRO4XzRUk9wFRpcbrT3jp5BJKFpXlU5TqXhHf2ifQeRBJCrInROUd1p1ITKfnCl6CUy1lnBdpwxOJNE Tk/aVNelEWNbMN+685KH6GQQhdu/634q6TGbi/jJQJU9qbox7muBZGyOMqlL54aa42KGRab/aY7zG4G2z6cZMhA1ZN7U1+svjtK2mjrWSU07t7MzwNgqzPQQ eRkqrL6S9PT1kyjK Content-Type: text/plain; charset="utf-8" The default configuration of the PMIC behavior makes the PMIC power cycle most regulators on PMIC_RST_B assertion. This power cycling causes the memory contents of OCRAM to be lost. Some systems needs some memory that survives reset and reboot, therefore this patch is created. This patch extends commit 2364a64d0673 ("regulator: pca9450: Make warm reset on WDOG_B assertion") to the other reset input source PMIC_RST_B as per pmic specs. Cc: Matteo Lisi Cc: Mirko Ardinghi Signed-off-by: Fabio Aiuto --- drivers/regulator/pca9450-regulator.c | 11 ++++++++--- include/linux/regulator/pca9450.h | 6 ++++++ 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/drivers/regulator/pca9450-regulator.c b/drivers/regulator/pca9= 450-regulator.c index be488c5dff14..3a7f238de1a5 100644 --- a/drivers/regulator/pca9450-regulator.c +++ b/drivers/regulator/pca9450-regulator.c @@ -999,11 +999,16 @@ static int pca9450_i2c_probe(struct i2c_client *i2c) else reset_ctrl =3D WDOG_B_CFG_COLD_LDO12; =20 - /* Set reset behavior on assertion of WDOG_B signal */ + if (of_property_read_bool(i2c->dev.of_node, "nxp,pmic-rst-b-warm-reset")) + reset_ctrl |=3D PMIC_RST_CFG_WARM; + else + reset_ctrl |=3D PMIC_RST_CFG_COLD_LDO12; + + /* Set reset behavior on assertion of WDOG_B/PMIC_RST_B signal */ ret =3D regmap_update_bits(pca9450->regmap, PCA9450_REG_RESET_CTRL, - WDOG_B_CFG_MASK, reset_ctrl); + WDOG_B_CFG_MASK | PMIC_RST_CFG_MASK, reset_ctrl); if (ret) { - dev_err(&i2c->dev, "Failed to set WDOG_B reset behavior\n"); + dev_err(&i2c->dev, "Failed to set WDOG_B/PMIC_RST_B reset behavior\n"); return ret; } =20 diff --git a/include/linux/regulator/pca9450.h b/include/linux/regulator/pc= a9450.h index 243633c8dceb..d87f0b410b00 100644 --- a/include/linux/regulator/pca9450.h +++ b/include/linux/regulator/pca9450.h @@ -227,6 +227,12 @@ enum { #define WDOG_B_CFG_COLD_LDO12 0x80 #define WDOG_B_CFG_COLD 0xC0 =20 +#define PMIC_RST_CFG_MASK 0x30 +#define PMIC_RST_CFG_NONE 0x00 +#define PMIC_RST_CFG_WARM 0x10 +#define PMIC_RST_CFG_COLD_LDO12 0x20 +#define PMIC_RST_CFG_COLD 0x30 + /* PCA9450_REG_CONFIG2 bits */ #define I2C_LT_MASK 0x03 #define I2C_LT_FORCE_DISABLE 0x00 --=20 2.34.1