1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798 |
- /*
- * Copyright (c) 2015-2016 MediaTek Inc.
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- */
- #ifndef _DTS_IOMMU_PORT_MT6768_H_
- #define _DTS_IOMMU_PORT_MT6768_H_
- #define MTK_M4U_ID(larb, port) (((larb) << 5) | (port))
- /* Local arbiter ID */
- #define MTK_M4U_TO_LARB(id) (((id) >> 5) & 0xf)
- /* PortID within the local arbiter */
- #define MTK_M4U_TO_PORT(id) ((id) & 0x1f)
- #define MTK_IOMMU_LARB_NR (5)
- /* larb0 -- 8*/
- #define M4U_PORT_DISP_OVL0 MTK_M4U_ID(0, 0)
- #define M4U_PORT_DISP_2L_OVL0_LARB0 MTK_M4U_ID(0, 1)
- #define M4U_PORT_DISP_RDMA0 MTK_M4U_ID(0, 2)
- #define M4U_PORT_DISP_WDMA0 MTK_M4U_ID(0, 3)
- #define M4U_PORT_MDP_RDMA0 MTK_M4U_ID(0, 4)
- #define M4U_PORT_MDP_WDMA0 MTK_M4U_ID(0, 5)
- #define M4U_PORT_MDP_WROT0 MTK_M4U_ID(0, 6)
- #define M4U_PORT_DISP_FAKE0 MTK_M4U_ID(0, 7)
- /* larb1 -- 9*/
- #define M4U_PORT_HW_VDEC_MC_EXT MTK_M4U_ID(1, 0)
- #define M4U_PORT_HW_VDEC_PP_EXT MTK_M4U_ID(1, 1)
- #define M4U_PORT_HW_VDEC_VLD_EXT MTK_M4U_ID(1, 2)
- #define M4U_PORT_HW_VDEC_VLD2_EXT MTK_M4U_ID(1, 3)
- #define M4U_PORT_HW_VDEC_AVC_MV_EXT MTK_M4U_ID(1, 4)
- #define M4U_PORT_HW_VDEC_PRED_RD_EXT MTK_M4U_ID(1, 5)
- #define M4U_PORT_HW_VDEC_PRED_WR_EXT MTK_M4U_ID(1, 6)
- #define M4U_PORT_HW_VDEC_PPWRAP_EXT MTK_M4U_ID(1, 7)
- #define M4U_PORT_HW_VDEC_TILE_EXT MTK_M4U_ID(1, 8)
- /* larb2 -- 12*/
- #define M4U_PORT_CAM_IMGI MTK_M4U_ID(2, 0)
- #define M4U_PORT_CAM_IMG2O MTK_M4U_ID(2, 1)
- #define M4U_PORT_CAM_IMG3O MTK_M4U_ID(2, 2)
- #define M4U_PORT_CAM_VIPI MTK_M4U_ID(2, 3)
- #define M4U_PORT_CAM_LCEI MTK_M4U_ID(2, 4)
- #define M4U_PORT_CAM_FD_RP MTK_M4U_ID(2, 5)
- #define M4U_PORT_CAM_FD_WR MTK_M4U_ID(2, 6)
- #define M4U_PORT_CAM_FD_RB MTK_M4U_ID(2, 7)
- #define M4U_PORT_CAM_DPE_RDMA MTK_M4U_ID(2, 8)
- #define M4U_PORT_CAM_DPE_WDMA MTK_M4U_ID(2, 9)
- #define M4U_PORT_CAM_RSC_RDMA MTK_M4U_ID(2, 10)
- #define M4U_PORT_CAM_RSC_WDMA MTK_M4U_ID(2, 11)
- /*larb3 -- 21*/
- #define M4U_PORT_CAM_IMGO MTK_M4U_ID(3, 0)
- #define M4U_PORT_CAM_RRZO MTK_M4U_ID(3, 1)
- #define M4U_PORT_CAM_AAO MTK_M4U_ID(3, 2)
- #define M4U_PORT_CAM_AFO MTK_M4U_ID(3, 3)
- #define M4U_PORT_CAM_LSCI0 MTK_M4U_ID(3, 4)
- #define M4U_PORT_CAM_LSCI1 MTK_M4U_ID(3, 5)
- #define M4U_PORT_CAM_PDO MTK_M4U_ID(3, 6)
- #define M4U_PORT_CAM_BPCI MTK_M4U_ID(3, 7)
- #define M4U_PORT_CAM_LCSO MTK_M4U_ID(3, 8)
- #define M4U_PORT_CAM_RSSO_A MTK_M4U_ID(3, 9)
- #define M4U_PORT_CAM_RSSO_B MTK_M4U_ID(3, 10)
- #define M4U_PORT_CAM_UFEO MTK_M4U_ID(3, 11)
- #define M4U_PORT_CAM_SOC0 MTK_M4U_ID(3, 12)
- #define M4U_PORT_CAM_SOC1 MTK_M4U_ID(3, 13)
- #define M4U_PORT_CAM_SOC2 MTK_M4U_ID(3, 14)
- #define M4U_PORT_CAM_CCUI MTK_M4U_ID(3, 15)
- #define M4U_PORT_CAM_CCUO MTK_M4U_ID(3, 16)
- #define M4U_PORT_CAM_CACI MTK_M4U_ID(3, 17)
- #define M4U_PORT_CAM_RAWI_A MTK_M4U_ID(3, 18)
- #define M4U_PORT_CAM_RAWI_B MTK_M4U_ID(3, 19)
- #define M4U_PORT_CAM_CCUG MTK_M4U_ID(3, 20)
- /*larb4 -- 11*/
- #define M4U_PORT_VENC_RCPU MTK_M4U_ID(4, 0)
- #define M4U_PORT_VENC_REC MTK_M4U_ID(4, 1)
- #define M4U_PORT_VENC_BSDMA MTK_M4U_ID(4, 2)
- #define M4U_PORT_VENC_SV_COMV MTK_M4U_ID(4, 3)
- #define M4U_PORT_VENC_RD_COMV MTK_M4U_ID(4, 4)
- #define M4U_PORT_JPGENC_RDMA MTK_M4U_ID(4, 5)
- #define M4U_PORT_JPGENC_BSDMA MTK_M4U_ID(4, 6)
- #define M4U_PORT_VENC_CUR_LUMA MTK_M4U_ID(4, 7)
- #define M4U_PORT_VENC_CUR_CHROMA MTK_M4U_ID(4, 8)
- #define M4U_PORT_VENC_REF_LUMA MTK_M4U_ID(4, 9)
- #define M4U_PORT_VENC_REF_CHROMA MTK_M4U_ID(4, 10)
- #define M4U_PORT_UNKNOWN (M4U_PORT_VENC_REF_CHROMA + 1)
- #define M4U_PORT_NR (61)
- /* for pusedo ccu device */
- #define CCU_PSEUDO_LARBID (MTK_IOMMU_LARB_NR + 1)
- #define MISC_PSEUDO_LARBID (MTK_IOMMU_LARB_NR + 2)
- #endif
|