Skip to content

Commit 4260ddf

Browse files
Ansuelandersson
authored andcommitted
dt-bindings: arm: msm: Convert and split kpss-acc driver Documentation to yaml
Convert kpss-acc driver Documentation to yaml. The original Documentation was wrong all along. Fix it while we are converting it. The example was wrong as kpss-acc-v2 should only expose the regs but we don't have any driver that expose additional clocks. The kpss-acc driver is only specific to v1. For this exact reason, split the Documentation to 2 different schema, v1 as clock-controller and v2 for power-manager as per msm-3.10 specification, the exposed regs handle power manager. Signed-off-by: Christian Marangi <ansuelsmth@gmail.com> Reviewed-by: Rob Herring <robh@kernel.org> Signed-off-by: Bjorn Andersson <andersson@kernel.org> Link: https://lore.kernel.org/r/20230116204751.23045-3-ansuelsmth@gmail.com
1 parent 377c0b4 commit 4260ddf

3 files changed

Lines changed: 114 additions & 49 deletions

File tree

Documentation/devicetree/bindings/arm/msm/qcom,kpss-acc.txt

Lines changed: 0 additions & 49 deletions
This file was deleted.
Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/clock/qcom,kpss-acc-v1.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Krait Processor Sub-system (KPSS) Application Clock Controller (ACC) v1
8+
9+
maintainers:
10+
- Christian Marangi <ansuelsmth@gmail.com>
11+
12+
description:
13+
The KPSS ACC provides clock, power domain, and reset control to a Krait CPU.
14+
There is one ACC register region per CPU within the KPSS remapped region as
15+
well as an alias register region that remaps accesses to the ACC associated
16+
with the CPU accessing the region. ACC v1 is currently used as a
17+
clock-controller for enabling the cpu and hanling the aux clocks.
18+
19+
properties:
20+
compatible:
21+
const: qcom,kpss-acc-v1
22+
23+
reg:
24+
items:
25+
- description: Base address and size of the register region
26+
- description: Optional base address and size of the alias register region
27+
minItems: 1
28+
29+
clocks:
30+
minItems: 2
31+
maxItems: 2
32+
33+
clock-names:
34+
items:
35+
- const: pll8_vote
36+
- const: pxo
37+
38+
clock-output-names:
39+
description: Name of the aux clock. Krait can have at most 4 cpu.
40+
enum:
41+
- acpu0_aux
42+
- acpu1_aux
43+
- acpu2_aux
44+
- acpu3_aux
45+
46+
'#clock-cells':
47+
const: 0
48+
49+
required:
50+
- compatible
51+
- reg
52+
- clocks
53+
- clock-names
54+
- clock-output-names
55+
- '#clock-cells'
56+
57+
additionalProperties: false
58+
59+
examples:
60+
- |
61+
#include <dt-bindings/clock/qcom,gcc-ipq806x.h>
62+
63+
clock-controller@2088000 {
64+
compatible = "qcom,kpss-acc-v1";
65+
reg = <0x02088000 0x1000>, <0x02008000 0x1000>;
66+
clocks = <&gcc PLL8_VOTE>, <&pxo_board>;
67+
clock-names = "pll8_vote", "pxo";
68+
clock-output-names = "acpu0_aux";
69+
#clock-cells = <0>;
70+
};
71+
72+
...
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/power/qcom,kpss-acc-v2.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Krait Processor Sub-system (KPSS) Application Clock Controller (ACC) v2
8+
9+
maintainers:
10+
- Christian Marangi <ansuelsmth@gmail.com>
11+
12+
description:
13+
The KPSS ACC provides clock, power manager, and reset control to a Krait CPU.
14+
There is one ACC register region per CPU within the KPSS remapped region as
15+
well as an alias register region that remaps accesses to the ACC associated
16+
with the CPU accessing the region. ACC v2 is currently used as a
17+
power-manager for enabling the cpu.
18+
19+
properties:
20+
compatible:
21+
const: qcom,kpss-acc-v2
22+
23+
reg:
24+
items:
25+
- description: Base address and size of the register region
26+
- description: Optional base address and size of the alias register region
27+
minItems: 1
28+
29+
required:
30+
- compatible
31+
- reg
32+
33+
additionalProperties: false
34+
35+
examples:
36+
- |
37+
power-manager@f9088000 {
38+
compatible = "qcom,kpss-acc-v2";
39+
reg = <0xf9088000 0x1000>,
40+
<0xf9008000 0x1000>;
41+
};
42+
...

0 commit comments

Comments
 (0)