Skip to content

Commit c76350e

Browse files
Gary YangpH5
authored andcommitted
dt-bindings: soc: cix: document the syscon on Sky1 SoC
There are two system control on Cix sky1 Soc. One is located in S0 domain, and the other is located in S5 domain. The system control contains resets, usb typeC and more. At this point, only the reset controller is embedded as usb typeC uses it by phandle. Signed-off-by: Gary Yang <gary.yang@cixtech.com> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com> Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
1 parent faaad50 commit c76350e

3 files changed

Lines changed: 246 additions & 0 deletions

File tree

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/soc/cix/cix,sky1-system-control.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Cix Sky1 SoC system control register region
8+
9+
maintainers:
10+
- Gary Yang <gary.yang@cixtech.com>
11+
12+
description:
13+
An wide assortment of registers of the system controller on Sky1 SoC,
14+
including resets, usb, wakeup sources and so on.
15+
16+
properties:
17+
compatible:
18+
items:
19+
- enum:
20+
- cix,sky1-system-control
21+
- cix,sky1-s5-system-control
22+
- const: syscon
23+
24+
reg:
25+
maxItems: 1
26+
27+
'#reset-cells':
28+
const: 1
29+
30+
required:
31+
- compatible
32+
- reg
33+
34+
additionalProperties: false
35+
36+
examples:
37+
- |
38+
syscon@4160000 {
39+
compatible = "cix,sky1-system-control", "syscon";
40+
reg = <0x4160000 0x100>;
41+
#reset-cells = <1>;
42+
};
Lines changed: 163 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,163 @@
1+
/* SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) */
2+
/* Author: Jerry Zhu <jerry.zhu@cixtech.com> */
3+
#ifndef DT_BINDING_RESET_CIX_SKY1_S5_SYSTEM_CONTROL_H
4+
#define DT_BINDING_RESET_CIX_SKY1_S5_SYSTEM_CONTROL_H
5+
6+
/* reset for csu_pm */
7+
#define SKY1_CSU_PM_RESET_N 0
8+
#define SKY1_SENSORFUSION_RESET_N 1
9+
#define SKY1_SENSORFUSION_NOC_RESET_N 2
10+
11+
/* reset group0 for s0 domain modules */
12+
#define SKY1_DDRC_RESET_N 3
13+
#define SKY1_GIC_RESET_N 4
14+
#define SKY1_CI700_RESET_N 5
15+
#define SKY1_SYS_NI700_RESET_N 6
16+
#define SKY1_MM_NI700_RESET_N 7
17+
#define SKY1_PCIE_NI700_RESET_N 8
18+
#define SKY1_GPU_RESET_N 9
19+
#define SKY1_NPUTOP_RESET_N 10
20+
#define SKY1_NPUCORE0_RESET_N 11
21+
#define SKY1_NPUCORE1_RESET_N 12
22+
#define SKY1_NPUCORE2_RESET_N 13
23+
#define SKY1_VPU_RESET_N 14
24+
#define SKY1_ISP_SRESET_N 15
25+
#define SKY1_ISP_ARESET_N 16
26+
#define SKY1_ISP_HRESET_N 17
27+
#define SKY1_ISP_GDCRESET_N 18
28+
#define SKY1_DPU_RESET0_N 19
29+
#define SKY1_DPU_RESET1_N 20
30+
#define SKY1_DPU_RESET2_N 21
31+
#define SKY1_DPU_RESET3_N 22
32+
#define SKY1_DPU_RESET4_N 23
33+
#define SKY1_DP_RESET0_N 24
34+
#define SKY1_DP_RESET1_N 25
35+
#define SKY1_DP_RESET2_N 26
36+
#define SKY1_DP_RESET3_N 27
37+
#define SKY1_DP_RESET4_N 28
38+
#define SKY1_DP_PHY_RST_N 29
39+
40+
/* reset group1 for s0 domain modules */
41+
#define SKY1_AUDIO_HIFI5_RESET_N 30
42+
#define SKY1_AUDIO_HIFI5_NOC_RESET_N 31
43+
#define SKY1_CSIDPHY_PRST0_N 32
44+
#define SKY1_CSIDPHY_CMNRST0_N 33
45+
#define SKY1_CSI0_RST_N 34
46+
#define SKY1_CSIDPHY_PRST1_N 35
47+
#define SKY1_CSIDPHY_CMNRST1_N 36
48+
#define SKY1_CSI1_RST_N 37
49+
#define SKY1_CSI2_RST_N 38
50+
#define SKY1_CSI3_RST_N 39
51+
#define SKY1_CSIBRDGE0_RST_N 40
52+
#define SKY1_CSIBRDGE1_RST_N 41
53+
#define SKY1_CSIBRDGE2_RST_N 42
54+
#define SKY1_CSIBRDGE3_RST_N 43
55+
#define SKY1_GMAC0_RST_N 44
56+
#define SKY1_GMAC1_RST_N 45
57+
#define SKY1_PCIE0_RESET_N 46
58+
#define SKY1_PCIE1_RESET_N 47
59+
#define SKY1_PCIE2_RESET_N 48
60+
#define SKY1_PCIE3_RESET_N 49
61+
#define SKY1_PCIE4_RESET_N 50
62+
63+
/* reset group1 for usb phys */
64+
#define SKY1_USB_DP_PHY0_PRST_N 51
65+
#define SKY1_USB_DP_PHY1_PRST_N 52
66+
#define SKY1_USB_DP_PHY2_PRST_N 53
67+
#define SKY1_USB_DP_PHY3_PRST_N 54
68+
#define SKY1_USB_DP_PHY0_RST_N 55
69+
#define SKY1_USB_DP_PHY1_RST_N 56
70+
#define SKY1_USB_DP_PHY2_RST_N 57
71+
#define SKY1_USB_DP_PHY3_RST_N 58
72+
#define SKY1_USBPHY_SS_PST_N 59
73+
#define SKY1_USBPHY_SS_RST_N 60
74+
#define SKY1_USBPHY_HS0_PRST_N 61
75+
#define SKY1_USBPHY_HS1_PRST_N 62
76+
#define SKY1_USBPHY_HS2_PRST_N 63
77+
#define SKY1_USBPHY_HS3_PRST_N 64
78+
#define SKY1_USBPHY_HS4_PRST_N 65
79+
#define SKY1_USBPHY_HS5_PRST_N 66
80+
#define SKY1_USBPHY_HS6_PRST_N 67
81+
#define SKY1_USBPHY_HS7_PRST_N 68
82+
#define SKY1_USBPHY_HS8_PRST_N 69
83+
#define SKY1_USBPHY_HS9_PRST_N 70
84+
85+
/* reset group1 for usb controllers */
86+
#define SKY1_USBC_SS0_PRST_N 71
87+
#define SKY1_USBC_SS1_PRST_N 72
88+
#define SKY1_USBC_SS2_PRST_N 73
89+
#define SKY1_USBC_SS3_PRST_N 74
90+
#define SKY1_USBC_SS4_PRST_N 75
91+
#define SKY1_USBC_SS5_PRST_N 76
92+
#define SKY1_USBC_SS0_RST_N 77
93+
#define SKY1_USBC_SS1_RST_N 78
94+
#define SKY1_USBC_SS2_RST_N 79
95+
#define SKY1_USBC_SS3_RST_N 80
96+
#define SKY1_USBC_SS4_RST_N 81
97+
#define SKY1_USBC_SS5_RST_N 82
98+
#define SKY1_USBC_HS0_PRST_N 83
99+
#define SKY1_USBC_HS1_PRST_N 84
100+
#define SKY1_USBC_HS2_PRST_N 85
101+
#define SKY1_USBC_HS3_PRST_N 86
102+
#define SKY1_USBC_HS0_RST_N 87
103+
#define SKY1_USBC_HS1_RST_N 88
104+
#define SKY1_USBC_HS2_RST_N 89
105+
#define SKY1_USBC_HS3_RST_N 90
106+
107+
/* reset group0 for rcsu */
108+
#define SKY1_AUDIO_RCSU_RESET_N 91
109+
#define SKY1_CI700_RCSU_RESET_N 92
110+
#define SKY1_CSI_RCSU0_RESET_N 93
111+
#define SKY1_CSI_RCSU1_RESET_N 94
112+
#define SKY1_CSU_PM_RCSU_RESET_N 95
113+
#define SKY1_DDR_BROADCAST_RCSU_RESET_N 96
114+
#define SKY1_DDR_CTRL_RCSU_0_RESET_N 97
115+
#define SKY1_DDR_CTRL_RCSU_1_RESET_N 98
116+
#define SKY1_DDR_CTRL_RCSU_2_RESET_N 99
117+
#define SKY1_DDR_CTRL_RCSU_3_RESET_N 100
118+
#define SKY1_DDR_TZC400_RCSU_0_RESET_N 101
119+
#define SKY1_DDR_TZC400_RCSU_1_RESET_N 102
120+
#define SKY1_DDR_TZC400_RCSU_2_RESET_N 103
121+
#define SKY1_DDR_TZC400_RCSU_3_RESET_N 104
122+
#define SKY1_DP0_RCSU_RESET_N 105
123+
#define SKY1_DP1_RCSU_RESET_N 106
124+
#define SKY1_DP2_RCSU_RESET_N 107
125+
#define SKY1_DP3_RCSU_RESET_N 108
126+
#define SKY1_DP4_RCSU_RESET_N 109
127+
#define SKY1_DPU0_RCSU_RESET_N 110
128+
#define SKY1_DPU1_RCSU_RESET_N 111
129+
#define SKY1_DPU2_RCSU_RESET_N 112
130+
#define SKY1_DPU3_RCSU_RESET_N 113
131+
#define SKY1_DPU4_RCSU_RESET_N 114
132+
#define SKY1_DSU_RCSU_RESET_N 115
133+
#define SKY1_FCH_RCSU_RESET_N 116
134+
#define SKY1_GICD_RCSU_RESET_N 117
135+
#define SKY1_GMAC_RCSU_RESET_N 118
136+
#define SKY1_GPU_RCSU_RESET_N 119
137+
#define SKY1_ISP_RCSU0_RESET_N 120
138+
#define SKY1_ISP_RCSU1_RESET_N 121
139+
#define SKY1_NI700_MMHUB_RCSU_RESET_N 122
140+
141+
/* reset group1 for rcsu */
142+
#define SKY1_NPU_RCSU_RESET_N 123
143+
#define SKY1_NI700_PCIE_RCSU_RESET_N 124
144+
#define SKY1_PCIE_X421_RCSU_RESET_N 125
145+
#define SKY1_PCIE_X8_RCSU_RESET_N 126
146+
#define SKY1_SF_RCSU_RESET_N 127
147+
#define SKY1_RCSU_SMMU_MMHUB_RESET_N 128
148+
#define SKY1_RCSU_SMMU_PCIEHUB_RESET_N 129
149+
#define SKY1_RCSU_SYSHUB_RESET_N 130
150+
#define SKY1_NI700_SMN_RCSU_RESET_N 131
151+
#define SKY1_NI700_SYSHUB_RCSU_RESET_N 132
152+
#define SKY1_RCSU_USB2_HOST0_RESET_N 133
153+
#define SKY1_RCSU_USB2_HOST1_RESET_N 134
154+
#define SKY1_RCSU_USB2_HOST2_RESET_N 135
155+
#define SKY1_RCSU_USB2_HOST3_RESET_N 136
156+
#define SKY1_RCSU_USB3_TYPEA_DRD_RESET_N 137
157+
#define SKY1_RCSU_USB3_TYPEC_DRD_RESET_N 138
158+
#define SKY1_RCSU_USB3_TYPEC_HOST0_RESET_N 139
159+
#define SKY1_RCSU_USB3_TYPEC_HOST1_RESET_N 140
160+
#define SKY1_RCSU_USB3_TYPEC_HOST2_RESET_N 141
161+
#define SKY1_VPU_RCSU_RESET_N 142
162+
163+
#endif
Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
/* SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) */
2+
/* Author: Jerry Zhu <jerry.zhu@cixtech.com> */
3+
#ifndef DT_BINDING_RESET_CIX_SKY1_SYSTEM_CONTROL_H
4+
#define DT_BINDING_RESET_CIX_SKY1_SYSTEM_CONTROL_H
5+
6+
/* func reset for sky1 fch */
7+
#define SW_I3C0_RST_FUNC_G_N 0
8+
#define SW_I3C0_RST_FUNC_I_N 1
9+
#define SW_I3C1_RST_FUNC_G_N 2
10+
#define SW_I3C1_RST_FUNC_I_N 3
11+
#define SW_UART0_RST_FUNC_N 4
12+
#define SW_UART1_RST_FUNC_N 5
13+
#define SW_UART2_RST_FUNC_N 6
14+
#define SW_UART3_RST_FUNC_N 7
15+
#define SW_TIMER_RST_FUNC_N 8
16+
17+
/* apb reset for sky1 fch */
18+
#define SW_I3C0_RST_APB_N 9
19+
#define SW_I3C1_RST_APB_N 10
20+
#define SW_DMA_RST_AXI_N 11
21+
#define SW_UART0_RST_APB_N 12
22+
#define SW_UART1_RST_APB_N 13
23+
#define SW_UART2_RST_APB_N 14
24+
#define SW_UART3_RST_APB_N 15
25+
#define SW_SPI0_RST_APB_N 16
26+
#define SW_SPI1_RST_APB_N 17
27+
#define SW_I2C0_RST_APB_N 18
28+
#define SW_I2C1_RST_APB_N 19
29+
#define SW_I2C2_RST_APB_N 20
30+
#define SW_I2C3_RST_APB_N 21
31+
#define SW_I2C4_RST_APB_N 22
32+
#define SW_I2C5_RST_APB_N 23
33+
#define SW_I2C6_RST_APB_N 24
34+
#define SW_I2C7_RST_APB_N 25
35+
#define SW_GPIO_RST_APB_N 26
36+
37+
/* fch rst for xspi */
38+
#define SW_XSPI_REG_RST_N 27
39+
#define SW_XSPI_SYS_RST_N 28
40+
41+
#endif

0 commit comments

Comments
 (0)