From mboxrd@z Thu Jan 1 00:00:00 1970
Return-Path:
Return-path:
From: Pascal PAILLET-LME
To: "dmitry.torokhov@gmail.com" ,
"robh+dt@kernel.org" ,
"mark.rutland@arm.com"
,
"lee.jones@linaro.org" ,
"lgirdwood@gmail.com" ,
"broonie@kernel.org"
,
"wim@linux-watchdog.org" ,
"linux@roeck-us.net" ,
"linux-input@vger.kernel.org"
,
"devicetree@vger.kernel.org"
,
"linux-kernel@vger.kernel.org"
,
"linux-watchdog@vger.kernel.org"
,
"benjamin.gaignard@linaro.org"
,
"eballetbo@gmail.com"
CC: Pascal PAILLET-LME
Subject: [PATCH v3 1/8] dt-bindings: mfd: document stpmic1
Date: Mon, 8 Oct 2018 16:29:39 +0000
Message-ID: <1539016176-4072-2-git-send-email-p.paillet@st.com>
References: <1539016176-4072-1-git-send-email-p.paillet@st.com>
In-Reply-To: <1539016176-4072-1-git-send-email-p.paillet@st.com>
Content-Language: en-US
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
List-ID:
From: pascal paillet
stpmic1 is a pmic from STMicroelectronics. The STPMIC1 integrates 10
regulators ,3 switches, a watchdog and an input for a power on key.
Signed-off-by: pascal paillet
---
changes in v3:
* Replace st,onkey-long-press-seconds by power-off-time-sec.
* Replace interrupts-extended by interrupts.
* Remove wakeup interrupt.
* Cosmetics.
.../devicetree/bindings/mfd/st,stpmic1.txt | 133 +++++++++++++++++=
++++
include/dt-bindings/mfd/st,stpmic1.h | 46 +++++++
2 files changed, 179 insertions(+)
create mode 100644 Documentation/devicetree/bindings/mfd/st,stpmic1.txt
create mode 100644 include/dt-bindings/mfd/st,stpmic1.h
diff --git a/Documentation/devicetree/bindings/mfd/st,stpmic1.txt b/Documen=
tation/devicetree/bindings/mfd/st,stpmic1.txt
new file mode 100644
index 0000000..989bd58
--- /dev/null
+++ b/Documentation/devicetree/bindings/mfd/st,stpmic1.txt
@@ -0,0 +1,133 @@
+* STMicroelectronics STPMIC1 Power Management IC
+
+Required parent device properties:
+- compatible: "st,stpmic1"
+- reg: The I2C slave address for the STPMIC1 chip.
+- interrupt-parent Phandle to the parent interrupt controller.
+- interrupts: The interrupt line the device is connected to.
+- #interrupt-cells: Should be 1.
+- interrupt-controller: Describes the STPMIC1 as an interrupt
+ controller (has its own domain). Interrupt number are the following:
+ /* Interrupt Register 1 (0x50 for latch) */
+ IT_SWOUT_R=3D0
+ IT_SWOUT_F=3D1
+ IT_VBUS_OTG_R=3D2
+ IT_VBUS_OTG_F=3D3
+ IT_WAKEUP_R=3D4
+ IT_WAKEUP_F=3D5
+ IT_PONKEY_R=3D6
+ IT_PONKEY_F=3D7
+ /* Interrupt Register 2 (0x51 for latch) */
+ IT_OVP_BOOST=3D8
+ IT_OCP_BOOST=3D9
+ IT_OCP_SWOUT=3D10
+ IT_OCP_OTG=3D11
+ IT_CURLIM_BUCK4=3D12
+ IT_CURLIM_BUCK3=3D13
+ IT_CURLIM_BUCK2=3D14
+ IT_CURLIM_BUCK1=3D15
+ /* Interrupt Register 3 (0x52 for latch) */
+ IT_SHORT_SWOUT=3D16
+ IT_SHORT_SWOTG=3D17
+ IT_CURLIM_LDO6=3D18
+ IT_CURLIM_LDO5=3D19
+ IT_CURLIM_LDO4=3D20
+ IT_CURLIM_LDO3=3D21
+ IT_CURLIM_LDO2=3D22
+ IT_CURLIM_LDO1=3D23
+ /* Interrupt Register 3 (0x52 for latch) */
+ IT_SWIN_R=3D24
+ IT_SWIN_F=3D25
+ IT_RESERVED_1=3D26
+ IT_RESERVED_2=3D27
+ IT_VINLOW_R=3D28
+ IT_VINLOW_F=3D29
+ IT_TWARN_R=3D30
+ IT_TWARN_F=3D31
+
+Optional parent device properties:
+- st,main-control-register:
+ -bit 1: Power cycling will be performed on turn OFF condition
+ -bit 2: PWRCTRL is functional
+ -bit 3: PWRCTRL active high
+- st,pads-pull-register:
+ -bit 1: WAKEUP pull down is not active
+ -bit 2: PWRCTRL pull up is active
+ -bit 3: PWRCTRL pull down is active
+ -bit 4: WAKEUP detector is disabled
+- st,vin-control-register:
+ -bit 0: VINLOW monitoring is enabled
+ -bit [1...3]: VINLOW rising threshold
+ 000 VINOK_f + 50mV
+ 001 VINOK_f + 100mV
+ 010 VINOK_f + 150mV
+ 011 VINOK_f + 200mV
+ 100 VINOK_f + 250mV
+ 101 VINOK_f + 300mV
+ 110 VINOK_f + 350mV
+ 111 VINOK_f + 400mV
+ -bit [4...5]: VINLOW hyst
+ 00 100mV
+ 01 200mV
+ 10 300mV
+ 11 400mV
+ -bit 6: SW_OUT detector is disabled
+ -bit 7: SW_IN detector is enabled.
+- st,usb-control-register:
+ -bit 3: SW_OUT current limit
+ 0: 600mA
+ 1: 1.1A
+ -bit 4: VBUS_OTG discharge is enabled
+ -bit 5: SW_OUT discharge is enabled
+ -bit 6: VBUS_OTG detection is enabled
+ -bit 7: BOOST_OVP is disabled
+
+STPMIC1 consists in a varied group of sub-devices.
+Each sub-device binding is be described in own documentation file.
+
+Device Description
+------ ------------
+st,stpmic1-onkey : Power on key, see ../input/st,stpmic1-onkey.txt
+st,stpmic1-regulators : Regulators, see ../regulator/st,stpmic1-regulator.=
txt
+st,stpmic1-wdt : Watchdog, see ../watchdog/st,stpmic1-wdt.txt
+
+Example:
+
+pmic: pmic1@33 {
+ compatible =3D "st,stpmic1";
+ reg =3D <0x33>;
+ interrupt-parent =3D <&gpioa>;
+ interrupts =3D <0 2>;
+ st,main-control-register=3D<0x0c>;
+ interrupt-controller;
+ #interrupt-cells =3D <2>;
+
+ onkey {
+ compatible =3D "st,stpmic1-onkey";
+ interrupt-parent =3D <&pmic>;
+ interrupts =3D ,;
+ interrupt-names =3D "onkey-falling", "onkey-rising";
+ power-off-time-sec =3D <10>;
+ };
+
+ watchdog {
+ compatible =3D "st,stpmic1-wdt";
+ };
+
+ regulators {
+ compatible =3D "st,stpmic1-regulators";
+
+ vdd_core: buck1 {
+ regulator-name =3D "vdd_core";
+ regulator-boot-on;
+ regulator-min-microvolt =3D <700000>;
+ regulator-max-microvolt =3D <1200000>;
+ };
+ vdd: buck3 {
+ regulator-name =3D "vdd";
+ regulator-min-microvolt =3D <3300000>;
+ regulator-max-microvolt =3D <3300000>;
+ regulator-boot-on;
+ regulator-pull-down;
+ };
+ };
diff --git a/include/dt-bindings/mfd/st,stpmic1.h b/include/dt-bindings/mfd=
/st,stpmic1.h
new file mode 100644
index 0000000..b2d6c83
--- /dev/null
+++ b/include/dt-bindings/mfd/st,stpmic1.h
@@ -0,0 +1,46 @@
+/* SPDX-License-Identifier: GPL-2.0 */
+/*
+ * Copyright (C) STMicroelectronics 2018 - All Rights Reserved
+ * Author: Philippe Peurichard ,
+ * Pascal Paillet for STMicroelectronics.
+ */
+
+#ifndef __DT_BINDINGS_STPMIC1_H__
+#define __DT_BINDINGS_STPMIC1_H__
+
+/* IRQ definitions */
+#define IT_PONKEY_F 0
+#define IT_PONKEY_R 1
+#define IT_WAKEUP_F 2
+#define IT_WAKEUP_R 3
+#define IT_VBUS_OTG_F 4
+#define IT_VBUS_OTG_R 5
+#define IT_SWOUT_F 6
+#define IT_SWOUT_R 7
+
+#define IT_CURLIM_BUCK1 8
+#define IT_CURLIM_BUCK2 9
+#define IT_CURLIM_BUCK3 10
+#define IT_CURLIM_BUCK4 11
+#define IT_OCP_OTG 12
+#define IT_OCP_SWOUT 13
+#define IT_OCP_BOOST 14
+#define IT_OVP_BOOST 15
+
+#define IT_CURLIM_LDO1 16
+#define IT_CURLIM_LDO2 17
+#define IT_CURLIM_LDO3 18
+#define IT_CURLIM_LDO4 19
+#define IT_CURLIM_LDO5 20
+#define IT_CURLIM_LDO6 21
+#define IT_SHORT_SWOTG 22
+#define IT_SHORT_SWOUT 23
+
+#define IT_TWARN_F 24
+#define IT_TWARN_R 25
+#define IT_VINLOW_F 26
+#define IT_VINLOW_R 27
+#define IT_SWIN_F 30
+#define IT_SWIN_R 31
+
+#endif /* __DT_BINDINGS_STPMIC1_H__ */
--=20
1.9.1