root/include/dt-bindings/clock/qcom,milos-gcc.h
/* SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) */
/*
 * Copyright (c) 2023, Qualcomm Innovation Center, Inc. All rights reserved.
 * Copyright (c) 2025, Luca Weiss <luca.weiss@fairphone.com>
 */

#ifndef _DT_BINDINGS_CLK_QCOM_GCC_MILOS_H
#define _DT_BINDINGS_CLK_QCOM_GCC_MILOS_H

/* GCC clocks */
#define GCC_GPLL0                                               0
#define GCC_GPLL0_OUT_EVEN                                      1
#define GCC_GPLL2                                               2
#define GCC_GPLL4                                               3
#define GCC_GPLL6                                               4
#define GCC_GPLL7                                               5
#define GCC_GPLL9                                               6
#define GCC_AGGRE_NOC_PCIE_AXI_CLK                              7
#define GCC_AGGRE_UFS_PHY_AXI_CLK                               8
#define GCC_AGGRE_UFS_PHY_AXI_HW_CTL_CLK                        9
#define GCC_AGGRE_USB3_PRIM_AXI_CLK                             10
#define GCC_BOOT_ROM_AHB_CLK                                    11
#define GCC_CAMERA_AHB_CLK                                      12
#define GCC_CAMERA_HF_AXI_CLK                                   13
#define GCC_CAMERA_HF_XO_CLK                                    14
#define GCC_CAMERA_SF_AXI_CLK                                   15
#define GCC_CAMERA_SF_XO_CLK                                    16
#define GCC_CFG_NOC_PCIE_ANOC_AHB_CLK                           17
#define GCC_CFG_NOC_USB3_PRIM_AXI_CLK                           18
#define GCC_CNOC_PCIE_SF_AXI_CLK                                19
#define GCC_DDRSS_GPU_AXI_CLK                                   20
#define GCC_DDRSS_PCIE_SF_QTB_CLK                               21
#define GCC_DISP_AHB_CLK                                        22
#define GCC_DISP_GPLL0_DIV_CLK_SRC                              23
#define GCC_DISP_HF_AXI_CLK                                     24
#define GCC_DISP_XO_CLK                                         25
#define GCC_GP1_CLK                                             26
#define GCC_GP1_CLK_SRC                                         27
#define GCC_GP2_CLK                                             28
#define GCC_GP2_CLK_SRC                                         29
#define GCC_GP3_CLK                                             30
#define GCC_GP3_CLK_SRC                                         31
#define GCC_GPU_CFG_AHB_CLK                                     32
#define GCC_GPU_GPLL0_CLK_SRC                                   33
#define GCC_GPU_GPLL0_DIV_CLK_SRC                               34
#define GCC_GPU_MEMNOC_GFX_CLK                                  35
#define GCC_GPU_SNOC_DVM_GFX_CLK                                36
#define GCC_PCIE_0_AUX_CLK                                      37
#define GCC_PCIE_0_AUX_CLK_SRC                                  38
#define GCC_PCIE_0_CFG_AHB_CLK                                  39
#define GCC_PCIE_0_MSTR_AXI_CLK                                 40
#define GCC_PCIE_0_PHY_RCHNG_CLK                                41
#define GCC_PCIE_0_PHY_RCHNG_CLK_SRC                            42
#define GCC_PCIE_0_PIPE_CLK                                     43
#define GCC_PCIE_0_PIPE_CLK_SRC                                 44
#define GCC_PCIE_0_PIPE_DIV2_CLK                                45
#define GCC_PCIE_0_PIPE_DIV2_CLK_SRC                            46
#define GCC_PCIE_0_SLV_AXI_CLK                                  47
#define GCC_PCIE_0_SLV_Q2A_AXI_CLK                              48
#define GCC_PCIE_1_AUX_CLK                                      49
#define GCC_PCIE_1_AUX_CLK_SRC                                  50
#define GCC_PCIE_1_CFG_AHB_CLK                                  51
#define GCC_PCIE_1_MSTR_AXI_CLK                                 52
#define GCC_PCIE_1_PHY_RCHNG_CLK                                53
#define GCC_PCIE_1_PHY_RCHNG_CLK_SRC                            54
#define GCC_PCIE_1_PIPE_CLK                                     55
#define GCC_PCIE_1_PIPE_CLK_SRC                                 56
#define GCC_PCIE_1_PIPE_DIV2_CLK                                57
#define GCC_PCIE_1_PIPE_DIV2_CLK_SRC                            58
#define GCC_PCIE_1_SLV_AXI_CLK                                  59
#define GCC_PCIE_1_SLV_Q2A_AXI_CLK                              60
#define GCC_PCIE_RSCC_CFG_AHB_CLK                               61
#define GCC_PCIE_RSCC_XO_CLK                                    62
#define GCC_PDM2_CLK                                            63
#define GCC_PDM2_CLK_SRC                                        64
#define GCC_PDM_AHB_CLK                                         65
#define GCC_PDM_XO4_CLK                                         66
#define GCC_QMIP_CAMERA_NRT_AHB_CLK                             67
#define GCC_QMIP_CAMERA_RT_AHB_CLK                              68
#define GCC_QMIP_DISP_AHB_CLK                                   69
#define GCC_QMIP_GPU_AHB_CLK                                    70
#define GCC_QMIP_PCIE_AHB_CLK                                   71
#define GCC_QMIP_VIDEO_CV_CPU_AHB_CLK                           72
#define GCC_QMIP_VIDEO_CVP_AHB_CLK                              73
#define GCC_QMIP_VIDEO_V_CPU_AHB_CLK                            74
#define GCC_QMIP_VIDEO_VCODEC_AHB_CLK                           75
#define GCC_QUPV3_WRAP0_CORE_2X_CLK                             76
#define GCC_QUPV3_WRAP0_CORE_CLK                                77
#define GCC_QUPV3_WRAP0_QSPI_REF_CLK                            78
#define GCC_QUPV3_WRAP0_QSPI_REF_CLK_SRC                        79
#define GCC_QUPV3_WRAP0_S0_CLK                                  80
#define GCC_QUPV3_WRAP0_S0_CLK_SRC                              81
#define GCC_QUPV3_WRAP0_S1_CLK                                  82
#define GCC_QUPV3_WRAP0_S1_CLK_SRC                              83
#define GCC_QUPV3_WRAP0_S2_CLK                                  84
#define GCC_QUPV3_WRAP0_S2_CLK_SRC                              85
#define GCC_QUPV3_WRAP0_S3_CLK                                  86
#define GCC_QUPV3_WRAP0_S3_CLK_SRC                              87
#define GCC_QUPV3_WRAP0_S4_CLK                                  88
#define GCC_QUPV3_WRAP0_S4_CLK_SRC                              89
#define GCC_QUPV3_WRAP0_S5_CLK                                  90
#define GCC_QUPV3_WRAP0_S5_CLK_SRC                              91
#define GCC_QUPV3_WRAP0_S6_CLK                                  92
#define GCC_QUPV3_WRAP0_S6_CLK_SRC                              93
#define GCC_QUPV3_WRAP1_CORE_2X_CLK                             94
#define GCC_QUPV3_WRAP1_CORE_CLK                                95
#define GCC_QUPV3_WRAP1_QSPI_REF_CLK                            96
#define GCC_QUPV3_WRAP1_QSPI_REF_CLK_SRC                        97
#define GCC_QUPV3_WRAP1_S0_CLK                                  98
#define GCC_QUPV3_WRAP1_S0_CLK_SRC                              99
#define GCC_QUPV3_WRAP1_S1_CLK                                  100
#define GCC_QUPV3_WRAP1_S1_CLK_SRC                              101
#define GCC_QUPV3_WRAP1_S2_CLK                                  102
#define GCC_QUPV3_WRAP1_S2_CLK_SRC                              103
#define GCC_QUPV3_WRAP1_S3_CLK                                  104
#define GCC_QUPV3_WRAP1_S3_CLK_SRC                              105
#define GCC_QUPV3_WRAP1_S4_CLK                                  106
#define GCC_QUPV3_WRAP1_S4_CLK_SRC                              107
#define GCC_QUPV3_WRAP1_S5_CLK                                  108
#define GCC_QUPV3_WRAP1_S5_CLK_SRC                              109
#define GCC_QUPV3_WRAP1_S6_CLK                                  110
#define GCC_QUPV3_WRAP1_S6_CLK_SRC                              111
#define GCC_QUPV3_WRAP_0_M_AHB_CLK                              112
#define GCC_QUPV3_WRAP_0_S_AHB_CLK                              113
#define GCC_QUPV3_WRAP_1_M_AHB_CLK                              114
#define GCC_QUPV3_WRAP_1_S_AHB_CLK                              115
#define GCC_SDCC1_AHB_CLK                                       116
#define GCC_SDCC1_APPS_CLK                                      117
#define GCC_SDCC1_APPS_CLK_SRC                                  118
#define GCC_SDCC1_ICE_CORE_CLK                                  119
#define GCC_SDCC1_ICE_CORE_CLK_SRC                              120
#define GCC_SDCC2_AHB_CLK                                       121
#define GCC_SDCC2_APPS_CLK                                      122
#define GCC_SDCC2_APPS_CLK_SRC                                  123
#define GCC_UFS_PHY_AHB_CLK                                     124
#define GCC_UFS_PHY_AXI_CLK                                     125
#define GCC_UFS_PHY_AXI_CLK_SRC                                 126
#define GCC_UFS_PHY_AXI_HW_CTL_CLK                              127
#define GCC_UFS_PHY_ICE_CORE_CLK                                128
#define GCC_UFS_PHY_ICE_CORE_CLK_SRC                            129
#define GCC_UFS_PHY_ICE_CORE_HW_CTL_CLK                         130
#define GCC_UFS_PHY_PHY_AUX_CLK                                 131
#define GCC_UFS_PHY_PHY_AUX_CLK_SRC                             132
#define GCC_UFS_PHY_PHY_AUX_HW_CTL_CLK                          133
#define GCC_UFS_PHY_RX_SYMBOL_0_CLK                             134
#define GCC_UFS_PHY_RX_SYMBOL_0_CLK_SRC                         135
#define GCC_UFS_PHY_RX_SYMBOL_1_CLK                             136
#define GCC_UFS_PHY_RX_SYMBOL_1_CLK_SRC                         137
#define GCC_UFS_PHY_TX_SYMBOL_0_CLK                             138
#define GCC_UFS_PHY_TX_SYMBOL_0_CLK_SRC                         139
#define GCC_UFS_PHY_UNIPRO_CORE_CLK                             140
#define GCC_UFS_PHY_UNIPRO_CORE_CLK_SRC                         141
#define GCC_UFS_PHY_UNIPRO_CORE_HW_CTL_CLK                      142
#define GCC_USB30_PRIM_ATB_CLK                                  143
#define GCC_USB30_PRIM_MASTER_CLK                               144
#define GCC_USB30_PRIM_MASTER_CLK_SRC                           145
#define GCC_USB30_PRIM_MOCK_UTMI_CLK                            146
#define GCC_USB30_PRIM_MOCK_UTMI_CLK_SRC                        147
#define GCC_USB30_PRIM_MOCK_UTMI_POSTDIV_CLK_SRC                148
#define GCC_USB30_PRIM_SLEEP_CLK                                149
#define GCC_USB3_PRIM_PHY_AUX_CLK                               150
#define GCC_USB3_PRIM_PHY_AUX_CLK_SRC                           151
#define GCC_USB3_PRIM_PHY_COM_AUX_CLK                           152
#define GCC_USB3_PRIM_PHY_PIPE_CLK                              153
#define GCC_USB3_PRIM_PHY_PIPE_CLK_SRC                          154
#define GCC_VIDEO_AHB_CLK                                       155
#define GCC_VIDEO_AXI0_CLK                                      156
#define GCC_VIDEO_XO_CLK                                        157

/* GCC resets */
#define GCC_CAMERA_BCR                                          0
#define GCC_DISPLAY_BCR                                         1
#define GCC_GPU_BCR                                             2
#define GCC_PCIE_0_BCR                                          3
#define GCC_PCIE_0_LINK_DOWN_BCR                                4
#define GCC_PCIE_0_NOCSR_COM_PHY_BCR                            5
#define GCC_PCIE_0_PHY_BCR                                      6
#define GCC_PCIE_0_PHY_NOCSR_COM_PHY_BCR                        7
#define GCC_PCIE_1_BCR                                          8
#define GCC_PCIE_1_LINK_DOWN_BCR                                9
#define GCC_PCIE_1_NOCSR_COM_PHY_BCR                            10
#define GCC_PCIE_1_PHY_BCR                                      11
#define GCC_PCIE_1_PHY_NOCSR_COM_PHY_BCR                        12
#define GCC_PCIE_RSCC_BCR                                       13
#define GCC_PDM_BCR                                             14
#define GCC_QUPV3_WRAPPER_0_BCR                                 15
#define GCC_QUPV3_WRAPPER_1_BCR                                 16
#define GCC_QUSB2PHY_PRIM_BCR                                   17
#define GCC_QUSB2PHY_SEC_BCR                                    18
#define GCC_SDCC1_BCR                                           19
#define GCC_SDCC2_BCR                                           20
#define GCC_UFS_PHY_BCR                                         21
#define GCC_USB30_PRIM_BCR                                      22
#define GCC_USB3_DP_PHY_PRIM_BCR                                23
#define GCC_USB3_PHY_PRIM_BCR                                   24
#define GCC_USB3PHY_PHY_PRIM_BCR                                25
#define GCC_VIDEO_AXI0_CLK_ARES                                 26
#define GCC_VIDEO_BCR                                           27

/* GCC power domains */
#define PCIE_0_GDSC                                             0
#define PCIE_0_PHY_GDSC                                         1
#define PCIE_1_GDSC                                             2
#define PCIE_1_PHY_GDSC                                         3
#define UFS_PHY_GDSC                                            4
#define UFS_MEM_PHY_GDSC                                        5
#define USB30_PRIM_GDSC                                         6
#define USB3_PHY_GDSC                                           7

#endif