Skip to content

Commit 4aeadf8

Browse files
quic-kdybcioandersson
authored andcommitted
dt-bindings: clock: qcom: Add SM8750 GPU clocks
The SM8750 features a "traditional" GPU_CC block, much of which is controlled through the GMU microcontroller. GPU_CC block requires the MX and CX rail control and thus add the corresponding power-domains and require-opps. Additionally, there's an separate GX_CC block, where the GX GDSC is moved. Update the bindings to accommodate for SM8750 SoC. Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com> Signed-off-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Signed-off-by: Taniya Das <taniya.das@oss.qualcomm.com> Link: https://lore.kernel.org/r/20260305-gpucc_sm8750_v2-v5-1-78292b40b053@oss.qualcomm.com Signed-off-by: Bjorn Andersson <andersson@kernel.org>
1 parent 4e36f8a commit 4aeadf8

3 files changed

Lines changed: 74 additions & 0 deletions

File tree

Documentation/devicetree/bindings/clock/qcom,kaanapali-gxclkctl.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ properties:
2222
enum:
2323
- qcom,glymur-gxclkctl
2424
- qcom,kaanapali-gxclkctl
25+
- qcom,sm8750-gxclkctl
2526

2627
power-domains:
2728
description:

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

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ title: Qualcomm Graphics Clock & Reset Controller on SM8450
88

99
maintainers:
1010
- Konrad Dybcio <konradybcio@kernel.org>
11+
- Taniya Das <taniya.das@oss.qualcomm.com>
1112

1213
description: |
1314
Qualcomm graphics clock control module provides the clocks, resets and power
@@ -23,6 +24,7 @@ description: |
2324
include/dt-bindings/clock/qcom,sm8550-gpucc.h
2425
include/dt-bindings/reset/qcom,sm8450-gpucc.h
2526
include/dt-bindings/reset/qcom,sm8650-gpucc.h
27+
include/dt-bindings/reset/qcom,sm8750-gpucc.h
2628
include/dt-bindings/reset/qcom,x1e80100-gpucc.h
2729
2830
properties:
@@ -37,6 +39,7 @@ properties:
3739
- qcom,sm8475-gpucc
3840
- qcom,sm8550-gpucc
3941
- qcom,sm8650-gpucc
42+
- qcom,sm8750-gpucc
4043
- qcom,x1e80100-gpucc
4144
- qcom,x1p42100-gpucc
4245

@@ -46,13 +49,33 @@ properties:
4649
- description: GPLL0 main branch source
4750
- description: GPLL0 div branch source
4851

52+
power-domains:
53+
items:
54+
- description: A phandle to the MX power-domain
55+
- description: A phandle to the CX power-domain
56+
57+
required-opps:
58+
items:
59+
- description: A phandle to an OPP node describing MX performance points
60+
- description: A phandle to an OPP node describing CX performance points
61+
4962
required:
5063
- compatible
5164
- clocks
5265
- '#power-domain-cells'
5366

5467
allOf:
5568
- $ref: qcom,gcc.yaml#
69+
- if:
70+
properties:
71+
compatible:
72+
contains:
73+
enum:
74+
- qcom,sm8750-gpucc
75+
then:
76+
required:
77+
- power-domains
78+
- required-opps
5679

5780
unevaluatedProperties: false
5881

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
/* SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) */
2+
/*
3+
* Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
4+
*/
5+
#ifndef _DT_BINDINGS_CLK_QCOM_GPU_CC_SM8750_H
6+
#define _DT_BINDINGS_CLK_QCOM_GPU_CC_SM8750_H
7+
8+
/* GPU_CC clocks */
9+
#define GPU_CC_AHB_CLK 0
10+
#define GPU_CC_CB_CLK 1
11+
#define GPU_CC_CX_ACCU_SHIFT_CLK 2
12+
#define GPU_CC_CX_FF_CLK 3
13+
#define GPU_CC_CX_GMU_CLK 4
14+
#define GPU_CC_CXO_AON_CLK 5
15+
#define GPU_CC_CXO_CLK 6
16+
#define GPU_CC_DEMET_CLK 7
17+
#define GPU_CC_DPM_CLK 8
18+
#define GPU_CC_FF_CLK_SRC 9
19+
#define GPU_CC_FREQ_MEASURE_CLK 10
20+
#define GPU_CC_GMU_CLK_SRC 11
21+
#define GPU_CC_GX_ACCU_SHIFT_CLK 12
22+
#define GPU_CC_GX_ACD_AHB_FF_CLK 13
23+
#define GPU_CC_GX_AHB_FF_CLK 14
24+
#define GPU_CC_GX_GMU_CLK 15
25+
#define GPU_CC_GX_RCG_AHB_FF_CLK 16
26+
#define GPU_CC_HLOS1_VOTE_GPU_SMMU_CLK 17
27+
#define GPU_CC_HUB_AON_CLK 18
28+
#define GPU_CC_HUB_CLK_SRC 19
29+
#define GPU_CC_HUB_CX_INT_CLK 20
30+
#define GPU_CC_HUB_DIV_CLK_SRC 21
31+
#define GPU_CC_MEMNOC_GFX_CLK 22
32+
#define GPU_CC_PLL0 23
33+
#define GPU_CC_PLL0_OUT_EVEN 24
34+
#define GPU_CC_RSCC_HUB_AON_CLK 25
35+
#define GPU_CC_RSCC_XO_AON_CLK 26
36+
#define GPU_CC_SLEEP_CLK 27
37+
38+
/* GPU_CC power domains */
39+
#define GPU_CC_CX_GDSC 0
40+
41+
/* GPU_CC resets */
42+
#define GPU_CC_GPU_CC_CB_BCR 0
43+
#define GPU_CC_GPU_CC_CX_BCR 1
44+
#define GPU_CC_GPU_CC_FAST_HUB_BCR 2
45+
#define GPU_CC_GPU_CC_FF_BCR 3
46+
#define GPU_CC_GPU_CC_GMU_BCR 4
47+
#define GPU_CC_GPU_CC_GX_BCR 5
48+
#define GPU_CC_GPU_CC_XO_BCR 6
49+
50+
#endif

0 commit comments

Comments
 (0)