devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/4] leds/power/regulator/mfd: dt-bindings: maxim,max77693: convert to dtschema
@ 2021-12-28 16:39 Krzysztof Kozlowski
  2021-12-28 16:39 ` [PATCH 1/4] dt-bindings: leds: " Krzysztof Kozlowski
                   ` (3 more replies)
  0 siblings, 4 replies; 14+ messages in thread
From: Krzysztof Kozlowski @ 2021-12-28 16:39 UTC (permalink / raw)
  To: Chanwoo Choi, Krzysztof Kozlowski, Bartlomiej Zolnierkiewicz,
	Pavel Machek, Rob Herring, Lee Jones, Sebastian Reichel,
	Liam Girdwood, Mark Brown, linux-kernel, linux-leds, devicetree,
	linux-pm

Hi,

The final patch - MFD maxim,max77693 bindings conversion - depends on
all previous. Therefore this could go via Rob's or Lee's trees.

Best regards,
Krzysztof

Krzysztof Kozlowski (4):
  dt-bindings: leds: maxim,max77693: convert to dtschema
  dt-bindings: power: supply: maxim,max77693: convert to dtschema
  regulator: dt-bindings: maxim,max77693: convert to dtschema
  dt-bindings: mfd: maxim,max77693: convert to dtschema

 .../bindings/leds/maxim,max77693.yaml         | 105 ++++++++++
 .../devicetree/bindings/mfd/max77693.txt      | 194 ------------------
 .../bindings/mfd/maxim,max77693.yaml          | 139 +++++++++++++
 .../bindings/power/supply/maxim,max77693.yaml |  70 +++++++
 .../bindings/regulator/maxim,max77693.yaml    |  49 +++++
 MAINTAINERS                                   |   3 +-
 6 files changed, 365 insertions(+), 195 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/leds/maxim,max77693.yaml
 delete mode 100644 Documentation/devicetree/bindings/mfd/max77693.txt
 create mode 100644 Documentation/devicetree/bindings/mfd/maxim,max77693.yaml
 create mode 100644 Documentation/devicetree/bindings/power/supply/maxim,max77693.yaml
 create mode 100644 Documentation/devicetree/bindings/regulator/maxim,max77693.yaml

-- 
2.32.0


^ permalink raw reply	[flat|nested] 14+ messages in thread

* [PATCH 1/4] dt-bindings: leds: maxim,max77693: convert to dtschema
  2021-12-28 16:39 [PATCH 0/4] leds/power/regulator/mfd: dt-bindings: maxim,max77693: convert to dtschema Krzysztof Kozlowski
@ 2021-12-28 16:39 ` Krzysztof Kozlowski
  2021-12-29 17:34   ` Rob Herring
  2021-12-28 16:39 ` [PATCH 2/4] dt-bindings: power: supply: " Krzysztof Kozlowski
                   ` (2 subsequent siblings)
  3 siblings, 1 reply; 14+ messages in thread
From: Krzysztof Kozlowski @ 2021-12-28 16:39 UTC (permalink / raw)
  To: Chanwoo Choi, Krzysztof Kozlowski, Bartlomiej Zolnierkiewicz,
	Pavel Machek, Rob Herring, Lee Jones, Sebastian Reichel,
	Liam Girdwood, Mark Brown, linux-kernel, linux-leds, devicetree,
	linux-pm

Convert the LEDs bindings of Maxim MAX77693 MUIC to DT schema format.
The existing bindings were defined in ../bindings/mfd/max77693.txt.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
---
 .../bindings/leds/maxim,max77693.yaml         | 105 ++++++++++++++++++
 1 file changed, 105 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/leds/maxim,max77693.yaml

diff --git a/Documentation/devicetree/bindings/leds/maxim,max77693.yaml b/Documentation/devicetree/bindings/leds/maxim,max77693.yaml
new file mode 100644
index 000000000000..86a0005cf156
--- /dev/null
+++ b/Documentation/devicetree/bindings/leds/maxim,max77693.yaml
@@ -0,0 +1,105 @@
+# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/leds/maxim,max77693.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Maxim MAX77693 MicroUSB and Companion Power Management IC LEDs
+
+maintainers:
+  - Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
+
+description: |
+  This is a part of device tree bindings for Maxim MAX77693 MicroUSB Integrated
+  Circuit (MUIC).
+
+  There are two LED outputs available - FLED1 and FLED2. Each of them can
+  control a separate LED or they can be connected together to double the
+  maximum current for a single connected LED. One LED is represented by one
+  child node.
+
+  See also Documentation/devicetree/bindings/mfd/maxim,max77693.yaml for
+  additional information and example.
+
+properties:
+  compatible:
+    const: maxim,max77693-led
+
+  maxim,boost-mode:
+    description:
+      In boost mode the device can produce up to 1.2A of total current on both
+      outputs. The maximum current on each output is reduced to 625mA then. If
+      not enabled explicitly, boost setting defaults to LEDS_BOOST_FIXED in
+      case both current sources are used.
+      See LEDS_BOOST_* in include/dt-bindings/leds/common.h.
+    $ref: /schemas/types.yaml#/definitions/uint32
+    enum: [0, 1, 2]
+
+  maxim,boost-mvout:
+    description: |
+      Output voltage of the boost module in millivolts.
+      Valid values: 3300 - 5500, step by 25 (rounded down)
+    $ref: /schemas/types.yaml#/definitions/uint32
+    minimum: 3300
+    maximum: 5500
+    default: 3300
+
+  maxim,mvsys-min:
+    description: |
+      Low input voltage level in millivolts. Flash is not fired if chip
+      estimates that system voltage could drop below this level due to flash
+      power consumption.
+      Valid values: 2400 - 3400, step by 33 (rounded down)
+    $ref: /schemas/types.yaml#/definitions/uint32
+    minimum: 2400
+    maximum: 3400
+    default: 2400
+
+patternProperties:
+  "^([a-z]+-)?led[01]?$":
+    type: object
+    $ref: common.yaml#
+    unevaluatedProperties: false
+
+    properties:
+      led-sources:
+        allOf:
+          - minItems: 1
+            maxItems: 2
+            items:
+              minimum: 0
+              maximum: 1
+
+      led-max-microamp:
+        description: |
+          Valid values for a LED connected to one FLED output:
+            15625 - 250000, step by 15625 (rounded down)
+          Valid values for a LED connected to both FLED outputs:
+            15625 - 500000, step by 15625 (rounded down)
+
+      flash-max-microamp:
+        description: |
+          Valid values for a single LED connected to one FLED output
+          (boost mode must be turned off):
+            15625 - 1000000, step by 15625 (rounded down)
+          Valid values for a single LED connected to both FLED outputs:
+            15625 - 1250000, step by 15625 (rounded down)
+          Valid values for two LEDs case:
+            15625 - 625000, step by 15625 (rounded down)
+
+      flash-max-timeout-us:
+        description: |
+          Valid values: 62500 - 1000000, step by 62500 (rounded down)
+        minimum: 62500
+        maximum: 1000000
+
+    required:
+      - flash-max-microamp
+      - flash-max-timeout-us
+      - led-max-microamp
+      - led-sources
+
+required:
+  - compatible
+
+additionalProperties: false
-- 
2.32.0


^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [PATCH 2/4] dt-bindings: power: supply: maxim,max77693: convert to dtschema
  2021-12-28 16:39 [PATCH 0/4] leds/power/regulator/mfd: dt-bindings: maxim,max77693: convert to dtschema Krzysztof Kozlowski
  2021-12-28 16:39 ` [PATCH 1/4] dt-bindings: leds: " Krzysztof Kozlowski
@ 2021-12-28 16:39 ` Krzysztof Kozlowski
  2022-01-10 19:08   ` Rob Herring
  2021-12-28 16:39 ` [PATCH 3/4] regulator: dt-bindings: " Krzysztof Kozlowski
  2021-12-28 16:39 ` [PATCH 4/4] dt-bindings: mfd: " Krzysztof Kozlowski
  3 siblings, 1 reply; 14+ messages in thread
From: Krzysztof Kozlowski @ 2021-12-28 16:39 UTC (permalink / raw)
  To: Chanwoo Choi, Krzysztof Kozlowski, Bartlomiej Zolnierkiewicz,
	Pavel Machek, Rob Herring, Lee Jones, Sebastian Reichel,
	Liam Girdwood, Mark Brown, linux-kernel, linux-leds, devicetree,
	linux-pm

Convert the Charger bindings of Maxim MAX77693 MUIC to DT schema format.
The existing bindings were defined in ../bindings/mfd/max77693.txt.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
---
 .../bindings/power/supply/maxim,max77693.yaml | 70 +++++++++++++++++++
 MAINTAINERS                                   |  1 +
 2 files changed, 71 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/power/supply/maxim,max77693.yaml

diff --git a/Documentation/devicetree/bindings/power/supply/maxim,max77693.yaml b/Documentation/devicetree/bindings/power/supply/maxim,max77693.yaml
new file mode 100644
index 000000000000..a21dc1a8890f
--- /dev/null
+++ b/Documentation/devicetree/bindings/power/supply/maxim,max77693.yaml
@@ -0,0 +1,70 @@
+# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/power/supply/maxim,max77693.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Maxim MAX77693 MicroUSB and Companion Power Management IC Charger
+
+maintainers:
+  - Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
+
+description: |
+  This is a part of device tree bindings for Maxim MAX77693 MicroUSB Integrated
+  Circuit (MUIC).
+
+  See also Documentation/devicetree/bindings/mfd/maxim,max77693.yaml for
+  additional information and example.
+
+properties:
+  compatible:
+    const: maxim,max77693-charger
+
+  maxim,constant-microvolt:
+    description: |
+      Battery constant voltage in uV. The charger will operate in fast
+      charge constant current mode till battery voltage reaches this level.
+      Then the charger will switch to fast charge constant voltage mode.
+      Also vsys (system voltage) will be set to this value when DC power is
+      supplied but charger is not enabled.
+      Valid values: 3650000 - 4400000, step by 25000 (rounded down)
+    minimum: 3650000
+    maximum: 4400000
+    default: 4200000
+
+  maxim,min-system-microvolt:
+    description: |
+      Minimal system voltage in uV.
+    enum: [3000000, 3100000, 3200000, 3300000, 3400000, 3500000,
+           3600000, 3700000]
+    default: 3600000
+
+  maxim,thermal-regulation-celsius:
+    description: |
+      Temperature in Celsius for entering high temperature charging mode.
+      If die temperature exceeds this value the charging current will be
+      reduced by 105 mA/Celsius.
+    enum: [70, 85, 100, 115]
+    default: 100
+
+  maxim,battery-overcurrent-microamp:
+    description: |
+      Overcurrent protection threshold in uA (current from battery to
+      system).
+      Valid values: 2000000 - 3500000, step by 250000 (rounded down)
+    minimum: 2000000
+    maximum: 3500000
+    default: 3500000
+
+  maxim,charge-input-threshold-microvolt:
+    description: |
+      Threshold voltage in uV for triggering input voltage regulation loop.
+      If input voltage decreases below this value, the input current will
+      be reduced to reach the threshold voltage.
+    enum: [4300000, 4700000, 4800000, 4900000]
+    default: 4300000
+
+required:
+  - compatible
+
+additionalProperties: false
diff --git a/MAINTAINERS b/MAINTAINERS
index b5e4f14f6768..ead08768fb78 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -11681,6 +11681,7 @@ M:	Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
 M:	Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
 L:	linux-pm@vger.kernel.org
 S:	Supported
+F:	Documentation/devicetree/bindings/power/supply/maxim,max77693.yaml
 F:	drivers/power/supply/max14577_charger.c
 F:	drivers/power/supply/max77693_charger.c
 
-- 
2.32.0


^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [PATCH 3/4] regulator: dt-bindings: maxim,max77693: convert to dtschema
  2021-12-28 16:39 [PATCH 0/4] leds/power/regulator/mfd: dt-bindings: maxim,max77693: convert to dtschema Krzysztof Kozlowski
  2021-12-28 16:39 ` [PATCH 1/4] dt-bindings: leds: " Krzysztof Kozlowski
  2021-12-28 16:39 ` [PATCH 2/4] dt-bindings: power: supply: " Krzysztof Kozlowski
@ 2021-12-28 16:39 ` Krzysztof Kozlowski
  2022-01-04 15:29   ` Rob Herring
  2021-12-28 16:39 ` [PATCH 4/4] dt-bindings: mfd: " Krzysztof Kozlowski
  3 siblings, 1 reply; 14+ messages in thread
From: Krzysztof Kozlowski @ 2021-12-28 16:39 UTC (permalink / raw)
  To: Chanwoo Choi, Krzysztof Kozlowski, Bartlomiej Zolnierkiewicz,
	Pavel Machek, Rob Herring, Lee Jones, Sebastian Reichel,
	Liam Girdwood, Mark Brown, linux-kernel, linux-leds, devicetree,
	linux-pm

Convert the regulator bindings of Maxim MAX77693 MUIC to DT schema format.
The existing bindings were defined in ../bindings/mfd/max77693.txt.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
---
 .../bindings/regulator/maxim,max77693.yaml    | 49 +++++++++++++++++++
 1 file changed, 49 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/regulator/maxim,max77693.yaml

diff --git a/Documentation/devicetree/bindings/regulator/maxim,max77693.yaml b/Documentation/devicetree/bindings/regulator/maxim,max77693.yaml
new file mode 100644
index 000000000000..81242c8cd77c
--- /dev/null
+++ b/Documentation/devicetree/bindings/regulator/maxim,max77693.yaml
@@ -0,0 +1,49 @@
+# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/regulator/maxim,max77693.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Maxim MAX77693 MicroUSB and Companion Power Management IC regulators
+
+maintainers:
+  - Chanwoo Choi <cw00.choi@samsung.com>
+  - Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
+
+description: |
+  This is a part of device tree bindings for Maxim MAX77693 MicroUSB Integrated
+  Circuit (MUIC).
+
+  See also Documentation/devicetree/bindings/mfd/maxim,max77693.yaml for
+  additional information and example.
+
+patternProperties:
+  "^ESAFEOUT[12]$":
+    type: object
+    $ref: regulator.yaml#
+    unevaluatedProperties: false
+    description: |
+      Safeout LDO regulator.
+
+    properties:
+      regulator-min-microvolt: true
+      regulator-max-microvolt: true
+
+    required:
+      - regulator-name
+
+  "^CHARGER$":
+    type: object
+    $ref: regulator.yaml#
+    unevaluatedProperties: false
+    description: |
+      Current regulator.
+
+    properties:
+      regulator-min-microamp: true
+      regulator-max-microamp: true
+
+    required:
+      - regulator-name
+
+additionalProperties: false
-- 
2.32.0


^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [PATCH 4/4] dt-bindings: mfd: maxim,max77693: convert to dtschema
  2021-12-28 16:39 [PATCH 0/4] leds/power/regulator/mfd: dt-bindings: maxim,max77693: convert to dtschema Krzysztof Kozlowski
                   ` (2 preceding siblings ...)
  2021-12-28 16:39 ` [PATCH 3/4] regulator: dt-bindings: " Krzysztof Kozlowski
@ 2021-12-28 16:39 ` Krzysztof Kozlowski
  2022-01-10 19:10   ` Rob Herring
  3 siblings, 1 reply; 14+ messages in thread
From: Krzysztof Kozlowski @ 2021-12-28 16:39 UTC (permalink / raw)
  To: Chanwoo Choi, Krzysztof Kozlowski, Bartlomiej Zolnierkiewicz,
	Pavel Machek, Rob Herring, Lee Jones, Sebastian Reichel,
	Liam Girdwood, Mark Brown, linux-kernel, linux-leds, devicetree,
	linux-pm

Convert the MFD part of Maxim MAX77693 MUIC to DT schema format.  The
example DTS was copied from existing DTS (exynos4412-midas.dtsi), so
keep the license as GPL-2.0-only.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
---
 .../devicetree/bindings/mfd/max77693.txt      | 194 ------------------
 .../bindings/mfd/maxim,max77693.yaml          | 139 +++++++++++++
 MAINTAINERS                                   |   2 +-
 3 files changed, 140 insertions(+), 195 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/mfd/max77693.txt
 create mode 100644 Documentation/devicetree/bindings/mfd/maxim,max77693.yaml

diff --git a/Documentation/devicetree/bindings/mfd/max77693.txt b/Documentation/devicetree/bindings/mfd/max77693.txt
deleted file mode 100644
index 1032df14498b..000000000000
--- a/Documentation/devicetree/bindings/mfd/max77693.txt
+++ /dev/null
@@ -1,194 +0,0 @@
-Maxim MAX77693 multi-function device
-
-MAX77693 is a Multifunction device with the following submodules:
-- PMIC,
-- CHARGER,
-- LED,
-- MUIC,
-- HAPTIC
-
-It is interfaced to host controller using i2c.
-This document describes the bindings for the mfd device.
-
-Required properties:
-- compatible : Must be "maxim,max77693".
-- reg : Specifies the i2c slave address of PMIC block.
-- interrupts : This i2c device has an IRQ line connected to the main SoC.
-
-Optional properties:
-- regulators : The regulators of max77693 have to be instantiated under subnode
-  named "regulators" using the following format.
-
-	regulators {
-		regulator-compatible = ESAFEOUT1/ESAFEOUT2/CHARGER
-		standard regulator constraints[*].
-	};
-
-	[*] refer Documentation/devicetree/bindings/regulator/regulator.txt
-
-- haptic : The MAX77693 haptic device utilises a PWM controlled motor to provide
-  users with tactile feedback. PWM period and duty-cycle are varied in
-  order to provide the appropriate level of feedback.
-
- Required properties:
-	- compatible : Must be "maxim,max77693-haptic"
-	- haptic-supply : power supply for the haptic motor
-	[*] refer Documentation/devicetree/bindings/regulator/regulator.txt
-	- pwms : phandle to the physical PWM(Pulse Width Modulation) device.
-	 PWM properties should be named "pwms". And number of cell is different
-	 for each pwm device.
-	 To get more information, please refer to documentation.
-	[*] refer Documentation/devicetree/bindings/pwm/pwm.txt
-
-- charger : Node configuring the charger driver.
-  If present, required properties:
-  - compatible : Must be "maxim,max77693-charger".
-
-  Optional properties (if not set, defaults will be used):
-  - maxim,constant-microvolt : Battery constant voltage in uV. The charger
-    will operate in fast charge constant current mode till battery voltage
-    reaches this level. Then the charger will switch to fast charge constant
-    voltage mode. Also vsys (system voltage) will be set to this value when
-    DC power is supplied but charger is not enabled.
-    Valid values: 3650000 - 4400000, step by 25000 (rounded down)
-    Default: 4200000
-
-  - maxim,min-system-microvolt : Minimal system voltage in uV.
-    Valid values: 3000000 - 3700000, step by 100000 (rounded down)
-    Default: 3600000
-
-  - maxim,thermal-regulation-celsius : Temperature in Celsius for entering
-    high temperature charging mode. If die temperature exceeds this value
-    the charging current will be reduced by 105 mA/Celsius.
-    Valid values: 70, 85, 100, 115
-    Default: 100
-
-  - maxim,battery-overcurrent-microamp : Overcurrent protection threshold
-    in uA (current from battery to system).
-    Valid values: 2000000 - 3500000, step by 250000 (rounded down)
-    Default: 3500000
-
-  - maxim,charge-input-threshold-microvolt : Threshold voltage in uV for
-    triggering input voltage regulation loop. If input voltage decreases
-    below this value, the input current will be reduced to reach the
-    threshold voltage.
-    Valid values: 4300000, 4700000, 4800000, 4900000
-    Default: 4300000
-
-- led : the LED submodule device node
-
-There are two LED outputs available - FLED1 and FLED2. Each of them can
-control a separate LED or they can be connected together to double
-the maximum current for a single connected LED. One LED is represented
-by one child node.
-
-Required properties:
-- compatible : Must be "maxim,max77693-led".
-
-Optional properties:
-- maxim,boost-mode :
-	In boost mode the device can produce up to 1.2A of total current
-	on both outputs. The maximum current on each output is reduced
-	to 625mA then. If not enabled explicitly, boost setting defaults to
-	LEDS_BOOST_FIXED in case both current sources are used.
-	Possible values:
-		LEDS_BOOST_OFF (0) - no boost,
-		LEDS_BOOST_ADAPTIVE (1) - adaptive mode,
-		LEDS_BOOST_FIXED (2) - fixed mode.
-- maxim,boost-mvout : Output voltage of the boost module in millivolts.
-	Valid values: 3300 - 5500, step by 25 (rounded down)
-	Default: 3300
-- maxim,mvsys-min : Low input voltage level in millivolts. Flash is not fired
-	if chip estimates that system voltage could drop below this level due
-	to flash power consumption.
-	Valid values: 2400 - 3400, step by 33 (rounded down)
-	Default: 2400
-
-Required properties for the LED child node:
-- led-sources : see Documentation/devicetree/bindings/leds/common.txt;
-		device current output identifiers: 0 - FLED1, 1 - FLED2
-- led-max-microamp : see Documentation/devicetree/bindings/leds/common.txt
-	Valid values for a LED connected to one FLED output:
-		15625 - 250000, step by 15625 (rounded down)
-	Valid values for a LED connected to both FLED outputs:
-		15625 - 500000, step by 15625 (rounded down)
-- flash-max-microamp : see Documentation/devicetree/bindings/leds/common.txt
-	Valid values for a single LED connected to one FLED output
-	(boost mode must be turned off):
-		15625 - 1000000, step by 15625 (rounded down)
-	Valid values for a single LED connected to both FLED outputs:
-		15625 - 1250000, step by 15625 (rounded down)
-	Valid values for two LEDs case:
-		15625 - 625000, step by 15625 (rounded down)
-- flash-max-timeout-us : see Documentation/devicetree/bindings/leds/common.txt
-	Valid values: 62500 - 1000000, step by 62500 (rounded down)
-
-Optional properties for the LED child node:
-- label : see Documentation/devicetree/bindings/leds/common.txt
-
-Optional nodes:
-- max77693-muic :
-	Node used only by extcon consumers.
-	Required properties:
-		- compatible : "maxim,max77693-muic"
-
-Example:
-#include <dt-bindings/leds/common.h>
-
-	max77693@66 {
-		compatible = "maxim,max77693";
-		reg = <0x66>;
-		interrupt-parent = <&gpx1>;
-		interrupts = <5 IRQ_TYPE_LEVEL_LOW>;
-
-		regulators {
-			esafeout@1 {
-				regulator-compatible = "ESAFEOUT1";
-				regulator-name = "ESAFEOUT1";
-				regulator-boot-on;
-			};
-			esafeout@2 {
-				regulator-compatible = "ESAFEOUT2";
-				regulator-name = "ESAFEOUT2";
-				};
-			charger@0 {
-				regulator-compatible = "CHARGER";
-				regulator-name = "CHARGER";
-				regulator-min-microamp = <60000>;
-				regulator-max-microamp = <2580000>;
-					regulator-boot-on;
-			};
-		};
-
-		haptic {
-			compatible = "maxim,max77693-haptic";
-			haptic-supply = <&haptic_supply>;
-			pwms = <&pwm 0 40000 0>;
-			pwm-names = "haptic";
-		};
-
-		charger {
-			compatible = "maxim,max77693-charger";
-
-			maxim,constant-microvolt = <4200000>;
-			maxim,min-system-microvolt = <3600000>;
-			maxim,thermal-regulation-celsius = <75>;
-			maxim,battery-overcurrent-microamp = <3000000>;
-			maxim,charge-input-threshold-microvolt = <4300000>;
-		};
-
-		led {
-			compatible = "maxim,max77693-led";
-			maxim,boost-mode = <LEDS_BOOST_FIXED>;
-			maxim,boost-mvout = <5000>;
-			maxim,mvsys-min = <2400>;
-
-			camera_flash: flash-led {
-				label = "max77693-flash";
-				led-sources = <0>, <1>;
-				led-max-microamp = <500000>;
-				flash-max-microamp = <1250000>;
-				flash-max-timeout-us = <1000000>;
-			};
-		};
-	};
diff --git a/Documentation/devicetree/bindings/mfd/maxim,max77693.yaml b/Documentation/devicetree/bindings/mfd/maxim,max77693.yaml
new file mode 100644
index 000000000000..bc9c90bd4ff9
--- /dev/null
+++ b/Documentation/devicetree/bindings/mfd/maxim,max77693.yaml
@@ -0,0 +1,139 @@
+# SPDX-License-Identifier: GPL-2.0-only
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/mfd/maxim,max77693.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Maxim MAX77693 MicroUSB and Companion Power Management IC
+
+maintainers:
+  - Chanwoo Choi <cw00.choi@samsung.com>
+  - Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
+
+description: |
+  This is a part of device tree bindings for Maxim MAX77693 MicroUSB
+  Integrated Circuit (MUIC).
+
+  The Maxim MAX77693 is a MicroUSB and Companion Power Management IC which
+  includes voltage current regulators, charger, LED/flash, haptic motor driver
+  and MicroUSB management IC.
+
+properties:
+  compatible:
+    const: maxim,max77693
+
+  interrupts:
+    maxItems: 1
+
+  reg:
+    maxItems: 1
+
+  charger:
+    $ref: ../power/supply/maxim,max77693.yaml
+
+  led:
+    $ref: ../leds/maxim,max77693.yaml
+
+  max77693-muic:
+    type: object
+    properties:
+      compatible:
+        const: maxim,max77693-muic
+
+    required:
+      - compatible
+
+  motor-driver:
+    type: object
+    properties:
+      compatible:
+        const: maxim,max77693-haptic
+
+      haptic-supply:
+        description: Power supply to the haptic motor
+
+      pwms:
+        maxItems: 1
+
+    required:
+      - compatible
+      - haptic-supply
+      - pwms
+
+  regulators:
+    $ref: ../regulator/maxim,max77693.yaml
+    description:
+      List of child nodes that specify the regulators.
+
+required:
+  - compatible
+  - interrupts
+  - reg
+
+additionalProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/interrupt-controller/irq.h>
+    #include <dt-bindings/leds/common.h>
+
+    i2c {
+        #address-cells = <1>;
+        #size-cells = <0>;
+
+        pmic@66 {
+            compatible = "maxim,max77693";
+            reg = <0x66>;
+            interrupt-parent = <&gpx1>;
+            interrupts = <5 IRQ_TYPE_LEVEL_LOW>;
+
+            regulators {
+                ESAFEOUT1 {
+                    regulator-name = "ESAFEOUT1";
+                };
+
+                ESAFEOUT2 {
+                    regulator-name = "ESAFEOUT2";
+                };
+
+                CHARGER {
+                    regulator-name = "CHARGER";
+                    regulator-min-microamp = <60000>;
+                    regulator-max-microamp = <2580000>;
+                };
+            };
+
+            motor-driver {
+                compatible = "maxim,max77693-haptic";
+                haptic-supply = <&ldo26_reg>;
+                pwms = <&pwm 0 38022 0>;
+            };
+
+            charger {
+                compatible = "maxim,max77693-charger";
+
+                maxim,constant-microvolt = <4350000>;
+                maxim,min-system-microvolt = <3600000>;
+                maxim,thermal-regulation-celsius = <100>;
+                maxim,battery-overcurrent-microamp = <3500000>;
+                maxim,charge-input-threshold-microvolt = <4300000>;
+            };
+
+            led {
+                compatible = "maxim,max77693-led";
+                maxim,boost-mode = <LEDS_BOOST_FIXED>;
+                maxim,boost-mvout = <5000>;
+                maxim,mvsys-min = <2400>;
+
+                flash-led {
+                    label = "max77693-flash";
+                    function = LED_FUNCTION_FLASH;
+                    color = <LED_COLOR_ID_WHITE>;
+                    led-sources = <0>, <1>;
+                    led-max-microamp = <500000>;
+                    flash-max-microamp = <1250000>;
+                    flash-max-timeout-us = <1000000>;
+                };
+            };
+        };
+    };
diff --git a/MAINTAINERS b/MAINTAINERS
index ead08768fb78..e5f2758531bc 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -11692,9 +11692,9 @@ M:	Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
 L:	linux-kernel@vger.kernel.org
 S:	Supported
 F:	Documentation/devicetree/bindings/*/maxim,max77686.yaml
+F:	Documentation/devicetree/bindings/*/maxim,max77693.yaml
 F:	Documentation/devicetree/bindings/clock/maxim,max77686.txt
 F:	Documentation/devicetree/bindings/mfd/max14577.txt
-F:	Documentation/devicetree/bindings/mfd/max77693.txt
 F:	drivers/*/max14577*.c
 F:	drivers/*/max77686*.c
 F:	drivers/*/max77693*.c
-- 
2.32.0


^ permalink raw reply related	[flat|nested] 14+ messages in thread

* Re: [PATCH 1/4] dt-bindings: leds: maxim,max77693: convert to dtschema
  2021-12-28 16:39 ` [PATCH 1/4] dt-bindings: leds: " Krzysztof Kozlowski
@ 2021-12-29 17:34   ` Rob Herring
  2021-12-30 10:53     ` Krzysztof Kozlowski
  0 siblings, 1 reply; 14+ messages in thread
From: Rob Herring @ 2021-12-29 17:34 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Mark Brown, Pavel Machek, Sebastian Reichel, Chanwoo Choi,
	Lee Jones, Rob Herring, Bartlomiej Zolnierkiewicz, devicetree,
	linux-pm, Liam Girdwood, linux-kernel, linux-leds

On Tue, 28 Dec 2021 17:39:27 +0100, Krzysztof Kozlowski wrote:
> Convert the LEDs bindings of Maxim MAX77693 MUIC to DT schema format.
> The existing bindings were defined in ../bindings/mfd/max77693.txt.
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
> ---
>  .../bindings/leds/maxim,max77693.yaml         | 105 ++++++++++++++++++
>  1 file changed, 105 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/leds/maxim,max77693.yaml
> 

My bot found errors running 'make DT_CHECKER_FLAGS=-m dt_binding_check'
on your patch (DT_CHECKER_FLAGS is new in v5.13):

yamllint warnings/errors:

dtschema/dtc warnings/errors:
/builds/robherring/linux-dt-review/Documentation/devicetree/bindings/leds/common.example.dt.yaml: led-controller@0: 'reg' does not match any of the regexes: '^([a-z]+-)?led[01]?$', 'pinctrl-[0-9]+'
	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/leds/maxim,max77693.yaml

doc reference errors (make refcheckdocs):
Documentation/devicetree/bindings/leds/maxim,max77693.yaml: Documentation/devicetree/bindings/mfd/maxim,max77693.yaml

See https://patchwork.ozlabs.org/patch/1573762

This check can fail if there are any dependencies. The base for a patch
series is generally the most recent rc1.

If you already ran 'make dt_binding_check' and didn't see the above
error(s), then make sure 'yamllint' is installed and dt-schema is up to
date:

pip3 install dtschema --upgrade

Please check and re-submit.


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH 1/4] dt-bindings: leds: maxim,max77693: convert to dtschema
  2021-12-29 17:34   ` Rob Herring
@ 2021-12-30 10:53     ` Krzysztof Kozlowski
  2022-01-04 15:09       ` Rob Herring
  0 siblings, 1 reply; 14+ messages in thread
From: Krzysztof Kozlowski @ 2021-12-30 10:53 UTC (permalink / raw)
  To: Rob Herring
  Cc: Mark Brown, Pavel Machek, Sebastian Reichel, Chanwoo Choi,
	Lee Jones, Rob Herring, Bartlomiej Zolnierkiewicz, devicetree,
	linux-pm, Liam Girdwood, linux-kernel, linux-leds

On 29/12/2021 18:34, Rob Herring wrote:
> On Tue, 28 Dec 2021 17:39:27 +0100, Krzysztof Kozlowski wrote:
>> Convert the LEDs bindings of Maxim MAX77693 MUIC to DT schema format.
>> The existing bindings were defined in ../bindings/mfd/max77693.txt.
>>
>> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
>> ---
>>  .../bindings/leds/maxim,max77693.yaml         | 105 ++++++++++++++++++
>>  1 file changed, 105 insertions(+)
>>  create mode 100644 Documentation/devicetree/bindings/leds/maxim,max77693.yaml
>>
> 
> My bot found errors running 'make DT_CHECKER_FLAGS=-m dt_binding_check'
> on your patch (DT_CHECKER_FLAGS is new in v5.13):
> 
> yamllint warnings/errors:
> 
> dtschema/dtc warnings/errors:
> /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/leds/common.example.dt.yaml: led-controller@0: 'reg' does not match any of the regexes: '^([a-z]+-)?led[01]?$', 'pinctrl-[0-9]+'
> 	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/leds/maxim,max77693.yaml
> 
> doc reference errors (make refcheckdocs):
> Documentation/devicetree/bindings/leds/maxim,max77693.yaml: Documentation/devicetree/bindings/mfd/maxim,max77693.yaml
> 
> See https://patchwork.ozlabs.org/patch/1573762
> 
> This check can fail if there are any dependencies. The base for a patch
> series is generally the most recent rc1.
> 

I updated my yamllint and dtschema, run with DT_CHECKER_FLAGS=-m but
still cannot reproduce it. Probably because I based on linux-next, so
maybe this was a fixed issue in leds/common.yaml.

Best regards,
Krzysztof

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH 1/4] dt-bindings: leds: maxim,max77693: convert to dtschema
  2021-12-30 10:53     ` Krzysztof Kozlowski
@ 2022-01-04 15:09       ` Rob Herring
  2022-01-11 15:03         ` Krzysztof Kozlowski
  0 siblings, 1 reply; 14+ messages in thread
From: Rob Herring @ 2022-01-04 15:09 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Mark Brown, Pavel Machek, Sebastian Reichel, Chanwoo Choi,
	Lee Jones, Bartlomiej Zolnierkiewicz, devicetree, linux-pm,
	Liam Girdwood, linux-kernel, linux-leds

On Thu, Dec 30, 2021 at 11:53:37AM +0100, Krzysztof Kozlowski wrote:
> On 29/12/2021 18:34, Rob Herring wrote:
> > On Tue, 28 Dec 2021 17:39:27 +0100, Krzysztof Kozlowski wrote:
> >> Convert the LEDs bindings of Maxim MAX77693 MUIC to DT schema format.
> >> The existing bindings were defined in ../bindings/mfd/max77693.txt.
> >>
> >> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
> >> ---
> >>  .../bindings/leds/maxim,max77693.yaml         | 105 ++++++++++++++++++
> >>  1 file changed, 105 insertions(+)
> >>  create mode 100644 Documentation/devicetree/bindings/leds/maxim,max77693.yaml
> >>
> > 
> > My bot found errors running 'make DT_CHECKER_FLAGS=-m dt_binding_check'
> > on your patch (DT_CHECKER_FLAGS is new in v5.13):
> > 
> > yamllint warnings/errors:
> > 
> > dtschema/dtc warnings/errors:
> > /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/leds/common.example.dt.yaml: led-controller@0: 'reg' does not match any of the regexes: '^([a-z]+-)?led[01]?$', 'pinctrl-[0-9]+'
> > 	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/leds/maxim,max77693.yaml
> > 
> > doc reference errors (make refcheckdocs):
> > Documentation/devicetree/bindings/leds/maxim,max77693.yaml: Documentation/devicetree/bindings/mfd/maxim,max77693.yaml
> > 
> > See https://patchwork.ozlabs.org/patch/1573762
> > 
> > This check can fail if there are any dependencies. The base for a patch
> > series is generally the most recent rc1.
> > 
> 
> I updated my yamllint and dtschema, run with DT_CHECKER_FLAGS=-m but
> still cannot reproduce it. Probably because I based on linux-next, so
> maybe this was a fixed issue in leds/common.yaml.

Are you setting DT_SCHEMA_FILES, because the error is in 
common.yaml but caused by this schema.

Clearly, 'reg' is not defined here. And there is no change to 
common.yaml in next.

Rob

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH 3/4] regulator: dt-bindings: maxim,max77693: convert to dtschema
  2021-12-28 16:39 ` [PATCH 3/4] regulator: dt-bindings: " Krzysztof Kozlowski
@ 2022-01-04 15:29   ` Rob Herring
  2022-01-11 16:26     ` Krzysztof Kozlowski
  0 siblings, 1 reply; 14+ messages in thread
From: Rob Herring @ 2022-01-04 15:29 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Chanwoo Choi, Bartlomiej Zolnierkiewicz, Pavel Machek, Lee Jones,
	Sebastian Reichel, Liam Girdwood, Mark Brown, linux-kernel,
	linux-leds, devicetree, linux-pm

On Tue, Dec 28, 2021 at 05:39:29PM +0100, Krzysztof Kozlowski wrote:
> Convert the regulator bindings of Maxim MAX77693 MUIC to DT schema format.
> The existing bindings were defined in ../bindings/mfd/max77693.txt.
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
> ---
>  .../bindings/regulator/maxim,max77693.yaml    | 49 +++++++++++++++++++
>  1 file changed, 49 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/regulator/maxim,max77693.yaml
> 
> diff --git a/Documentation/devicetree/bindings/regulator/maxim,max77693.yaml b/Documentation/devicetree/bindings/regulator/maxim,max77693.yaml
> new file mode 100644
> index 000000000000..81242c8cd77c
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/regulator/maxim,max77693.yaml
> @@ -0,0 +1,49 @@
> +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/regulator/maxim,max77693.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Maxim MAX77693 MicroUSB and Companion Power Management IC regulators
> +
> +maintainers:
> +  - Chanwoo Choi <cw00.choi@samsung.com>
> +  - Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
> +
> +description: |
> +  This is a part of device tree bindings for Maxim MAX77693 MicroUSB Integrated
> +  Circuit (MUIC).
> +
> +  See also Documentation/devicetree/bindings/mfd/maxim,max77693.yaml for
> +  additional information and example.
> +
> +patternProperties:
> +  "^ESAFEOUT[12]$":
> +    type: object
> +    $ref: regulator.yaml#
> +    unevaluatedProperties: false
> +    description: |
> +      Safeout LDO regulator.
> +
> +    properties:
> +      regulator-min-microvolt: true
> +      regulator-max-microvolt: true

If you want to define which properties are valid from regulator.yaml, 
then you need to define all of them (regulator-name is missing), and use 
'additionalProperties: false'. Or you can just drop these. 

> +
> +    required:
> +      - regulator-name
> +
> +  "^CHARGER$":

Fixed string, not a pattern. Place under 'properties'.

> +    type: object
> +    $ref: regulator.yaml#
> +    unevaluatedProperties: false
> +    description: |
> +      Current regulator.
> +
> +    properties:
> +      regulator-min-microamp: true
> +      regulator-max-microamp: true
> +
> +    required:
> +      - regulator-name
> +
> +additionalProperties: false
> -- 
> 2.32.0
> 
> 

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH 2/4] dt-bindings: power: supply: maxim,max77693: convert to dtschema
  2021-12-28 16:39 ` [PATCH 2/4] dt-bindings: power: supply: " Krzysztof Kozlowski
@ 2022-01-10 19:08   ` Rob Herring
  0 siblings, 0 replies; 14+ messages in thread
From: Rob Herring @ 2022-01-10 19:08 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Mark Brown, devicetree, Pavel Machek, Chanwoo Choi, Rob Herring,
	linux-pm, Lee Jones, Sebastian Reichel, linux-leds,
	Liam Girdwood, linux-kernel, Bartlomiej Zolnierkiewicz

On Tue, 28 Dec 2021 17:39:28 +0100, Krzysztof Kozlowski wrote:
> Convert the Charger bindings of Maxim MAX77693 MUIC to DT schema format.
> The existing bindings were defined in ../bindings/mfd/max77693.txt.
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
> ---
>  .../bindings/power/supply/maxim,max77693.yaml | 70 +++++++++++++++++++
>  MAINTAINERS                                   |  1 +
>  2 files changed, 71 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/power/supply/maxim,max77693.yaml
> 

Reviewed-by: Rob Herring <robh@kernel.org>

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH 4/4] dt-bindings: mfd: maxim,max77693: convert to dtschema
  2021-12-28 16:39 ` [PATCH 4/4] dt-bindings: mfd: " Krzysztof Kozlowski
@ 2022-01-10 19:10   ` Rob Herring
  2022-01-11 16:28     ` Krzysztof Kozlowski
  0 siblings, 1 reply; 14+ messages in thread
From: Rob Herring @ 2022-01-10 19:10 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Chanwoo Choi, Bartlomiej Zolnierkiewicz, Pavel Machek, Lee Jones,
	Sebastian Reichel, Liam Girdwood, Mark Brown, linux-kernel,
	linux-leds, devicetree, linux-pm

On Tue, Dec 28, 2021 at 05:39:30PM +0100, Krzysztof Kozlowski wrote:
> Convert the MFD part of Maxim MAX77693 MUIC to DT schema format.  The
> example DTS was copied from existing DTS (exynos4412-midas.dtsi), so
> keep the license as GPL-2.0-only.
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
> ---
>  .../devicetree/bindings/mfd/max77693.txt      | 194 ------------------
>  .../bindings/mfd/maxim,max77693.yaml          | 139 +++++++++++++
>  MAINTAINERS                                   |   2 +-
>  3 files changed, 140 insertions(+), 195 deletions(-)
>  delete mode 100644 Documentation/devicetree/bindings/mfd/max77693.txt
>  create mode 100644 Documentation/devicetree/bindings/mfd/maxim,max77693.yaml
> 
> diff --git a/Documentation/devicetree/bindings/mfd/max77693.txt b/Documentation/devicetree/bindings/mfd/max77693.txt
> deleted file mode 100644
> index 1032df14498b..000000000000
> --- a/Documentation/devicetree/bindings/mfd/max77693.txt
> +++ /dev/null
> @@ -1,194 +0,0 @@
> -Maxim MAX77693 multi-function device
> -
> -MAX77693 is a Multifunction device with the following submodules:
> -- PMIC,
> -- CHARGER,
> -- LED,
> -- MUIC,
> -- HAPTIC
> -
> -It is interfaced to host controller using i2c.
> -This document describes the bindings for the mfd device.
> -
> -Required properties:
> -- compatible : Must be "maxim,max77693".
> -- reg : Specifies the i2c slave address of PMIC block.
> -- interrupts : This i2c device has an IRQ line connected to the main SoC.
> -
> -Optional properties:
> -- regulators : The regulators of max77693 have to be instantiated under subnode
> -  named "regulators" using the following format.
> -
> -	regulators {
> -		regulator-compatible = ESAFEOUT1/ESAFEOUT2/CHARGER
> -		standard regulator constraints[*].
> -	};
> -
> -	[*] refer Documentation/devicetree/bindings/regulator/regulator.txt
> -
> -- haptic : The MAX77693 haptic device utilises a PWM controlled motor to provide
> -  users with tactile feedback. PWM period and duty-cycle are varied in
> -  order to provide the appropriate level of feedback.
> -
> - Required properties:
> -	- compatible : Must be "maxim,max77693-haptic"
> -	- haptic-supply : power supply for the haptic motor
> -	[*] refer Documentation/devicetree/bindings/regulator/regulator.txt
> -	- pwms : phandle to the physical PWM(Pulse Width Modulation) device.
> -	 PWM properties should be named "pwms". And number of cell is different
> -	 for each pwm device.
> -	 To get more information, please refer to documentation.
> -	[*] refer Documentation/devicetree/bindings/pwm/pwm.txt
> -
> -- charger : Node configuring the charger driver.
> -  If present, required properties:
> -  - compatible : Must be "maxim,max77693-charger".
> -
> -  Optional properties (if not set, defaults will be used):
> -  - maxim,constant-microvolt : Battery constant voltage in uV. The charger
> -    will operate in fast charge constant current mode till battery voltage
> -    reaches this level. Then the charger will switch to fast charge constant
> -    voltage mode. Also vsys (system voltage) will be set to this value when
> -    DC power is supplied but charger is not enabled.
> -    Valid values: 3650000 - 4400000, step by 25000 (rounded down)
> -    Default: 4200000
> -
> -  - maxim,min-system-microvolt : Minimal system voltage in uV.
> -    Valid values: 3000000 - 3700000, step by 100000 (rounded down)
> -    Default: 3600000
> -
> -  - maxim,thermal-regulation-celsius : Temperature in Celsius for entering
> -    high temperature charging mode. If die temperature exceeds this value
> -    the charging current will be reduced by 105 mA/Celsius.
> -    Valid values: 70, 85, 100, 115
> -    Default: 100
> -
> -  - maxim,battery-overcurrent-microamp : Overcurrent protection threshold
> -    in uA (current from battery to system).
> -    Valid values: 2000000 - 3500000, step by 250000 (rounded down)
> -    Default: 3500000
> -
> -  - maxim,charge-input-threshold-microvolt : Threshold voltage in uV for
> -    triggering input voltage regulation loop. If input voltage decreases
> -    below this value, the input current will be reduced to reach the
> -    threshold voltage.
> -    Valid values: 4300000, 4700000, 4800000, 4900000
> -    Default: 4300000
> -
> -- led : the LED submodule device node
> -
> -There are two LED outputs available - FLED1 and FLED2. Each of them can
> -control a separate LED or they can be connected together to double
> -the maximum current for a single connected LED. One LED is represented
> -by one child node.
> -
> -Required properties:
> -- compatible : Must be "maxim,max77693-led".
> -
> -Optional properties:
> -- maxim,boost-mode :
> -	In boost mode the device can produce up to 1.2A of total current
> -	on both outputs. The maximum current on each output is reduced
> -	to 625mA then. If not enabled explicitly, boost setting defaults to
> -	LEDS_BOOST_FIXED in case both current sources are used.
> -	Possible values:
> -		LEDS_BOOST_OFF (0) - no boost,
> -		LEDS_BOOST_ADAPTIVE (1) - adaptive mode,
> -		LEDS_BOOST_FIXED (2) - fixed mode.
> -- maxim,boost-mvout : Output voltage of the boost module in millivolts.
> -	Valid values: 3300 - 5500, step by 25 (rounded down)
> -	Default: 3300
> -- maxim,mvsys-min : Low input voltage level in millivolts. Flash is not fired
> -	if chip estimates that system voltage could drop below this level due
> -	to flash power consumption.
> -	Valid values: 2400 - 3400, step by 33 (rounded down)
> -	Default: 2400
> -
> -Required properties for the LED child node:
> -- led-sources : see Documentation/devicetree/bindings/leds/common.txt;
> -		device current output identifiers: 0 - FLED1, 1 - FLED2
> -- led-max-microamp : see Documentation/devicetree/bindings/leds/common.txt
> -	Valid values for a LED connected to one FLED output:
> -		15625 - 250000, step by 15625 (rounded down)
> -	Valid values for a LED connected to both FLED outputs:
> -		15625 - 500000, step by 15625 (rounded down)
> -- flash-max-microamp : see Documentation/devicetree/bindings/leds/common.txt
> -	Valid values for a single LED connected to one FLED output
> -	(boost mode must be turned off):
> -		15625 - 1000000, step by 15625 (rounded down)
> -	Valid values for a single LED connected to both FLED outputs:
> -		15625 - 1250000, step by 15625 (rounded down)
> -	Valid values for two LEDs case:
> -		15625 - 625000, step by 15625 (rounded down)
> -- flash-max-timeout-us : see Documentation/devicetree/bindings/leds/common.txt
> -	Valid values: 62500 - 1000000, step by 62500 (rounded down)
> -
> -Optional properties for the LED child node:
> -- label : see Documentation/devicetree/bindings/leds/common.txt
> -
> -Optional nodes:
> -- max77693-muic :
> -	Node used only by extcon consumers.
> -	Required properties:
> -		- compatible : "maxim,max77693-muic"
> -
> -Example:
> -#include <dt-bindings/leds/common.h>
> -
> -	max77693@66 {
> -		compatible = "maxim,max77693";
> -		reg = <0x66>;
> -		interrupt-parent = <&gpx1>;
> -		interrupts = <5 IRQ_TYPE_LEVEL_LOW>;
> -
> -		regulators {
> -			esafeout@1 {
> -				regulator-compatible = "ESAFEOUT1";
> -				regulator-name = "ESAFEOUT1";
> -				regulator-boot-on;
> -			};
> -			esafeout@2 {
> -				regulator-compatible = "ESAFEOUT2";
> -				regulator-name = "ESAFEOUT2";
> -				};
> -			charger@0 {
> -				regulator-compatible = "CHARGER";
> -				regulator-name = "CHARGER";
> -				regulator-min-microamp = <60000>;
> -				regulator-max-microamp = <2580000>;
> -					regulator-boot-on;
> -			};
> -		};
> -
> -		haptic {
> -			compatible = "maxim,max77693-haptic";
> -			haptic-supply = <&haptic_supply>;
> -			pwms = <&pwm 0 40000 0>;
> -			pwm-names = "haptic";
> -		};
> -
> -		charger {
> -			compatible = "maxim,max77693-charger";
> -
> -			maxim,constant-microvolt = <4200000>;
> -			maxim,min-system-microvolt = <3600000>;
> -			maxim,thermal-regulation-celsius = <75>;
> -			maxim,battery-overcurrent-microamp = <3000000>;
> -			maxim,charge-input-threshold-microvolt = <4300000>;
> -		};
> -
> -		led {
> -			compatible = "maxim,max77693-led";
> -			maxim,boost-mode = <LEDS_BOOST_FIXED>;
> -			maxim,boost-mvout = <5000>;
> -			maxim,mvsys-min = <2400>;
> -
> -			camera_flash: flash-led {
> -				label = "max77693-flash";
> -				led-sources = <0>, <1>;
> -				led-max-microamp = <500000>;
> -				flash-max-microamp = <1250000>;
> -				flash-max-timeout-us = <1000000>;
> -			};
> -		};
> -	};
> diff --git a/Documentation/devicetree/bindings/mfd/maxim,max77693.yaml b/Documentation/devicetree/bindings/mfd/maxim,max77693.yaml
> new file mode 100644
> index 000000000000..bc9c90bd4ff9
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/mfd/maxim,max77693.yaml
> @@ -0,0 +1,139 @@
> +# SPDX-License-Identifier: GPL-2.0-only
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/mfd/maxim,max77693.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Maxim MAX77693 MicroUSB and Companion Power Management IC
> +
> +maintainers:
> +  - Chanwoo Choi <cw00.choi@samsung.com>
> +  - Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
> +
> +description: |
> +  This is a part of device tree bindings for Maxim MAX77693 MicroUSB
> +  Integrated Circuit (MUIC).
> +
> +  The Maxim MAX77693 is a MicroUSB and Companion Power Management IC which
> +  includes voltage current regulators, charger, LED/flash, haptic motor driver
> +  and MicroUSB management IC.
> +
> +properties:
> +  compatible:
> +    const: maxim,max77693
> +
> +  interrupts:
> +    maxItems: 1
> +
> +  reg:
> +    maxItems: 1
> +
> +  charger:
> +    $ref: ../power/supply/maxim,max77693.yaml

/schemas/power/supply/...

> +
> +  led:
> +    $ref: ../leds/maxim,max77693.yaml

ditto

> +
> +  max77693-muic:
> +    type: object

       additionalProperties: false

> +    properties:
> +      compatible:
> +        const: maxim,max77693-muic
> +
> +    required:
> +      - compatible
> +
> +  motor-driver:
> +    type: object

       additionalProperties: false

> +    properties:
> +      compatible:
> +        const: maxim,max77693-haptic
> +
> +      haptic-supply:
> +        description: Power supply to the haptic motor
> +
> +      pwms:
> +        maxItems: 1
> +
> +    required:
> +      - compatible
> +      - haptic-supply
> +      - pwms
> +
> +  regulators:
> +    $ref: ../regulator/maxim,max77693.yaml
> +    description:
> +      List of child nodes that specify the regulators.
> +
> +required:
> +  - compatible
> +  - interrupts
> +  - reg
> +
> +additionalProperties: false
> +
> +examples:
> +  - |
> +    #include <dt-bindings/interrupt-controller/irq.h>
> +    #include <dt-bindings/leds/common.h>
> +
> +    i2c {
> +        #address-cells = <1>;
> +        #size-cells = <0>;
> +
> +        pmic@66 {
> +            compatible = "maxim,max77693";
> +            reg = <0x66>;
> +            interrupt-parent = <&gpx1>;
> +            interrupts = <5 IRQ_TYPE_LEVEL_LOW>;
> +
> +            regulators {
> +                ESAFEOUT1 {
> +                    regulator-name = "ESAFEOUT1";
> +                };
> +
> +                ESAFEOUT2 {
> +                    regulator-name = "ESAFEOUT2";
> +                };
> +
> +                CHARGER {
> +                    regulator-name = "CHARGER";
> +                    regulator-min-microamp = <60000>;
> +                    regulator-max-microamp = <2580000>;
> +                };
> +            };
> +
> +            motor-driver {
> +                compatible = "maxim,max77693-haptic";
> +                haptic-supply = <&ldo26_reg>;
> +                pwms = <&pwm 0 38022 0>;
> +            };
> +
> +            charger {
> +                compatible = "maxim,max77693-charger";
> +
> +                maxim,constant-microvolt = <4350000>;
> +                maxim,min-system-microvolt = <3600000>;
> +                maxim,thermal-regulation-celsius = <100>;
> +                maxim,battery-overcurrent-microamp = <3500000>;
> +                maxim,charge-input-threshold-microvolt = <4300000>;
> +            };
> +
> +            led {
> +                compatible = "maxim,max77693-led";
> +                maxim,boost-mode = <LEDS_BOOST_FIXED>;
> +                maxim,boost-mvout = <5000>;
> +                maxim,mvsys-min = <2400>;
> +
> +                flash-led {
> +                    label = "max77693-flash";
> +                    function = LED_FUNCTION_FLASH;
> +                    color = <LED_COLOR_ID_WHITE>;
> +                    led-sources = <0>, <1>;
> +                    led-max-microamp = <500000>;
> +                    flash-max-microamp = <1250000>;
> +                    flash-max-timeout-us = <1000000>;
> +                };
> +            };
> +        };
> +    };
> diff --git a/MAINTAINERS b/MAINTAINERS
> index ead08768fb78..e5f2758531bc 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -11692,9 +11692,9 @@ M:	Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
>  L:	linux-kernel@vger.kernel.org
>  S:	Supported
>  F:	Documentation/devicetree/bindings/*/maxim,max77686.yaml
> +F:	Documentation/devicetree/bindings/*/maxim,max77693.yaml
>  F:	Documentation/devicetree/bindings/clock/maxim,max77686.txt
>  F:	Documentation/devicetree/bindings/mfd/max14577.txt
> -F:	Documentation/devicetree/bindings/mfd/max77693.txt
>  F:	drivers/*/max14577*.c
>  F:	drivers/*/max77686*.c
>  F:	drivers/*/max77693*.c
> -- 
> 2.32.0
> 
> 

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH 1/4] dt-bindings: leds: maxim,max77693: convert to dtschema
  2022-01-04 15:09       ` Rob Herring
@ 2022-01-11 15:03         ` Krzysztof Kozlowski
  0 siblings, 0 replies; 14+ messages in thread
From: Krzysztof Kozlowski @ 2022-01-11 15:03 UTC (permalink / raw)
  To: Rob Herring
  Cc: Mark Brown, Pavel Machek, Sebastian Reichel, Chanwoo Choi,
	Lee Jones, Bartlomiej Zolnierkiewicz, devicetree, linux-pm,
	Liam Girdwood, linux-kernel, linux-leds

On 04/01/2022 16:09, Rob Herring wrote:
> On Thu, Dec 30, 2021 at 11:53:37AM +0100, Krzysztof Kozlowski wrote:
>> On 29/12/2021 18:34, Rob Herring wrote:
>>> On Tue, 28 Dec 2021 17:39:27 +0100, Krzysztof Kozlowski wrote:
>>>> Convert the LEDs bindings of Maxim MAX77693 MUIC to DT schema format.
>>>> The existing bindings were defined in ../bindings/mfd/max77693.txt.
>>>>
>>>> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
>>>> ---
>>>>  .../bindings/leds/maxim,max77693.yaml         | 105 ++++++++++++++++++
>>>>  1 file changed, 105 insertions(+)
>>>>  create mode 100644 Documentation/devicetree/bindings/leds/maxim,max77693.yaml
>>>>
>>>
>>> My bot found errors running 'make DT_CHECKER_FLAGS=-m dt_binding_check'
>>> on your patch (DT_CHECKER_FLAGS is new in v5.13):
>>>
>>> yamllint warnings/errors:
>>>
>>> dtschema/dtc warnings/errors:
>>> /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/leds/common.example.dt.yaml: led-controller@0: 'reg' does not match any of the regexes: '^([a-z]+-)?led[01]?$', 'pinctrl-[0-9]+'
>>> 	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/leds/maxim,max77693.yaml
>>>
>>> doc reference errors (make refcheckdocs):
>>> Documentation/devicetree/bindings/leds/maxim,max77693.yaml: Documentation/devicetree/bindings/mfd/maxim,max77693.yaml
>>>
>>> See https://patchwork.ozlabs.org/patch/1573762
>>>
>>> This check can fail if there are any dependencies. The base for a patch
>>> series is generally the most recent rc1.
>>>
>>
>> I updated my yamllint and dtschema, run with DT_CHECKER_FLAGS=-m but
>> still cannot reproduce it. Probably because I based on linux-next, so
>> maybe this was a fixed issue in leds/common.yaml.
> 
> Are you setting DT_SCHEMA_FILES, because the error is in 
> common.yaml but caused by this schema.
> 
> Clearly, 'reg' is not defined here. And there is no change to 
> common.yaml in next.
> 

Indeed, I'll fix this up.


Best regards,
Krzysztof

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH 3/4] regulator: dt-bindings: maxim,max77693: convert to dtschema
  2022-01-04 15:29   ` Rob Herring
@ 2022-01-11 16:26     ` Krzysztof Kozlowski
  0 siblings, 0 replies; 14+ messages in thread
From: Krzysztof Kozlowski @ 2022-01-11 16:26 UTC (permalink / raw)
  To: Rob Herring
  Cc: Chanwoo Choi, Bartlomiej Zolnierkiewicz, Pavel Machek, Lee Jones,
	Sebastian Reichel, Liam Girdwood, Mark Brown, linux-kernel,
	linux-leds, devicetree, linux-pm

On 04/01/2022 16:29, Rob Herring wrote:
> On Tue, Dec 28, 2021 at 05:39:29PM +0100, Krzysztof Kozlowski wrote:
>> Convert the regulator bindings of Maxim MAX77693 MUIC to DT schema format.
>> The existing bindings were defined in ../bindings/mfd/max77693.txt.
>>
>> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
>> ---
>>  .../bindings/regulator/maxim,max77693.yaml    | 49 +++++++++++++++++++
>>  1 file changed, 49 insertions(+)
>>  create mode 100644 Documentation/devicetree/bindings/regulator/maxim,max77693.yaml
>>
>> diff --git a/Documentation/devicetree/bindings/regulator/maxim,max77693.yaml b/Documentation/devicetree/bindings/regulator/maxim,max77693.yaml
>> new file mode 100644
>> index 000000000000..81242c8cd77c
>> --- /dev/null
>> +++ b/Documentation/devicetree/bindings/regulator/maxim,max77693.yaml
>> @@ -0,0 +1,49 @@
>> +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
>> +%YAML 1.2
>> +---
>> +$id: http://devicetree.org/schemas/regulator/maxim,max77693.yaml#
>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>> +
>> +title: Maxim MAX77693 MicroUSB and Companion Power Management IC regulators
>> +
>> +maintainers:
>> +  - Chanwoo Choi <cw00.choi@samsung.com>
>> +  - Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
>> +
>> +description: |
>> +  This is a part of device tree bindings for Maxim MAX77693 MicroUSB Integrated
>> +  Circuit (MUIC).
>> +
>> +  See also Documentation/devicetree/bindings/mfd/maxim,max77693.yaml for
>> +  additional information and example.
>> +
>> +patternProperties:
>> +  "^ESAFEOUT[12]$":
>> +    type: object
>> +    $ref: regulator.yaml#
>> +    unevaluatedProperties: false
>> +    description: |
>> +      Safeout LDO regulator.
>> +
>> +    properties:
>> +      regulator-min-microvolt: true
>> +      regulator-max-microvolt: true
> 
> If you want to define which properties are valid from regulator.yaml, 
> then you need to define all of them (regulator-name is missing), and use 
> 'additionalProperties: false'. Or you can just drop these. 
> 
>> +
>> +    required:
>> +      - regulator-name
>> +
>> +  "^CHARGER$":
> 
> Fixed string, not a pattern. Place under 'properties'.
> 

Thanks, I'll fix both.


Best regards,
Krzysztof

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH 4/4] dt-bindings: mfd: maxim,max77693: convert to dtschema
  2022-01-10 19:10   ` Rob Herring
@ 2022-01-11 16:28     ` Krzysztof Kozlowski
  0 siblings, 0 replies; 14+ messages in thread
From: Krzysztof Kozlowski @ 2022-01-11 16:28 UTC (permalink / raw)
  To: Rob Herring
  Cc: Chanwoo Choi, Bartlomiej Zolnierkiewicz, Pavel Machek, Lee Jones,
	Sebastian Reichel, Liam Girdwood, Mark Brown, linux-kernel,
	linux-leds, devicetree, linux-pm

On 10/01/2022 20:10, Rob Herring wrote:
> On Tue, Dec 28, 2021 at 05:39:30PM +0100, Krzysztof Kozlowski wrote:
>> Convert the MFD part of Maxim MAX77693 MUIC to DT schema format.  The
>> example DTS was copied from existing DTS (exynos4412-midas.dtsi), so
>> keep the license as GPL-2.0-only.
>>
>> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
>> ---
>>  .../devicetree/bindings/mfd/max77693.txt      | 194 ------------------
>>  .../bindings/mfd/maxim,max77693.yaml          | 139 +++++++++++++
>>  MAINTAINERS                                   |   2 +-
>>  3 files changed, 140 insertions(+), 195 deletions(-)
>>  delete mode 100644 Documentation/devicetree/bindings/mfd/max77693.txt
>>  create mode 100644 Documentation/devicetree/bindings/mfd/maxim,max77693.yaml
>>
>> diff --git a/Documentation/devicetree/bindings/mfd/max77693.txt b/Documentation/devicetree/bindings/mfd/max77693.txt
>> deleted file mode 100644
>> index 1032df14498b..000000000000
>> --- a/Documentation/devicetree/bindings/mfd/max77693.txt
>> +++ /dev/null
>> @@ -1,194 +0,0 @@
>> -Maxim MAX77693 multi-function device
>> -
>> -MAX77693 is a Multifunction device with the following submodules:
>> -- PMIC,
>> -- CHARGER,
>> -- LED,
>> -- MUIC,
>> -- HAPTIC
>> -
>> -It is interfaced to host controller using i2c.
>> -This document describes the bindings for the mfd device.
>> -
>> -Required properties:
>> -- compatible : Must be "maxim,max77693".
>> -- reg : Specifies the i2c slave address of PMIC block.
>> -- interrupts : This i2c device has an IRQ line connected to the main SoC.
>> -
>> -Optional properties:
>> -- regulators : The regulators of max77693 have to be instantiated under subnode
>> -  named "regulators" using the following format.
>> -
>> -	regulators {
>> -		regulator-compatible = ESAFEOUT1/ESAFEOUT2/CHARGER
>> -		standard regulator constraints[*].
>> -	};
>> -
>> -	[*] refer Documentation/devicetree/bindings/regulator/regulator.txt
>> -
>> -- haptic : The MAX77693 haptic device utilises a PWM controlled motor to provide
>> -  users with tactile feedback. PWM period and duty-cycle are varied in
>> -  order to provide the appropriate level of feedback.
>> -
>> - Required properties:
>> -	- compatible : Must be "maxim,max77693-haptic"
>> -	- haptic-supply : power supply for the haptic motor
>> -	[*] refer Documentation/devicetree/bindings/regulator/regulator.txt
>> -	- pwms : phandle to the physical PWM(Pulse Width Modulation) device.
>> -	 PWM properties should be named "pwms". And number of cell is different
>> -	 for each pwm device.
>> -	 To get more information, please refer to documentation.
>> -	[*] refer Documentation/devicetree/bindings/pwm/pwm.txt
>> -
>> -- charger : Node configuring the charger driver.
>> -  If present, required properties:
>> -  - compatible : Must be "maxim,max77693-charger".
>> -
>> -  Optional properties (if not set, defaults will be used):
>> -  - maxim,constant-microvolt : Battery constant voltage in uV. The charger
>> -    will operate in fast charge constant current mode till battery voltage
>> -    reaches this level. Then the charger will switch to fast charge constant
>> -    voltage mode. Also vsys (system voltage) will be set to this value when
>> -    DC power is supplied but charger is not enabled.
>> -    Valid values: 3650000 - 4400000, step by 25000 (rounded down)
>> -    Default: 4200000
>> -
>> -  - maxim,min-system-microvolt : Minimal system voltage in uV.
>> -    Valid values: 3000000 - 3700000, step by 100000 (rounded down)
>> -    Default: 3600000
>> -
>> -  - maxim,thermal-regulation-celsius : Temperature in Celsius for entering
>> -    high temperature charging mode. If die temperature exceeds this value
>> -    the charging current will be reduced by 105 mA/Celsius.
>> -    Valid values: 70, 85, 100, 115
>> -    Default: 100
>> -
>> -  - maxim,battery-overcurrent-microamp : Overcurrent protection threshold
>> -    in uA (current from battery to system).
>> -    Valid values: 2000000 - 3500000, step by 250000 (rounded down)
>> -    Default: 3500000
>> -
>> -  - maxim,charge-input-threshold-microvolt : Threshold voltage in uV for
>> -    triggering input voltage regulation loop. If input voltage decreases
>> -    below this value, the input current will be reduced to reach the
>> -    threshold voltage.
>> -    Valid values: 4300000, 4700000, 4800000, 4900000
>> -    Default: 4300000
>> -
>> -- led : the LED submodule device node
>> -
>> -There are two LED outputs available - FLED1 and FLED2. Each of them can
>> -control a separate LED or they can be connected together to double
>> -the maximum current for a single connected LED. One LED is represented
>> -by one child node.
>> -
>> -Required properties:
>> -- compatible : Must be "maxim,max77693-led".
>> -
>> -Optional properties:
>> -- maxim,boost-mode :
>> -	In boost mode the device can produce up to 1.2A of total current
>> -	on both outputs. The maximum current on each output is reduced
>> -	to 625mA then. If not enabled explicitly, boost setting defaults to
>> -	LEDS_BOOST_FIXED in case both current sources are used.
>> -	Possible values:
>> -		LEDS_BOOST_OFF (0) - no boost,
>> -		LEDS_BOOST_ADAPTIVE (1) - adaptive mode,
>> -		LEDS_BOOST_FIXED (2) - fixed mode.
>> -- maxim,boost-mvout : Output voltage of the boost module in millivolts.
>> -	Valid values: 3300 - 5500, step by 25 (rounded down)
>> -	Default: 3300
>> -- maxim,mvsys-min : Low input voltage level in millivolts. Flash is not fired
>> -	if chip estimates that system voltage could drop below this level due
>> -	to flash power consumption.
>> -	Valid values: 2400 - 3400, step by 33 (rounded down)
>> -	Default: 2400
>> -
>> -Required properties for the LED child node:
>> -- led-sources : see Documentation/devicetree/bindings/leds/common.txt;
>> -		device current output identifiers: 0 - FLED1, 1 - FLED2
>> -- led-max-microamp : see Documentation/devicetree/bindings/leds/common.txt
>> -	Valid values for a LED connected to one FLED output:
>> -		15625 - 250000, step by 15625 (rounded down)
>> -	Valid values for a LED connected to both FLED outputs:
>> -		15625 - 500000, step by 15625 (rounded down)
>> -- flash-max-microamp : see Documentation/devicetree/bindings/leds/common.txt
>> -	Valid values for a single LED connected to one FLED output
>> -	(boost mode must be turned off):
>> -		15625 - 1000000, step by 15625 (rounded down)
>> -	Valid values for a single LED connected to both FLED outputs:
>> -		15625 - 1250000, step by 15625 (rounded down)
>> -	Valid values for two LEDs case:
>> -		15625 - 625000, step by 15625 (rounded down)
>> -- flash-max-timeout-us : see Documentation/devicetree/bindings/leds/common.txt
>> -	Valid values: 62500 - 1000000, step by 62500 (rounded down)
>> -
>> -Optional properties for the LED child node:
>> -- label : see Documentation/devicetree/bindings/leds/common.txt
>> -
>> -Optional nodes:
>> -- max77693-muic :
>> -	Node used only by extcon consumers.
>> -	Required properties:
>> -		- compatible : "maxim,max77693-muic"
>> -
>> -Example:
>> -#include <dt-bindings/leds/common.h>
>> -
>> -	max77693@66 {
>> -		compatible = "maxim,max77693";
>> -		reg = <0x66>;
>> -		interrupt-parent = <&gpx1>;
>> -		interrupts = <5 IRQ_TYPE_LEVEL_LOW>;
>> -
>> -		regulators {
>> -			esafeout@1 {
>> -				regulator-compatible = "ESAFEOUT1";
>> -				regulator-name = "ESAFEOUT1";
>> -				regulator-boot-on;
>> -			};
>> -			esafeout@2 {
>> -				regulator-compatible = "ESAFEOUT2";
>> -				regulator-name = "ESAFEOUT2";
>> -				};
>> -			charger@0 {
>> -				regulator-compatible = "CHARGER";
>> -				regulator-name = "CHARGER";
>> -				regulator-min-microamp = <60000>;
>> -				regulator-max-microamp = <2580000>;
>> -					regulator-boot-on;
>> -			};
>> -		};
>> -
>> -		haptic {
>> -			compatible = "maxim,max77693-haptic";
>> -			haptic-supply = <&haptic_supply>;
>> -			pwms = <&pwm 0 40000 0>;
>> -			pwm-names = "haptic";
>> -		};
>> -
>> -		charger {
>> -			compatible = "maxim,max77693-charger";
>> -
>> -			maxim,constant-microvolt = <4200000>;
>> -			maxim,min-system-microvolt = <3600000>;
>> -			maxim,thermal-regulation-celsius = <75>;
>> -			maxim,battery-overcurrent-microamp = <3000000>;
>> -			maxim,charge-input-threshold-microvolt = <4300000>;
>> -		};
>> -
>> -		led {
>> -			compatible = "maxim,max77693-led";
>> -			maxim,boost-mode = <LEDS_BOOST_FIXED>;
>> -			maxim,boost-mvout = <5000>;
>> -			maxim,mvsys-min = <2400>;
>> -
>> -			camera_flash: flash-led {
>> -				label = "max77693-flash";
>> -				led-sources = <0>, <1>;
>> -				led-max-microamp = <500000>;
>> -				flash-max-microamp = <1250000>;
>> -				flash-max-timeout-us = <1000000>;
>> -			};
>> -		};
>> -	};
>> diff --git a/Documentation/devicetree/bindings/mfd/maxim,max77693.yaml b/Documentation/devicetree/bindings/mfd/maxim,max77693.yaml
>> new file mode 100644
>> index 000000000000..bc9c90bd4ff9
>> --- /dev/null
>> +++ b/Documentation/devicetree/bindings/mfd/maxim,max77693.yaml
>> @@ -0,0 +1,139 @@
>> +# SPDX-License-Identifier: GPL-2.0-only
>> +%YAML 1.2
>> +---
>> +$id: http://devicetree.org/schemas/mfd/maxim,max77693.yaml#
>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>> +
>> +title: Maxim MAX77693 MicroUSB and Companion Power Management IC
>> +
>> +maintainers:
>> +  - Chanwoo Choi <cw00.choi@samsung.com>
>> +  - Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
>> +
>> +description: |
>> +  This is a part of device tree bindings for Maxim MAX77693 MicroUSB
>> +  Integrated Circuit (MUIC).
>> +
>> +  The Maxim MAX77693 is a MicroUSB and Companion Power Management IC which
>> +  includes voltage current regulators, charger, LED/flash, haptic motor driver
>> +  and MicroUSB management IC.
>> +
>> +properties:
>> +  compatible:
>> +    const: maxim,max77693
>> +
>> +  interrupts:
>> +    maxItems: 1
>> +
>> +  reg:
>> +    maxItems: 1
>> +
>> +  charger:
>> +    $ref: ../power/supply/maxim,max77693.yaml
> 
> /schemas/power/supply/...
> 
>> +
>> +  led:
>> +    $ref: ../leds/maxim,max77693.yaml
> 
> ditto
> 
>> +
>> +  max77693-muic:
>> +    type: object
> 
>        additionalProperties: false
> 
>> +    properties:
>> +      compatible:
>> +        const: maxim,max77693-muic
>> +
>> +    required:
>> +      - compatible
>> +
>> +  motor-driver:
>> +    type: object
> 
>        additionalProperties: false
> 

Thanks, fixed all issues.


Best regards,
Krzysztof

^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2022-01-11 16:29 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-12-28 16:39 [PATCH 0/4] leds/power/regulator/mfd: dt-bindings: maxim,max77693: convert to dtschema Krzysztof Kozlowski
2021-12-28 16:39 ` [PATCH 1/4] dt-bindings: leds: " Krzysztof Kozlowski
2021-12-29 17:34   ` Rob Herring
2021-12-30 10:53     ` Krzysztof Kozlowski
2022-01-04 15:09       ` Rob Herring
2022-01-11 15:03         ` Krzysztof Kozlowski
2021-12-28 16:39 ` [PATCH 2/4] dt-bindings: power: supply: " Krzysztof Kozlowski
2022-01-10 19:08   ` Rob Herring
2021-12-28 16:39 ` [PATCH 3/4] regulator: dt-bindings: " Krzysztof Kozlowski
2022-01-04 15:29   ` Rob Herring
2022-01-11 16:26     ` Krzysztof Kozlowski
2021-12-28 16:39 ` [PATCH 4/4] dt-bindings: mfd: " Krzysztof Kozlowski
2022-01-10 19:10   ` Rob Herring
2022-01-11 16:28     ` Krzysztof Kozlowski

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).