Commit e3899832 authored by Thierry Reding's avatar Thierry Reding Committed by Rob Herring
Browse files

dt-bindings: rtc: ds1307: Convert to json-schema



Convert the DS1307 (and compatible) RTC bindings from the free-form text
format to json-schema.

Signed-off-by: default avatarThierry Reding <treding@nvidia.com>
Reviewed-by: default avatarRob Herring <robh@kernel.org>
Signed-off-by: default avatarRob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20220617114420.1398259-1-thierry.reding@gmail.com
parent 4f46cc1b
Loading
Loading
Loading
Loading
+0 −52
Original line number Diff line number Diff line
Dallas DS1307 and compatible RTC

Required properties:
- compatible: should be one of:
	"dallas,ds1307",
	"dallas,ds1308",
	"dallas,ds1337",
	"dallas,ds1338",
	"dallas,ds1339",
	"dallas,ds1388",
	"dallas,ds1340",
	"dallas,ds1341",
	"maxim,ds3231",
	"st,m41t0",
	"st,m41t00",
	"st,m41t11",
	"microchip,mcp7940x",
	"microchip,mcp7941x",
	"pericom,pt7c4338",
	"epson,rx8025",
	"isil,isl12057"
	"epson,rx8130"
- reg: I2C bus address of the device

Optional properties:
- interrupts: rtc alarm interrupt.
- clock-output-names: From common clock binding to override the default output
                      clock name
- wakeup-source: Enables wake up of host system on alarm
- trickle-resistor-ohms : ds1339, ds1340 and ds 1388 only
	Selected resistor for trickle charger
	Possible values are 250, 2000, 4000
	Should be given if trickle charger should be enabled
- aux-voltage-chargeable: ds1339, ds1340, ds1388 and rx8130 only
	Tells whether the battery/supercap of the RTC (if any) is
	chargeable or not.
	Possible values are 0 (not chargeable), 1 (chargeable)

Deprecated properties:
- trickle-diode-disable : ds1339, ds1340 and ds1388 only
	Do not use internal trickle charger diode
	Should be given if internal trickle charger diode should be disabled
	(superseded by aux-voltage-chargeable)

Example:
	ds1339: rtc@68 {
		compatible = "dallas,ds1339";
		reg = <0x68>;
		interrupt-parent = <&gpio4>;
		interrupts = <20 0>;
		trickle-resistor-ohms = <250>;
	};
+102 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: GPL-2.0
%YAML 1.2
---
$id: http://devicetree.org/schemas/rtc/rtc-ds1307.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Dallas DS1307 and compatible RTC

maintainers:
  - Alexandre Belloni <alexandre.belloni@bootlin.com>

properties:
  compatible:
    oneOf:
      - enum:
          - dallas,ds1307
          - dallas,ds1308
          - dallas,ds1337
          - dallas,ds1338
          - dallas,ds1339
          - dallas,ds1388
          - dallas,ds1340
          - dallas,ds1341
          - maxim,ds3231
          - st,m41t0
          - st,m41t00
          - st,m41t11
          - microchip,mcp7940x
          - microchip,mcp7941x
          - pericom,pt7c4338
          - epson,rx8025
          - isil,isl12057
          - epson,rx8130

      - items:
          - enum:
              - st,m41t00
          - const: dallas,ds1338

  reg:
    maxItems: 1

  interrupts:
    minItems: 1
    maxItems: 2

  interrupt-names:
    maxItems: 2

  "#clock-cells":
    const: 1

  clock-output-names:
    description: From common clock binding to override the default output clock name.

  wakeup-source:
    description: Enables wake up of host system on alarm.

  vcc-supply: true

allOf:
  - $ref: rtc.yaml
  - if:
      properties:
        compatible:
          contains:
            enum:
              - dallas,ds1339
              - dallas,ds1340
              - dallas,ds1388
    then:
      properties:
        trickle-resistor-ohms:
          description: Selected resistor for trickle charger. Should be specified if trickle
            charger should be enabled.
          enum: [ 250, 2000, 4000 ]

        trickle-diode-disable:
          description: Do not use internal trickle charger diode. Should be given if internal
            trickle charger diode should be disabled (superseded by aux-voltage-chargeable)
          deprecated: true

unevaluatedProperties: false

required:
  - compatible
  - reg

examples:
  - |
    i2c {
      #address-cells = <1>;
      #size-cells = <0>;

      rtc@68 {
        compatible = "dallas,ds1337";
        reg = <0x68>;
        interrupt-parent = <&gpio4>;
        interrupts = <20 0>;
        trickle-resistor-ohms = <250>;
      };
    };