[PATCH V3 0/5] Add support for PMK8350 PON_HLOS PMIC peripheral

STALE1906d

Revision v3 of 4 in this series.

20 messages, 4 authors, 2021-06-04 · open the first message on its own page

[PATCH V3 0/5] Add support for PMK8350 PON_HLOS PMIC peripheral

From: satya priya <hidden>
Date: 2021-05-10 07:02:25

David Collins (2):
  input: pm8941-pwrkey: add support for PMK8350 PON_HLOS PMIC peripheral
  dt-bindings: input: pm8941-pwrkey: add pmk8350 compatible strings

satya priya (3):
  dt-bindings: power: reset: Change 'additionalProperties' to true
  dt-bindings: input: pm8941-pwrkey: Convert pm8941 power key binding to
    yaml
  dt-bindings: power: reset: qcom-pon: Convert qcom PON binding to yaml

 .../bindings/input/qcom,pm8941-pwrkey.txt          |  53 -----------
 .../bindings/input/qcom,pm8941-pwrkey.yaml         |  87 +++++++++++++++++
 .../devicetree/bindings/power/reset/qcom,pon.txt   |  49 ----------
 .../devicetree/bindings/power/reset/qcom,pon.yaml  |  44 +++++++++
 .../bindings/power/reset/reboot-mode.yaml          |   2 +-
 drivers/input/misc/pm8941-pwrkey.c                 | 103 ++++++++++++++-------
 6 files changed, 204 insertions(+), 134 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/input/qcom,pm8941-pwrkey.txt
 create mode 100644 Documentation/devicetree/bindings/input/qcom,pm8941-pwrkey.yaml
 delete mode 100644 Documentation/devicetree/bindings/power/reset/qcom,pon.txt
 create mode 100644 Documentation/devicetree/bindings/power/reset/qcom,pon.yaml

-- 
QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a member 
of Code Aurora Forum, hosted by The Linux Foundation

[PATCH V3 5/5] dt-bindings: power: reset: qcom-pon: Convert qcom PON binding to yaml

From: satya priya <hidden>
Date: 2021-05-10 07:02:09

Convert qcom PON binding from .txt to .yaml format.

The example has been removed in favour of full example being
available in the qcom,pm8941-pwrkey binding.

Signed-off-by: satya priya <redacted>
---
Changes in V2:
 - As per Rob's comments, converted the main PON binding and added in V2.

Changes in V3:
 - As per Sebastian's comments, added allOf to refer reboot-mode.yaml and
   used unevaluatedProperties = false. Added maxItems for reg.

 .../devicetree/bindings/power/reset/qcom,pon.txt   | 49 ----------------------
 .../devicetree/bindings/power/reset/qcom,pon.yaml  | 44 +++++++++++++++++++
 2 files changed, 44 insertions(+), 49 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/power/reset/qcom,pon.txt
 create mode 100644 Documentation/devicetree/bindings/power/reset/qcom,pon.yaml
diff --git a/Documentation/devicetree/bindings/power/reset/qcom,pon.txt b/Documentation/devicetree/bindings/power/reset/qcom,pon.txt
deleted file mode 100644
index 0c0dc3a..0000000
--- a/Documentation/devicetree/bindings/power/reset/qcom,pon.txt
+++ /dev/null
@@ -1,49 +0,0 @@
-Qualcomm PON Device
-
-The Power On device for Qualcomm PM8xxx is MFD supporting pwrkey
-and resin along with the Android reboot-mode.
-
-This DT node has pwrkey and resin as sub nodes.
-
-Required Properties:
--compatible: Must be one of:
-	"qcom,pm8916-pon"
-	"qcom,pms405-pon"
-	"qcom,pm8998-pon"
-
--reg: Specifies the physical address of the pon register
-
-Optional subnode:
--pwrkey: Specifies the subnode pwrkey and should follow the
- qcom,pm8941-pwrkey.txt description.
--resin: Specifies the subnode resin and should follow the
- qcom,pm8xxx-pwrkey.txt description.
-
-The rest of the properties should follow the generic reboot-mode description
-found in reboot-mode.txt
-
-Example:
-
-	pon@800 {
-		compatible = "qcom,pm8916-pon";
-
-		reg = <0x800>;
-		mode-bootloader = <0x2>;
-		mode-recovery = <0x1>;
-
-		pwrkey {
-			compatible = "qcom,pm8941-pwrkey";
-			interrupts = <0x0 0x8 0 IRQ_TYPE_EDGE_BOTH>;
-			debounce = <15625>;
-			bias-pull-up;
-			linux,code = <KEY_POWER>;
-		};
-
-		resin {
-			compatible = "qcom,pm8941-resin";
-			interrupts = <0x0 0x8 1 IRQ_TYPE_EDGE_BOTH>;
-			debounce = <15625>;
-			bias-pull-up;
-			linux,code = <KEY_VOLUMEDOWN>;
-		};
-	};
diff --git a/Documentation/devicetree/bindings/power/reset/qcom,pon.yaml b/Documentation/devicetree/bindings/power/reset/qcom,pon.yaml
new file mode 100644
index 0000000..439f082
--- /dev/null
+++ b/Documentation/devicetree/bindings/power/reset/qcom,pon.yaml
@@ -0,0 +1,44 @@
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/power/reset/qcom,pon.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Qualcomm PON Device
+
+maintainers:
+  - Vinod Koul <vkoul@kernel.org>
+
+description: |
+  The Power On device for Qualcomm PM8xxx is MFD supporting pwrkey
+  and resin along with the Android reboot-mode.
+
+  This DT node has pwrkey and resin as sub nodes.
+
+allOf:
+  - $ref: reboot-mode.yaml#
+
+properties:
+  compatible:
+    enum:
+      - qcom,pm8916-pon
+      - qcom,pms405-pon
+      - qcom,pm8998-pon
+
+  reg:
+    maxItems: 1
+
+  pwrkey:
+    type: object
+    $ref: "../../input/qcom,pm8941-pwrkey.yaml#"
+
+  resin:
+    type: object
+    $ref: "../../input/qcom,pm8941-pwrkey.yaml#"
+
+required:
+  - compatible
+  - reg
+
+unevaluatedProperties: false
+...
-- 
QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a member 
of Code Aurora Forum, hosted by The Linux Foundation

[PATCH V3 4/5] dt-bindings: input: pm8941-pwrkey: Convert pm8941 power key binding to yaml

From: satya priya <hidden>
Date: 2021-05-10 07:02:11

Convert qcom pm8941 power key binding from .txt to .yaml format.

Signed-off-by: satya priya <redacted>
---
Changes in V2:
 - Fixed bot errors, took reference from input.yaml for "linux,code"
 - Added one complete example for powerkey and resin, and referenced it
   in main PON binding.
 - Moved this patch to the end of the series.

Changes in V3:
 - Moved this patch before PON binding patch.
 - As per Rob's comments, added allOf at the beginning of binding.
   Added maxItems for interrupts.
 - Added 'unevaluatedProperties' instead of 'additionalProperties' as
   we are using allOf.
 
 .../bindings/input/qcom,pm8941-pwrkey.txt          | 55 --------------
 .../bindings/input/qcom,pm8941-pwrkey.yaml         | 87 ++++++++++++++++++++++
 2 files changed, 87 insertions(+), 55 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/input/qcom,pm8941-pwrkey.txt
 create mode 100644 Documentation/devicetree/bindings/input/qcom,pm8941-pwrkey.yaml
diff --git a/Documentation/devicetree/bindings/input/qcom,pm8941-pwrkey.txt b/Documentation/devicetree/bindings/input/qcom,pm8941-pwrkey.txt
deleted file mode 100644
index 6cd08bc..0000000
--- a/Documentation/devicetree/bindings/input/qcom,pm8941-pwrkey.txt
+++ /dev/null
@@ -1,55 +0,0 @@
-Qualcomm PM8941 PMIC Power Key
-
-PROPERTIES
-
-- compatible:
-	Usage: required
-	Value type: <string>
-	Definition: must be one of:
-		    "qcom,pm8941-pwrkey"
-		    "qcom,pm8941-resin"
-		    "qcom,pmk8350-pwrkey"
-		    "qcom,pmk8350-resin"
-
-- reg:
-	Usage: required
-	Value type: <prop-encoded-array>
-	Definition: base address of registers for block
-
-- interrupts:
-	Usage: required
-	Value type: <prop-encoded-array>
-	Definition: key change interrupt; The format of the specifier is
-		    defined by the binding document describing the node's
-		    interrupt parent.
-
-- debounce:
-	Usage: optional
-	Value type: <u32>
-	Definition: time in microseconds that key must be pressed or released
-		    for state change interrupt to trigger.
-
-- bias-pull-up:
-	Usage: optional
-	Value type: <empty>
-	Definition: presence of this property indicates that the KPDPWR_N pin
-		    should be configured for pull up.
-
-- linux,code:
-	Usage: optional
-	Value type: <u32>
-	Definition: The input key-code associated with the power key.
-		    Use the linux event codes defined in
-		    include/dt-bindings/input/linux-event-codes.h
-		    When property is omitted KEY_POWER is assumed.
-
-EXAMPLE
-
-	pwrkey@800 {
-		compatible = "qcom,pm8941-pwrkey";
-		reg = <0x800>;
-		interrupts = <0x0 0x8 0 IRQ_TYPE_EDGE_BOTH>;
-		debounce = <15625>;
-		bias-pull-up;
-		linux,code = <KEY_POWER>;
-	};
diff --git a/Documentation/devicetree/bindings/input/qcom,pm8941-pwrkey.yaml b/Documentation/devicetree/bindings/input/qcom,pm8941-pwrkey.yaml
new file mode 100644
index 0000000..0736fa3
--- /dev/null
+++ b/Documentation/devicetree/bindings/input/qcom,pm8941-pwrkey.yaml
@@ -0,0 +1,87 @@
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/input/qcom,pm8941-pwrkey.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Qualcomm PM8941 PMIC Power Key
+
+maintainers:
+  - Courtney Cavin <courtney.cavin@sonymobile.com>
+  - Vinod Koul <vkoul@kernel.org>
+
+allOf:
+  - $ref: input.yaml#
+
+properties:
+  compatible:
+    enum:
+      - qcom,pm8941-pwrkey
+      - qcom,pm8941-resin
+      - qcom,pmk8350-pwrkey
+      - qcom,pmk8350-resin
+
+  interrupts:
+    maxItems: 1
+
+  debounce:
+    description: |
+          Time in microseconds that key must be pressed or
+          released for state change interrupt to trigger.
+    $ref: /schemas/types.yaml#/definitions/uint32
+
+  bias-pull-up:
+    description: |
+           Presence of this property indicates that the KPDPWR_N
+           pin should be configured for pull up.
+    $ref: /schemas/types.yaml#/definitions/flag
+
+  linux,code:
+    description: |
+           The input key-code associated with the power key.
+           Use the linux event codes defined in
+           include/dt-bindings/input/linux-event-codes.h
+           When property is omitted KEY_POWER is assumed.
+
+required:
+  - compatible
+  - interrupts
+
+unevaluatedProperties: false
+
+examples:
+  - |
+   #include <dt-bindings/interrupt-controller/irq.h>
+   #include <dt-bindings/input/linux-event-codes.h>
+   #include <dt-bindings/spmi/spmi.h>
+   spmi_bus: spmi@c440000 {
+     reg = <0x0c440000 0x1100>;
+     #address-cells = <2>;
+     #size-cells = <0>;
+     pmk8350: pmic@0 {
+       reg = <0x0 SPMI_USID>;
+       #address-cells = <1>;
+       #size-cells = <0>;
+       pmk8350_pon: pon_hlos@1300 {
+         reg = <0x1300>;
+         compatible = "qcom,pm8998-pon";
+
+         pwrkey {
+            compatible = "qcom,pm8941-pwrkey";
+            interrupts = < 0x0 0x8 0 IRQ_TYPE_EDGE_BOTH >;
+            debounce = <15625>;
+            bias-pull-up;
+            linux,code = <KEY_POWER>;
+         };
+
+         resin {
+            compatible = "qcom,pm8941-resin";
+            interrupts = <0x0 0x8 1 IRQ_TYPE_EDGE_BOTH>;
+            debounce = <15625>;
+            bias-pull-up;
+            linux,code = <KEY_VOLUMEDOWN>;
+         };
+       };
+     };
+   };
+...
-- 
QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a member 
of Code Aurora Forum, hosted by The Linux Foundation

[PATCH V3 2/5] dt-bindings: input: pm8941-pwrkey: add pmk8350 compatible strings

From: satya priya <hidden>
Date: 2021-05-10 07:02:19

From: David Collins <redacted>

Add power key and resin compatible strings for the PMK8350 PMIC.
These are needed to distinguish key PON_HLOS register differences
between PMK8350 and previous PMIC PON modules.

Signed-off-by: David Collins <redacted>
Signed-off-by: satya priya <redacted>
Acked-by: Rob Herring <robh@kernel.org>
---
Chnages in V2:
 - Moved this patch before the conversion patches.

Changes in V3:
 - No changes.

 Documentation/devicetree/bindings/input/qcom,pm8941-pwrkey.txt | 2 ++
 1 file changed, 2 insertions(+)
diff --git a/Documentation/devicetree/bindings/input/qcom,pm8941-pwrkey.txt b/Documentation/devicetree/bindings/input/qcom,pm8941-pwrkey.txt
index 34ab576..6cd08bc 100644
--- a/Documentation/devicetree/bindings/input/qcom,pm8941-pwrkey.txt
+++ b/Documentation/devicetree/bindings/input/qcom,pm8941-pwrkey.txt
@@ -8,6 +8,8 @@ PROPERTIES
 	Definition: must be one of:
 		    "qcom,pm8941-pwrkey"
 		    "qcom,pm8941-resin"
+		    "qcom,pmk8350-pwrkey"
+		    "qcom,pmk8350-resin"
 
 - reg:
 	Usage: required
-- 
QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a member 
of Code Aurora Forum, hosted by The Linux Foundation

[PATCH V3 3/5] dt-bindings: power: reset: Change 'additionalProperties' to true

From: satya priya <hidden>
Date: 2021-05-10 07:02:23

Change 'additionalProperties' to true as this is a generic binding.

Signed-off-by: satya priya <redacted>
---
Changes in V3:
 - This is newly added in V3.

 Documentation/devicetree/bindings/power/reset/reboot-mode.yaml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Documentation/devicetree/bindings/power/reset/reboot-mode.yaml b/Documentation/devicetree/bindings/power/reset/reboot-mode.yaml
index 9c6fda6..ad0a0b9 100644
--- a/Documentation/devicetree/bindings/power/reset/reboot-mode.yaml
+++ b/Documentation/devicetree/bindings/power/reset/reboot-mode.yaml
@@ -36,7 +36,7 @@ patternProperties:
   "^mode-.*$":
     $ref: /schemas/types.yaml#/definitions/uint32
 
-additionalProperties: false
+additionalProperties: true
 
 examples:
   - |
-- 
QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a member 
of Code Aurora Forum, hosted by The Linux Foundation

[PATCH V3 1/5] input: pm8941-pwrkey: add support for PMK8350 PON_HLOS PMIC peripheral

From: satya priya <hidden>
Date: 2021-05-10 07:02:29

From: David Collins <redacted>

On Qualcomm Technologies, Inc. PMIC PMK8350, the PON peripheral
is split into two peripherals: PON_HLOS and PON_PBS.  The
application processor only has write access to PON_HLOS which
limits it to only receiving PON interrupts.

Add support for the PMK8350 PON_HLOS peripheral so that its
KPDPWR_N and RESIN_N interrupts can be used to detect key
presses.

Signed-off-by: David Collins <redacted>
Signed-off-by: satya priya <redacted>
Reviewed-by: Bjorn Andersson <redacted>
---
Changes in V2:
 - No change.

Changes in V3:
 - No change.

 drivers/input/misc/pm8941-pwrkey.c | 103 ++++++++++++++++++++++++++-----------
 1 file changed, 72 insertions(+), 31 deletions(-)
diff --git a/drivers/input/misc/pm8941-pwrkey.c b/drivers/input/misc/pm8941-pwrkey.c
index cf81044..10e3fc0 100644
--- a/drivers/input/misc/pm8941-pwrkey.c
+++ b/drivers/input/misc/pm8941-pwrkey.c
@@ -1,6 +1,6 @@
 // SPDX-License-Identifier: GPL-2.0-only
 /*
- * Copyright (c) 2010-2011, Code Aurora Forum. All rights reserved.
+ * Copyright (c) 2010-2011, 2020-2021, The Linux Foundation. All rights reserved.
  * Copyright (c) 2014, Sony Mobile Communications Inc.
  */
 
@@ -22,6 +22,8 @@
 #define PON_RT_STS			0x10
 #define  PON_KPDPWR_N_SET		BIT(0)
 #define  PON_RESIN_N_SET		BIT(1)
+#define  PON_GEN3_RESIN_N_SET		BIT(6)
+#define  PON_GEN3_KPDPWR_N_SET		BIT(7)
 
 #define PON_PS_HOLD_RST_CTL		0x5a
 #define PON_PS_HOLD_RST_CTL2		0x5b
@@ -38,8 +40,12 @@
 #define  PON_DBC_DELAY_MASK		0x7
 
 struct pm8941_data {
-	unsigned int pull_up_bit;
-	unsigned int status_bit;
+	unsigned int	pull_up_bit;
+	unsigned int	status_bit;
+	bool		supports_ps_hold_poff_config;
+	bool		supports_debounce_config;
+	const char	*name;
+	const char	*phys;
 };
 
 struct pm8941_pwrkey {
@@ -231,34 +237,40 @@ static int pm8941_pwrkey_probe(struct platform_device *pdev)
 
 	input_set_capability(pwrkey->input, EV_KEY, pwrkey->code);
 
-	pwrkey->input->name = "pm8941_pwrkey";
-	pwrkey->input->phys = "pm8941_pwrkey/input0";
-
-	req_delay = (req_delay << 6) / USEC_PER_SEC;
-	req_delay = ilog2(req_delay);
-
-	error = regmap_update_bits(pwrkey->regmap,
-				   pwrkey->baseaddr + PON_DBC_CTL,
-				   PON_DBC_DELAY_MASK,
-				   req_delay);
-	if (error) {
-		dev_err(&pdev->dev, "failed to set debounce: %d\n", error);
-		return error;
+	pwrkey->input->name = pwrkey->data->name;
+	pwrkey->input->phys = pwrkey->data->phys;
+
+	if (pwrkey->data->supports_debounce_config) {
+		req_delay = (req_delay << 6) / USEC_PER_SEC;
+		req_delay = ilog2(req_delay);
+
+		error = regmap_update_bits(pwrkey->regmap,
+					   pwrkey->baseaddr + PON_DBC_CTL,
+					   PON_DBC_DELAY_MASK,
+					   req_delay);
+		if (error) {
+			dev_err(&pdev->dev, "failed to set debounce: %d\n",
+				error);
+			return error;
+		}
 	}
 
-	error = regmap_update_bits(pwrkey->regmap,
-				   pwrkey->baseaddr + PON_PULL_CTL,
-				   pwrkey->data->pull_up_bit,
-				   pull_up ? pwrkey->data->pull_up_bit : 0);
-	if (error) {
-		dev_err(&pdev->dev, "failed to set pull: %d\n", error);
-		return error;
+	if (pwrkey->data->pull_up_bit) {
+		error = regmap_update_bits(pwrkey->regmap,
+					   pwrkey->baseaddr + PON_PULL_CTL,
+					   pwrkey->data->pull_up_bit,
+					   pull_up ? pwrkey->data->pull_up_bit :
+						     0);
+		if (error) {
+			dev_err(&pdev->dev, "failed to set pull: %d\n", error);
+			return error;
+		}
 	}
 
 	error = devm_request_threaded_irq(&pdev->dev, pwrkey->irq,
 					  NULL, pm8941_pwrkey_irq,
 					  IRQF_ONESHOT,
-					  "pm8941_pwrkey", pwrkey);
+					  pwrkey->data->name, pwrkey);
 	if (error) {
 		dev_err(&pdev->dev, "failed requesting IRQ: %d\n", error);
 		return error;
@@ -271,12 +283,14 @@ static int pm8941_pwrkey_probe(struct platform_device *pdev)
 		return error;
 	}
 
-	pwrkey->reboot_notifier.notifier_call = pm8941_reboot_notify,
-	error = register_reboot_notifier(&pwrkey->reboot_notifier);
-	if (error) {
-		dev_err(&pdev->dev, "failed to register reboot notifier: %d\n",
-			error);
-		return error;
+	if (pwrkey->data->supports_ps_hold_poff_config) {
+		pwrkey->reboot_notifier.notifier_call = pm8941_reboot_notify,
+		error = register_reboot_notifier(&pwrkey->reboot_notifier);
+		if (error) {
+			dev_err(&pdev->dev, "failed to register reboot notifier: %d\n",
+				error);
+			return error;
+		}
 	}
 
 	platform_set_drvdata(pdev, pwrkey);
@@ -289,7 +303,8 @@ static int pm8941_pwrkey_remove(struct platform_device *pdev)
 {
 	struct pm8941_pwrkey *pwrkey = platform_get_drvdata(pdev);
 
-	unregister_reboot_notifier(&pwrkey->reboot_notifier);
+	if (pwrkey->data->supports_ps_hold_poff_config)
+		unregister_reboot_notifier(&pwrkey->reboot_notifier);
 
 	return 0;
 }
@@ -297,16 +312,42 @@ static int pm8941_pwrkey_remove(struct platform_device *pdev)
 static const struct pm8941_data pwrkey_data = {
 	.pull_up_bit = PON_KPDPWR_PULL_UP,
 	.status_bit = PON_KPDPWR_N_SET,
+	.name = "pm8941_pwrkey",
+	.phys = "pm8941_pwrkey/input0",
+	.supports_ps_hold_poff_config = true,
+	.supports_debounce_config = true,
 };
 
 static const struct pm8941_data resin_data = {
 	.pull_up_bit = PON_RESIN_PULL_UP,
 	.status_bit = PON_RESIN_N_SET,
+	.name = "pm8941_resin",
+	.phys = "pm8941_resin/input0",
+	.supports_ps_hold_poff_config = true,
+	.supports_debounce_config = true,
+};
+
+static const struct pm8941_data pon_gen3_pwrkey_data = {
+	.status_bit = PON_GEN3_KPDPWR_N_SET,
+	.name = "pmic_pwrkey",
+	.phys = "pmic_pwrkey/input0",
+	.supports_ps_hold_poff_config = false,
+	.supports_debounce_config = false,
+};
+
+static const struct pm8941_data pon_gen3_resin_data = {
+	.status_bit = PON_GEN3_RESIN_N_SET,
+	.name = "pmic_resin",
+	.phys = "pmic_resin/input0",
+	.supports_ps_hold_poff_config = false,
+	.supports_debounce_config = false,
 };
 
 static const struct of_device_id pm8941_pwr_key_id_table[] = {
 	{ .compatible = "qcom,pm8941-pwrkey", .data = &pwrkey_data },
 	{ .compatible = "qcom,pm8941-resin", .data = &resin_data },
+	{ .compatible = "qcom,pmk8350-pwrkey", .data = &pon_gen3_pwrkey_data },
+	{ .compatible = "qcom,pmk8350-resin", .data = &pon_gen3_resin_data },
 	{ }
 };
 MODULE_DEVICE_TABLE(of, pm8941_pwr_key_id_table);
-- 
QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a member 
of Code Aurora Forum, hosted by The Linux Foundation

Re: [PATCH V3 4/5] dt-bindings: input: pm8941-pwrkey: Convert pm8941 power key binding to yaml

From: Rob Herring <robh@kernel.org>
Date: 2021-05-10 14:08:56

On Mon, 10 May 2021 12:31:03 +0530, satya priya wrote:
Convert qcom pm8941 power key binding from .txt to .yaml format.

Signed-off-by: satya priya <redacted>
---
Changes in V2:
 - Fixed bot errors, took reference from input.yaml for "linux,code"
 - Added one complete example for powerkey and resin, and referenced it
   in main PON binding.
 - Moved this patch to the end of the series.

Changes in V3:
 - Moved this patch before PON binding patch.
 - As per Rob's comments, added allOf at the beginning of binding.
   Added maxItems for interrupts.
 - Added 'unevaluatedProperties' instead of 'additionalProperties' as
   we are using allOf.

 .../bindings/input/qcom,pm8941-pwrkey.txt          | 55 --------------
 .../bindings/input/qcom,pm8941-pwrkey.yaml         | 87 ++++++++++++++++++++++
 2 files changed, 87 insertions(+), 55 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/input/qcom,pm8941-pwrkey.txt
 create mode 100644 Documentation/devicetree/bindings/input/qcom,pm8941-pwrkey.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:
Documentation/devicetree/bindings/input/qcom,pm8941-pwrkey.example.dt.yaml:0:0: /example-0/spmi@c440000/pmic@0/pon_hlos@1300: failed to match any schema with compatible: ['qcom,pm8998-pon']

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

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.

Re: [PATCH V3 3/5] dt-bindings: power: reset: Change 'additionalProperties' to true

From: Rob Herring <robh@kernel.org>
Date: 2021-05-10 16:20:59

On Mon, 10 May 2021 12:31:02 +0530, satya priya wrote:
Change 'additionalProperties' to true as this is a generic binding.

Signed-off-by: satya priya <redacted>
---
Changes in V3:
 - This is newly added in V3.

 Documentation/devicetree/bindings/power/reset/reboot-mode.yaml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
Acked-by: Rob Herring <robh@kernel.org>

Re: [PATCH V3 4/5] dt-bindings: input: pm8941-pwrkey: Convert pm8941 power key binding to yaml

From: Rob Herring <robh@kernel.org>
Date: 2021-05-10 16:24:52

On Mon, May 10, 2021 at 09:01:39AM -0500, Rob Herring wrote:
On Mon, 10 May 2021 12:31:03 +0530, satya priya wrote:
quoted
Convert qcom pm8941 power key binding from .txt to .yaml format.

Signed-off-by: satya priya <redacted>
---
Changes in V2:
 - Fixed bot errors, took reference from input.yaml for "linux,code"
 - Added one complete example for powerkey and resin, and referenced it
   in main PON binding.
 - Moved this patch to the end of the series.

Changes in V3:
 - Moved this patch before PON binding patch.
 - As per Rob's comments, added allOf at the beginning of binding.
   Added maxItems for interrupts.
 - Added 'unevaluatedProperties' instead of 'additionalProperties' as
   we are using allOf.

 .../bindings/input/qcom,pm8941-pwrkey.txt          | 55 --------------
 .../bindings/input/qcom,pm8941-pwrkey.yaml         | 87 ++++++++++++++++++++++
 2 files changed, 87 insertions(+), 55 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/input/qcom,pm8941-pwrkey.txt
 create mode 100644 Documentation/devicetree/bindings/input/qcom,pm8941-pwrkey.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:
Documentation/devicetree/bindings/input/qcom,pm8941-pwrkey.example.dt.yaml:0:0: /example-0/spmi@c440000/pmic@0/pon_hlos@1300: failed to match any schema with compatible: ['qcom,pm8998-pon']
You have the same example in patch 5, so drop the example here. That 
will fix this circular dependency.

Re: [PATCH V3 5/5] dt-bindings: power: reset: qcom-pon: Convert qcom PON binding to yaml

From: Rob Herring <robh@kernel.org>
Date: 2021-05-10 16:25:11

On Mon, 10 May 2021 12:31:04 +0530, satya priya wrote:
Convert qcom PON binding from .txt to .yaml format.

The example has been removed in favour of full example being
available in the qcom,pm8941-pwrkey binding.

Signed-off-by: satya priya <redacted>
---
Changes in V2:
 - As per Rob's comments, converted the main PON binding and added in V2.

Changes in V3:
 - As per Sebastian's comments, added allOf to refer reboot-mode.yaml and
   used unevaluatedProperties = false. Added maxItems for reg.

 .../devicetree/bindings/power/reset/qcom,pon.txt   | 49 ----------------------
 .../devicetree/bindings/power/reset/qcom,pon.yaml  | 44 +++++++++++++++++++
 2 files changed, 44 insertions(+), 49 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/power/reset/qcom,pon.txt
 create mode 100644 Documentation/devicetree/bindings/power/reset/qcom,pon.yaml
Reviewed-by: Rob Herring <robh@kernel.org>

Re: [PATCH V3 4/5] dt-bindings: input: pm8941-pwrkey: Convert pm8941 power key binding to yaml

From: <hidden>
Date: 2021-05-12 04:47:55

On 2021-05-10 21:54, Rob Herring wrote:
On Mon, May 10, 2021 at 09:01:39AM -0500, Rob Herring wrote:
quoted
On Mon, 10 May 2021 12:31:03 +0530, satya priya wrote:
quoted
Convert qcom pm8941 power key binding from .txt to .yaml format.

Signed-off-by: satya priya <redacted>
---
Changes in V2:
 - Fixed bot errors, took reference from input.yaml for "linux,code"
 - Added one complete example for powerkey and resin, and referenced it
   in main PON binding.
 - Moved this patch to the end of the series.

Changes in V3:
 - Moved this patch before PON binding patch.
 - As per Rob's comments, added allOf at the beginning of binding.
   Added maxItems for interrupts.
 - Added 'unevaluatedProperties' instead of 'additionalProperties' as
   we are using allOf.

 .../bindings/input/qcom,pm8941-pwrkey.txt          | 55 --------------
 .../bindings/input/qcom,pm8941-pwrkey.yaml         | 87 ++++++++++++++++++++++
 2 files changed, 87 insertions(+), 55 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/input/qcom,pm8941-pwrkey.txt
 create mode 100644 Documentation/devicetree/bindings/input/qcom,pm8941-pwrkey.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:
Documentation/devicetree/bindings/input/qcom,pm8941-pwrkey.example.dt.yaml:0:0: 
/example-0/spmi@c440000/pmic@0/pon_hlos@1300: failed to match any 
schema with compatible: ['qcom,pm8998-pon']
You have the same example in patch 5, so drop the example here. That
will fix this circular dependency.
Earlier I have dropped example from qcom-pon.yaml. Now, I will add the 
example there and drop here.

Re: [PATCH V3 1/5] input: pm8941-pwrkey: add support for PMK8350 PON_HLOS PMIC peripheral

From: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Date: 2021-06-02 04:36:36

On Mon, May 10, 2021 at 12:31:00PM +0530, satya priya wrote:
From: David Collins <redacted>

On Qualcomm Technologies, Inc. PMIC PMK8350, the PON peripheral
is split into two peripherals: PON_HLOS and PON_PBS.  The
application processor only has write access to PON_HLOS which
limits it to only receiving PON interrupts.

Add support for the PMK8350 PON_HLOS peripheral so that its
KPDPWR_N and RESIN_N interrupts can be used to detect key
presses.

Signed-off-by: David Collins <redacted>
Signed-off-by: satya priya <redacted>
Reviewed-by: Bjorn Andersson <redacted>
Applied, thank you.

-- 
Dmitry

Re: [PATCH V3 2/5] dt-bindings: input: pm8941-pwrkey: add pmk8350 compatible strings

From: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Date: 2021-06-02 04:36:49

On Mon, May 10, 2021 at 12:31:01PM +0530, satya priya wrote:
From: David Collins <redacted>

Add power key and resin compatible strings for the PMK8350 PMIC.
These are needed to distinguish key PON_HLOS register differences
between PMK8350 and previous PMIC PON modules.

Signed-off-by: David Collins <redacted>
Signed-off-by: satya priya <redacted>
Acked-by: Rob Herring <robh@kernel.org>
Applied, thank you.

-- 
Dmitry

Re: [PATCH V3 4/5] dt-bindings: input: pm8941-pwrkey: Convert pm8941 power key binding to yaml

From: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Date: 2021-06-02 04:37:38

On Wed, May 12, 2021 at 10:17:43AM +0530, skakit@codeaurora.org wrote:
On 2021-05-10 21:54, Rob Herring wrote:
quoted
On Mon, May 10, 2021 at 09:01:39AM -0500, Rob Herring wrote:
quoted
On Mon, 10 May 2021 12:31:03 +0530, satya priya wrote:
quoted
Convert qcom pm8941 power key binding from .txt to .yaml format.

Signed-off-by: satya priya <redacted>
---
Changes in V2:
 - Fixed bot errors, took reference from input.yaml for "linux,code"
 - Added one complete example for powerkey and resin, and referenced it
   in main PON binding.
 - Moved this patch to the end of the series.

Changes in V3:
 - Moved this patch before PON binding patch.
 - As per Rob's comments, added allOf at the beginning of binding.
   Added maxItems for interrupts.
 - Added 'unevaluatedProperties' instead of 'additionalProperties' as
   we are using allOf.

 .../bindings/input/qcom,pm8941-pwrkey.txt          | 55 --------------
 .../bindings/input/qcom,pm8941-pwrkey.yaml         | 87 ++++++++++++++++++++++
 2 files changed, 87 insertions(+), 55 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/input/qcom,pm8941-pwrkey.txt
 create mode 100644 Documentation/devicetree/bindings/input/qcom,pm8941-pwrkey.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:
Documentation/devicetree/bindings/input/qcom,pm8941-pwrkey.example.dt.yaml:0:0:
/example-0/spmi@c440000/pmic@0/pon_hlos@1300: failed to match any
schema with compatible: ['qcom,pm8998-pon']
You have the same example in patch 5, so drop the example here. That
will fix this circular dependency.
Earlier I have dropped example from qcom-pon.yaml. Now, I will add the
example there and drop here.
It sounds to me you want to combine patches 4 and 5 since they depend on
each other.

Thanks.

-- 
Dmitry

Re: [PATCH V3 4/5] dt-bindings: input: pm8941-pwrkey: Convert pm8941 power key binding to yaml

From: <hidden>
Date: 2021-06-02 10:31:57

On 2021-06-02 10:07, Dmitry Torokhov wrote:
On Wed, May 12, 2021 at 10:17:43AM +0530, skakit@codeaurora.org wrote:
quoted
On 2021-05-10 21:54, Rob Herring wrote:
quoted
On Mon, May 10, 2021 at 09:01:39AM -0500, Rob Herring wrote:
quoted
On Mon, 10 May 2021 12:31:03 +0530, satya priya wrote:
quoted
Convert qcom pm8941 power key binding from .txt to .yaml format.

Signed-off-by: satya priya <redacted>
---
Changes in V2:
 - Fixed bot errors, took reference from input.yaml for "linux,code"
 - Added one complete example for powerkey and resin, and referenced it
   in main PON binding.
 - Moved this patch to the end of the series.

Changes in V3:
 - Moved this patch before PON binding patch.
 - As per Rob's comments, added allOf at the beginning of binding.
   Added maxItems for interrupts.
 - Added 'unevaluatedProperties' instead of 'additionalProperties' as
   we are using allOf.

 .../bindings/input/qcom,pm8941-pwrkey.txt          | 55 --------------
 .../bindings/input/qcom,pm8941-pwrkey.yaml         | 87 ++++++++++++++++++++++
 2 files changed, 87 insertions(+), 55 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/input/qcom,pm8941-pwrkey.txt
 create mode 100644 Documentation/devicetree/bindings/input/qcom,pm8941-pwrkey.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:
Documentation/devicetree/bindings/input/qcom,pm8941-pwrkey.example.dt.yaml:0:0:
/example-0/spmi@c440000/pmic@0/pon_hlos@1300: failed to match any
schema with compatible: ['qcom,pm8998-pon']
You have the same example in patch 5, so drop the example here. That
will fix this circular dependency.
Earlier I have dropped example from qcom-pon.yaml. Now, I will add the
example there and drop here.
It sounds to me you want to combine patches 4 and 5 since they depend 
on
each other.
No, the idea was to have one complete example, instead of bits. So, 
initially I have removed the example part from qcom-pon.yaml and added 
full example here, but it was causing a circular dependency issue. Rob 
suggested to move it back to qcom-pon.yaml to fix issue.

I have posted V4 making that change.
https://lore.kernel.org/patchwork/patch/1425638/

Thanks,
Satya Priya
Thanks.

Re: [PATCH V3 3/5] dt-bindings: power: reset: Change 'additionalProperties' to true

From: Sebastian Reichel <sre@kernel.org>
Date: 2021-06-04 11:08:58

Hi,

On Mon, May 10, 2021 at 11:20:47AM -0500, Rob Herring wrote:
On Mon, 10 May 2021 12:31:02 +0530, satya priya wrote:
quoted
Change 'additionalProperties' to true as this is a generic binding.

Signed-off-by: satya priya <redacted>
---
Changes in V3:
 - This is newly added in V3.

 Documentation/devicetree/bindings/power/reset/reboot-mode.yaml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
Acked-by: Rob Herring <robh@kernel.org>
Acked-by: Sebastian Reichel <sre@kernel.org>

-- Sebastian

Re: [PATCH V3 5/5] dt-bindings: power: reset: qcom-pon: Convert qcom PON binding to yaml

From: Sebastian Reichel <sre@kernel.org>
Date: 2021-06-04 11:09:21

Hi,

On Mon, May 10, 2021 at 11:25:06AM -0500, Rob Herring wrote:
On Mon, 10 May 2021 12:31:04 +0530, satya priya wrote:
quoted
Convert qcom PON binding from .txt to .yaml format.

The example has been removed in favour of full example being
available in the qcom,pm8941-pwrkey binding.

Signed-off-by: satya priya <redacted>
---
Changes in V2:
 - As per Rob's comments, converted the main PON binding and added in V2.

Changes in V3:
 - As per Sebastian's comments, added allOf to refer reboot-mode.yaml and
   used unevaluatedProperties = false. Added maxItems for reg.

 .../devicetree/bindings/power/reset/qcom,pon.txt   | 49 ----------------------
 .../devicetree/bindings/power/reset/qcom,pon.yaml  | 44 +++++++++++++++++++
 2 files changed, 44 insertions(+), 49 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/power/reset/qcom,pon.txt
 create mode 100644 Documentation/devicetree/bindings/power/reset/qcom,pon.yaml
Reviewed-by: Rob Herring <robh@kernel.org>
Acked-by: Sebastian Reichel <sre@kernel.org>

-- Sebastian

Re: [PATCH V3 5/5] dt-bindings: power: reset: qcom-pon: Convert qcom PON binding to yaml

From: <hidden>
Date: 2021-06-04 11:42:50

Hi,

On 2021-06-04 16:39, Sebastian Reichel wrote:
Hi,

On Mon, May 10, 2021 at 11:25:06AM -0500, Rob Herring wrote:
quoted
On Mon, 10 May 2021 12:31:04 +0530, satya priya wrote:
quoted
Convert qcom PON binding from .txt to .yaml format.

The example has been removed in favour of full example being
available in the qcom,pm8941-pwrkey binding.

Signed-off-by: satya priya <redacted>
---
Changes in V2:
 - As per Rob's comments, converted the main PON binding and added in V2.

Changes in V3:
 - As per Sebastian's comments, added allOf to refer reboot-mode.yaml and
   used unevaluatedProperties = false. Added maxItems for reg.

 .../devicetree/bindings/power/reset/qcom,pon.txt   | 49 ----------------------
 .../devicetree/bindings/power/reset/qcom,pon.yaml  | 44 +++++++++++++++++++
 2 files changed, 44 insertions(+), 49 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/power/reset/qcom,pon.txt
 create mode 100644 Documentation/devicetree/bindings/power/reset/qcom,pon.yaml
Reviewed-by: Rob Herring <robh@kernel.org>
Acked-by: Sebastian Reichel <sre@kernel.org>
There is a V4 for this.
https://lore.kernel.org/patchwork/patch/1425638/
-- Sebastian

Re: [PATCH V3 5/5] dt-bindings: power: reset: qcom-pon: Convert qcom PON binding to yaml

From: <hidden>
Date: 2021-06-04 11:45:56

On 2021-06-04 17:12, skakit@codeaurora.org wrote:
Hi,

On 2021-06-04 16:39, Sebastian Reichel wrote:
quoted
Hi,

On Mon, May 10, 2021 at 11:25:06AM -0500, Rob Herring wrote:
quoted
On Mon, 10 May 2021 12:31:04 +0530, satya priya wrote:
quoted
Convert qcom PON binding from .txt to .yaml format.

The example has been removed in favour of full example being
available in the qcom,pm8941-pwrkey binding.

Signed-off-by: satya priya <redacted>
---
Changes in V2:
 - As per Rob's comments, converted the main PON binding and added in V2.

Changes in V3:
 - As per Sebastian's comments, added allOf to refer reboot-mode.yaml and
   used unevaluatedProperties = false. Added maxItems for reg.

 .../devicetree/bindings/power/reset/qcom,pon.txt   | 49 ----------------------
 .../devicetree/bindings/power/reset/qcom,pon.yaml  | 44 +++++++++++++++++++
 2 files changed, 44 insertions(+), 49 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/power/reset/qcom,pon.txt
 create mode 100644 Documentation/devicetree/bindings/power/reset/qcom,pon.yaml
Reviewed-by: Rob Herring <robh@kernel.org>
Acked-by: Sebastian Reichel <sre@kernel.org>
There is a V4 for this.
https://lore.kernel.org/patchwork/patch/1425638/
Seems like you already reviewed the V4.

Thanks,
Satya Priya
quoted
-- Sebastian

Re: [PATCH V3 5/5] dt-bindings: power: reset: qcom-pon: Convert qcom PON binding to yaml

From: Sebastian Reichel <sre@kernel.org>
Date: 2021-06-04 11:58:20

Hi,

On Fri, Jun 04, 2021 at 05:15:17PM +0530, skakit@codeaurora.org wrote:
On 2021-06-04 17:12, skakit@codeaurora.org wrote:
quoted
Hi,

On 2021-06-04 16:39, Sebastian Reichel wrote:
quoted
Hi,

On Mon, May 10, 2021 at 11:25:06AM -0500, Rob Herring wrote:
quoted
On Mon, 10 May 2021 12:31:04 +0530, satya priya wrote:
quoted
Convert qcom PON binding from .txt to .yaml format.

The example has been removed in favour of full example being
available in the qcom,pm8941-pwrkey binding.

Signed-off-by: satya priya <redacted>
---
Changes in V2:
 - As per Rob's comments, converted the main PON binding and added in V2.

Changes in V3:
 - As per Sebastian's comments, added allOf to refer reboot-mode.yaml and
   used unevaluatedProperties = false. Added maxItems for reg.

 .../devicetree/bindings/power/reset/qcom,pon.txt   | 49 ----------------------
 .../devicetree/bindings/power/reset/qcom,pon.yaml  | 44 +++++++++++++++++++
 2 files changed, 44 insertions(+), 49 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/power/reset/qcom,pon.txt
 create mode 100644 Documentation/devicetree/bindings/power/reset/qcom,pon.yaml
Reviewed-by: Rob Herring <robh@kernel.org>
Acked-by: Sebastian Reichel <sre@kernel.org>
There is a V4 for this.
https://lore.kernel.org/patchwork/patch/1425638/
Seems like you already reviewed the V4.
Ack, just ignore this :)

-- Sebastian
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help