Commit a4a7cbe3 authored by Heiko Stuebner's avatar Heiko Stuebner Committed by Stephen Boyd
Browse files

dt-bindings: clocks: add binding for gated-fixed-clocks



In contrast to fixed clocks that are described as ungateable, boards
sometimes use additional oscillators for things like PCIe reference
clocks, that need actual supplies to get enabled and enable-gpios to be
toggled for them to work.

This adds a binding for such oscillators that are not configurable
themself, but need to handle supplies for them to work.

In schematics they often can be seen as

         ----------------
Enable - | 100MHz,3.3V, | - VDD
         |    3225      |
   GND - |              | - OUT
         ----------------

or similar. The enable pin might be separate but can also just be tied
to the vdd supply, hence it is optional in the binding.

Signed-off-by: default avatarHeiko Stuebner <heiko@sntech.de>
Reviewed-by: default avatarRob Herring (Arm) <robh@kernel.org>
Reviewed-by: default avatarConor Dooley <conor.dooley@microchip.com>
Link: https://lore.kernel.org/r/20240906082511.2963890-2-heiko@sntech.de


Signed-off-by: default avatarStephen Boyd <sboyd@kernel.org>
parent 9852d85e
Loading
Loading
Loading
Loading
+49 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/clock/gated-fixed-clock.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Gated Fixed clock

maintainers:
  - Heiko Stuebner <heiko@sntech.de>

properties:
  compatible:
    const: gated-fixed-clock

  "#clock-cells":
    const: 0

  clock-frequency: true

  clock-output-names:
    maxItems: 1

  enable-gpios:
    description:
      Contains a single GPIO specifier for the GPIO that enables and disables
      the oscillator.
    maxItems: 1

  vdd-supply:
    description: handle of the regulator that provides the supply voltage

required:
  - compatible
  - "#clock-cells"
  - clock-frequency
  - vdd-supply

additionalProperties: false

examples:
  - |
    clock-1000000000 {
      compatible = "gated-fixed-clock";
      #clock-cells = <0>;
      clock-frequency = <1000000000>;
      vdd-supply = <&reg_vdd>;
    };
...