# SPDX-License-Identifier: GPL-2.0
%YAML 1.2
---
$id: http://devicetree.org/schemas/rtc/rtc.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: RTC Generic Binding

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

description: |
  This document describes generic bindings which can be used to
  describe Real Time Clock devices in a device tree.

properties:
  $nodename:
    pattern: "^rtc(@.*|-[0-9a-f])*$"

  aux-voltage-chargeable:
    $ref: /schemas/types.yaml#/definitions/uint32
    enum: [0, 1]
    description: |
      Tells whether the battery/supercap of the RTC (if any) is
      chargeable or not:
      0: not chargeable
      1: chargeable

  quartz-load-femtofarads:
    $ref: /schemas/types.yaml#/definitions/uint32
    description:
      The capacitive load of the quartz(x-tal), expressed in femto
      Farad (fF). The default value shall be listed (if optional),
      and likewise all valid values.

  start-year:
    $ref: /schemas/types.yaml#/definitions/uint32
    description:
      If provided, the default hardware range supported by the RTC is
      shifted so the first usable year is the specified one.

  trickle-diode-disable:
    $ref: /schemas/types.yaml#/definitions/flag
    description:
      Do not use internal trickle charger diode. Should be given if
      internal trickle charger diode should be disabled.
    deprecated: true

  trickle-resistor-ohms:
    $ref: /schemas/types.yaml#/definitions/uint32
    description:
      Selected resistor for trickle charger. Should be given
      if trickle charger should be enabled.

  trickle-voltage-millivolt:
    description:
      Selected voltage for trickle charger. Should be given
      if trickle charger should be enabled and the trickle voltage is different
      from the RTC main power supply.

  wakeup-source:
    $ref: /schemas/types.yaml#/definitions/flag
    description:
      Enables wake up of host system on alarm.

  reset-source:
    $ref: /schemas/types.yaml#/definitions/flag
    description:
      The RTC is able to reset the machine.

additionalProperties: true

...
