root/scripts/dtc/include-prefixes/dt-bindings/clock/mt8167-clk.h
/* SPDX-License-Identifier: GPL-2.0 */
/*
 * Copyright (c) 2020 MediaTek Inc.
 * Copyright (c) 2020 BayLibre, SAS.
 * Author: James Liao <jamesjj.liao@mediatek.com>
 *         Fabien Parent <fparent@baylibre.com>
 */

#ifndef _DT_BINDINGS_CLK_MT8167_H
#define _DT_BINDINGS_CLK_MT8167_H

/* MT8167 is based on MT8516 */
#include <dt-bindings/clock/mt8516-clk.h>

/* APMIXEDSYS */

#define CLK_APMIXED_TVDPLL              (CLK_APMIXED_NR_CLK + 0)
#define CLK_APMIXED_LVDSPLL             (CLK_APMIXED_NR_CLK + 1)
#define CLK_APMIXED_HDMI_REF            (CLK_APMIXED_NR_CLK + 2)
#define MT8167_CLK_APMIXED_NR_CLK       (CLK_APMIXED_NR_CLK + 3)

/* TOPCKGEN */

#define CLK_TOP_DSI0_LNTC_DSICK         (CLK_TOP_NR_CLK + 0)
#define CLK_TOP_VPLL_DPIX               (CLK_TOP_NR_CLK + 1)
#define CLK_TOP_LVDSTX_CLKDIG_CTS       (CLK_TOP_NR_CLK + 2)
#define CLK_TOP_HDMTX_CLKDIG_CTS        (CLK_TOP_NR_CLK + 3)
#define CLK_TOP_LVDSPLL                 (CLK_TOP_NR_CLK + 4)
#define CLK_TOP_LVDSPLL_D2              (CLK_TOP_NR_CLK + 5)
#define CLK_TOP_LVDSPLL_D4              (CLK_TOP_NR_CLK + 6)
#define CLK_TOP_LVDSPLL_D8              (CLK_TOP_NR_CLK + 7)
#define CLK_TOP_MIPI_26M                (CLK_TOP_NR_CLK + 8)
#define CLK_TOP_TVDPLL                  (CLK_TOP_NR_CLK + 9)
#define CLK_TOP_TVDPLL_D2               (CLK_TOP_NR_CLK + 10)
#define CLK_TOP_TVDPLL_D4               (CLK_TOP_NR_CLK + 11)
#define CLK_TOP_TVDPLL_D8               (CLK_TOP_NR_CLK + 12)
#define CLK_TOP_TVDPLL_D16              (CLK_TOP_NR_CLK + 13)
#define CLK_TOP_PWM_MM                  (CLK_TOP_NR_CLK + 14)
#define CLK_TOP_CAM_MM                  (CLK_TOP_NR_CLK + 15)
#define CLK_TOP_MFG_MM                  (CLK_TOP_NR_CLK + 16)
#define CLK_TOP_SPM_52M                 (CLK_TOP_NR_CLK + 17)
#define CLK_TOP_MIPI_26M_DBG            (CLK_TOP_NR_CLK + 18)
#define CLK_TOP_SCAM_MM                 (CLK_TOP_NR_CLK + 19)
#define CLK_TOP_SMI_MM                  (CLK_TOP_NR_CLK + 20)
#define CLK_TOP_26M_HDMI_SIFM           (CLK_TOP_NR_CLK + 21)
#define CLK_TOP_26M_CEC                 (CLK_TOP_NR_CLK + 22)
#define CLK_TOP_32K_CEC                 (CLK_TOP_NR_CLK + 23)
#define CLK_TOP_GCPU_B                  (CLK_TOP_NR_CLK + 24)
#define CLK_TOP_RG_VDEC                 (CLK_TOP_NR_CLK + 25)
#define CLK_TOP_RG_FDPI0                (CLK_TOP_NR_CLK + 26)
#define CLK_TOP_RG_FDPI1                (CLK_TOP_NR_CLK + 27)
#define CLK_TOP_RG_AXI_MFG              (CLK_TOP_NR_CLK + 28)
#define CLK_TOP_RG_SLOW_MFG             (CLK_TOP_NR_CLK + 29)
#define CLK_TOP_GFMUX_EMI1X_SEL         (CLK_TOP_NR_CLK + 30)
#define CLK_TOP_CSW_MUX_MFG_SEL         (CLK_TOP_NR_CLK + 31)
#define CLK_TOP_CAMTG_MM_SEL            (CLK_TOP_NR_CLK + 32)
#define CLK_TOP_PWM_MM_SEL              (CLK_TOP_NR_CLK + 33)
#define CLK_TOP_SPM_52M_SEL             (CLK_TOP_NR_CLK + 34)
#define CLK_TOP_MFG_MM_SEL              (CLK_TOP_NR_CLK + 35)
#define CLK_TOP_SMI_MM_SEL              (CLK_TOP_NR_CLK + 36)
#define CLK_TOP_SCAM_MM_SEL             (CLK_TOP_NR_CLK + 37)
#define CLK_TOP_VDEC_MM_SEL             (CLK_TOP_NR_CLK + 38)
#define CLK_TOP_DPI0_MM_SEL             (CLK_TOP_NR_CLK + 39)
#define CLK_TOP_DPI1_MM_SEL             (CLK_TOP_NR_CLK + 40)
#define CLK_TOP_AXI_MFG_IN_SEL          (CLK_TOP_NR_CLK + 41)
#define CLK_TOP_SLOW_MFG_SEL            (CLK_TOP_NR_CLK + 42)
#define MT8167_CLK_TOP_NR_CLK           (CLK_TOP_NR_CLK + 43)

/* MFGCFG */

#define CLK_MFG_BAXI                    0
#define CLK_MFG_BMEM                    1
#define CLK_MFG_BG3D                    2
#define CLK_MFG_B26M                    3
#define CLK_MFG_NR_CLK                  4

/* MMSYS */

#define CLK_MM_SMI_COMMON               0
#define CLK_MM_SMI_LARB0                1
#define CLK_MM_CAM_MDP                  2
#define CLK_MM_MDP_RDMA                 3
#define CLK_MM_MDP_RSZ0                 4
#define CLK_MM_MDP_RSZ1                 5
#define CLK_MM_MDP_TDSHP                6
#define CLK_MM_MDP_WDMA                 7
#define CLK_MM_MDP_WROT                 8
#define CLK_MM_FAKE_ENG                 9
#define CLK_MM_DISP_OVL0                10
#define CLK_MM_DISP_RDMA0               11
#define CLK_MM_DISP_RDMA1               12
#define CLK_MM_DISP_WDMA                13
#define CLK_MM_DISP_COLOR               14
#define CLK_MM_DISP_CCORR               15
#define CLK_MM_DISP_AAL                 16
#define CLK_MM_DISP_GAMMA               17
#define CLK_MM_DISP_DITHER              18
#define CLK_MM_DISP_UFOE                19
#define CLK_MM_DISP_PWM_MM              20
#define CLK_MM_DISP_PWM_26M             21
#define CLK_MM_DSI_ENGINE               22
#define CLK_MM_DSI_DIGITAL              23
#define CLK_MM_DPI0_ENGINE              24
#define CLK_MM_DPI0_PXL                 25
#define CLK_MM_LVDS_PXL                 26
#define CLK_MM_LVDS_CTS                 27
#define CLK_MM_DPI1_ENGINE              28
#define CLK_MM_DPI1_PXL                 29
#define CLK_MM_HDMI_PXL                 30
#define CLK_MM_HDMI_SPDIF               31
#define CLK_MM_HDMI_ADSP_BCK            32
#define CLK_MM_HDMI_PLL                 33
#define CLK_MM_NR_CLK                   34

/* IMGSYS */

#define CLK_IMG_LARB1_SMI               0
#define CLK_IMG_CAM_SMI                 1
#define CLK_IMG_CAM_CAM                 2
#define CLK_IMG_SEN_TG                  3
#define CLK_IMG_SEN_CAM                 4
#define CLK_IMG_VENC                    5
#define CLK_IMG_NR_CLK                  6

/* VDECSYS */

#define CLK_VDEC_CKEN                   0
#define CLK_VDEC_LARB1_CKEN             1
#define CLK_VDEC_NR_CLK                 2

#endif /* _DT_BINDINGS_CLK_MT8167_H */