162306a36Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */
262306a36Sopenharmony_ci/*
362306a36Sopenharmony_ci * Copyright (c) 2018 MediaTek Inc.
462306a36Sopenharmony_ci * Author: Yong Wu <yong.wu@mediatek.com>
562306a36Sopenharmony_ci */
662306a36Sopenharmony_ci#ifndef _DT_BINDINGS_MEMORY_MT8183_LARB_PORT_H_
762306a36Sopenharmony_ci#define _DT_BINDINGS_MEMORY_MT8183_LARB_PORT_H_
862306a36Sopenharmony_ci
962306a36Sopenharmony_ci#include <dt-bindings/memory/mtk-memory-port.h>
1062306a36Sopenharmony_ci
1162306a36Sopenharmony_ci#define M4U_LARB0_ID			0
1262306a36Sopenharmony_ci#define M4U_LARB1_ID			1
1362306a36Sopenharmony_ci#define M4U_LARB2_ID			2
1462306a36Sopenharmony_ci#define M4U_LARB3_ID			3
1562306a36Sopenharmony_ci#define M4U_LARB4_ID			4
1662306a36Sopenharmony_ci#define M4U_LARB5_ID			5
1762306a36Sopenharmony_ci#define M4U_LARB6_ID			6
1862306a36Sopenharmony_ci#define M4U_LARB7_ID			7
1962306a36Sopenharmony_ci
2062306a36Sopenharmony_ci/* larb0 */
2162306a36Sopenharmony_ci#define	M4U_PORT_DISP_OVL0		MTK_M4U_ID(M4U_LARB0_ID, 0)
2262306a36Sopenharmony_ci#define	M4U_PORT_DISP_2L_OVL0_LARB0     MTK_M4U_ID(M4U_LARB0_ID, 1)
2362306a36Sopenharmony_ci#define	M4U_PORT_DISP_2L_OVL1_LARB0     MTK_M4U_ID(M4U_LARB0_ID, 2)
2462306a36Sopenharmony_ci#define	M4U_PORT_DISP_RDMA0		MTK_M4U_ID(M4U_LARB0_ID, 3)
2562306a36Sopenharmony_ci#define	M4U_PORT_DISP_RDMA1		MTK_M4U_ID(M4U_LARB0_ID, 4)
2662306a36Sopenharmony_ci#define	M4U_PORT_DISP_WDMA0		MTK_M4U_ID(M4U_LARB0_ID, 5)
2762306a36Sopenharmony_ci#define	M4U_PORT_MDP_RDMA0		MTK_M4U_ID(M4U_LARB0_ID, 6)
2862306a36Sopenharmony_ci#define	M4U_PORT_MDP_WROT0		MTK_M4U_ID(M4U_LARB0_ID, 7)
2962306a36Sopenharmony_ci#define	M4U_PORT_MDP_WDMA0		MTK_M4U_ID(M4U_LARB0_ID, 8)
3062306a36Sopenharmony_ci#define	M4U_PORT_DISP_FAKE0		MTK_M4U_ID(M4U_LARB0_ID, 9)
3162306a36Sopenharmony_ci
3262306a36Sopenharmony_ci/* larb1 */
3362306a36Sopenharmony_ci#define	M4U_PORT_HW_VDEC_MC_EXT		MTK_M4U_ID(M4U_LARB1_ID, 0)
3462306a36Sopenharmony_ci#define	M4U_PORT_HW_VDEC_PP_EXT         MTK_M4U_ID(M4U_LARB1_ID, 1)
3562306a36Sopenharmony_ci#define	M4U_PORT_HW_VDEC_VLD_EXT	MTK_M4U_ID(M4U_LARB1_ID, 2)
3662306a36Sopenharmony_ci#define	M4U_PORT_HW_VDEC_AVC_MV_EXT     MTK_M4U_ID(M4U_LARB1_ID, 3)
3762306a36Sopenharmony_ci#define	M4U_PORT_HW_VDEC_PRED_RD_EXT	MTK_M4U_ID(M4U_LARB1_ID, 4)
3862306a36Sopenharmony_ci#define	M4U_PORT_HW_VDEC_PRED_WR_EXT	MTK_M4U_ID(M4U_LARB1_ID, 5)
3962306a36Sopenharmony_ci#define	M4U_PORT_HW_VDEC_PPWRAP_EXT	MTK_M4U_ID(M4U_LARB1_ID, 6)
4062306a36Sopenharmony_ci
4162306a36Sopenharmony_ci/* larb2 VPU0 */
4262306a36Sopenharmony_ci#define	M4U_PORT_IMG_IPUO		MTK_M4U_ID(M4U_LARB2_ID, 0)
4362306a36Sopenharmony_ci#define	M4U_PORT_IMG_IPU3O		MTK_M4U_ID(M4U_LARB2_ID, 1)
4462306a36Sopenharmony_ci#define	M4U_PORT_IMG_IPUI		MTK_M4U_ID(M4U_LARB2_ID, 2)
4562306a36Sopenharmony_ci
4662306a36Sopenharmony_ci/* larb3 VPU1 */
4762306a36Sopenharmony_ci#define	M4U_PORT_CAM_IPUO		MTK_M4U_ID(M4U_LARB3_ID, 0)
4862306a36Sopenharmony_ci#define	M4U_PORT_CAM_IPU2O		MTK_M4U_ID(M4U_LARB3_ID, 1)
4962306a36Sopenharmony_ci#define	M4U_PORT_CAM_IPU3O		MTK_M4U_ID(M4U_LARB3_ID, 2)
5062306a36Sopenharmony_ci#define	M4U_PORT_CAM_IPUI		MTK_M4U_ID(M4U_LARB3_ID, 3)
5162306a36Sopenharmony_ci#define	M4U_PORT_CAM_IPU2I		MTK_M4U_ID(M4U_LARB3_ID, 4)
5262306a36Sopenharmony_ci
5362306a36Sopenharmony_ci/* larb4 */
5462306a36Sopenharmony_ci#define	M4U_PORT_VENC_RCPU		MTK_M4U_ID(M4U_LARB4_ID, 0)
5562306a36Sopenharmony_ci#define	M4U_PORT_VENC_REC		MTK_M4U_ID(M4U_LARB4_ID, 1)
5662306a36Sopenharmony_ci#define	M4U_PORT_VENC_BSDMA		MTK_M4U_ID(M4U_LARB4_ID, 2)
5762306a36Sopenharmony_ci#define	M4U_PORT_VENC_SV_COMV		MTK_M4U_ID(M4U_LARB4_ID, 3)
5862306a36Sopenharmony_ci#define	M4U_PORT_VENC_RD_COMV		MTK_M4U_ID(M4U_LARB4_ID, 4)
5962306a36Sopenharmony_ci#define	M4U_PORT_JPGENC_RDMA		MTK_M4U_ID(M4U_LARB4_ID, 5)
6062306a36Sopenharmony_ci#define	M4U_PORT_JPGENC_BSDMA		MTK_M4U_ID(M4U_LARB4_ID, 6)
6162306a36Sopenharmony_ci#define	M4U_PORT_VENC_CUR_LUMA		MTK_M4U_ID(M4U_LARB4_ID, 7)
6262306a36Sopenharmony_ci#define	M4U_PORT_VENC_CUR_CHROMA	MTK_M4U_ID(M4U_LARB4_ID, 8)
6362306a36Sopenharmony_ci#define	M4U_PORT_VENC_REF_LUMA		MTK_M4U_ID(M4U_LARB4_ID, 9)
6462306a36Sopenharmony_ci#define	M4U_PORT_VENC_REF_CHROMA	MTK_M4U_ID(M4U_LARB4_ID, 10)
6562306a36Sopenharmony_ci
6662306a36Sopenharmony_ci/* larb5 */
6762306a36Sopenharmony_ci#define	M4U_PORT_CAM_IMGI		MTK_M4U_ID(M4U_LARB5_ID, 0)
6862306a36Sopenharmony_ci#define	M4U_PORT_CAM_IMG2O		MTK_M4U_ID(M4U_LARB5_ID, 1)
6962306a36Sopenharmony_ci#define	M4U_PORT_CAM_IMG3O		MTK_M4U_ID(M4U_LARB5_ID, 2)
7062306a36Sopenharmony_ci#define	M4U_PORT_CAM_VIPI		MTK_M4U_ID(M4U_LARB5_ID, 3)
7162306a36Sopenharmony_ci#define	M4U_PORT_CAM_LCEI		MTK_M4U_ID(M4U_LARB5_ID, 4)
7262306a36Sopenharmony_ci#define	M4U_PORT_CAM_SMXI		MTK_M4U_ID(M4U_LARB5_ID, 5)
7362306a36Sopenharmony_ci#define	M4U_PORT_CAM_SMXO		MTK_M4U_ID(M4U_LARB5_ID, 6)
7462306a36Sopenharmony_ci#define	M4U_PORT_CAM_WPE0_RDMA1		MTK_M4U_ID(M4U_LARB5_ID, 7)
7562306a36Sopenharmony_ci#define	M4U_PORT_CAM_WPE0_RDMA0		MTK_M4U_ID(M4U_LARB5_ID, 8)
7662306a36Sopenharmony_ci#define	M4U_PORT_CAM_WPE0_WDMA		MTK_M4U_ID(M4U_LARB5_ID, 9)
7762306a36Sopenharmony_ci#define	M4U_PORT_CAM_FDVT_RP		MTK_M4U_ID(M4U_LARB5_ID, 10)
7862306a36Sopenharmony_ci#define	M4U_PORT_CAM_FDVT_WR		MTK_M4U_ID(M4U_LARB5_ID, 11)
7962306a36Sopenharmony_ci#define	M4U_PORT_CAM_FDVT_RB		MTK_M4U_ID(M4U_LARB5_ID, 12)
8062306a36Sopenharmony_ci#define	M4U_PORT_CAM_WPE1_RDMA0		MTK_M4U_ID(M4U_LARB5_ID, 13)
8162306a36Sopenharmony_ci#define	M4U_PORT_CAM_WPE1_RDMA1		MTK_M4U_ID(M4U_LARB5_ID, 14)
8262306a36Sopenharmony_ci#define	M4U_PORT_CAM_WPE1_WDMA		MTK_M4U_ID(M4U_LARB5_ID, 15)
8362306a36Sopenharmony_ci#define	M4U_PORT_CAM_DPE_RDMA		MTK_M4U_ID(M4U_LARB5_ID, 16)
8462306a36Sopenharmony_ci#define	M4U_PORT_CAM_DPE_WDMA		MTK_M4U_ID(M4U_LARB5_ID, 17)
8562306a36Sopenharmony_ci#define	M4U_PORT_CAM_MFB_RDMA0		MTK_M4U_ID(M4U_LARB5_ID, 18)
8662306a36Sopenharmony_ci#define	M4U_PORT_CAM_MFB_RDMA1		MTK_M4U_ID(M4U_LARB5_ID, 19)
8762306a36Sopenharmony_ci#define	M4U_PORT_CAM_MFB_WDMA		MTK_M4U_ID(M4U_LARB5_ID, 20)
8862306a36Sopenharmony_ci#define	M4U_PORT_CAM_RSC_RDMA0		MTK_M4U_ID(M4U_LARB5_ID, 21)
8962306a36Sopenharmony_ci#define	M4U_PORT_CAM_RSC_WDMA		MTK_M4U_ID(M4U_LARB5_ID, 22)
9062306a36Sopenharmony_ci#define	M4U_PORT_CAM_OWE_RDMA		MTK_M4U_ID(M4U_LARB5_ID, 23)
9162306a36Sopenharmony_ci#define	M4U_PORT_CAM_OWE_WDMA		MTK_M4U_ID(M4U_LARB5_ID, 24)
9262306a36Sopenharmony_ci
9362306a36Sopenharmony_ci/* larb6 */
9462306a36Sopenharmony_ci#define	M4U_PORT_CAM_IMGO		MTK_M4U_ID(M4U_LARB6_ID, 0)
9562306a36Sopenharmony_ci#define	M4U_PORT_CAM_RRZO		MTK_M4U_ID(M4U_LARB6_ID, 1)
9662306a36Sopenharmony_ci#define	M4U_PORT_CAM_AAO		MTK_M4U_ID(M4U_LARB6_ID, 2)
9762306a36Sopenharmony_ci#define	M4U_PORT_CAM_AFO		MTK_M4U_ID(M4U_LARB6_ID, 3)
9862306a36Sopenharmony_ci#define	M4U_PORT_CAM_LSCI0		MTK_M4U_ID(M4U_LARB6_ID, 4)
9962306a36Sopenharmony_ci#define	M4U_PORT_CAM_LSCI1		MTK_M4U_ID(M4U_LARB6_ID, 5)
10062306a36Sopenharmony_ci#define	M4U_PORT_CAM_PDO		MTK_M4U_ID(M4U_LARB6_ID, 6)
10162306a36Sopenharmony_ci#define	M4U_PORT_CAM_BPCI		MTK_M4U_ID(M4U_LARB6_ID, 7)
10262306a36Sopenharmony_ci#define	M4U_PORT_CAM_LCSO		MTK_M4U_ID(M4U_LARB6_ID, 8)
10362306a36Sopenharmony_ci#define	M4U_PORT_CAM_CAM_RSSO_A		MTK_M4U_ID(M4U_LARB6_ID, 9)
10462306a36Sopenharmony_ci#define	M4U_PORT_CAM_UFEO		MTK_M4U_ID(M4U_LARB6_ID, 10)
10562306a36Sopenharmony_ci#define	M4U_PORT_CAM_SOCO		MTK_M4U_ID(M4U_LARB6_ID, 11)
10662306a36Sopenharmony_ci#define	M4U_PORT_CAM_SOC1		MTK_M4U_ID(M4U_LARB6_ID, 12)
10762306a36Sopenharmony_ci#define	M4U_PORT_CAM_SOC2		MTK_M4U_ID(M4U_LARB6_ID, 13)
10862306a36Sopenharmony_ci#define	M4U_PORT_CAM_CCUI		MTK_M4U_ID(M4U_LARB6_ID, 14)
10962306a36Sopenharmony_ci#define	M4U_PORT_CAM_CCUO		MTK_M4U_ID(M4U_LARB6_ID, 15)
11062306a36Sopenharmony_ci#define	M4U_PORT_CAM_RAWI_A		MTK_M4U_ID(M4U_LARB6_ID, 16)
11162306a36Sopenharmony_ci#define	M4U_PORT_CAM_CCUG		MTK_M4U_ID(M4U_LARB6_ID, 17)
11262306a36Sopenharmony_ci#define	M4U_PORT_CAM_PSO		MTK_M4U_ID(M4U_LARB6_ID, 18)
11362306a36Sopenharmony_ci#define	M4U_PORT_CAM_AFO_1		MTK_M4U_ID(M4U_LARB6_ID, 19)
11462306a36Sopenharmony_ci#define	M4U_PORT_CAM_LSCI_2		MTK_M4U_ID(M4U_LARB6_ID, 20)
11562306a36Sopenharmony_ci#define	M4U_PORT_CAM_PDI		MTK_M4U_ID(M4U_LARB6_ID, 21)
11662306a36Sopenharmony_ci#define	M4U_PORT_CAM_FLKO		MTK_M4U_ID(M4U_LARB6_ID, 22)
11762306a36Sopenharmony_ci#define	M4U_PORT_CAM_LMVO		MTK_M4U_ID(M4U_LARB6_ID, 23)
11862306a36Sopenharmony_ci#define	M4U_PORT_CAM_UFGO		MTK_M4U_ID(M4U_LARB6_ID, 24)
11962306a36Sopenharmony_ci#define	M4U_PORT_CAM_SPARE		MTK_M4U_ID(M4U_LARB6_ID, 25)
12062306a36Sopenharmony_ci#define	M4U_PORT_CAM_SPARE_2		MTK_M4U_ID(M4U_LARB6_ID, 26)
12162306a36Sopenharmony_ci#define	M4U_PORT_CAM_SPARE_3		MTK_M4U_ID(M4U_LARB6_ID, 27)
12262306a36Sopenharmony_ci#define	M4U_PORT_CAM_SPARE_4		MTK_M4U_ID(M4U_LARB6_ID, 28)
12362306a36Sopenharmony_ci#define	M4U_PORT_CAM_SPARE_5		MTK_M4U_ID(M4U_LARB6_ID, 29)
12462306a36Sopenharmony_ci#define	M4U_PORT_CAM_SPARE_6		MTK_M4U_ID(M4U_LARB6_ID, 30)
12562306a36Sopenharmony_ci
12662306a36Sopenharmony_ci/* CCU */
12762306a36Sopenharmony_ci#define	M4U_PORT_CCU0			MTK_M4U_ID(M4U_LARB7_ID, 0)
12862306a36Sopenharmony_ci#define	M4U_PORT_CCU1			MTK_M4U_ID(M4U_LARB7_ID, 1)
12962306a36Sopenharmony_ci
13062306a36Sopenharmony_ci#endif
131