Skip to content
This repository was archived by the owner on Nov 8, 2023. It is now read-only.

Commit 40d9c6e

Browse files
committed
Merge branch '20231106-topic-sm8650-upstream-clocks-v3-5-761a6fadb4c0@linaro.org' into arm64-for-6.8
Merge the SM8650 clock bindings, to gain access to the clock constants.
2 parents 264beb3 + 873f224 commit 40d9c6e

File tree

10 files changed

+617
-2
lines changed

10 files changed

+617
-2
lines changed

Documentation/devicetree/bindings/clock/qcom,rpmhcc.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@ properties:
3535
- qcom,sm8350-rpmh-clk
3636
- qcom,sm8450-rpmh-clk
3737
- qcom,sm8550-rpmh-clk
38+
- qcom,sm8650-rpmh-clk
3839

3940
clocks:
4041
maxItems: 1

Documentation/devicetree/bindings/clock/qcom,sm8450-gpucc.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,12 +17,14 @@ description: |
1717
include/dt-bindings/clock/qcom,sm8450-gpucc.h
1818
include/dt-bindings/clock/qcom,sm8550-gpucc.h
1919
include/dt-bindings/reset/qcom,sm8450-gpucc.h
20+
include/dt-bindings/reset/qcom,sm8650-gpucc.h
2021
2122
properties:
2223
compatible:
2324
enum:
2425
- qcom,sm8450-gpucc
2526
- qcom,sm8550-gpucc
27+
- qcom,sm8650-gpucc
2628

2729
clocks:
2830
items:

Documentation/devicetree/bindings/clock/qcom,sm8550-tcsr.yaml

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,12 +13,16 @@ description: |
1313
Qualcomm TCSR clock control module provides the clocks, resets and
1414
power domains on SM8550
1515
16-
See also:: include/dt-bindings/clock/qcom,sm8550-tcsr.h
16+
See also:
17+
- include/dt-bindings/clock/qcom,sm8550-tcsr.h
18+
- include/dt-bindings/clock/qcom,sm8650-tcsr.h
1719
1820
properties:
1921
compatible:
2022
items:
21-
- const: qcom,sm8550-tcsr
23+
- enum:
24+
- qcom,sm8550-tcsr
25+
- qcom,sm8650-tcsr
2226
- const: syscon
2327

2428
clocks:
Lines changed: 106 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,106 @@
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,sm8650-dispcc.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Qualcomm Display Clock & Reset Controller for SM8650
8+
9+
maintainers:
10+
- Bjorn Andersson <[email protected]>
11+
- Neil Armstrong <[email protected]>
12+
13+
description: |
14+
Qualcomm display clock control module provides the clocks, resets and power
15+
domains on SM8650.
16+
17+
See also:: include/dt-bindings/clock/qcom,sm8650-dispcc.h
18+
19+
properties:
20+
compatible:
21+
enum:
22+
- qcom,sm8650-dispcc
23+
24+
clocks:
25+
items:
26+
- description: Board XO source
27+
- description: Board Always On XO source
28+
- description: Display's AHB clock
29+
- description: sleep clock
30+
- description: Byte clock from DSI PHY0
31+
- description: Pixel clock from DSI PHY0
32+
- description: Byte clock from DSI PHY1
33+
- description: Pixel clock from DSI PHY1
34+
- description: Link clock from DP PHY0
35+
- description: VCO DIV clock from DP PHY0
36+
- description: Link clock from DP PHY1
37+
- description: VCO DIV clock from DP PHY1
38+
- description: Link clock from DP PHY2
39+
- description: VCO DIV clock from DP PHY2
40+
- description: Link clock from DP PHY3
41+
- description: VCO DIV clock from DP PHY3
42+
43+
'#clock-cells':
44+
const: 1
45+
46+
'#reset-cells':
47+
const: 1
48+
49+
'#power-domain-cells':
50+
const: 1
51+
52+
reg:
53+
maxItems: 1
54+
55+
power-domains:
56+
description:
57+
A phandle and PM domain specifier for the MMCX power domain.
58+
maxItems: 1
59+
60+
required-opps:
61+
description:
62+
A phandle to an OPP node describing required MMCX performance point.
63+
maxItems: 1
64+
65+
required:
66+
- compatible
67+
- reg
68+
- clocks
69+
- '#clock-cells'
70+
- '#reset-cells'
71+
- '#power-domain-cells'
72+
73+
additionalProperties: false
74+
75+
examples:
76+
- |
77+
#include <dt-bindings/clock/qcom,sm8650-gcc.h>
78+
#include <dt-bindings/clock/qcom,rpmh.h>
79+
#include <dt-bindings/power/qcom-rpmpd.h>
80+
#include <dt-bindings/power/qcom,rpmhpd.h>
81+
clock-controller@af00000 {
82+
compatible = "qcom,sm8650-dispcc";
83+
reg = <0x0af00000 0x10000>;
84+
clocks = <&rpmhcc RPMH_CXO_CLK>,
85+
<&rpmhcc RPMH_CXO_CLK_A>,
86+
<&gcc GCC_DISP_AHB_CLK>,
87+
<&sleep_clk>,
88+
<&dsi0_phy 0>,
89+
<&dsi0_phy 1>,
90+
<&dsi1_phy 0>,
91+
<&dsi1_phy 1>,
92+
<&dp0_phy 0>,
93+
<&dp0_phy 1>,
94+
<&dp1_phy 0>,
95+
<&dp1_phy 1>,
96+
<&dp2_phy 0>,
97+
<&dp2_phy 1>,
98+
<&dp3_phy 0>,
99+
<&dp3_phy 1>;
100+
#clock-cells = <1>;
101+
#reset-cells = <1>;
102+
#power-domain-cells = <1>;
103+
power-domains = <&rpmhpd RPMHPD_MMCX>;
104+
required-opps = <&rpmhpd_opp_low_svs>;
105+
};
106+
...
Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
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,sm8650-gcc.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Qualcomm Global Clock & Reset Controller on SM8650
8+
9+
maintainers:
10+
- Bjorn Andersson <[email protected]>
11+
12+
description: |
13+
Qualcomm global clock control module provides the clocks, resets and power
14+
domains on SM8650
15+
16+
See also:: include/dt-bindings/clock/qcom,sm8650-gcc.h
17+
18+
properties:
19+
compatible:
20+
const: qcom,sm8650-gcc
21+
22+
clocks:
23+
items:
24+
- description: Board XO source
25+
- description: Board Always On XO source
26+
- description: Sleep clock source
27+
- description: PCIE 0 Pipe clock source
28+
- description: PCIE 1 Pipe clock source
29+
- description: PCIE 1 Phy Auxiliary clock source
30+
- description: UFS Phy Rx symbol 0 clock source
31+
- description: UFS Phy Rx symbol 1 clock source
32+
- description: UFS Phy Tx symbol 0 clock source
33+
- description: USB3 Phy wrapper pipe clock source
34+
35+
required:
36+
- compatible
37+
- clocks
38+
39+
allOf:
40+
- $ref: qcom,gcc.yaml#
41+
42+
unevaluatedProperties: false
43+
44+
examples:
45+
- |
46+
#include <dt-bindings/clock/qcom,rpmh.h>
47+
clock-controller@100000 {
48+
compatible = "qcom,sm8650-gcc";
49+
reg = <0x00100000 0x001f4200>;
50+
clocks = <&rpmhcc RPMH_CXO_CLK>,
51+
<&rpmhcc RPMH_CXO_CLK_A>,
52+
<&sleep_clk>,
53+
<&pcie0_phy>,
54+
<&pcie1_phy>,
55+
<&pcie_1_phy_aux_clk>,
56+
<&ufs_mem_phy 0>,
57+
<&ufs_mem_phy 1>,
58+
<&ufs_mem_phy 2>,
59+
<&usb_1_qmpphy>;
60+
#clock-cells = <1>;
61+
#reset-cells = <1>;
62+
#power-domain-cells = <1>;
63+
};
64+
65+
...
Lines changed: 102 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,102 @@
1+
/* SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) */
2+
/*
3+
* Copyright (c) 2022, Qualcomm Innovation Center, Inc. All rights reserved
4+
* Copyright (c) 2023, Linaro Ltd.
5+
*/
6+
7+
#ifndef _DT_BINDINGS_CLK_QCOM_SM8650_DISP_CC_H
8+
#define _DT_BINDINGS_CLK_QCOM_SM8650_DISP_CC_H
9+
10+
/* DISP_CC clocks */
11+
#define DISP_CC_MDSS_ACCU_CLK 0
12+
#define DISP_CC_MDSS_AHB1_CLK 1
13+
#define DISP_CC_MDSS_AHB_CLK 2
14+
#define DISP_CC_MDSS_AHB_CLK_SRC 3
15+
#define DISP_CC_MDSS_BYTE0_CLK 4
16+
#define DISP_CC_MDSS_BYTE0_CLK_SRC 5
17+
#define DISP_CC_MDSS_BYTE0_DIV_CLK_SRC 6
18+
#define DISP_CC_MDSS_BYTE0_INTF_CLK 7
19+
#define DISP_CC_MDSS_BYTE1_CLK 8
20+
#define DISP_CC_MDSS_BYTE1_CLK_SRC 9
21+
#define DISP_CC_MDSS_BYTE1_DIV_CLK_SRC 10
22+
#define DISP_CC_MDSS_BYTE1_INTF_CLK 11
23+
#define DISP_CC_MDSS_DPTX0_AUX_CLK 12
24+
#define DISP_CC_MDSS_DPTX0_AUX_CLK_SRC 13
25+
#define DISP_CC_MDSS_DPTX0_CRYPTO_CLK 14
26+
#define DISP_CC_MDSS_DPTX0_LINK_CLK 15
27+
#define DISP_CC_MDSS_DPTX0_LINK_CLK_SRC 16
28+
#define DISP_CC_MDSS_DPTX0_LINK_DIV_CLK_SRC 17
29+
#define DISP_CC_MDSS_DPTX0_LINK_INTF_CLK 18
30+
#define DISP_CC_MDSS_DPTX0_PIXEL0_CLK 19
31+
#define DISP_CC_MDSS_DPTX0_PIXEL0_CLK_SRC 20
32+
#define DISP_CC_MDSS_DPTX0_PIXEL1_CLK 21
33+
#define DISP_CC_MDSS_DPTX0_PIXEL1_CLK_SRC 22
34+
#define DISP_CC_MDSS_DPTX0_USB_ROUTER_LINK_INTF_CLK 23
35+
#define DISP_CC_MDSS_DPTX1_AUX_CLK 24
36+
#define DISP_CC_MDSS_DPTX1_AUX_CLK_SRC 25
37+
#define DISP_CC_MDSS_DPTX1_CRYPTO_CLK 26
38+
#define DISP_CC_MDSS_DPTX1_LINK_CLK 27
39+
#define DISP_CC_MDSS_DPTX1_LINK_CLK_SRC 28
40+
#define DISP_CC_MDSS_DPTX1_LINK_DIV_CLK_SRC 29
41+
#define DISP_CC_MDSS_DPTX1_LINK_INTF_CLK 30
42+
#define DISP_CC_MDSS_DPTX1_PIXEL0_CLK 31
43+
#define DISP_CC_MDSS_DPTX1_PIXEL0_CLK_SRC 32
44+
#define DISP_CC_MDSS_DPTX1_PIXEL1_CLK 33
45+
#define DISP_CC_MDSS_DPTX1_PIXEL1_CLK_SRC 34
46+
#define DISP_CC_MDSS_DPTX1_USB_ROUTER_LINK_INTF_CLK 35
47+
#define DISP_CC_MDSS_DPTX2_AUX_CLK 36
48+
#define DISP_CC_MDSS_DPTX2_AUX_CLK_SRC 37
49+
#define DISP_CC_MDSS_DPTX2_CRYPTO_CLK 38
50+
#define DISP_CC_MDSS_DPTX2_LINK_CLK 39
51+
#define DISP_CC_MDSS_DPTX2_LINK_CLK_SRC 40
52+
#define DISP_CC_MDSS_DPTX2_LINK_DIV_CLK_SRC 41
53+
#define DISP_CC_MDSS_DPTX2_LINK_INTF_CLK 42
54+
#define DISP_CC_MDSS_DPTX2_PIXEL0_CLK 43
55+
#define DISP_CC_MDSS_DPTX2_PIXEL0_CLK_SRC 44
56+
#define DISP_CC_MDSS_DPTX2_PIXEL1_CLK 45
57+
#define DISP_CC_MDSS_DPTX2_PIXEL1_CLK_SRC 46
58+
#define DISP_CC_MDSS_DPTX3_AUX_CLK 47
59+
#define DISP_CC_MDSS_DPTX3_AUX_CLK_SRC 48
60+
#define DISP_CC_MDSS_DPTX3_CRYPTO_CLK 49
61+
#define DISP_CC_MDSS_DPTX3_LINK_CLK 50
62+
#define DISP_CC_MDSS_DPTX3_LINK_CLK_SRC 51
63+
#define DISP_CC_MDSS_DPTX3_LINK_DIV_CLK_SRC 52
64+
#define DISP_CC_MDSS_DPTX3_LINK_INTF_CLK 53
65+
#define DISP_CC_MDSS_DPTX3_PIXEL0_CLK 54
66+
#define DISP_CC_MDSS_DPTX3_PIXEL0_CLK_SRC 55
67+
#define DISP_CC_MDSS_ESC0_CLK 56
68+
#define DISP_CC_MDSS_ESC0_CLK_SRC 57
69+
#define DISP_CC_MDSS_ESC1_CLK 58
70+
#define DISP_CC_MDSS_ESC1_CLK_SRC 59
71+
#define DISP_CC_MDSS_MDP1_CLK 60
72+
#define DISP_CC_MDSS_MDP_CLK 61
73+
#define DISP_CC_MDSS_MDP_CLK_SRC 62
74+
#define DISP_CC_MDSS_MDP_LUT1_CLK 63
75+
#define DISP_CC_MDSS_MDP_LUT_CLK 64
76+
#define DISP_CC_MDSS_NON_GDSC_AHB_CLK 65
77+
#define DISP_CC_MDSS_PCLK0_CLK 66
78+
#define DISP_CC_MDSS_PCLK0_CLK_SRC 67
79+
#define DISP_CC_MDSS_PCLK1_CLK 68
80+
#define DISP_CC_MDSS_PCLK1_CLK_SRC 69
81+
#define DISP_CC_MDSS_RSCC_AHB_CLK 70
82+
#define DISP_CC_MDSS_RSCC_VSYNC_CLK 71
83+
#define DISP_CC_MDSS_VSYNC1_CLK 72
84+
#define DISP_CC_MDSS_VSYNC_CLK 73
85+
#define DISP_CC_MDSS_VSYNC_CLK_SRC 74
86+
#define DISP_CC_PLL0 75
87+
#define DISP_CC_PLL1 76
88+
#define DISP_CC_SLEEP_CLK 77
89+
#define DISP_CC_SLEEP_CLK_SRC 78
90+
#define DISP_CC_XO_CLK 79
91+
#define DISP_CC_XO_CLK_SRC 80
92+
93+
/* DISP_CC resets */
94+
#define DISP_CC_MDSS_CORE_BCR 0
95+
#define DISP_CC_MDSS_CORE_INT2_BCR 1
96+
#define DISP_CC_MDSS_RSCC_BCR 2
97+
98+
/* DISP_CC GDSCR */
99+
#define MDSS_GDSC 0
100+
#define MDSS_INT2_GDSC 1
101+
102+
#endif

0 commit comments

Comments
 (0)