Skip to content

Commit 5827f01

Browse files
authored
Add Shikra Support (#613)
Add Shikra Support
2 parents aea160c + d692915 commit 5827f01

73 files changed

Lines changed: 13295 additions & 56 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

Documentation/devicetree/bindings/arm/qcom.yaml

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -924,6 +924,24 @@ properties:
924924
- xiaomi,polaris
925925
- const: qcom,sdm845
926926

927+
- items:
928+
- enum:
929+
- qcom,shikra-cqm-evk
930+
- const: qcom,shikra-cqm-som
931+
- const: qcom,shikra
932+
933+
- items:
934+
- enum:
935+
- qcom,shikra-cqs-evk
936+
- const: qcom,shikra-cqs-som
937+
- const: qcom,shikra
938+
939+
- items:
940+
- enum:
941+
- qcom,shikra-iqs-evk
942+
- const: qcom,shikra-iqs-som
943+
- const: qcom,shikra
944+
927945
- items:
928946
- enum:
929947
- oneplus,billie2

Documentation/devicetree/bindings/cache/qcom,llcc.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ properties:
3333
- qcom,sc8180x-llcc
3434
- qcom,sc8280xp-llcc
3535
- qcom,sdm845-llcc
36+
- qcom,shikra-llcc
3637
- qcom,sm6350-llcc
3738
- qcom,sm7150-llcc
3839
- qcom,sm8150-llcc
@@ -162,6 +163,7 @@ allOf:
162163
contains:
163164
enum:
164165
- qcom,sc7280-llcc
166+
- qcom,shikra-llcc
165167
then:
166168
properties:
167169
reg:

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

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,7 @@ properties:
4646
- qcom,rpmcc-qcs404
4747
- qcom,rpmcc-sdm429
4848
- qcom,rpmcc-sdm660
49+
- qcom,rpmcc-shikra
4950
- qcom,rpmcc-sm6115
5051
- qcom,rpmcc-sm6125
5152
- qcom,rpmcc-sm6375
@@ -126,6 +127,7 @@ allOf:
126127
- qcom,rpmcc-qcs404
127128
- qcom,rpmcc-sdm429
128129
- qcom,rpmcc-sdm660
130+
- qcom,rpmcc-shikra
129131
- qcom,rpmcc-sm6115
130132
- qcom,rpmcc-sm6125
131133

Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
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,shikra-dispcc.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Display Clock & Reset Controller for Qualcomm Shikra SoC
8+
9+
maintainers:
10+
- Imran Shaik <imran.shaik@oss.qualcomm.com>
11+
12+
description: |
13+
Display clock control module provides the clocks, resets and power
14+
domains on Qualcomm Shikra SoC platform.
15+
16+
See also:
17+
- include/dt-bindings/clock/qcom,shikra-dispcc.h
18+
19+
properties:
20+
compatible:
21+
enum:
22+
- qcom,shikra-dispcc
23+
24+
clocks:
25+
items:
26+
- description: Board XO source
27+
- description: Board sleep clock
28+
- description: GPLL0 DISP DIV clock from GCC
29+
- description: Byte clock from DSI PHY0
30+
- description: Pixel clock from DSI PHY0
31+
- description: Byte clock from DSI PHY1
32+
- description: Pixel clock from DSI PHY1
33+
34+
required:
35+
- compatible
36+
- clocks
37+
- '#power-domain-cells'
38+
39+
allOf:
40+
- $ref: qcom,gcc.yaml#
41+
42+
unevaluatedProperties: false
43+
44+
examples:
45+
- |
46+
#include <dt-bindings/clock/qcom,rpmcc.h>
47+
#include <dt-bindings/clock/qcom,shikra-gcc.h>
48+
clock-controller@5f00000 {
49+
compatible = "qcom,shikra-dispcc";
50+
reg = <0x05f00000 0x20000>;
51+
clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>,
52+
<&sleep_clk>,
53+
<&gcc GCC_DISP_GPLL0_DIV_CLK_SRC>,
54+
<&dsi0_phy 0>,
55+
<&dsi0_phy 1>,
56+
<&dsi1_phy 0>,
57+
<&dsi1_phy 1>;
58+
#clock-cells = <1>;
59+
#power-domain-cells = <1>;
60+
#reset-cells = <1>;
61+
};
62+
...
Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,70 @@
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,shikra-gcc.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Global Clock & Reset Controller on Qualcomm Shikra SoC
8+
9+
maintainers:
10+
- Imran Shaik <imran.shaik@oss.qualcomm.com>
11+
- Taniya Das <taniya.das@oss.qualcomm.com>
12+
13+
description: |
14+
Global clock control module provides the clocks, resets and power
15+
domains on Qualcomm Shikra SoC platform.
16+
17+
See also: include/dt-bindings/clock/qcom,shikra-gcc.h
18+
19+
properties:
20+
compatible:
21+
const: qcom,shikra-gcc
22+
23+
clocks:
24+
items:
25+
- description: Board XO source
26+
- description: Sleep clock source
27+
- description: EMAC0 sgmiiphy mac rclk source
28+
- description: EMAC0 sgmiiphy mac tclk source
29+
- description: EMAC1 sgmiiphy mac rclk source
30+
- description: EMAC1 sgmiiphy mac tclk source
31+
- description: PCIE Pipe clock source
32+
- description: USB3 phy wrapper pipe clock source
33+
34+
power-domains:
35+
items:
36+
- description: CX domain
37+
38+
required:
39+
- compatible
40+
- clocks
41+
- power-domains
42+
- '#power-domain-cells'
43+
44+
allOf:
45+
- $ref: qcom,gcc.yaml#
46+
47+
unevaluatedProperties: false
48+
49+
examples:
50+
- |
51+
#include <dt-bindings/clock/qcom,rpmcc.h>
52+
#include <dt-bindings/power/qcom-rpmpd.h>
53+
clock-controller@1400000 {
54+
compatible = "qcom,shikra-gcc";
55+
reg = <0x01400000 0x1f0000>;
56+
clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>,
57+
<&sleep_clk>,
58+
<&emac0_sgmiiphy_rclk>,
59+
<&emac0_sgmiiphy_tclk>,
60+
<&emac1_sgmiiphy_rclk>,
61+
<&emac1_sgmiiphy_tclk>,
62+
<&pcie_pipe_clk>,
63+
<&usb3_phy_wrapper_gcc_usb30_pipe_clk>;
64+
power-domains = <&rpmpd RPMPD_VDDCX>;
65+
#clock-cells = <1>;
66+
#power-domain-cells = <1>;
67+
#reset-cells = <1>;
68+
};
69+
70+
...

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

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,17 +7,21 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
77
title: Qualcomm Graphics Clock & Reset Controller on SM6115
88

99
maintainers:
10+
- Imran Shaik <imran.shaik@oss.qualcomm.com>
1011
- Konrad Dybcio <konradybcio@kernel.org>
1112

1213
description: |
1314
Qualcomm graphics clock control module provides clocks, resets and power
1415
domains on Qualcomm SoCs.
1516
16-
See also: include/dt-bindings/clock/qcom,sm6115-gpucc.h
17+
See also:
18+
include/dt-bindings/clock/qcom,shikra-gpucc.h
19+
include/dt-bindings/clock/qcom,sm6115-gpucc.h
1720
1821
properties:
1922
compatible:
2023
enum:
24+
- qcom,shikra-gpucc
2125
- qcom,sm6115-gpucc
2226

2327
clocks:
Lines changed: 96 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,96 @@
1+
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/cpufreq/qcom,shikra-epss.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Qualcomm Shikra SoC EPSS
8+
9+
maintainers:
10+
- Imran Shaik <imran.shaik@oss.qualcomm.com>
11+
- Taniya Das <taniya.das@oss.qualcomm.com>
12+
13+
description: |
14+
EPSS is a hardware engine used by some Qualcomm SoCs to manage
15+
frequency in hardware. It is capable of controlling frequency for
16+
multiple clusters.
17+
18+
The Qualcomm Shikra SoC EPSS supports up to 12 frequency lookup table
19+
(LUT) entries.
20+
21+
properties:
22+
compatible:
23+
enum:
24+
- qcom,shikra-epss
25+
26+
reg:
27+
items:
28+
- description: Frequency domain 0 register region
29+
- description: Frequency domain 1 register region
30+
31+
reg-names:
32+
items:
33+
- const: freq-domain0
34+
- const: freq-domain1
35+
36+
clocks:
37+
items:
38+
- description: XO Clock
39+
- description: GPLL0 Clock
40+
41+
clock-names:
42+
items:
43+
- const: xo
44+
- const: alternate
45+
46+
interrupts:
47+
items:
48+
- description: IRQ line for DCVSH 0
49+
- description: IRQ line for DCVSH 1
50+
51+
interrupt-names:
52+
items:
53+
- const: dcvsh-irq-0
54+
- const: dcvsh-irq-1
55+
56+
'#freq-domain-cells':
57+
const: 1
58+
59+
'#clock-cells':
60+
const: 1
61+
62+
required:
63+
- compatible
64+
- reg
65+
- clocks
66+
- clock-names
67+
- interrupts
68+
- interrupt-names
69+
- '#freq-domain-cells'
70+
- '#clock-cells'
71+
72+
additionalProperties: false
73+
74+
examples:
75+
- |
76+
#include <dt-bindings/clock/qcom,rpmcc.h>
77+
#include <dt-bindings/interrupt-controller/arm-gic.h>
78+
79+
soc {
80+
#address-cells = <1>;
81+
#size-cells = <1>;
82+
83+
cpufreq@fd91000 {
84+
compatible = "qcom,shikra-epss";
85+
reg = <0x0fd91000 0x1000>, <0x0fd92000 0x1000>;
86+
reg-names = "freq-domain0", "freq-domain1";
87+
clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>, <&gpll0>;
88+
clock-names = "xo", "alternate";
89+
interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>,
90+
<GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>;
91+
interrupt-names = "dcvsh-irq-0", "dcvsh-irq-1";
92+
#freq-domain-cells = <1>;
93+
#clock-cells = <1>;
94+
};
95+
};
96+
...

Documentation/devicetree/bindings/crypto/qcom,inline-crypto-engine.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ properties:
1818
- qcom,sa8775p-inline-crypto-engine
1919
- qcom,sc7180-inline-crypto-engine
2020
- qcom,sc7280-inline-crypto-engine
21+
- qcom,shikra-inline-crypto-engine
2122
- qcom,sm8450-inline-crypto-engine
2223
- qcom,sm8550-inline-crypto-engine
2324
- qcom,sm8650-inline-crypto-engine

Documentation/devicetree/bindings/crypto/qcom,prng.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ properties:
2525
- qcom,sa8255p-trng
2626
- qcom,sa8775p-trng
2727
- qcom,sc7280-trng
28+
- qcom,shikra-trng
2829
- qcom,sm8450-trng
2930
- qcom,sm8550-trng
3031
- qcom,sm8650-trng

Documentation/devicetree/bindings/crypto/qcom-qce.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ properties:
4949
- qcom,qcs8300-qce
5050
- qcom,sa8775p-qce
5151
- qcom,sc7280-qce
52+
- qcom,shikra-qce
5253
- qcom,sm6350-qce
5354
- qcom,sm8250-qce
5455
- qcom,sm8350-qce

0 commit comments

Comments
 (0)