1/*	$NetBSD: qcom,sdx75-gcc.h,v 1.1.1.1 2026/01/18 05:21:36 skrll Exp $	*/
2
3/* SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) */
4/*
5 * Copyright (c) 2022-2023, Qualcomm Innovation Center, Inc. All rights reserved.
6 */
7
8#ifndef _DT_BINDINGS_CLK_QCOM_GCC_SDX75_H
9#define _DT_BINDINGS_CLK_QCOM_GCC_SDX75_H
10
11/* GCC clocks */
12#define GPLL0							0
13#define GPLL0_OUT_EVEN						1
14#define GPLL4							2
15#define GPLL5							3
16#define GPLL6							4
17#define GPLL8							5
18#define GCC_AHB_PCIE_LINK_CLK					6
19#define GCC_BOOT_ROM_AHB_CLK					7
20#define GCC_EEE_EMAC0_CLK					8
21#define GCC_EEE_EMAC0_CLK_SRC					9
22#define GCC_EEE_EMAC1_CLK					10
23#define GCC_EEE_EMAC1_CLK_SRC					11
24#define GCC_EMAC0_AXI_CLK					12
25#define GCC_EMAC0_CC_SGMIIPHY_RX_CLK				13
26#define GCC_EMAC0_CC_SGMIIPHY_RX_CLK_SRC			14
27#define GCC_EMAC0_CC_SGMIIPHY_TX_CLK				15
28#define GCC_EMAC0_CC_SGMIIPHY_TX_CLK_SRC			16
29#define GCC_EMAC0_PHY_AUX_CLK					17
30#define GCC_EMAC0_PHY_AUX_CLK_SRC				18
31#define GCC_EMAC0_PTP_CLK					19
32#define GCC_EMAC0_PTP_CLK_SRC					20
33#define GCC_EMAC0_RGMII_CLK					21
34#define GCC_EMAC0_RGMII_CLK_SRC					22
35#define GCC_EMAC0_RPCS_RX_CLK					23
36#define GCC_EMAC0_RPCS_TX_CLK					24
37#define GCC_EMAC0_SGMIIPHY_MAC_RCLK_SRC				25
38#define GCC_EMAC0_SGMIIPHY_MAC_TCLK_SRC				26
39#define GCC_EMAC0_SLV_AHB_CLK					27
40#define GCC_EMAC0_XGXS_RX_CLK					28
41#define GCC_EMAC0_XGXS_TX_CLK					29
42#define GCC_EMAC1_AXI_CLK					30
43#define GCC_EMAC1_CC_SGMIIPHY_RX_CLK				31
44#define GCC_EMAC1_CC_SGMIIPHY_RX_CLK_SRC			32
45#define GCC_EMAC1_CC_SGMIIPHY_TX_CLK				33
46#define GCC_EMAC1_CC_SGMIIPHY_TX_CLK_SRC			34
47#define GCC_EMAC1_PHY_AUX_CLK					35
48#define GCC_EMAC1_PHY_AUX_CLK_SRC				36
49#define GCC_EMAC1_PTP_CLK					37
50#define GCC_EMAC1_PTP_CLK_SRC					38
51#define GCC_EMAC1_RGMII_CLK					39
52#define GCC_EMAC1_RGMII_CLK_SRC					40
53#define GCC_EMAC1_RPCS_RX_CLK					41
54#define GCC_EMAC1_RPCS_TX_CLK					42
55#define GCC_EMAC1_SGMIIPHY_MAC_RCLK_SRC				43
56#define GCC_EMAC1_SGMIIPHY_MAC_TCLK_SRC				44
57#define GCC_EMAC1_SLV_AHB_CLK					45
58#define GCC_EMAC1_XGXS_RX_CLK					46
59#define GCC_EMAC1_XGXS_TX_CLK					47
60#define GCC_EMAC_0_CLKREF_EN					48
61#define GCC_EMAC_1_CLKREF_EN					49
62#define GCC_GP1_CLK						50
63#define GCC_GP1_CLK_SRC						51
64#define GCC_GP2_CLK						52
65#define GCC_GP2_CLK_SRC						53
66#define GCC_GP3_CLK						54
67#define GCC_GP3_CLK_SRC						55
68#define GCC_PCIE_0_CLKREF_EN					56
69#define GCC_PCIE_1_AUX_CLK					57
70#define GCC_PCIE_1_AUX_PHY_CLK_SRC				58
71#define GCC_PCIE_1_CFG_AHB_CLK					59
72#define GCC_PCIE_1_CLKREF_EN					60
73#define GCC_PCIE_1_MSTR_AXI_CLK					61
74#define GCC_PCIE_1_PHY_RCHNG_CLK				62
75#define GCC_PCIE_1_PHY_RCHNG_CLK_SRC				63
76#define GCC_PCIE_1_PIPE_CLK					64
77#define GCC_PCIE_1_PIPE_CLK_SRC					65
78#define GCC_PCIE_1_PIPE_DIV2_CLK				66
79#define GCC_PCIE_1_PIPE_DIV2_CLK_SRC				67
80#define GCC_PCIE_1_SLV_AXI_CLK					68
81#define GCC_PCIE_1_SLV_Q2A_AXI_CLK				69
82#define GCC_PCIE_2_AUX_CLK					70
83#define GCC_PCIE_2_AUX_PHY_CLK_SRC				71
84#define GCC_PCIE_2_CFG_AHB_CLK					72
85#define GCC_PCIE_2_CLKREF_EN					73
86#define GCC_PCIE_2_MSTR_AXI_CLK					74
87#define GCC_PCIE_2_PHY_RCHNG_CLK				75
88#define GCC_PCIE_2_PHY_RCHNG_CLK_SRC				76
89#define GCC_PCIE_2_PIPE_CLK					77
90#define GCC_PCIE_2_PIPE_CLK_SRC					78
91#define GCC_PCIE_2_PIPE_DIV2_CLK				79
92#define GCC_PCIE_2_PIPE_DIV2_CLK_SRC				80
93#define GCC_PCIE_2_SLV_AXI_CLK					81
94#define GCC_PCIE_2_SLV_Q2A_AXI_CLK				82
95#define GCC_PCIE_AUX_CLK					83
96#define GCC_PCIE_AUX_CLK_SRC					84
97#define GCC_PCIE_AUX_PHY_CLK_SRC				85
98#define GCC_PCIE_CFG_AHB_CLK					86
99#define GCC_PCIE_MSTR_AXI_CLK					87
100#define GCC_PCIE_PIPE_CLK					88
101#define GCC_PCIE_PIPE_CLK_SRC					89
102#define GCC_PCIE_RCHNG_PHY_CLK					90
103#define GCC_PCIE_RCHNG_PHY_CLK_SRC				91
104#define GCC_PCIE_SLEEP_CLK					92
105#define GCC_PCIE_SLV_AXI_CLK					93
106#define GCC_PCIE_SLV_Q2A_AXI_CLK				94
107#define GCC_PDM2_CLK						95
108#define GCC_PDM2_CLK_SRC					96
109#define GCC_PDM_AHB_CLK						97
110#define GCC_PDM_XO4_CLK						98
111#define GCC_QUPV3_WRAP0_CORE_2X_CLK				99
112#define GCC_QUPV3_WRAP0_CORE_CLK				100
113#define GCC_QUPV3_WRAP0_S0_CLK					101
114#define GCC_QUPV3_WRAP0_S0_CLK_SRC				102
115#define GCC_QUPV3_WRAP0_S1_CLK					103
116#define GCC_QUPV3_WRAP0_S1_CLK_SRC				104
117#define GCC_QUPV3_WRAP0_S2_CLK					105
118#define GCC_QUPV3_WRAP0_S2_CLK_SRC				106
119#define GCC_QUPV3_WRAP0_S3_CLK					107
120#define GCC_QUPV3_WRAP0_S3_CLK_SRC				108
121#define GCC_QUPV3_WRAP0_S4_CLK					109
122#define GCC_QUPV3_WRAP0_S4_CLK_SRC				110
123#define GCC_QUPV3_WRAP0_S5_CLK					111
124#define GCC_QUPV3_WRAP0_S5_CLK_SRC				112
125#define GCC_QUPV3_WRAP0_S6_CLK					113
126#define GCC_QUPV3_WRAP0_S6_CLK_SRC				114
127#define GCC_QUPV3_WRAP0_S7_CLK					115
128#define GCC_QUPV3_WRAP0_S7_CLK_SRC				116
129#define GCC_QUPV3_WRAP0_S8_CLK					117
130#define GCC_QUPV3_WRAP0_S8_CLK_SRC				118
131#define GCC_QUPV3_WRAP_0_M_AHB_CLK				119
132#define GCC_QUPV3_WRAP_0_S_AHB_CLK				120
133#define GCC_SDCC1_AHB_CLK					121
134#define GCC_SDCC1_APPS_CLK					122
135#define GCC_SDCC1_APPS_CLK_SRC					123
136#define GCC_SDCC2_AHB_CLK					124
137#define GCC_SDCC2_APPS_CLK					125
138#define GCC_SDCC2_APPS_CLK_SRC					126
139#define GCC_USB2_CLKREF_EN					127
140#define GCC_USB30_MASTER_CLK					128
141#define GCC_USB30_MASTER_CLK_SRC				129
142#define GCC_USB30_MOCK_UTMI_CLK					130
143#define GCC_USB30_MOCK_UTMI_CLK_SRC				131
144#define GCC_USB30_MOCK_UTMI_POSTDIV_CLK_SRC			132
145#define GCC_USB30_MSTR_AXI_CLK					133
146#define GCC_USB30_SLEEP_CLK					134
147#define GCC_USB30_SLV_AHB_CLK					135
148#define GCC_USB3_PHY_AUX_CLK					136
149#define GCC_USB3_PHY_AUX_CLK_SRC				137
150#define GCC_USB3_PHY_PIPE_CLK					138
151#define GCC_USB3_PHY_PIPE_CLK_SRC				139
152#define GCC_USB3_PRIM_CLKREF_EN					140
153#define GCC_USB_PHY_CFG_AHB2PHY_CLK				141
154#define GCC_XO_PCIE_LINK_CLK					142
155
156/* GCC power domains */
157#define GCC_EMAC0_GDSC						0
158#define GCC_EMAC1_GDSC						1
159#define GCC_PCIE_1_GDSC						2
160#define GCC_PCIE_1_PHY_GDSC					3
161#define GCC_PCIE_2_GDSC						4
162#define GCC_PCIE_2_PHY_GDSC					5
163#define GCC_PCIE_GDSC						6
164#define GCC_PCIE_PHY_GDSC					7
165#define GCC_USB30_GDSC						8
166#define GCC_USB3_PHY_GDSC					9
167
168/* GCC resets */
169#define GCC_EMAC0_BCR						0
170#define GCC_EMAC1_BCR						1
171#define GCC_EMMC_BCR						2
172#define GCC_PCIE_1_BCR						3
173#define GCC_PCIE_1_LINK_DOWN_BCR				4
174#define GCC_PCIE_1_NOCSR_COM_PHY_BCR				5
175#define GCC_PCIE_1_PHY_BCR					6
176#define GCC_PCIE_2_BCR						7
177#define GCC_PCIE_2_LINK_DOWN_BCR				8
178#define GCC_PCIE_2_NOCSR_COM_PHY_BCR				9
179#define GCC_PCIE_2_PHY_BCR					10
180#define GCC_PCIE_BCR						11
181#define GCC_PCIE_LINK_DOWN_BCR					12
182#define GCC_PCIE_NOCSR_COM_PHY_BCR				13
183#define GCC_PCIE_PHY_BCR					14
184#define GCC_PCIE_PHY_CFG_AHB_BCR				15
185#define GCC_PCIE_PHY_COM_BCR					16
186#define GCC_PCIE_PHY_NOCSR_COM_PHY_BCR				17
187#define GCC_QUSB2PHY_BCR					18
188#define GCC_TCSR_PCIE_BCR					19
189#define GCC_USB30_BCR						20
190#define GCC_USB3_PHY_BCR					21
191#define GCC_USB3PHY_PHY_BCR					22
192#define GCC_USB_PHY_CFG_AHB2PHY_BCR				23
193#define GCC_EMAC0_RGMII_CLK_ARES				24
194
195#endif
196