unplugged-kernel/drivers/misc/mediatek/m4u/mt6885/m4u_platform.h

236 lines
8.4 KiB
C

/* SPDX-License-Identifier: GPL-2.0 */
/*
* Copyright (c) 2019 MediaTek Inc.
*/
#ifndef __M4U_PORT_PRIV_H__
#define __M4U_PORT_PRIV_H__
static const char *const gM4U_SMILARB[] = {
"mediatek,smi_larb0", "mediatek,smi_larb1", "mediatek,smi_larb2",
"mediatek,smi_larb3", "mediatek,smi_larb4", "mediatek,smi_larb5",
"mediatek,smi_larb6", "mediatek,smi_larb7", "mediatek,smi_larb8",
"mediatek,smi_larb9", "mediatek,smi_larb10"
};
#define M4U0_PORT_INIT(name, slave, larb_id, smi_select_larb_id, port) {\
name, 0, slave, larb_id, port, \
(((smi_select_larb_id)<<7)|((port)<<2)), 1\
}
#define M4U1_PORT_INIT(name, slave, larb_id, smi_select_larb_id, port) {\
name, 1, slave, larb_id, port, \
(((smi_select_larb_id)<<7)|((port)<<2)), 1\
}
#define M4U_SLAVE0 (0)
#define M4U_SLAVE1 (0)
#define M4U_SLAVE2 (0)
#define M4U_SLAVE3 (0)
#define M4U_SLAVE4 (0)
#define M4U_LARB0 (0)
#define M4U_LARB1 (1)
#define M4U_LARB2 (2)
#define M4U_LARB3 (3)
#define M4U_LARB4 (4)
struct m4u_port_t gM4uPort[] = {
/* larb0 -MMSYS-9 */
M4U0_PORT_INIT("DISP_POSTMASK0", 0, 0, 0, 0),
M4U0_PORT_INIT("DISP_OVL0_HDR", 0, 0, 0, 1),
M4U0_PORT_INIT("DISP_OVL1_HDR", 0, 0, 0, 2),
M4U0_PORT_INIT("DISP_OVL0", 0, 0, 0, 3),
M4U0_PORT_INIT("DISP_OVL1", 0, 0, 0, 4),
M4U0_PORT_INIT("DISP_PVRIC0", 0, 0, 0, 5),
M4U0_PORT_INIT("DISP_RDMA0", 0, 0, 0, 6),
M4U0_PORT_INIT("DISP_WDMA0", 0, 0, 0, 7),
M4U0_PORT_INIT("DISP_FAKE0", 0, 0, 0, 8),
/*larb1-MMSYS-14*/
M4U0_PORT_INIT("DISP_OVL0_2L_HDR", 0, 1, 4, 0),
M4U0_PORT_INIT("DISP_OVL1_2L_HDR", 0, 1, 4, 1),
M4U0_PORT_INIT("DISP_OVL0_2L", 0, 1, 4, 2),
M4U0_PORT_INIT("DISP_OVL1_2L", 0, 1, 4, 3),
M4U0_PORT_INIT("DISP_RDMA1", 0, 1, 4, 4),
M4U0_PORT_INIT("MDP_PVRIC0", 0, 1, 4, 5),
M4U0_PORT_INIT("MDP_PVRIC1", 0, 1, 4, 6),
M4U0_PORT_INIT("MDP_RDMA0", 0, 1, 4, 7),
M4U0_PORT_INIT("MDP_RDMA1", 0, 1, 4, 8),
M4U0_PORT_INIT("MDP_WROT0_R", 0, 1, 4, 9),
M4U0_PORT_INIT("MDP_WROT0_W", 0, 1, 4, 10),
M4U0_PORT_INIT("MDP_WROT1_R", 0, 1, 4, 11),
M4U0_PORT_INIT("MDP_WROT1_W", 0, 1, 4, 12),
M4U0_PORT_INIT("DISP_FAKE1", 0, 1, 4, 13),
/*larb2-VDEC-12*/
M4U0_PORT_INIT("VDEC_MC_EXT", 0, 2, 8, 0),
M4U0_PORT_INIT("VDEC_UFO_EXT", 0, 2, 8, 1),
M4U0_PORT_INIT("VDEC_PP_EXT", 0, 2, 8, 2),
M4U0_PORT_INIT("VDEC_PRED_RD_EXT", 0, 2, 8, 3),
M4U0_PORT_INIT("VDEC_PRED_WR_EXT", 0, 2, 8, 4),
M4U0_PORT_INIT("VDEC_PPWRAP_EXT", 0, 2, 8, 5),
M4U0_PORT_INIT("VDEC_TILE_EXT", 0, 2, 8, 6),
M4U0_PORT_INIT("VDEC_VLD_EXT", 0, 2, 8, 7),
M4U0_PORT_INIT("VDEC_VLD2_EXT", 0, 2, 8, 8),
M4U0_PORT_INIT("VDEC_AVC_MV_EXT", 0, 2, 8, 9),
M4U0_PORT_INIT("VDEC_UFO_ENC_EXT", 0, 2, 8, 10),
M4U0_PORT_INIT("VDEC_RG_CTRL_DMA_EXT", 0, 2, 8, 11),
/*larb3-VENC-19*/
M4U0_PORT_INIT("VENC_RCPU", 0, 3, 12, 0),
M4U0_PORT_INIT("VENC_REC", 0, 3, 12, 1),
M4U0_PORT_INIT("VENC_BSDMA", 0, 3, 12, 2),
M4U0_PORT_INIT("VENC_SV_COMV", 0, 3, 12, 3),
M4U0_PORT_INIT("VENC_RD_COMV", 0, 3, 12, 4),
M4U0_PORT_INIT("VENC_NBM_RDMA", 0, 3, 12, 5),
M4U0_PORT_INIT("VENC_NBM_RDMA_LITE", 0, 3, 12, 6),
M4U0_PORT_INIT("JPGENC_Y_RDMA", 0, 3, 12, 7),
M4U0_PORT_INIT("JPGENC_C_RDMA", 0, 3, 12, 8),
M4U0_PORT_INIT("JPGENC_Q_TABLE", 0, 3, 12, 9),
M4U0_PORT_INIT("JPGENC_BSDMA", 0, 3, 12, 10),
M4U0_PORT_INIT("JPGEDC_WDMA", 0, 3, 12, 11),
M4U0_PORT_INIT("JPGEDC_BSDMA", 0, 3, 12, 12),
M4U0_PORT_INIT("VENC_NBM_WDMA", 0, 3, 12, 13),
M4U0_PORT_INIT("VENC_NBM_WDMA_LITE", 0, 3, 12, 14),
M4U0_PORT_INIT("VENC_CUR_LUMA", 0, 3, 12, 15),
M4U0_PORT_INIT("VENC_CUR_CHROMA", 0, 3, 12, 16),
M4U0_PORT_INIT("VENC_REF_LUMA", 0, 3, 12, 17),
M4U0_PORT_INIT("VENC_REF_CHROMA", 0, 3, 12, 18),
/*larb4-dummy*/
/*larb5-IMG-26*/
M4U0_PORT_INIT("IMGI_D1", 0, 5, 16, 0),
M4U0_PORT_INIT("IMGBI_D1", 0, 5, 16, 1),
M4U0_PORT_INIT("DMGI_D1", 0, 5, 16, 2),
M4U0_PORT_INIT("DEPI_D1", 0, 5, 16, 3),
M4U0_PORT_INIT("LCEI_D1", 0, 5, 16, 4),
M4U0_PORT_INIT("SMTI_D1", 0, 5, 16, 5),
M4U0_PORT_INIT("SMTO_D2", 0, 5, 16, 6),
M4U0_PORT_INIT("SMTO_D1", 0, 5, 16, 7),
M4U0_PORT_INIT("CRZO_D1", 0, 5, 16, 8),
M4U0_PORT_INIT("IMG3O_D1", 0, 5, 16, 9),
M4U0_PORT_INIT("VIPI_D1", 0, 5, 16, 10),
M4U0_PORT_INIT("WPE_A_RDMA1", 0, 5, 16, 11),
M4U0_PORT_INIT("WPE_A_RDMA0", 0, 5, 16, 12),
M4U0_PORT_INIT("WPE_A_WDMA", 0, 5, 16, 13),
M4U0_PORT_INIT("TIMGO_D1", 0, 5, 16, 14),
M4U0_PORT_INIT("MFB_RDMA0", 0, 5, 16, 15),
M4U0_PORT_INIT("MFB_RDMA1", 0, 5, 16, 16),
M4U0_PORT_INIT("MFB_RDMA2", 0, 5, 16, 17),
M4U0_PORT_INIT("MFB_RDMA3", 0, 5, 16, 18),
M4U0_PORT_INIT("MFB_WDMA", 0, 5, 16, 19),
M4U0_PORT_INIT("RESERVED1", 0, 5, 16, 20),
M4U0_PORT_INIT("RESERVED2", 0, 5, 16, 21),
M4U0_PORT_INIT("RESERVED3", 0, 5, 16, 22),
M4U0_PORT_INIT("RESERVED4", 0, 5, 16, 23),
M4U0_PORT_INIT("RESERVED5", 0, 5, 16, 24),
M4U0_PORT_INIT("RESERVED6", 0, 5, 16, 25),
/*larb6-IMG-3
*M4U0_PORT_INIT("IMG_IPUO", 0, 6, 3, 0),
*M4U0_PORT_INIT("IMG_IPU3O", 0, 6, 3, 1),
*M4U0_PORT_INIT("IMG_IPUI,", 0, 6, 3, 2),
*/
/*larb7-IPESYS-4*/
M4U0_PORT_INIT("DVS_RDMA", 0, 7, 20, 0),
M4U0_PORT_INIT("DVS_WDMA", 0, 7, 20, 1),
M4U0_PORT_INIT("DVP_RDMA,", 0, 7, 20, 2),
M4U0_PORT_INIT("DVP_WDMA,", 0, 7, 20, 3),
/*larb8-IPESYS-10*/
M4U0_PORT_INIT("FDVT_RDA", 0, 8, 21, 0),
M4U0_PORT_INIT("FDVT_RDB", 0, 8, 21, 1),
M4U0_PORT_INIT("FDVT_WRA", 0, 8, 21, 2),
M4U0_PORT_INIT("FDVT_WRB", 0, 8, 21, 3),
M4U0_PORT_INIT("FE_RD0", 0, 8, 21, 4),
M4U0_PORT_INIT("FE_RD1", 0, 8, 21, 5),
M4U0_PORT_INIT("FE_WR0", 0, 8, 21, 6),
M4U0_PORT_INIT("FE_WR1", 0, 8, 21, 7),
M4U0_PORT_INIT("RSC_RDMA0", 0, 8, 21, 8),
M4U0_PORT_INIT("RSC_WDMA", 0, 8, 21, 9),
/*larb9-CAM-24*/
M4U0_PORT_INIT("CAM_IMGO_R1_C", 0, 9, 28, 0),
M4U0_PORT_INIT("CAM_RRZO_R1_C", 0, 9, 28, 1),
M4U0_PORT_INIT("CAM_LSCI_R1_C", 0, 9, 28, 2),
M4U0_PORT_INIT("CAM_BPCI_R1_C", 0, 9, 28, 3),
M4U0_PORT_INIT("CAM_YUVO_R1_C", 0, 9, 28, 4),
M4U0_PORT_INIT("CAM_UFDI_R2_C", 0, 9, 28, 5),
M4U0_PORT_INIT("CAM_RAWI_R2_C", 0, 9, 28, 6),
M4U0_PORT_INIT("CAM_RAWI_R5_C", 0, 9, 28, 7),
M4U0_PORT_INIT("CAM_CAMSV_1", 0, 9, 28, 8),
M4U0_PORT_INIT("CAM_CAMSV_2", 0, 9, 28, 9),
M4U0_PORT_INIT("CAM_CAMSV_3", 0, 9, 28, 10),
M4U0_PORT_INIT("CAM_CAMSV_4", 0, 9, 28, 11),
M4U0_PORT_INIT("CAM_CAMSV_5", 0, 9, 28, 12),
M4U0_PORT_INIT("CAM_CAMSV_6", 0, 9, 28, 13),
M4U0_PORT_INIT("CAM_AAO_R1_C", 0, 9, 28, 14),
M4U0_PORT_INIT("CAM_AFO_R1_C", 0, 9, 28, 15),
M4U0_PORT_INIT("CAM_FLKO_R1_C", 0, 9, 28, 16),
M4U0_PORT_INIT("CAM_LCESO_R1_C", 0, 9, 28, 17),
M4U0_PORT_INIT("CAM_CRZO_R1_C", 0, 9, 28, 18),
M4U0_PORT_INIT("CAM_LTMSO_R1_C", 0, 9, 28, 19),
M4U0_PORT_INIT("CAM_RSSO_R1_C", 0, 9, 28, 20),
M4U0_PORT_INIT("CAM_CCUI", 0, 9, 28, 21),
M4U0_PORT_INIT("CAM_CCUO", 0, 9, 28, 22),
M4U0_PORT_INIT("CAM_FAKE", 0, 9, 28, 23),
/*larb10-CAM-31*/
M4U0_PORT_INIT("CAM_IMGO_R1_A", 0, 10, 25, 0),
M4U0_PORT_INIT("CAM_RRZO_R1_A", 0, 10, 25, 1),
M4U0_PORT_INIT("CAM_LSCI_R1_A", 0, 10, 25, 2),
M4U0_PORT_INIT("CAM_BPCI_R1_A", 0, 10, 25, 3),
M4U0_PORT_INIT("CAM_YUVO_R1_A", 0, 10, 25, 4),
M4U0_PORT_INIT("CAM_UFDI_R2_A", 0, 10, 25, 5),
M4U0_PORT_INIT("CAM_RAWI_R2_A", 0, 10, 25, 6),
M4U0_PORT_INIT("CAM_RAWI_R5_A", 0, 10, 25, 7),
M4U0_PORT_INIT("CAM_IMGO_R1_B", 0, 10, 25, 8),
M4U0_PORT_INIT("CAM_RRZO_R1_B", 0, 10, 25, 9),
M4U0_PORT_INIT("CAM_LSCI_R1_B", 0, 10, 25, 10),
M4U0_PORT_INIT("CAM_BPCI_R1_B", 0, 10, 25, 11),
M4U0_PORT_INIT("CAM_YUVO_R1_B,", 0, 10, 25, 12),
M4U0_PORT_INIT("CAM_UFDI_R2_B", 0, 10, 25, 13),
M4U0_PORT_INIT("CAM_RAWI_R2_B", 0, 10, 25, 14),
M4U0_PORT_INIT("CAM_RAWI_R5_B", 0, 10, 25, 15),
M4U0_PORT_INIT("CAM_CAMSV_0", 0, 10, 25, 16),
M4U0_PORT_INIT("CAM_AAO_R1_A", 0, 10, 25, 17),
M4U0_PORT_INIT("CAM_AFO_R1_A", 0, 10, 25, 18),
M4U0_PORT_INIT("CAM_FLKO_R1_A", 0, 10, 25, 19),
M4U0_PORT_INIT("CAM_LCESO_R1_A", 0, 10, 25, 20),
M4U0_PORT_INIT("CAM_CRZO_R1_A", 0, 10, 25, 21),
M4U0_PORT_INIT("CAM_AAO_R1_B", 0, 10, 25, 22),
M4U0_PORT_INIT("CAM_AFO_R1_B", 0, 10, 25, 23),
M4U0_PORT_INIT("CAM_FLKO_R1_B", 0, 10, 25, 24),
M4U0_PORT_INIT("CAM_LCESO_R1_B", 0, 10, 25, 25),
M4U0_PORT_INIT("CAM_CRZO_R1_B", 0, 10, 25, 26),
M4U0_PORT_INIT("CAM_LTMSO_R1_A", 0, 10, 25, 27),
M4U0_PORT_INIT("CAM_RSSO_R1_A", 0, 10, 25, 28),
M4U0_PORT_INIT("CAM_LTMSO_R1_B", 0, 10, 25, 29),
M4U0_PORT_INIT("CAM_RSSO_R1_B", 0, 10, 25, 30),
/*larb11-CAM-5
*M4U0_PORT_INIT("CAM_IPUO", 0, 11, 3, 0),
*M4U0_PORT_INIT("CAM_IPU2O", 0, 11, 3, 1),
*M4U0_PORT_INIT("CAM_IPU3O", 0, 11, 3, 2),
*M4U0_PORT_INIT("CAM_IPUI", 0, 11, 3, 3),
*M4U0_PORT_INIT("CAM_IPU2I", 0, 11, 3, 4),
*/
M4U0_PORT_INIT("CCU0", 0, 9, 24, 0),
M4U0_PORT_INIT("CCU1", 0, 9, 24, 1),
M4U1_PORT_INIT("VPU", 0, 0, 0, 0),
M4U0_PORT_INIT("UNKNOWN", 0, 0, 0, 0)
};
#endif