diff mbox series

dt-bindings: input: pwm-beeper: convert to dt schema

Message ID 20230328054833.1974942-1-peng.fan@oss.nxp.com (mailing list archive)
State Superseded
Headers show
Series dt-bindings: input: pwm-beeper: convert to dt schema | expand

Commit Message

Peng Fan (OSS) March 28, 2023, 5:48 a.m. UTC
From: Peng Fan <peng.fan@nxp.com>

Convert the binding doc to dt schema, and also fixed the
example from fixed-regulator to regulator-fixed.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
---
 .../devicetree/bindings/input/pwm-beeper.txt  | 24 ----------
 .../devicetree/bindings/input/pwm-beeper.yaml | 48 +++++++++++++++++++
 2 files changed, 48 insertions(+), 24 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/input/pwm-beeper.txt
 create mode 100644 Documentation/devicetree/bindings/input/pwm-beeper.yaml

Comments

Rob Herring March 28, 2023, 12:57 p.m. UTC | #1
On Tue, 28 Mar 2023 13:48:33 +0800, Peng Fan (OSS) wrote:
> From: Peng Fan <peng.fan@nxp.com>
> 
> Convert the binding doc to dt schema, and also fixed the
> example from fixed-regulator to regulator-fixed.
> 
> Signed-off-by: Peng Fan <peng.fan@nxp.com>
> ---
>  .../devicetree/bindings/input/pwm-beeper.txt  | 24 ----------
>  .../devicetree/bindings/input/pwm-beeper.yaml | 48 +++++++++++++++++++
>  2 files changed, 48 insertions(+), 24 deletions(-)
>  delete mode 100644 Documentation/devicetree/bindings/input/pwm-beeper.txt
>  create mode 100644 Documentation/devicetree/bindings/input/pwm-beeper.yaml
> 

Running 'make dtbs_check' with the schema in this patch gives the
following warnings. Consider if they are expected or the schema is
incorrect. These may not be new warnings.

Note that it is not yet a requirement to have 0 warnings for dtbs_check.
This will change in the future.

Full log is available here: https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20230328054833.1974942-1-peng.fan@oss.nxp.com


beeper: beeper-hz:0:0: 4000 is greater than the maximum of 255
	arch/arm64/boot/dts/freescale/imx8mm-tqma8mqml-mba8mx.dtb
	arch/arm64/boot/dts/freescale/imx8mn-tqma8mqnl-mba8mx.dtb
	arch/arm64/boot/dts/freescale/imx8mq-tqma8mq-mba8mx.dtb

beeper: pwms:0: [19, 31, 4000] is too long
	arch/arm/boot/dts/armada-370-c200-v2.dtb

beeper: pwms:0: [52, 5, 1000000, 0] is too long
	arch/arm/boot/dts/aspeed-bmc-vegman-n110.dtb

beeper: pwms:0: [53, 5, 1000000, 0] is too long
	arch/arm/boot/dts/aspeed-bmc-vegman-rx20.dtb
	arch/arm/boot/dts/aspeed-bmc-vegman-sx20.dtb

beeper: pwms:0: [72, 0, 250000, 0] is too long
	arch/arm64/boot/dts/freescale/imx8mn-tqma8mqnl-mba8mx.dtb

beeper: pwms:0: [91, 0, 250000, 0] is too long
	arch/arm64/boot/dts/freescale/imx8mm-tqma8mqml-mba8mx.dtb

beeper: pwms:0: [98, 0, 250000, 0] is too long
	arch/arm64/boot/dts/freescale/imx8mq-tqma8mq-mba8mx.dtb

beeper: pwms:0: [98, 0, 500000] is too long
	arch/arm/boot/dts/imx6q-kp-tpc.dtb

beeper: Unevaluated properties are not allowed ('beeper-hz', 'pwms' were unexpected)
	arch/arm64/boot/dts/freescale/imx8mm-tqma8mqml-mba8mx.dtb
	arch/arm64/boot/dts/freescale/imx8mn-tqma8mqnl-mba8mx.dtb
	arch/arm64/boot/dts/freescale/imx8mq-tqma8mq-mba8mx.dtb

beeper: Unevaluated properties are not allowed ('pwms' was unexpected)
	arch/arm/boot/dts/armada-370-c200-v2.dtb
	arch/arm/boot/dts/aspeed-bmc-vegman-n110.dtb
	arch/arm/boot/dts/aspeed-bmc-vegman-rx20.dtb
	arch/arm/boot/dts/aspeed-bmc-vegman-sx20.dtb
	arch/arm/boot/dts/imx6q-kp-tpc.dtb

beep: pwms:0: [108, 0, 4000000, 1] is too long
	arch/arm/boot/dts/exynos4412-itop-elite.dtb

beep: Unevaluated properties are not allowed ('pwms' was unexpected)
	arch/arm/boot/dts/exynos4412-itop-elite.dtb

buzzer: pwms:0: [20, 0, 1000000, 0] is too long
	arch/arm/boot/dts/s3c6410-mini6410.dtb

buzzer: pwms:0: [41, 0, 500000] is too long
	arch/arm/boot/dts/imx53-kp-ddc.dtb

buzzer: pwms:0: [42, 0, 500000] is too long
	arch/arm/boot/dts/imx53-kp-hsc.dtb

buzzer: Unevaluated properties are not allowed ('pwms' was unexpected)
	arch/arm/boot/dts/imx53-kp-ddc.dtb
	arch/arm/boot/dts/imx53-kp-hsc.dtb
	arch/arm/boot/dts/s3c6410-mini6410.dtb

pwm-beeper: pwms:0: [56, 0, 5000] is too long
	arch/arm/boot/dts/imx6ul-kontron-bl.dtb
	arch/arm/boot/dts/imx6ull-kontron-bl.dtb

pwm-beeper: pwms:0: [60, 0, 5000] is too long
	arch/arm/boot/dts/imx6ul-kontron-bl-43.dtb

pwm-beeper: pwms:0: [83, 0, 5000, 0] is too long
	arch/arm64/boot/dts/freescale/imx8mm-kontron-bl.dtb

pwm-beeper: pwms:0: [86, 0, 5000, 0] is too long
	arch/arm64/boot/dts/freescale/imx8mm-kontron-bl-osm-s.dtb

pwm-beeper: Unevaluated properties are not allowed ('pwms' was unexpected)
	arch/arm64/boot/dts/freescale/imx8mm-kontron-bl.dtb
	arch/arm64/boot/dts/freescale/imx8mm-kontron-bl-osm-s.dtb
	arch/arm/boot/dts/imx6ul-kontron-bl-43.dtb
	arch/arm/boot/dts/imx6ul-kontron-bl.dtb
	arch/arm/boot/dts/imx6ull-kontron-bl.dtb

sound: pwms:0: [44, 1, 1000000, 0] is too long
	arch/arm/boot/dts/da850-lego-ev3.dtb

sound: Unevaluated properties are not allowed ('pwms' was unexpected)
	arch/arm/boot/dts/da850-lego-ev3.dtb
Rob Herring March 28, 2023, 1:54 p.m. UTC | #2
On Tue, Mar 28, 2023 at 12:43 AM Peng Fan (OSS) <peng.fan@oss.nxp.com> wrote:
>
> From: Peng Fan <peng.fan@nxp.com>
>
> Convert the binding doc to dt schema, and also fixed the
> example from fixed-regulator to regulator-fixed.
>
> Signed-off-by: Peng Fan <peng.fan@nxp.com>
> ---
>  .../devicetree/bindings/input/pwm-beeper.txt  | 24 ----------
>  .../devicetree/bindings/input/pwm-beeper.yaml | 48 +++++++++++++++++++
>  2 files changed, 48 insertions(+), 24 deletions(-)
>  delete mode 100644 Documentation/devicetree/bindings/input/pwm-beeper.txt
>  create mode 100644 Documentation/devicetree/bindings/input/pwm-beeper.yaml
>
> diff --git a/Documentation/devicetree/bindings/input/pwm-beeper.txt b/Documentation/devicetree/bindings/input/pwm-beeper.txt
> deleted file mode 100644
> index 8fc0e48c20db..000000000000
> --- a/Documentation/devicetree/bindings/input/pwm-beeper.txt
> +++ /dev/null
> @@ -1,24 +0,0 @@
> -* PWM beeper device tree bindings
> -
> -Registers a PWM device as beeper.
> -
> -Required properties:
> -- compatible: should be "pwm-beeper"
> -- pwms: phandle to the physical PWM device
> -
> -Optional properties:
> -- amp-supply: phandle to a regulator that acts as an amplifier for the beeper
> -- beeper-hz:  bell frequency in Hz
> -
> -Example:
> -
> -beeper_amp: amplifier {
> -       compatible = "fixed-regulator";
> -       gpios = <&gpio0 1 GPIO_ACTIVE_HIGH>;
> -};
> -
> -beeper {
> -       compatible = "pwm-beeper";
> -       pwms = <&pwm0>;
> -       amp-supply = <&beeper_amp>;
> -};
> diff --git a/Documentation/devicetree/bindings/input/pwm-beeper.yaml b/Documentation/devicetree/bindings/input/pwm-beeper.yaml
> new file mode 100644
> index 000000000000..1d7cd58d2a8f
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/input/pwm-beeper.yaml
> @@ -0,0 +1,48 @@
> +# SPDX-License-Identifier: (GPL-2.0-or-later OR BSD-2-Clause)

'or-later' is wrong.

> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/input/pwm-beeper.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: PWM beeper
> +
> +maintainers:
> +  - Sascha Hauer <s.hauer@pengutronix.de>
> +
> +properties:
> +  compatible:
> +    items:

Drop 'items' as there is only 1.

> +      - const: pwm-beeper
> +
> +  pwms:
> +    description: Phandle to the physical PWM device
> +    $ref: /schemas/types.yaml#/definitions/phandle

Standard property which already has a type.

> +
> +  amp-supply:
> +    description: Phandle to a regulator that acts as an amplifier for the beeper
> +
> +  beeper-hz:
> +    description: bell frequency in Hz
> +    minimum: 1
> +    maximum: 255

doubtful a beeper can generate frequencies of 1-255Hz...

> +
> +required:
> +  - compatible
> +  - pwms
> +
> +unevaluatedProperties: false
> +
> +examples:
> +  - |
> +    #include <dt-bindings/gpio/gpio.h>
> +    beeper_amp: amplifier {

Don't need to show providers in examples for the consumer.

> +       compatible = "regulator-fixed";
> +       gpios = <&gpio0 1 GPIO_ACTIVE_HIGH>;
> +       regulator-name = "beeper_amp";
> +    };
> +
> +    beeper {
> +        compatible = "pwm-beeper";
> +        pwms = <&pwm0>;
> +        amp-supply = <&beeper_amp>;

Make the example complete and add beeper-hz.

> +    };
> --
> 2.37.1
>
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/input/pwm-beeper.txt b/Documentation/devicetree/bindings/input/pwm-beeper.txt
deleted file mode 100644
index 8fc0e48c20db..000000000000
--- a/Documentation/devicetree/bindings/input/pwm-beeper.txt
+++ /dev/null
@@ -1,24 +0,0 @@ 
-* PWM beeper device tree bindings
-
-Registers a PWM device as beeper.
-
-Required properties:
-- compatible: should be "pwm-beeper"
-- pwms: phandle to the physical PWM device
-
-Optional properties:
-- amp-supply: phandle to a regulator that acts as an amplifier for the beeper
-- beeper-hz:  bell frequency in Hz
-
-Example:
-
-beeper_amp: amplifier {
-	compatible = "fixed-regulator";
-	gpios = <&gpio0 1 GPIO_ACTIVE_HIGH>;
-};
-
-beeper {
-	compatible = "pwm-beeper";
-	pwms = <&pwm0>;
-	amp-supply = <&beeper_amp>;
-};
diff --git a/Documentation/devicetree/bindings/input/pwm-beeper.yaml b/Documentation/devicetree/bindings/input/pwm-beeper.yaml
new file mode 100644
index 000000000000..1d7cd58d2a8f
--- /dev/null
+++ b/Documentation/devicetree/bindings/input/pwm-beeper.yaml
@@ -0,0 +1,48 @@ 
+# SPDX-License-Identifier: (GPL-2.0-or-later OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/input/pwm-beeper.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: PWM beeper
+
+maintainers:
+  - Sascha Hauer <s.hauer@pengutronix.de>
+
+properties:
+  compatible:
+    items:
+      - const: pwm-beeper
+
+  pwms:
+    description: Phandle to the physical PWM device
+    $ref: /schemas/types.yaml#/definitions/phandle
+
+  amp-supply:
+    description: Phandle to a regulator that acts as an amplifier for the beeper
+
+  beeper-hz:
+    description: bell frequency in Hz
+    minimum: 1
+    maximum: 255
+
+required:
+  - compatible
+  - pwms
+
+unevaluatedProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/gpio/gpio.h>
+    beeper_amp: amplifier {
+       compatible = "regulator-fixed";
+       gpios = <&gpio0 1 GPIO_ACTIVE_HIGH>;
+       regulator-name = "beeper_amp";
+    };
+
+    beeper {
+        compatible = "pwm-beeper";
+        pwms = <&pwm0>;
+        amp-supply = <&beeper_amp>;
+    };