mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/chenhuacai/linux-loongson
synced 2025-08-30 13:03:01 +00:00

Add a common DT schema for DPLL device and its associated pins. The DPLL (device phase-locked loop) is a device used for precise clock synchronization in networking and telecom hardware. The device includes one or more DPLLs (channels) and one or more physical input/output pins. Each DPLL channel is used either to provide a pulse-per-clock signal or to drive an Ethernet equipment clock. The input and output pins have the following properties: * label: specifies board label * connection type: specifies its usage depending on wiring * list of supported or allowed frequencies: depending on how the pin is connected and where) * embedded sync capability: indicates whether the pin supports this Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Signed-off-by: Ivan Vecera <ivecera@redhat.com> Reviewed-by: Jiri Pirko <jiri@nvidia.com> Link: https://patch.msgid.link/20250704182202.1641943-2-ivecera@redhat.com Signed-off-by: Jakub Kicinski <kuba@kernel.org>
77 lines
1.7 KiB
YAML
77 lines
1.7 KiB
YAML
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
|
|
%YAML 1.2
|
|
---
|
|
$id: http://devicetree.org/schemas/dpll/dpll-device.yaml#
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
title: Digital Phase-Locked Loop (DPLL) Device
|
|
|
|
maintainers:
|
|
- Ivan Vecera <ivecera@redhat.com>
|
|
|
|
description:
|
|
Digital Phase-Locked Loop (DPLL) device is used for precise clock
|
|
synchronization in networking and telecom hardware. The device can
|
|
have one or more channels (DPLLs) and one or more physical input and
|
|
output pins. Each DPLL channel can either produce pulse-per-clock signal
|
|
or drive ethernet equipment clock. The type of each channel can be
|
|
indicated by dpll-types property.
|
|
|
|
properties:
|
|
$nodename:
|
|
pattern: "^dpll(@.*)?$"
|
|
|
|
"#address-cells":
|
|
const: 0
|
|
|
|
"#size-cells":
|
|
const: 0
|
|
|
|
dpll-types:
|
|
description: List of DPLL channel types, one per DPLL instance.
|
|
$ref: /schemas/types.yaml#/definitions/non-unique-string-array
|
|
items:
|
|
enum: [pps, eec]
|
|
|
|
input-pins:
|
|
type: object
|
|
description: DPLL input pins
|
|
unevaluatedProperties: false
|
|
|
|
properties:
|
|
"#address-cells":
|
|
const: 1
|
|
"#size-cells":
|
|
const: 0
|
|
|
|
patternProperties:
|
|
"^pin@[0-9a-f]+$":
|
|
$ref: /schemas/dpll/dpll-pin.yaml
|
|
unevaluatedProperties: false
|
|
|
|
required:
|
|
- "#address-cells"
|
|
- "#size-cells"
|
|
|
|
output-pins:
|
|
type: object
|
|
description: DPLL output pins
|
|
unevaluatedProperties: false
|
|
|
|
properties:
|
|
"#address-cells":
|
|
const: 1
|
|
"#size-cells":
|
|
const: 0
|
|
|
|
patternProperties:
|
|
"^pin@[0-9]+$":
|
|
$ref: /schemas/dpll/dpll-pin.yaml
|
|
unevaluatedProperties: false
|
|
|
|
required:
|
|
- "#address-cells"
|
|
- "#size-cells"
|
|
|
|
additionalProperties: true
|