mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/chenhuacai/linux-loongson
synced 2025-08-31 06:09:56 +00:00

Providers DTS examples should not contain consumer nodes, because they are completely redundant, obvious (defined in common schema) and add unnecessary bloat. Drop consumer examples and unneeded node labels. Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Reviewed-by: Nishanth Menon <nm@ti.com> Acked-by: Rob Herring (Arm) <robh@kernel.org> Signed-off-by: Jassi Brar <jassisinghbrar@gmail.com>
292 lines
7.3 KiB
YAML
292 lines
7.3 KiB
YAML
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
|
|
%YAML 1.2
|
|
---
|
|
$id: http://devicetree.org/schemas/mailbox/qcom,apcs-kpss-global.yaml#
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
title: Qualcomm APCS global block
|
|
|
|
description:
|
|
This binding describes the APCS "global" block found in various Qualcomm
|
|
platforms.
|
|
|
|
maintainers:
|
|
- Jassi Brar <jassisinghbrar@gmail.com>
|
|
|
|
properties:
|
|
compatible:
|
|
oneOf:
|
|
- items:
|
|
- enum:
|
|
- qcom,ipq5018-apcs-apps-global
|
|
- qcom,ipq5332-apcs-apps-global
|
|
- qcom,ipq5424-apcs-apps-global
|
|
- qcom,ipq8074-apcs-apps-global
|
|
- qcom,ipq9574-apcs-apps-global
|
|
- const: qcom,ipq6018-apcs-apps-global
|
|
- items:
|
|
- enum:
|
|
- qcom,msm8226-apcs-kpss-global
|
|
- qcom,qcs404-apcs-apps-global
|
|
- const: qcom,msm8916-apcs-kpss-global
|
|
- const: syscon
|
|
- items:
|
|
- enum:
|
|
- qcom,msm8974-apcs-kpss-global
|
|
- qcom,msm8976-apcs-kpss-global
|
|
- const: qcom,msm8994-apcs-kpss-global
|
|
- const: syscon
|
|
- items:
|
|
- enum:
|
|
- qcom,msm8998-apcs-hmss-global
|
|
- qcom,sdm660-apcs-hmss-global
|
|
- qcom,sm4250-apcs-hmss-global
|
|
- qcom,sm6115-apcs-hmss-global
|
|
- qcom,sm6125-apcs-hmss-global
|
|
- const: qcom,msm8994-apcs-kpss-global
|
|
- items:
|
|
- enum:
|
|
- qcom,qcs615-apss-shared
|
|
- qcom,sc7180-apss-shared
|
|
- qcom,sc8180x-apss-shared
|
|
- qcom,sm7150-apss-shared
|
|
- qcom,sm8150-apss-shared
|
|
- const: qcom,sdm845-apss-shared
|
|
- items:
|
|
- enum:
|
|
- qcom,msm8916-apcs-kpss-global
|
|
- qcom,msm8939-apcs-kpss-global
|
|
- qcom,msm8953-apcs-kpss-global
|
|
- qcom,msm8994-apcs-kpss-global
|
|
- qcom,sdx55-apcs-gcc
|
|
- const: syscon
|
|
- enum:
|
|
- qcom,ipq6018-apcs-apps-global
|
|
- qcom,msm8996-apcs-hmss-global
|
|
- qcom,qcm2290-apcs-hmss-global
|
|
- qcom,sdm845-apss-shared
|
|
|
|
reg:
|
|
maxItems: 1
|
|
|
|
clocks:
|
|
description: phandles to the parent clocks of the clock driver
|
|
minItems: 2
|
|
maxItems: 3
|
|
deprecated: true
|
|
|
|
'#mbox-cells':
|
|
const: 1
|
|
|
|
'#clock-cells':
|
|
enum: [0, 1]
|
|
|
|
clock-names:
|
|
minItems: 2
|
|
maxItems: 3
|
|
deprecated: true
|
|
|
|
clock-controller:
|
|
type: object
|
|
additionalProperties: false
|
|
properties:
|
|
clocks:
|
|
description: phandles to the parent clocks of the clock driver
|
|
minItems: 2
|
|
maxItems: 3
|
|
|
|
'#clock-cells':
|
|
enum: [0, 1]
|
|
|
|
clock-names:
|
|
minItems: 2
|
|
maxItems: 3
|
|
|
|
required:
|
|
- compatible
|
|
- reg
|
|
- '#mbox-cells'
|
|
|
|
additionalProperties: false
|
|
|
|
# Clocks should be specified either on the parent node or on the child node
|
|
oneOf:
|
|
- required:
|
|
- clock-controller
|
|
properties:
|
|
clocks: false
|
|
clock-names: false
|
|
'#clock-cells': false
|
|
- properties:
|
|
clock-controller: false
|
|
|
|
$defs:
|
|
msm8916-apcs-clock-controller:
|
|
properties:
|
|
clocks:
|
|
items:
|
|
- description: primary pll parent of the clock driver
|
|
- description: auxiliary parent
|
|
clock-names:
|
|
items:
|
|
- const: pll
|
|
- const: aux
|
|
'#clock-cells':
|
|
const: 0
|
|
|
|
msm8939-apcs-clock-controller:
|
|
properties:
|
|
clocks:
|
|
items:
|
|
- description: primary pll parent of the clock driver
|
|
- description: auxiliary parent
|
|
- description: reference clock
|
|
clock-names:
|
|
items:
|
|
- const: pll
|
|
- const: aux
|
|
- const: ref
|
|
'#clock-cells':
|
|
const: 0
|
|
|
|
sdx55-apcs-clock-controller:
|
|
properties:
|
|
clocks:
|
|
items:
|
|
- description: reference clock
|
|
- description: primary pll parent of the clock driver
|
|
- description: auxiliary parent
|
|
clock-names:
|
|
items:
|
|
- const: ref
|
|
- const: pll
|
|
- const: aux
|
|
'#clock-cells':
|
|
const: 0
|
|
|
|
ipq6018-apcs-clock-controller:
|
|
properties:
|
|
clocks:
|
|
items:
|
|
- description: primary pll parent of the clock driver
|
|
- description: XO clock
|
|
- description: GCC GPLL0 clock source
|
|
clock-names:
|
|
items:
|
|
- const: pll
|
|
- const: xo
|
|
- const: gpll0
|
|
'#clock-cells':
|
|
const: 1
|
|
|
|
allOf:
|
|
- if:
|
|
properties:
|
|
compatible:
|
|
contains:
|
|
enum:
|
|
- qcom,msm8916-apcs-kpss-global
|
|
then:
|
|
$ref: "#/$defs/msm8916-apcs-clock-controller"
|
|
properties:
|
|
clock-controller:
|
|
$ref: "#/$defs/msm8916-apcs-clock-controller"
|
|
|
|
- if:
|
|
properties:
|
|
compatible:
|
|
contains:
|
|
enum:
|
|
- qcom,msm8939-apcs-kpss-global
|
|
then:
|
|
$ref: "#/$defs/msm8939-apcs-clock-controller"
|
|
properties:
|
|
clock-controller:
|
|
$ref: "#/$defs/msm8939-apcs-clock-controller"
|
|
|
|
- if:
|
|
properties:
|
|
compatible:
|
|
contains:
|
|
enum:
|
|
- qcom,sdx55-apcs-gcc
|
|
then:
|
|
$ref: "#/$defs/sdx55-apcs-clock-controller"
|
|
properties:
|
|
clock-controller:
|
|
$ref: "#/$defs/sdx55-apcs-clock-controller"
|
|
|
|
- if:
|
|
properties:
|
|
compatible:
|
|
contains:
|
|
enum:
|
|
- qcom,ipq6018-apcs-apps-global
|
|
then:
|
|
$ref: "#/$defs/ipq6018-apcs-clock-controller"
|
|
properties:
|
|
clock-controller:
|
|
$ref: "#/$defs/ipq6018-apcs-clock-controller"
|
|
|
|
- if:
|
|
properties:
|
|
compatible:
|
|
contains:
|
|
enum:
|
|
- qcom,msm8953-apcs-kpss-global
|
|
- qcom,msm8994-apcs-kpss-global
|
|
- qcom,msm8996-apcs-hmss-global
|
|
- qcom,qcm2290-apcs-hmss-global
|
|
- qcom,sdm845-apss-shared
|
|
then:
|
|
properties:
|
|
clocks: false
|
|
clock-names: false
|
|
clock-controller: false
|
|
'#clock-cells':
|
|
const: 0
|
|
|
|
examples:
|
|
|
|
# Example apcs with msm8996
|
|
- |
|
|
#include <dt-bindings/interrupt-controller/arm-gic.h>
|
|
mailbox@9820000 {
|
|
compatible = "qcom,msm8996-apcs-hmss-global";
|
|
reg = <0x9820000 0x1000>;
|
|
|
|
#mbox-cells = <1>;
|
|
#clock-cells = <0>;
|
|
};
|
|
|
|
# Example apcs with qcs404
|
|
- |
|
|
#define GCC_APSS_AHB_CLK_SRC 1
|
|
#define GCC_GPLL0_AO_OUT_MAIN 123
|
|
mailbox@b011000 {
|
|
compatible = "qcom,qcs404-apcs-apps-global",
|
|
"qcom,msm8916-apcs-kpss-global", "syscon";
|
|
reg = <0x0b011000 0x1000>;
|
|
#mbox-cells = <1>;
|
|
|
|
apcs_clk: clock-controller {
|
|
clocks = <&apcs_hfpll>, <&gcc GCC_GPLL0_AO_OUT_MAIN>;
|
|
clock-names = "pll", "aux";
|
|
#clock-cells = <0>;
|
|
};
|
|
};
|
|
|
|
# Example apcs with qcs404 (deprecated: use clock-controller subnode)
|
|
- |
|
|
#define GCC_APSS_AHB_CLK_SRC 1
|
|
#define GCC_GPLL0_AO_OUT_MAIN 123
|
|
apcs: mailbox@b011000 {
|
|
compatible = "qcom,qcs404-apcs-apps-global",
|
|
"qcom,msm8916-apcs-kpss-global", "syscon";
|
|
reg = <0x0b011000 0x1000>;
|
|
#mbox-cells = <1>;
|
|
clocks = <&apcs_hfpll>, <&gcc GCC_GPLL0_AO_OUT_MAIN>;
|
|
clock-names = "pll", "aux";
|
|
#clock-cells = <0>;
|
|
};
|