mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/chenhuacai/linux-loongson
synced 2025-09-03 17:51:23 +00:00

Convert the TI clkctrl clock device tree binding to json-schema. Specify the creator of the original binding as a maintainer. reg property is used mostly with one item, in am3xxx also with an arbitrary number of items, so divert from the original binding specifying two (probably meaning one address and one size). The consumer part of the example is left out because the full consumer node would be needed. Signed-off-by: Andreas Kemnade <andreas@kemnade.info> Link: https://lore.kernel.org/r/20250311180215.173634-1-andreas@kemnade.info Reviewed-by: Rob Herring (Arm) <robh@kernel.org> Signed-off-by: Stephen Boyd <sboyd@kernel.org>
66 lines
1.6 KiB
YAML
66 lines
1.6 KiB
YAML
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
|
|
%YAML 1.2
|
|
---
|
|
$id: http://devicetree.org/schemas/clock/ti,clkctrl.yaml#
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
title: Texas Instruments clkctrl clock
|
|
|
|
maintainers:
|
|
- Tony Lindgren <tony@atomide.com>
|
|
- Andreas Kemnade <andreas@kemnade.info>
|
|
|
|
description: |
|
|
Texas Instruments SoCs can have a clkctrl clock controller for each
|
|
interconnect target module. The clkctrl clock controller manages functional
|
|
and interface clocks for each module. Each clkctrl controller can also
|
|
gate one or more optional functional clocks for a module, and can have one
|
|
or more clock muxes. There is a clkctrl clock controller typically for each
|
|
interconnect target module on omap4 and later variants.
|
|
|
|
The clock consumers can specify the index of the clkctrl clock using
|
|
the hardware offset from the clkctrl instance register space. The optional
|
|
clocks can be specified by clkctrl hardware offset and the index of the
|
|
optional clock.
|
|
|
|
properties:
|
|
compatible:
|
|
enum:
|
|
- ti,clkctrl
|
|
- ti,clkctrl-l4-cfg
|
|
- ti,clkctrl-l4-per
|
|
- ti,clkctrl-l4-secure
|
|
- ti,clkctrl-l4-wkup
|
|
|
|
"#clock-cells":
|
|
const: 2
|
|
|
|
clock-output-names:
|
|
maxItems: 1
|
|
|
|
reg:
|
|
minItems: 1
|
|
maxItems: 8 # arbitrary, should be enough
|
|
|
|
required:
|
|
- compatible
|
|
- "#clock-cells"
|
|
- clock-output-names
|
|
- reg
|
|
|
|
additionalProperties: false
|
|
|
|
examples:
|
|
- |
|
|
bus {
|
|
#address-cells = <1>;
|
|
#size-cells = <1>;
|
|
|
|
clock@20 {
|
|
compatible = "ti,clkctrl";
|
|
clock-output-names = "l4_per";
|
|
reg = <0x20 0x1b0>;
|
|
#clock-cells = <2>;
|
|
};
|
|
};
|