/* SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) */
/*
 * Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
 */

#ifndef _DT_BINDINGS_CLK_QCOM_NE_GCC_NORD_H
#define _DT_BINDINGS_CLK_QCOM_NE_GCC_NORD_H

/* NE_GCC clocks */
#define NE_GCC_AGGRE_NOC_UFS_PHY_AXI_CLK			0
#define NE_GCC_AGGRE_NOC_USB2_AXI_CLK				1
#define NE_GCC_AGGRE_NOC_USB3_PRIM_AXI_CLK			2
#define NE_GCC_AGGRE_NOC_USB3_SEC_AXI_CLK			3
#define NE_GCC_AHB2PHY_CLK					4
#define NE_GCC_CNOC_USB2_AXI_CLK				5
#define NE_GCC_CNOC_USB3_PRIM_AXI_CLK				6
#define NE_GCC_CNOC_USB3_SEC_AXI_CLK				7
#define NE_GCC_FRQ_MEASURE_REF_CLK				8
#define NE_GCC_GP1_CLK						9
#define NE_GCC_GP1_CLK_SRC					10
#define NE_GCC_GP2_CLK						11
#define NE_GCC_GP2_CLK_SRC					12
#define NE_GCC_GPLL0						13
#define NE_GCC_GPLL0_OUT_EVEN					14
#define NE_GCC_GPLL2						15
#define NE_GCC_GPU_2_CFG_CLK					16
#define NE_GCC_GPU_2_GPLL0_CLK_SRC				17
#define NE_GCC_GPU_2_GPLL0_DIV_CLK_SRC				18
#define NE_GCC_GPU_2_HSCNOC_GFX_CLK				19
#define NE_GCC_GPU_2_SMMU_VOTE_CLK				20
#define NE_GCC_QUPV3_WRAP2_CORE_2X_CLK				21
#define NE_GCC_QUPV3_WRAP2_CORE_CLK				22
#define NE_GCC_QUPV3_WRAP2_M_AHB_CLK				23
#define NE_GCC_QUPV3_WRAP2_S0_CLK				24
#define NE_GCC_QUPV3_WRAP2_S0_CLK_SRC				25
#define NE_GCC_QUPV3_WRAP2_S1_CLK				26
#define NE_GCC_QUPV3_WRAP2_S1_CLK_SRC				27
#define NE_GCC_QUPV3_WRAP2_S2_CLK				28
#define NE_GCC_QUPV3_WRAP2_S2_CLK_SRC				29
#define NE_GCC_QUPV3_WRAP2_S3_CLK				30
#define NE_GCC_QUPV3_WRAP2_S3_CLK_SRC				31
#define NE_GCC_QUPV3_WRAP2_S4_CLK				32
#define NE_GCC_QUPV3_WRAP2_S4_CLK_SRC				33
#define NE_GCC_QUPV3_WRAP2_S5_CLK				34
#define NE_GCC_QUPV3_WRAP2_S5_CLK_SRC				35
#define NE_GCC_QUPV3_WRAP2_S6_CLK				36
#define NE_GCC_QUPV3_WRAP2_S6_CLK_SRC				37
#define NE_GCC_QUPV3_WRAP2_S_AHB_CLK				38
#define NE_GCC_SDCC4_APPS_CLK					39
#define NE_GCC_SDCC4_APPS_CLK_SRC				40
#define NE_GCC_SDCC4_AXI_CLK					41
#define NE_GCC_UFS_PHY_AHB_CLK					42
#define NE_GCC_UFS_PHY_AXI_CLK					43
#define NE_GCC_UFS_PHY_AXI_CLK_SRC				44
#define NE_GCC_UFS_PHY_ICE_CORE_CLK				45
#define NE_GCC_UFS_PHY_ICE_CORE_CLK_SRC				46
#define NE_GCC_UFS_PHY_PHY_AUX_CLK				47
#define NE_GCC_UFS_PHY_PHY_AUX_CLK_SRC				48
#define NE_GCC_UFS_PHY_RX_SYMBOL_0_CLK				49
#define NE_GCC_UFS_PHY_RX_SYMBOL_0_CLK_SRC			50
#define NE_GCC_UFS_PHY_RX_SYMBOL_1_CLK				51
#define NE_GCC_UFS_PHY_RX_SYMBOL_1_CLK_SRC			52
#define NE_GCC_UFS_PHY_TX_SYMBOL_0_CLK				53
#define NE_GCC_UFS_PHY_TX_SYMBOL_0_CLK_SRC			54
#define NE_GCC_UFS_PHY_UNIPRO_CORE_CLK				55
#define NE_GCC_UFS_PHY_UNIPRO_CORE_CLK_SRC			56
#define NE_GCC_USB20_MASTER_CLK					57
#define NE_GCC_USB20_MASTER_CLK_SRC				58
#define NE_GCC_USB20_MOCK_UTMI_CLK				59
#define NE_GCC_USB20_MOCK_UTMI_CLK_SRC				60
#define NE_GCC_USB20_MOCK_UTMI_POSTDIV_CLK_SRC			61
#define NE_GCC_USB20_SLEEP_CLK					62
#define NE_GCC_USB31_PRIM_ATB_CLK				63
#define NE_GCC_USB31_PRIM_EUD_AHB_CLK				64
#define NE_GCC_USB31_PRIM_MASTER_CLK				65
#define NE_GCC_USB31_PRIM_MASTER_CLK_SRC			66
#define NE_GCC_USB31_PRIM_MOCK_UTMI_CLK				67
#define NE_GCC_USB31_PRIM_MOCK_UTMI_CLK_SRC			68
#define NE_GCC_USB31_PRIM_MOCK_UTMI_POSTDIV_CLK_SRC		69
#define NE_GCC_USB31_PRIM_SLEEP_CLK				70
#define NE_GCC_USB31_SEC_ATB_CLK				71
#define NE_GCC_USB31_SEC_EUD_AHB_CLK				72
#define NE_GCC_USB31_SEC_MASTER_CLK				73
#define NE_GCC_USB31_SEC_MASTER_CLK_SRC				74
#define NE_GCC_USB31_SEC_MOCK_UTMI_CLK				75
#define NE_GCC_USB31_SEC_MOCK_UTMI_CLK_SRC			76
#define NE_GCC_USB31_SEC_MOCK_UTMI_POSTDIV_CLK_SRC		77
#define NE_GCC_USB31_SEC_SLEEP_CLK				78
#define NE_GCC_USB3_PRIM_PHY_AUX_CLK				79
#define NE_GCC_USB3_PRIM_PHY_AUX_CLK_SRC			80
#define NE_GCC_USB3_PRIM_PHY_COM_AUX_CLK			81
#define NE_GCC_USB3_PRIM_PHY_PIPE_CLK				82
#define NE_GCC_USB3_PRIM_PHY_PIPE_CLK_SRC			83
#define NE_GCC_USB3_SEC_PHY_AUX_CLK				84
#define NE_GCC_USB3_SEC_PHY_AUX_CLK_SRC				85
#define NE_GCC_USB3_SEC_PHY_COM_AUX_CLK				86
#define NE_GCC_USB3_SEC_PHY_PIPE_CLK				87
#define NE_GCC_USB3_SEC_PHY_PIPE_CLK_SRC			88

/* NE_GCC power domains */
#define NE_GCC_UFS_MEM_PHY_GDSC					0
#define NE_GCC_UFS_PHY_GDSC					1
#define NE_GCC_USB20_PRIM_GDSC					2
#define NE_GCC_USB31_PRIM_GDSC					3
#define NE_GCC_USB31_SEC_GDSC					4
#define NE_GCC_USB3_PHY_GDSC					5
#define NE_GCC_USB3_SEC_PHY_GDSC				6

/* NE_GCC resets */
#define NE_GCC_GPU_2_BCR					0
#define NE_GCC_QUPV3_WRAPPER_2_BCR				1
#define NE_GCC_SDCC4_BCR					2
#define NE_GCC_UFS_PHY_BCR					3
#define NE_GCC_USB20_PRIM_BCR					4
#define NE_GCC_USB31_PRIM_BCR					5
#define NE_GCC_USB31_SEC_BCR					6
#define NE_GCC_USB3_DP_PHY_PRIM_BCR				7
#define NE_GCC_USB3_DP_PHY_SEC_BCR				8
#define NE_GCC_USB3_PHY_PRIM_BCR				9
#define NE_GCC_USB3_PHY_SEC_BCR					10
#define NE_GCC_USB3PHY_PHY_PRIM_BCR				11
#define NE_GCC_USB3PHY_PHY_SEC_BCR				12

#endif
