kernel_samsung_a34x-permissive/drivers/misc/mediatek/devapc/devapc-mt6885.h
2024-04-28 15:51:13 +02:00

1530 lines
46 KiB
C

/* SPDX-License-Identifier: GPL-2.0 */
/*
* Copyright (C) 2019 MediaTek Inc.
*/
#ifndef __DEVAPC_MT6885_H__
#define __DEVAPC_MT6885_H__
#include "devapc-mtk-multi-ao.h"
/******************************************************************************
* VARIABLE DEFINITION
******************************************************************************/
/* dbg status default setting */
#define PLAT_DBG_UT_DEFAULT false
#define PLAT_DBG_KE_DEFAULT true
#define PLAT_DBG_AEE_DEFAULT true
#define PLAT_DBG_WARN_DEFAULT true
#define PLAT_DBG_DAPC_DEFAULT false
/******************************************************************************
* STRUCTURE DEFINITION
******************************************************************************/
enum DEVAPC_SLAVE_TYPE {
SLAVE_TYPE_INFRA = 0,
SLAVE_TYPE_PERI,
SLAVE_TYPE_PERI2,
SLAVE_TYPE_NUM,
};
enum DEVAPC_VIO_MASK_STA_NUM {
VIO_MASK_STA_NUM_INFRA = 14,
VIO_MASK_STA_NUM_PERI = 12,
VIO_MASK_STA_NUM_PERI2 = 9,
};
enum DEVAPC_PD_OFFSET {
PD_VIO_MASK_OFFSET = 0x0,
PD_VIO_STA_OFFSET = 0x400,
PD_VIO_DBG0_OFFSET = 0x900,
PD_VIO_DBG1_OFFSET = 0x904,
PD_VIO_DBG2_OFFSET = 0x908,
PD_APC_CON_OFFSET = 0xF00,
PD_SHIFT_STA_OFFSET = 0xF10,
PD_SHIFT_SEL_OFFSET = 0xF14,
PD_SHIFT_CON_OFFSET = 0xF20,
};
#define SRAMROM_SLAVE_TYPE SLAVE_TYPE_INFRA /* Infra */
#define MM2ND_SLAVE_TYPE SLAVE_TYPE_PERI /* Peri */
enum OTHER_TYPES_INDEX {
SRAMROM_VIO_INDEX = 419,
CONN_VIO_INDEX = 126, /* starts from 0x18 */
MDP_VIO_INDEX = 352,
DISP2_VIO_INDEX = 353,
MMSYS_VIO_INDEX = 354,
};
enum INFRACFG_MM2ND_VIO_NUM {
INFRACFG_MM_VIO_STA_NUM = 2,
INFRACFG_MDP_VIO_STA_NUM = 8,
INFRACFG_DISP2_VIO_STA_NUM = 2,
};
enum INFRACFG_MM2ND_OFFSET {
INFRACFG_MM_SEC_VIO0_OFFSET = 0xB30,
INFRACFG_MDP_SEC_VIO0_OFFSET = 0xB40,
INFRACFG_DISP2_SEC_VIO0_OFFSET = 0xB70,
};
/* starts from 0x13 */
enum MFG_VIO_INDEX {
MFG_START = 0,
MFG_END = 8,
};
/* starts from 0x14 */
enum MM_VIO_INDEX {
MM_DISP_START = 19,
MM_DISP_END = 34,
MM_MDP_START = 35,
MM_MDP_END = 43,
MM_DISP2_START = 370,
MM_DISP2_END = 409,
MM_SSRAM_VIO_INDEX = 411,
};
/* starts from 0x15 */
enum IMG_VIO_INDEX {
IMG_START = 71,
IMG_END = 114,
};
/* starts from 0x16 */
enum VDEC_VIO_INDEX {
VDEC_START = 44,
VDEC_END = 54,
};
/* starts from 0x17 */
enum VENC_VIO_INDEX {
VENC_START = 55,
VENC_END = 70,
};
/* starts from 0x19 */
enum APU_VIO_INDEX {
APU_START = 9,
APU_END = 14,
APU_SSRAM_VIO_INDEX = 410,
};
/* starts from 0x1A */
enum CAM_VIO_INDEX {
CAM_START = 115,
CAM_END = 287,
CAM_SENINF_START = 119,
CAM_SENINF_END = 126,
CAM_CCU_START = 288,
CAM_CCU_END = 310,
};
/* starts from 0x1B */
enum IPE_VIO_INDEX {
IPE_START = 311,
IPE_END = 322,
};
/* starts from 0x105 ~ 0x108 */
enum TINY_VIO_INDEX {
TINY_START = 39,
TINY_END = 61,
};
/* starts from 0x1F */
enum MDP_VIO_INDEX {
MDP_START = 323,
MDP_END = 369,
};
enum SMI_VIO_INDEX {
SMI_LARB0_VIO_INDEX = 394, /* 0x14118000 */
SMI_LARB1_VIO_INDEX = 395, /* 0x14119000 */
SMI_LARB2_VIO_INDEX = 326, /* 0x1F003000 */
SMI_LARB3_VIO_INDEX = 327, /* 0x1F004000 */
SMI_LARB4_VIO_INDEX = 51, /* 0x1602E000 */
SMI_LARB5_VIO_INDEX = 45, /* 0x1600D000 */
SMI_LARB6_VIO_INDEX = 46, /* 0x1600E000 */
SMI_LARB7_VIO_INDEX = 56, /* 0x17010000 */
SMI_LARB8_VIO_INDEX = 64, /* 0x17810000 */
SMI_LARB9_VIO_INDEX = 90, /* 0x1502E000 */
SMI_LARB10_VIO_INDEX = 91, /* 0x1502F000 */
SMI_LARB11_VIO_INDEX = 112, /* 0x1582E000 */
SMI_LARB12_VIO_INDEX = 113, /* 0x1582F000 */
SMI_LARB13_VIO_INDEX = 116, /* 0x1A001000 */
SMI_LARB14_VIO_INDEX = 117, /* 0x1A002000 */
SMI_LARB15_VIO_INDEX = 118, /* 0x1A003000 */
SMI_LARB16_VIO_INDEX = 130, /* 0x1A00F000 */
SMI_LARB17_VIO_INDEX = 131, /* 0x1A010000 */
SMI_LARB18_VIO_INDEX = 132, /* 0x1A011000 */
SMI_LARB19_VIO_INDEX = 321, /* 0x1B10F000 */
SMI_LARB20_VIO_INDEX = 317, /* 0x1B00F000 */
};
/* starts from 0x2 */
enum MD_VIO_INDEX {
MD_START = 79,
MD_END = 121,
};
enum IOMMU_VIO_INDEX {
IOMMU0_VIO_INDEX = 396, /* 0x1411A000 */
IOMMU1_VIO_INDEX = 362, /* 0x1F027000 */
IOMMU0_SEC_VIO_INDEX = 400, /* 0x1411E000 */
IOMMU1_SEC_VIO_INDEX = 366, /* 0x1F02B000 */
};
enum DEVAPC_MODULE_ADDR {
MFG_START_ADDR = 0x13000000,
MFG_END_ADDR = 0x13FFFFFF,
GCE_START_ADDR = 0x10228000,
GCE_END_ADDR = 0x1022BFFF,
GCE_M2_START_ADDR = 0x10318000,
GCE_M2_END_ADDR = 0x1031BFFF,
TINYSYS_START_ADDR = 0x10500000,
TINYSYS_END_ADDR = 0x108FFFFF,
MD_START_ADDR = 0x20000000,
MD_END_ADDR = 0x2FFFFFFF,
CONN_START_ADDR = 0x18000000,
CONN_END_ADDR = 0x18FFFFFF,
};
enum BUSID_LENGTH {
PERIAXI_MI_BIT_LENGTH = 3,
INFRAAXI_MI_BIT_LENGTH = 13,
};
struct PERIAXI_ID_INFO {
const char *master;
uint8_t bit[PERIAXI_MI_BIT_LENGTH];
};
struct INFRAAXI_ID_INFO {
const char *master;
uint8_t bit[INFRAAXI_MI_BIT_LENGTH];
};
/******************************************************************************
* PLATFORM DEFINATION
******************************************************************************/
/* For Infra VIO_DBG */
#define INFRA_VIO_DBG_MSTID 0xFFFFFFFF
#define INFRA_VIO_DBG_MSTID_START_BIT 0
#define INFRA_VIO_DBG_DMNID 0x0000003F
#define INFRA_VIO_DBG_DMNID_START_BIT 0
#define INFRA_VIO_DBG_W_VIO 0x00000040
#define INFRA_VIO_DBG_W_VIO_START_BIT 6
#define INFRA_VIO_DBG_R_VIO 0x00000080
#define INFRA_VIO_DBG_R_VIO_START_BIT 7
#define INFRA_VIO_ADDR_HIGH 0x00000F00
#define INFRA_VIO_ADDR_HIGH_START_BIT 8
/* For SRAMROM VIO */
#define SRAMROM_SEC_VIO_ID_MASK 0x00FFFF00
#define SRAMROM_SEC_VIO_ID_SHIFT 8
#define SRAMROM_SEC_VIO_DOMAIN_MASK 0x0F000000
#define SRAMROM_SEC_VIO_DOMAIN_SHIFT 24
#define SRAMROM_SEC_VIO_RW_MASK 0x80000000
#define SRAMROM_SEC_VIO_RW_SHIFT 31
/* For MM 2nd VIO */
#define INFRACFG_MM2ND_VIO_DOMAIN_MASK 0x00000030
#define INFRACFG_MM2ND_VIO_DOMAIN_SHIFT 4
#define INFRACFG_MM2ND_VIO_ID_MASK 0x00FFFF00
#define INFRACFG_MM2ND_VIO_ID_SHIFT 8
#define INFRACFG_MM2ND_VIO_RW_MASK 0x01000000
#define INFRACFG_MM2ND_VIO_RW_SHIFT 24
#define SRAM_START_ADDR (0x100000)
static struct mtk_device_info mt6885_devices_infra[] = {
/* sys_idx, ctrl_idx, vio_idx, device, vio_irq */
/* 0 */
{0, 0, 0, "MFG_S_S", true},
{0, 1, 1, "MFG_S_S-1", true},
{0, 2, 2, "MFG_S_S-2", true},
{0, 3, 3, "MFG_S_S-3", true},
{0, 4, 4, "MFG_S_S-4", true},
{0, 5, 5, "MFG_S_S-5", true},
{0, 6, 6, "MFG_S_S-6", true},
{0, 7, 7, "MFG_S_S-7", true},
{0, 8, 8, "MFG_S_S-8", true},
{0, 9, 9, "APU_S_S", true},
/* 10 */
{0, 10, 10, "APU_S_S-1", true},
{0, 11, 11, "APU_S_S-2", true},
{0, 12, 12, "APU_S_S-3", true},
{0, 13, 13, "APU_S_S-4", true},
{0, 14, 14, "APU_S_S-5", true},
{0, 15, 15, "MCUSYS_CFGREG_APB_S", true},
{0, 16, 16, "MCUSYS_CFGREG_APB_S-1", true},
{0, 17, 17, "L3C_S", true},
{0, 18, 18, "L3C_S-1", true},
{0, 19, 410, "APU_SRAM_S", true},
/* 20 */
{0, 20, 411, "MM_SRAM_S", true},
{1, 0, 19, "MM_S_S", true},
{1, 1, 20, "MM_S_S-1", true},
{1, 2, 21, "MM_S_S-2", true},
{1, 3, 22, "MM_S_S-3", true},
{1, 4, 23, "MM_S_S-4", true},
{1, 5, 24, "MM_S_S-5", true},
{1, 6, 25, "MM_S_S-6", true},
{1, 7, 26, "MM_S_S-7", true},
{1, 8, 27, "MM_S_S-8", true},
/* 30 */
{1, 9, 28, "MM_S_S-9", true},
{1, 10, 29, "MM_S_S-10", true},
{1, 11, 30, "MM_S_S-11", true},
{1, 12, 31, "MM_S_S-12", true},
{1, 13, 32, "MM_S_S-13", true},
{1, 14, 33, "MM_S_S-14", true},
{1, 15, 34, "MM_S_S-15", true},
{1, 16, 35, "MM_S_S-16", true},
{1, 17, 36, "MM_S_S-17", true},
{1, 18, 37, "MM_S_S-18", true},
/* 40 */
{1, 19, 38, "MM_S_S-19", true},
{1, 20, 39, "MM_S_S-20", true},
{1, 21, 40, "MM_S_S-21", true},
{1, 22, 41, "MM_S_S-22", true},
{1, 23, 42, "MM_S_S-23", true},
{1, 24, 43, "MM_S_S-24", true},
{1, 25, 44, "MM_S_S-25", true},
{1, 26, 45, "MM_S_S-26", true},
{1, 27, 46, "MM_S_S-27", true},
{1, 28, 47, "MM_S_S-28", true},
/* 50 */
{1, 29, 48, "MM_S_S-29", true},
{1, 30, 49, "MM_S_S-30", true},
{1, 31, 50, "MM_S_S-31", true},
{1, 32, 51, "MM_S_S-32", true},
{1, 33, 52, "MM_S_S-33", true},
{1, 34, 53, "MM_S_S-34", true},
{1, 35, 54, "MM_S_S-35", true},
{1, 36, 55, "MM_S_S-36", true},
{1, 37, 56, "MM_S_S-37", true},
{1, 38, 57, "MM_S_S-38", true},
/* 60 */
{1, 39, 58, "MM_S_S-39", true},
{1, 40, 59, "MM_S_S-40", true},
{1, 41, 60, "MM_S_S-41", true},
{1, 42, 61, "MM_S_S-42", true},
{1, 43, 62, "MM_S_S-43", true},
{1, 44, 63, "MM_S_S-44", true},
{1, 45, 64, "MM_S_S-45", true},
{1, 46, 65, "MM_S_S-46", true},
{1, 47, 66, "MM_S_S-47", true},
{1, 48, 67, "MM_S_S-48", true},
/* 70 */
{1, 49, 68, "MM_S_S-49", true},
{1, 50, 69, "MM_S_S-50", true},
{1, 51, 70, "MM_S_S-51", true},
{1, 52, 71, "MDP_S_S", true},
{1, 53, 72, "MDP_S_S-1", true},
{1, 54, 73, "MDP_S_S-2", true},
{1, 55, 74, "MDP_S_S-3", true},
{1, 56, 75, "MDP_S_S-4", true},
{1, 57, 76, "MDP_S_S-5", true},
{1, 58, 77, "MDP_S_S-6", true},
/* 80 */
{1, 59, 78, "MDP_S_S-7", true},
{1, 60, 79, "MDP_S_S-8", true},
{1, 61, 80, "MDP_S_S-9", true},
{1, 62, 81, "MDP_S_S-10", true},
{1, 63, 82, "MDP_S_S-11", true},
{1, 64, 83, "MDP_S_S-12", true},
{1, 65, 84, "MDP_S_S-13", true},
{1, 66, 85, "MDP_S_S-14", true},
{1, 67, 86, "MDP_S_S-15", true},
{1, 68, 87, "MDP_S_S-16", true},
/* 90 */
{1, 69, 88, "MDP_S_S-17", true},
{1, 70, 89, "MDP_S_S-18", true},
{1, 71, 90, "MDP_S_S-19", true},
{1, 72, 91, "MDP_S_S-20", true},
{1, 73, 92, "MDP_S_S-21", true},
{1, 74, 93, "MDP_S_S-22", true},
{1, 75, 94, "MDP_S_S-23", true},
{1, 76, 95, "MDP_S_S-24", true},
{1, 77, 96, "MDP_S_S-25", true},
{1, 78, 97, "MDP_S_S-26", true},
/* 100 */
{1, 79, 98, "MDP_S_S-27", true},
{1, 80, 99, "MDP_S_S-28", true},
{1, 81, 100, "MDP_S_S-29", true},
{1, 82, 101, "MDP_S_S-30", true},
{1, 83, 102, "MDP_S_S-31", true},
{1, 84, 103, "MDP_S_S-32", true},
{1, 85, 104, "MDP_S_S-33", true},
{1, 86, 105, "MDP_S_S-34", true},
{1, 87, 106, "MDP_S_S-35", true},
{1, 88, 107, "MDP_S_S-36", true},
/* 110 */
{1, 89, 108, "MDP_S_S-37", true},
{1, 90, 109, "MDP_S_S-38", true},
{1, 91, 110, "MDP_S_S-39", true},
{1, 92, 111, "MDP_S_S-40", true},
{1, 93, 112, "MDP_S_S-41", true},
{1, 94, 113, "MDP_S_S-42", true},
{1, 95, 114, "MDP_S_S-43", true},
{1, 96, 115, "MDP_S_S-44", true},
{1, 97, 116, "MDP_S_S-45", true},
{1, 98, 117, "MDP_S_S-46", true},
/* 120 */
{1, 99, 118, "MDP_S_S-47", true},
{1, 100, 119, "MDP_S_S-48", true},
{1, 101, 120, "MDP_S_S-49", true},
{1, 102, 121, "MDP_S_S-50", true},
{1, 103, 122, "MDP_S_S-51", true},
{1, 104, 123, "MDP_S_S-52", true},
{1, 105, 124, "MDP_S_S-53", true},
{1, 106, 125, "MDP_S_S-54", true},
{1, 107, 126, "MDP_S_S-55", true},
{1, 108, 127, "MDP_S_S-56", true},
/* 130 */
{1, 109, 128, "MDP_S_S-57", true},
{1, 110, 129, "MDP_S_S-58", true},
{1, 111, 130, "MDP_S_S-59", true},
{1, 112, 131, "MDP_S_S-60", true},
{1, 113, 132, "MDP_S_S-61", true},
{1, 114, 133, "MDP_S_S-62", true},
{1, 115, 134, "MDP_S_S-63", true},
{1, 116, 135, "MDP_S_S-64", true},
{1, 117, 136, "MDP_S_S-65", true},
{1, 118, 137, "MDP_S_S-66", true},
/* 140 */
{1, 119, 138, "MDP_S_S-67", true},
{1, 120, 139, "MDP_S_S-68", true},
{1, 121, 140, "MDP_S_S-69", true},
{1, 122, 141, "MDP_S_S-70", true},
{1, 123, 142, "MDP_S_S-71", true},
{1, 124, 143, "MDP_S_S-72", true},
{1, 125, 144, "MDP_S_S-73", true},
{1, 126, 145, "MDP_S_S-74", true},
{1, 127, 146, "MDP_S_S-75", true},
{1, 128, 147, "MDP_S_S-76", true},
/* 150 */
{1, 129, 148, "MDP_S_S-77", true},
{1, 130, 149, "MDP_S_S-78", true},
{1, 131, 150, "MDP_S_S-79", true},
{1, 132, 151, "MDP_S_S-80", true},
{1, 133, 152, "MDP_S_S-81", true},
{1, 134, 153, "MDP_S_S-82", true},
{1, 135, 154, "MDP_S_S-83", true},
{1, 136, 155, "MDP_S_S-84", true},
{1, 137, 156, "MDP_S_S-85", true},
{1, 138, 157, "MDP_S_S-86", true},
/* 160 */
{1, 139, 158, "MDP_S_S-87", true},
{1, 140, 159, "MDP_S_S-88", true},
{1, 141, 160, "MDP_S_S-89", true},
{1, 142, 161, "MDP_S_S-90", true},
{1, 143, 162, "MDP_S_S-91", true},
{1, 144, 163, "MDP_S_S-92", true},
{1, 145, 164, "MDP_S_S-93", true},
{1, 146, 165, "MDP_S_S-94", true},
{1, 147, 166, "MDP_S_S-95", true},
{1, 148, 167, "MDP_S_S-96", true},
/* 170 */
{1, 149, 168, "MDP_S_S-97", true},
{1, 150, 169, "MDP_S_S-98", true},
{1, 151, 170, "MDP_S_S-99", true},
{1, 152, 171, "MDP_S_S-100", true},
{1, 153, 172, "MDP_S_S-101", true},
{1, 154, 173, "MDP_S_S-102", true},
{1, 155, 174, "MDP_S_S-103", true},
{1, 156, 175, "MDP_S_S-104", true},
{1, 157, 176, "MDP_S_S-105", true},
{1, 158, 177, "MDP_S_S-106", true},
/* 180 */
{1, 159, 178, "MDP_S_S-107", true},
{1, 160, 179, "MDP_S_S-108", true},
{1, 161, 180, "MDP_S_S-109", true},
{1, 162, 181, "MDP_S_S-110", true},
{1, 163, 182, "MDP_S_S-111", true},
{1, 164, 183, "MDP_S_S-112", true},
{1, 165, 184, "MDP_S_S-113", true},
{1, 166, 185, "MDP_S_S-114", true},
{1, 167, 186, "MDP_S_S-115", true},
{1, 168, 187, "MDP_S_S-116", true},
/* 190 */
{1, 169, 188, "MDP_S_S-117", true},
{1, 170, 189, "MDP_S_S-118", true},
{1, 171, 190, "MDP_S_S-119", true},
{1, 172, 191, "MDP_S_S-120", true},
{1, 173, 192, "MDP_S_S-121", true},
{1, 174, 193, "MDP_S_S-122", true},
{1, 175, 194, "MDP_S_S-123", true},
{1, 176, 195, "MDP_S_S-124", true},
{1, 177, 196, "MDP_S_S-125", true},
{1, 178, 197, "MDP_S_S-126", true},
/* 200 */
{1, 179, 198, "MDP_S_S-127", true},
{1, 180, 199, "MDP_S_S-128", true},
{1, 181, 200, "MDP_S_S-129", true},
{1, 182, 201, "MDP_S_S-130", true},
{1, 183, 202, "MDP_S_S-131", true},
{1, 184, 203, "MDP_S_S-132", true},
{1, 185, 204, "MDP_S_S-133", true},
{1, 186, 205, "MDP_S_S-134", true},
{1, 187, 206, "MDP_S_S-135", true},
{1, 188, 207, "MDP_S_S-136", true},
/* 210 */
{1, 189, 208, "MDP_S_S-137", true},
{1, 190, 209, "MDP_S_S-138", true},
{1, 191, 210, "MDP_S_S-139", true},
{1, 192, 211, "MDP_S_S-140", true},
{1, 193, 212, "MDP_S_S-141", true},
{1, 194, 213, "MDP_S_S-142", true},
{1, 195, 214, "MDP_S_S-143", true},
{1, 196, 215, "MDP_S_S-144", true},
{1, 197, 216, "MDP_S_S-145", true},
{1, 198, 217, "MDP_S_S-146", true},
/* 220 */
{1, 199, 218, "MDP_S_S-147", true},
{1, 200, 219, "MDP_S_S-148", true},
{1, 201, 220, "MDP_S_S-149", true},
{1, 202, 221, "MDP_S_S-150", true},
{1, 203, 222, "MDP_S_S-151", true},
{1, 204, 223, "MDP_S_S-152", true},
{1, 205, 224, "MDP_S_S-153", true},
{1, 206, 225, "MDP_S_S-154", true},
{1, 207, 226, "MDP_S_S-155", true},
{1, 208, 227, "MDP_S_S-156", true},
/* 230 */
{1, 209, 228, "MDP_S_S-157", true},
{1, 210, 229, "MDP_S_S-158", true},
{1, 211, 230, "MDP_S_S-159", true},
{1, 212, 231, "MDP_S_S-160", true},
{1, 213, 232, "MDP_S_S-161", true},
{1, 214, 233, "MDP_S_S-162", true},
{1, 215, 234, "MDP_S_S-163", true},
{1, 216, 235, "MDP_S_S-164", true},
{1, 217, 236, "MDP_S_S-165", true},
{1, 218, 237, "MDP_S_S-166", true},
/* 240 */
{1, 219, 238, "MDP_S_S-167", true},
{1, 220, 239, "MDP_S_S-168", true},
{1, 221, 240, "MDP_S_S-169", true},
{1, 222, 241, "MDP_S_S-170", true},
{1, 223, 242, "MDP_S_S-171", true},
{1, 224, 243, "MDP_S_S-172", true},
{1, 225, 244, "MDP_S_S-173", true},
{1, 226, 245, "MDP_S_S-174", true},
{1, 227, 246, "MDP_S_S-175", true},
{1, 228, 247, "MDP_S_S-176", true},
/* 250 */
{1, 229, 248, "MDP_S_S-177", true},
{1, 230, 249, "MDP_S_S-178", true},
{1, 231, 250, "MDP_S_S-179", true},
{1, 232, 251, "MDP_S_S-180", true},
{1, 233, 252, "MDP_S_S-181", true},
{1, 234, 253, "MDP_S_S-182", true},
{1, 235, 254, "MDP_S_S-183", true},
{1, 236, 255, "MDP_S_S-184", true},
{1, 237, 256, "MDP_S_S-185", true},
{1, 238, 257, "MDP_S_S-186", true},
/* 260 */
{1, 239, 258, "MDP_S_S-187", true},
{1, 240, 259, "MDP_S_S-188", true},
{1, 241, 260, "MDP_S_S-189", true},
{1, 242, 261, "MDP_S_S-190", true},
{1, 243, 262, "MDP_S_S-191", true},
{1, 244, 263, "MDP_S_S-192", true},
{1, 245, 264, "MDP_S_S-193", true},
{1, 246, 265, "MDP_S_S-194", true},
{1, 247, 266, "MDP_S_S-195", true},
{1, 248, 267, "MDP_S_S-196", true},
/* 270 */
{1, 249, 268, "MDP_S_S-197", true},
{1, 250, 269, "MDP_S_S-198", true},
{1, 251, 270, "MDP_S_S-199", true},
{1, 252, 271, "MDP_S_S-200", true},
{1, 253, 272, "MDP_S_S-201", true},
{1, 254, 273, "MDP_S_S-202", true},
{1, 255, 274, "MDP_S_S-203", true},
{2, 0, 275, "MDP_S_S-204", true},
{2, 1, 276, "MDP_S_S-205", true},
{2, 2, 277, "MDP_S_S-206", true},
/* 280 */
{2, 3, 278, "MDP_S_S-207", true},
{2, 4, 279, "MDP_S_S-208", true},
{2, 5, 280, "MDP_S_S-209", true},
{2, 6, 281, "MDP_S_S-210", true},
{2, 7, 282, "MDP_S_S-211", true},
{2, 8, 283, "MDP_S_S-212", true},
{2, 9, 284, "MDP_S_S-213", true},
{2, 10, 285, "MDP_S_S-214", true},
{2, 11, 286, "MDP_S_S-215", true},
{2, 12, 287, "MDP_S_S-216", true},
/* 290 */
{2, 13, 288, "MDP_S_S-217", true},
{2, 14, 289, "MDP_S_S-218", true},
{2, 15, 290, "MDP_S_S-219", true},
{2, 16, 291, "MDP_S_S-220", true},
{2, 17, 292, "MDP_S_S-221", true},
{2, 18, 293, "MDP_S_S-222", true},
{2, 19, 294, "MDP_S_S-223", true},
{2, 20, 295, "MDP_S_S-224", true},
{2, 21, 296, "MDP_S_S-225", true},
{2, 22, 297, "MDP_S_S-226", true},
/* 300 */
{2, 23, 298, "MDP_S_S-227", true},
{2, 24, 299, "MDP_S_S-228", true},
{2, 25, 300, "MDP_S_S-229", true},
{2, 26, 301, "MDP_S_S-230", true},
{2, 27, 302, "MDP_S_S-231", true},
{2, 28, 303, "MDP_S_S-232", true},
{2, 29, 304, "MDP_S_S-233", true},
{2, 30, 305, "MDP_S_S-234", true},
{2, 31, 306, "MDP_S_S-235", true},
{2, 32, 307, "MDP_S_S-236", true},
/* 310 */
{2, 33, 308, "MDP_S_S-237", true},
{2, 34, 309, "MDP_S_S-238", true},
{2, 35, 310, "MDP_S_S-239", true},
{2, 36, 311, "MDP_S_S-240", true},
{2, 37, 312, "MDP_S_S-241", true},
{2, 38, 313, "MDP_S_S-242", true},
{2, 39, 314, "MDP_S_S-243", true},
{2, 40, 315, "MDP_S_S-244", true},
{2, 41, 316, "MDP_S_S-245", true},
{2, 42, 317, "MDP_S_S-246", true},
/* 320 */
{2, 43, 318, "MDP_S_S-247", true},
{2, 44, 319, "MDP_S_S-248", true},
{2, 45, 320, "MDP_S_S-249", true},
{2, 46, 321, "MDP_S_S-250", true},
{2, 47, 322, "MDP_S_S-251", true},
{2, 48, 323, "MDP_S_S-252", true},
{2, 49, 324, "MDP_S_S-253", true},
{2, 50, 325, "MDP_S_S-254", true},
{2, 51, 326, "MDP_S_S-255", true},
{2, 52, 327, "MDP_S_S-256", true},
/* 330 */
{2, 53, 328, "MDP_S_S-257", true},
{2, 54, 329, "MDP_S_S-258", true},
{2, 55, 330, "MDP_S_S-259", true},
{2, 56, 331, "MDP_S_S-260", true},
{2, 57, 332, "MDP_S_S-261", true},
{2, 58, 333, "MDP_S_S-262", true},
{2, 59, 334, "MDP_S_S-263", true},
{2, 60, 335, "MDP_S_S-264", true},
{2, 61, 336, "MDP_S_S-265", true},
{2, 62, 337, "MDP_S_S-266", true},
/* 340 */
{2, 63, 338, "MDP_S_S-267", true},
{2, 64, 339, "MDP_S_S-268", true},
{2, 65, 340, "MDP_S_S-269", true},
{2, 66, 341, "MDP_S_S-270", true},
{2, 67, 342, "MDP_S_S-271", true},
{2, 68, 343, "MDP_S_S-272", true},
{2, 69, 344, "MDP_S_S-273", true},
{2, 70, 345, "MDP_S_S-274", true},
{2, 71, 346, "MDP_S_S-275", true},
{2, 72, 347, "MDP_S_S-276", true},
/* 350 */
{2, 73, 348, "MDP_S_S-277", true},
{2, 74, 349, "MDP_S_S-278", true},
{2, 75, 350, "MDP_S_S-279", true},
{2, 76, 351, "MDP_S_S-280", true},
{2, 77, 352, "MDP_S_S-281", true},
{2, 78, 353, "MDP_S_S-282", true},
{2, 79, 354, "MDP_S_S-283", true},
{2, 80, 355, "MDP_S_S-284", true},
{2, 81, 356, "MDP_S_S-285", true},
{2, 82, 357, "MDP_S_S-286", true},
/* 360 */
{2, 83, 358, "MDP_S_S-287", true},
{2, 84, 359, "MDP_S_S-288", true},
{2, 85, 360, "MDP_S_S-289", true},
{2, 86, 361, "MDP_S_S-290", true},
{2, 87, 362, "MDP_S_S-291", true},
{2, 88, 363, "MDP_S_S-292", true},
{2, 89, 364, "MDP_S_S-293", true},
{2, 90, 365, "MDP_S_S-294", true},
{2, 91, 366, "MDP_S_S-295", true},
{2, 92, 367, "MDP_S_S-296", true},
/* 370 */
{2, 93, 368, "MDP_S_S-297", true},
{2, 94, 369, "MDP_S_S-298", true},
{2, 95, 370, "DISP2_S_S", true},
{2, 96, 371, "DISP2_S_S-1", true},
{2, 97, 372, "DISP2_S_S-2", true},
{2, 98, 373, "DISP2_S_S-3", true},
{2, 99, 374, "DISP2_S_S-4", true},
{2, 100, 375, "DISP2_S_S-5", true},
{2, 101, 376, "DISP2_S_S-6", true},
{2, 102, 377, "DISP2_S_S-7", true},
/* 380 */
{2, 103, 378, "DISP2_S_S-8", true},
{2, 104, 379, "DISP2_S_S-9", true},
{2, 105, 380, "DISP2_S_S-10", true},
{2, 106, 381, "DISP2_S_S-11", true},
{2, 107, 382, "DISP2_S_S-12", true},
{2, 108, 383, "DISP2_S_S-13", true},
{2, 109, 384, "DISP2_S_S-14", true},
{2, 110, 385, "DISP2_S_S-15", true},
{2, 111, 386, "DISP2_S_S-16", true},
{2, 112, 387, "DISP2_S_S-17", true},
/* 390 */
{2, 113, 388, "DISP2_S_S-18", true},
{2, 114, 389, "DISP2_S_S-19", true},
{2, 115, 390, "DISP2_S_S-20", true},
{2, 116, 391, "DISP2_S_S-21", true},
{2, 117, 392, "DISP2_S_S-22", true},
{2, 118, 393, "DISP2_S_S-23", true},
{2, 119, 394, "DISP2_S_S-24", true},
{2, 120, 395, "DISP2_S_S-25", true},
{2, 121, 396, "DISP2_S_S-26", true},
{2, 122, 397, "DISP2_S_S-27", true},
/* 400 */
{2, 123, 398, "DISP2_S_S-28", true},
{2, 124, 399, "DISP2_S_S-29", true},
{2, 125, 400, "DISP2_S_S-30", true},
{2, 126, 401, "DISP2_S_S-31", true},
{2, 127, 402, "DISP2_S_S-32", true},
{2, 128, 403, "DISP2_S_S-33", true},
{2, 129, 404, "DISP2_S_S-34", true},
{2, 130, 405, "DISP2_S_S-35", true},
{2, 131, 406, "DISP2_S_S-36", true},
{2, 132, 407, "DISP2_S_S-37", true},
/* 410 */
{2, 133, 408, "DISP2_S_S-38", true},
{2, 134, 409, "DISP2_S_S-39", true},
{-1, -1, 412, "OOB_way_en", true},
{-1, -1, 413, "OOB_way_en", true},
{-1, -1, 414, "OOB_way_en", true},
{-1, -1, 415, "OOB_way_en", true},
{-1, -1, 416, "OOB_way_en", true},
{-1, -1, 417, "OOB_way_en", true},
{-1, -1, 418, "Decode_error", true},
{-1, -1, 419, "SRAMROM", true},
/* 420 */
{-1, -1, 420, "CQDMA_SECURE", false},
{-1, -1, 421, "reserve", false},
{-1, -1, 422, "reserve", false},
{-1, -1, 423, "DEVICE_APC_INFRA_AO", false},
{-1, -1, 424, "DEVICE_APC_INFRA_PDN", false},
};
static struct mtk_device_info mt6885_devices_peri[] = {
/* sys_idx, ctrl_idx, vio_idx, device, vio_irq */
/* 0 */
{0, 0, 0, "SPM_APB_S", true},
{0, 1, 1, "SPM_APB_S-1", true},
{0, 2, 2, "SPM_APB_S-2", true},
{0, 3, 3, "SPM_APB_S-3", true},
{0, 4, 4, "SPM_APB_S-4", true},
{0, 5, 5, "APMIXEDSYS_APB_S", true},
{0, 6, 6, "APMIXEDSYS_APB_S-1", true},
{0, 7, 7, "TOPCKGEN_APB_S", true},
{0, 8, 8, "INFRACFG_AO_APB_S", true},
{0, 9, 9, "INFRACFG_AO_MEM_APB_S", true},
/* 10 */
{0, 10, 10, "PERICFG_AO_APB_S", true},
{0, 11, 11, "GPIO_APB_S", true},
{0, 12, 13, "TOPRGU_APB_S", true},
{0, 13, 14, "RESERVED_APB_S", true},
{0, 14, 15, "DEVICE_APC_INFRA_AO_APB_S", true},
{0, 15, 16, "BCRM_INFRA_AO_APB_S", true},
{0, 16, 17, "DEBUG_CTRL_INFRA_AO_APB_S", true},
{0, 17, 18, "DEVICE_APC_PERI_AO_APB_S", true},
{0, 18, 19, "BCRM_PERI_AO_APB_S", true},
{0, 19, 20, "DEBUG_CTRL_PERI_AO_APB_S", true},
/* 20 */
{0, 20, 21, "AP_CIRQ_EINT_APB_S", true},
{0, 21, 23, "PMIC_WRAP_APB_S", true},
{0, 22, 24, "DEVICE_APC_AO_MM_APB_S", true},
{0, 23, 25, "KP_APB_S", true},
{0, 24, 26, "TOP_MISC_APB_S", true},
{0, 25, 27, "DVFSRC_APB_S", true},
{0, 26, 28, "MBIST_AO_APB_S", true},
{0, 27, 29, "DPMAIF_AO_APB_S", true},
{0, 28, 30, "DEVICE_MPU_AO_APB_S", true},
{0, 29, 31, "SYS_TIMER_APB_S", true},
/* 30 */
{0, 30, 32, "MODEM_TEMP_SHARE_APB_S", true},
{0, 31, 33, "DEVICE_APC_AO_MD_APB_S", true},
{0, 32, 34, "PMIF1_APB_S", true},
{0, 33, 35, "PMICSPI_MST_APB_S", true},
{0, 34, 36, "TIA_APB_S", true},
{0, 35, 37, "TOPCKGEN_INFRA_CFG_APB_S", true},
{0, 36, 38, "DRM_DEBUG_TOP_APB_S", true},
{0, 37, 62, "PWR_MD32_S", true},
{0, 38, 63, "PWR_MD32_S-1", true},
{0, 39, 64, "PWR_MD32_S-2", true},
/* 40 */
{0, 40, 65, "PWR_MD32_S-3", true},
{0, 41, 66, "PWR_MD32_S-4", true},
{0, 42, 67, "PWR_MD32_S-5", true},
{0, 43, 68, "PWR_MD32_S-6", true},
{0, 44, 69, "PWR_MD32_S-7", true},
{0, 45, 70, "PWR_MD32_S-8", true},
{0, 46, 71, "PWR_MD32_S-9", true},
{0, 47, 72, "PWR_MD32_S-10", true},
{0, 48, 73, "AUDIO_S", true},
{0, 49, 74, "AUDIO_S-1", true},
/* 50 */
{0, 50, 75, "UFS_S", true},
{0, 51, 76, "UFS_S-1", true},
{0, 52, 77, "UFS_S-2", true},
{0, 53, 78, "UFS_S-3", true},
{0, 54, 122, "SSUSB_S", true},
{0, 55, 123, "SSUSB_S-1", true},
{0, 56, 124, "SSUSB_S-2", true},
{0, 57, 125, "DEBUGSYS_APB_S", true},
{0, 58, 127, "DRAMC_MD32_S0_APB_S", true},
{0, 59, 128, "DRAMC_MD32_S0_APB_S-1", true},
/* 60 */
{0, 60, 129, "DRAMC_MD32_S1_APB_S", true},
{0, 61, 130, "DRAMC_MD32_S1_APB_S-1", true},
{0, 62, 136, "MSDC0_S", true},
{0, 63, 137, "MSDC1_S", true},
{0, 64, 143, "APDMA_APB_S", true},
{0, 65, 144, "AUXADC_APB_S", true},
{0, 66, 145, "UART0_APB_S", true},
{0, 67, 146, "UART1_APB_S", true},
{0, 68, 147, "UART2_APB_S", true},
{0, 69, 148, "PWM_APB_S", true},
/* 70 */
{0, 70, 149, "SPI0_APB_S", true},
{0, 71, 150, "PTP_THERM_CTRL_APB_S", true},
{0, 72, 151, "BTIF_APB_S", true},
{0, 73, 152, "DISP_PWM_APB_S", true},
{0, 74, 153, "SPI1_APB_S", true},
{0, 75, 154, "SPI2_APB_S", true},
{0, 76, 155, "SPI3_APB_S", true},
{0, 77, 156, "IIC_P2P_REMAP_APB0_S", true},
{0, 78, 157, "IIC_P2P_REMAP_APB1_S", true},
{0, 79, 158, "SPI4_APB_S", true},
/* 80 */
{0, 80, 159, "SPI5_APB_S", true},
{0, 81, 160, "IIC_P2P_REMAP_APB2_S", true},
{0, 82, 161, "IIC_P2P_REMAP_APB3_S", true},
{0, 83, 162, "PERI_BUS_TRACE_APB_S", true},
{0, 84, 163, "SPI6_APB_S", true},
{0, 85, 164, "SPI7_APB_S", true},
{0, 86, 165, "BCRM_PERI_PDN_APB_S", true},
{0, 87, 166, "BCRM_PERI_PDN2_APB_S", true},
{0, 88, 167, "DEVICE_APC_PERI_PDN_APB_S", true},
{0, 89, 168, "DEVICE_APC_PERI_PDN2_APB_S", true},
/* 90 */
{0, 90, 169, "PTP_THERM_CTRL2_APB_S", true},
{0, 91, 170, "IIC_P2P_REMAP_APB4_S", true},
{0, 92, 171, "IIC_P2P_REMAP_APB5_S", true},
{0, 93, 172, "DEBUG_TRACKER_APB2_S", true},
{0, 94, 173, "DRAMC_CH0_TOP0_APB_S", true},
{0, 95, 174, "DRAMC_CH0_TOP1_APB_S", true},
{0, 96, 175, "DRAMC_CH0_TOP2_APB_S", true},
{0, 97, 176, "DRAMC_CH0_TOP3_APB_S", true},
{0, 98, 177, "DRAMC_CH0_TOP4_APB_S", true},
{0, 99, 178, "DRAMC_CH0_TOP5_APB_S", true},
/* 100 */
{0, 100, 179, "DRAMC_CH0_TOP6_APB_S", true},
{0, 101, 180, "DRAMC_CH1_TOP0_APB_S", true},
{0, 102, 181, "DRAMC_CH1_TOP1_APB_S", true},
{0, 103, 182, "DRAMC_CH1_TOP2_APB_S", true},
{0, 104, 183, "DRAMC_CH1_TOP3_APB_S", true},
{0, 105, 184, "DRAMC_CH1_TOP4_APB_S", true},
{0, 106, 185, "DRAMC_CH1_TOP5_APB_S", true},
{0, 107, 186, "DRAMC_CH1_TOP6_APB_S", true},
{0, 108, 187, "DRAMC_CH2_TOP0_APB_S", true},
{0, 109, 188, "DRAMC_CH2_TOP1_APB_S", true},
/* 110 */
{0, 110, 189, "DRAMC_CH2_TOP2_APB_S", true},
{0, 111, 190, "DRAMC_CH2_TOP3_APB_S", true},
{0, 112, 191, "DRAMC_CH2_TOP4_APB_S", true},
{0, 113, 192, "DRAMC_CH2_TOP5_APB_S", true},
{0, 114, 193, "DRAMC_CH2_TOP6_APB_S", true},
{0, 115, 194, "DRAMC_CH3_TOP0_APB_S", true},
{0, 116, 195, "DRAMC_CH3_TOP1_APB_S", true},
{0, 117, 196, "DRAMC_CH3_TOP2_APB_S", true},
{0, 118, 197, "DRAMC_CH3_TOP3_APB_S", true},
{0, 119, 198, "DRAMC_CH3_TOP4_APB_S", true},
/* 120 */
{0, 120, 199, "DRAMC_CH3_TOP5_APB_S", true},
{0, 121, 200, "DRAMC_CH3_TOP6_APB_S", true},
{0, 122, 203, "CCIF2_AP_APB_S", true},
{0, 123, 204, "CCIF2_MD_APB_S", true},
{0, 124, 205, "CCIF3_AP_APB_S", true},
{0, 125, 206, "CCIF3_MD_APB_S", true},
{0, 126, 207, "CCIF4_AP_APB_S", true},
{0, 127, 208, "CCIF4_MD_APB_S", true},
{0, 128, 209, "INFRA_BUS_TRACE_APB_S", true},
{0, 129, 210, "CCIF5_AP_APB_S", true},
/* 130 */
{0, 130, 211, "CCIF5_MD_APB_S", true},
{0, 131, 212, "SSC_INFRA_APB0_S", true},
{0, 132, 213, "SSC_INFRA_APB1_S", true},
{0, 133, 214, "SSC_INFRA_APB2_S", true},
{0, 134, 215, "DEVICE_MPU_ACP_APB_S", true},
{1, 0, 39, "TINSYS_S", true},
{1, 1, 40, "TINSYS_S-1", true},
{1, 2, 41, "TINSYS_S-2", true},
{1, 3, 42, "TINSYS_S-3", true},
{1, 4, 43, "TINSYS_S-4", true},
/* 140 */
{1, 5, 44, "TINSYS_S-5", true},
{1, 6, 45, "TINSYS_S-6", true},
{1, 7, 46, "TINSYS_S-7", true},
{1, 8, 47, "TINSYS_S-8", true},
{1, 9, 48, "TINSYS_S-9", true},
{1, 10, 49, "TINSYS_S-10", true},
{1, 11, 50, "TINSYS_S-11", true},
{1, 12, 51, "TINSYS_S-12", true},
{1, 13, 52, "TINSYS_S-13", true},
{1, 14, 53, "TINSYS_S-14", true},
/* 150 */
{1, 15, 54, "TINSYS_S-15", true},
{1, 16, 55, "TINSYS_S-16", true},
{1, 17, 56, "TINSYS_S-17", true},
{1, 18, 57, "TINSYS_S-18", true},
{1, 19, 58, "TINSYS_S-19", true},
{1, 20, 59, "TINSYS_S-20", true},
{1, 21, 60, "TINSYS_S-21", true},
{1, 22, 61, "TINSYS_S-22", true},
{1, 23, 79, "MD_AP_S", true},
{1, 24, 80, "MD_AP_S-1", true},
/* 160 */
{1, 25, 81, "MD_AP_S-2", true},
{1, 26, 82, "MD_AP_S-3", true},
{1, 27, 83, "MD_AP_S-4", true},
{1, 28, 84, "MD_AP_S-5", true},
{1, 29, 85, "MD_AP_S-6", true},
{1, 30, 86, "MD_AP_S-7", true},
{1, 31, 87, "MD_AP_S-8", true},
{1, 32, 88, "MD_AP_S-9", true},
{1, 33, 89, "MD_AP_S-10", true},
{1, 34, 90, "MD_AP_S-11", true},
/* 170 */
{1, 35, 91, "MD_AP_S-12", true},
{1, 36, 92, "MD_AP_S-13", true},
{1, 37, 93, "MD_AP_S-14", true},
{1, 38, 94, "MD_AP_S-15", true},
{1, 39, 95, "MD_AP_S-16", true},
{1, 40, 96, "MD_AP_S-17", true},
{1, 41, 97, "MD_AP_S-18", true},
{1, 42, 98, "MD_AP_S-19", true},
{1, 43, 99, "MD_AP_S-20", true},
{1, 44, 100, "MD_AP_S-21", true},
/* 180 */
{1, 45, 101, "MD_AP_S-22", true},
{1, 46, 102, "MD_AP_S-23", true},
{1, 47, 103, "MD_AP_S-24", true},
{1, 48, 104, "MD_AP_S-25", true},
{1, 49, 105, "MD_AP_S-26", true},
{1, 50, 106, "MD_AP_S-27", true},
{1, 51, 107, "MD_AP_S-28", true},
{1, 52, 108, "MD_AP_S-29", true},
{1, 53, 109, "MD_AP_S-30", true},
{1, 54, 110, "MD_AP_S-31", true},
/* 190 */
{1, 55, 111, "MD_AP_S-32", true},
{1, 56, 112, "MD_AP_S-33", true},
{1, 57, 113, "MD_AP_S-34", true},
{1, 58, 114, "MD_AP_S-35", true},
{1, 59, 115, "MD_AP_S-36", true},
{1, 60, 116, "MD_AP_S-37", true},
{1, 61, 117, "MD_AP_S-38", true},
{1, 62, 118, "MD_AP_S-39", true},
{1, 63, 119, "MD_AP_S-40", true},
{1, 64, 120, "MD_AP_S-41", true},
/* 200 */
{1, 65, 121, "MD_AP_S-42", true},
{2, 0, 126, "CONN_S", true},
{-1, -1, 216, "OOB_way_en", true},
{-1, -1, 217, "OOB_way_en", true},
{-1, -1, 218, "OOB_way_en", true},
{-1, -1, 219, "OOB_way_en", true},
{-1, -1, 220, "OOB_way_en", true},
{-1, -1, 221, "OOB_way_en", true},
{-1, -1, 222, "OOB_way_en", true},
{-1, -1, 223, "OOB_way_en", true},
/* 210 */
{-1, -1, 224, "OOB_way_en", true},
{-1, -1, 225, "OOB_way_en", true},
{-1, -1, 226, "OOB_way_en", true},
{-1, -1, 227, "OOB_way_en", true},
{-1, -1, 228, "OOB_way_en", true},
{-1, -1, 229, "OOB_way_en", true},
{-1, -1, 230, "OOB_way_en", true},
{-1, -1, 231, "OOB_way_en", true},
{-1, -1, 232, "OOB_way_en", true},
{-1, -1, 233, "OOB_way_en", true},
/* 220 */
{-1, -1, 234, "OOB_way_en", true},
{-1, -1, 235, "OOB_way_en", true},
{-1, -1, 236, "OOB_way_en", true},
{-1, -1, 237, "OOB_way_en", true},
{-1, -1, 238, "OOB_way_en", true},
{-1, -1, 239, "OOB_way_en", true},
{-1, -1, 240, "OOB_way_en", true},
{-1, -1, 241, "OOB_way_en", true},
{-1, -1, 242, "OOB_way_en", true},
{-1, -1, 243, "OOB_way_en", true},
/* 230 */
{-1, -1, 244, "OOB_way_en", true},
{-1, -1, 245, "OOB_way_en", true},
{-1, -1, 246, "OOB_way_en", true},
{-1, -1, 247, "OOB_way_en", true},
{-1, -1, 248, "OOB_way_en", true},
{-1, -1, 249, "OOB_way_en", true},
{-1, -1, 250, "OOB_way_en", true},
{-1, -1, 251, "OOB_way_en", true},
{-1, -1, 252, "OOB_way_en", true},
{-1, -1, 253, "OOB_way_en", true},
/* 240 */
{-1, -1, 254, "OOB_way_en", true},
{-1, -1, 255, "OOB_way_en", true},
{-1, -1, 256, "OOB_way_en", true},
{-1, -1, 257, "OOB_way_en", true},
{-1, -1, 258, "OOB_way_en", true},
{-1, -1, 259, "OOB_way_en", true},
{-1, -1, 260, "OOB_way_en", true},
{-1, -1, 261, "OOB_way_en", true},
{-1, -1, 262, "OOB_way_en", true},
{-1, -1, 263, "OOB_way_en", true},
/* 250 */
{-1, -1, 264, "OOB_way_en", true},
{-1, -1, 265, "OOB_way_en", true},
{-1, -1, 266, "OOB_way_en", true},
{-1, -1, 267, "OOB_way_en", true},
{-1, -1, 268, "OOB_way_en", true},
{-1, -1, 269, "OOB_way_en", true},
{-1, -1, 270, "OOB_way_en", true},
{-1, -1, 271, "OOB_way_en", true},
{-1, -1, 272, "OOB_way_en", true},
{-1, -1, 273, "OOB_way_en", true},
/* 260 */
{-1, -1, 274, "OOB_way_en", true},
{-1, -1, 275, "OOB_way_en", true},
{-1, -1, 276, "OOB_way_en", true},
{-1, -1, 277, "OOB_way_en", true},
{-1, -1, 278, "OOB_way_en", true},
{-1, -1, 279, "OOB_way_en", true},
{-1, -1, 280, "OOB_way_en", true},
{-1, -1, 281, "OOB_way_en", true},
{-1, -1, 282, "OOB_way_en", true},
{-1, -1, 283, "OOB_way_en", true},
/* 270 */
{-1, -1, 284, "OOB_way_en", true},
{-1, -1, 285, "OOB_way_en", true},
{-1, -1, 286, "OOB_way_en", true},
{-1, -1, 287, "OOB_way_en", true},
{-1, -1, 288, "OOB_way_en", true},
{-1, -1, 289, "OOB_way_en", true},
{-1, -1, 290, "OOB_way_en", true},
{-1, -1, 291, "OOB_way_en", true},
{-1, -1, 292, "OOB_way_en", true},
{-1, -1, 293, "OOB_way_en", true},
/* 280 */
{-1, -1, 294, "OOB_way_en", true},
{-1, -1, 295, "OOB_way_en", true},
{-1, -1, 296, "OOB_way_en", true},
{-1, -1, 297, "OOB_way_en", true},
{-1, -1, 298, "OOB_way_en", true},
{-1, -1, 299, "OOB_way_en", true},
{-1, -1, 300, "OOB_way_en", true},
{-1, -1, 301, "OOB_way_en", true},
{-1, -1, 302, "OOB_way_en", true},
{-1, -1, 303, "OOB_way_en", true},
/* 290 */
{-1, -1, 304, "OOB_way_en", true},
{-1, -1, 305, "OOB_way_en", true},
{-1, -1, 306, "OOB_way_en", true},
{-1, -1, 307, "OOB_way_en", true},
{-1, -1, 308, "OOB_way_en", true},
{-1, -1, 309, "OOB_way_en", true},
{-1, -1, 310, "OOB_way_en", true},
{-1, -1, 311, "OOB_way_en", true},
{-1, -1, 312, "OOB_way_en", true},
{-1, -1, 313, "OOB_way_en", true},
/* 300 */
{-1, -1, 314, "OOB_way_en", true},
{-1, -1, 315, "OOB_way_en", true},
{-1, -1, 316, "OOB_way_en", true},
{-1, -1, 317, "OOB_way_en", true},
{-1, -1, 318, "OOB_way_en", true},
{-1, -1, 319, "OOB_way_en", true},
{-1, -1, 320, "OOB_way_en", true},
{-1, -1, 321, "OOB_way_en", true},
{-1, -1, 322, "OOB_way_en", true},
{-1, -1, 323, "OOB_way_en", true},
/* 310 */
{-1, -1, 324, "OOB_way_en", true},
{-1, -1, 325, "OOB_way_en", true},
{-1, -1, 326, "OOB_way_en", true},
{-1, -1, 327, "OOB_way_en", true},
{-1, -1, 328, "OOB_way_en", true},
{-1, -1, 329, "OOB_way_en", true},
{-1, -1, 330, "OOB_way_en", true},
{-1, -1, 331, "OOB_way_en", true},
{-1, -1, 332, "OOB_way_en", true},
{-1, -1, 333, "OOB_way_en", true},
/* 320 */
{-1, -1, 334, "OOB_way_en", true},
{-1, -1, 335, "OOB_way_en", true},
{-1, -1, 336, "OOB_way_en", true},
{-1, -1, 337, "OOB_way_en", true},
{-1, -1, 338, "OOB_way_en", true},
{-1, -1, 339, "OOB_way_en", true},
{-1, -1, 340, "OOB_way_en", true},
{-1, -1, 341, "OOB_way_en", true},
{-1, -1, 342, "OOB_way_en", true},
{-1, -1, 343, "OOB_way_en", true},
/* 330 */
{-1, -1, 344, "OOB_way_en", true},
{-1, -1, 345, "OOB_way_en", true},
{-1, -1, 346, "Decode_error", true},
{-1, -1, 347, "Decode_error", true},
{-1, -1, 348, "Decode_error", true},
{-1, -1, 349, "Decode_error", true},
{-1, -1, 350, "Decode_error", true},
{-1, -1, 351, "Decode_error", true},
{-1, -1, 352, "MDP_MALI", true},
{-1, -1, 353, "DISP2_MALI", true},
/* 340 */
{-1, -1, 354, "MMSYS_MALI", true},
{-1, -1, 355, "PMIC_WRAP", false},
{-1, -1, 356, "PMIF1", false},
{-1, -1, 357, "AP_DMA", false},
{-1, -1, 358, "DISP_PWM", false},
{-1, -1, 359, "IMP_IIC_WRAP", false},
{-1, -1, 360, "DEVICE_APC_PERI_AO", false},
{-1, -1, 361, "DEVICE_APC_PERI_PDN", false},
{-1, -1, 12, "RESERVED", false},
{-1, -1, 22, "RESERVED", false},
/* 350 */
{-1, -1, 131, "RESERVED", false},
{-1, -1, 132, "RESERVED", false},
{-1, -1, 133, "RESERVED", false},
{-1, -1, 134, "RESERVED", false},
{-1, -1, 135, "RESERVED", false},
{-1, -1, 138, "RESERVED", false},
{-1, -1, 139, "RESERVED", false},
{-1, -1, 140, "RESERVED", false},
{-1, -1, 141, "RESERVED", false},
{-1, -1, 142, "RESERVED", false},
/* 360 */
{-1, -1, 201, "RESERVED", false},
{-1, -1, 202, "RESERVED", false},
};
static struct mtk_device_info mt6885_devices_peri2[] = {
/* sys_idx, ctrl_idx, vio_idx, device, vio_irq */
/* 0 */
{0, 0, 0, "EFUSE_DEBUG_AO_APB_S", true},
{0, 1, 1, "APXGPT_APB_S", true},
{0, 2, 2, "SEJ_APB_S", true},
{0, 3, 3, "AES_TOP0_APB_S", true},
{0, 4, 4, "SECURITY_AO_APB_S", true},
{0, 5, 5, "DEVICE_APC_PERI_AO2_APB_S", true},
{0, 6, 6, "BCRM_PERI_AO2_APB_S", true},
{0, 7, 7, "DEBUG_CTRL_PERI_AO2_APB_S", true},
{0, 8, 8, "SPMI_MST_APB_S", true},
{0, 9, 9, "MCUPM_APB_S", true},
/* 10 */
{0, 10, 10, "MCUPM_APB_S-1", true},
{0, 11, 11, "MCUPM_APB_S-2", true},
{0, 12, 12, "MCUPM_APB_S-3", true},
{0, 13, 13, "GCE_APB_S", true},
{0, 14, 14, "GCE_APB_S-1", true},
{0, 15, 15, "GCE_APB_S-2", true},
{0, 16, 16, "GCE_APB_S-3", true},
{0, 17, 17, "DPMAIF_PDN_APB_S", true},
{0, 18, 18, "DPMAIF_PDN_APB_S-1", true},
{0, 19, 19, "DPMAIF_PDN_APB_S-2", true},
/* 20 */
{0, 20, 20, "DPMAIF_PDN_APB_S-3", true},
{0, 21, 21, "GCE_M2_APB_S", true},
{0, 22, 22, "GCE_M2_APB_S-1", true},
{0, 23, 23, "GCE_M2_APB_S-2", true},
{0, 24, 24, "GCE_M2_APB_S-3", true},
{0, 25, 25, "BND_EAST_APB0_S", true},
{0, 26, 26, "BND_EAST_APB1_S", true},
{0, 27, 27, "BND_EAST_APB2_S", true},
{0, 28, 28, "BND_EAST_APB3_S", true},
{0, 29, 29, "BND_EAST_APB4_S", true},
/* 30 */
{0, 30, 30, "BND_EAST_APB5_S", true},
{0, 31, 31, "BND_EAST_APB6_S", true},
{0, 32, 32, "BND_EAST_APB7_S", true},
{0, 33, 33, "BND_EAST_APB8_S", true},
{0, 34, 34, "BND_EAST_APB9_S", true},
{0, 35, 35, "BND_EAST_APB10_S", true},
{0, 36, 36, "BND_EAST_APB11_S", true},
{0, 37, 37, "BND_EAST_APB12_S", true},
{0, 38, 38, "BND_EAST_APB13_S", true},
{0, 39, 39, "BND_EAST_APB14_S", true},
/* 40 */
{0, 40, 40, "BND_EAST_APB15_S", true},
{0, 41, 41, "BND_WEST_APB0_S", true},
{0, 42, 42, "BND_WEST_APB1_S", true},
{0, 43, 43, "BND_WEST_APB2_S", true},
{0, 44, 44, "BND_WEST_APB3_S", true},
{0, 45, 45, "BND_WEST_APB4_S", true},
{0, 46, 46, "BND_WEST_APB5_S", true},
{0, 47, 47, "BND_WEST_APB6_S", true},
{0, 48, 48, "BND_WEST_APB7_S", true},
{0, 49, 49, "BND_NORTH_APB0_S", true},
/* 50 */
{0, 50, 50, "BND_NORTH_APB1_S", true},
{0, 51, 51, "BND_NORTH_APB2_S", true},
{0, 52, 52, "BND_NORTH_APB3_S", true},
{0, 53, 53, "BND_NORTH_APB4_S", true},
{0, 54, 54, "BND_NORTH_APB5_S", true},
{0, 55, 55, "BND_NORTH_APB6_S", true},
{0, 56, 56, "BND_NORTH_APB7_S", true},
{0, 57, 57, "BND_NORTH_APB8_S", true},
{0, 58, 58, "BND_NORTH_APB9_S", true},
{0, 59, 59, "BND_NORTH_APB10_S", true},
/* 60 */
{0, 60, 60, "BND_NORTH_APB11_S", true},
{0, 61, 61, "BND_NORTH_APB12_S", true},
{0, 62, 62, "BND_NORTH_APB13_S", true},
{0, 63, 63, "BND_NORTH_APB14_S", true},
{0, 64, 64, "BND_NORTH_APB15_S", true},
{0, 65, 65, "BND_SOUTH_APB0_S", true},
{0, 66, 66, "BND_SOUTH_APB1_S", true},
{0, 67, 67, "BND_SOUTH_APB2_S", true},
{0, 68, 68, "BND_SOUTH_APB3_S", true},
{0, 69, 69, "BND_SOUTH_APB4_S", true},
/* 70 */
{0, 70, 70, "BND_SOUTH_APB5_S", true},
{0, 71, 71, "BND_SOUTH_APB6_S", true},
{0, 72, 72, "BND_SOUTH_APB7_S", true},
{0, 73, 73, "BND_SOUTH_APB8_S", true},
{0, 74, 74, "BND_SOUTH_APB9_S", true},
{0, 75, 75, "BND_SOUTH_APB10_S", true},
{0, 76, 76, "BND_SOUTH_APB11_S", true},
{0, 77, 77, "BND_SOUTH_APB12_S", true},
{0, 78, 78, "BND_SOUTH_APB13_S", true},
{0, 79, 79, "BND_SOUTH_APB14_S", true},
/* 80 */
{0, 80, 80, "BND_SOUTH_APB15_S", true},
{0, 81, 81, "BND_EAST_NORTH_APB0_S", true},
{0, 82, 82, "BND_EAST_NORTH_APB1_S", true},
{0, 83, 83, "BND_EAST_NORTH_APB2_S", true},
{0, 84, 84, "BND_EAST_NORTH_APB3_S", true},
{0, 85, 85, "BND_EAST_NORTH_APB4_S", true},
{0, 86, 86, "BND_EAST_NORTH_APB5_S", true},
{0, 87, 87, "BND_EAST_NORTH_APB6_S", true},
{0, 88, 88, "BND_EAST_NORTH_APB7_S", true},
{0, 89, 89, "SYS_CIRQ_APB_S", true},
/* 90 */
{0, 90, 90, "EFUSE_DEBUG_PDN_APB_S", true},
{0, 91, 91, "DEVICE_APC_INFRA_PDN_APB_S", true},
{0, 92, 92, "DEBUG_TRACKER_APB_S", true},
{0, 93, 93, "CCIF0_AP_APB_S", true},
{0, 94, 94, "CCIF0_MD_APB_S", true},
{0, 95, 95, "CCIF1_AP_APB_S", true},
{0, 96, 96, "CCIF1_MD_APB_S", true},
{0, 97, 97, "MBIST_PDN_APB_S", true},
{0, 98, 98, "INFRACFG_PDN_APB_S", true},
{0, 99, 99, "TRNG_APB_S", true},
/* 100 */
{0, 100, 100, "DX_CC_APB_S", true},
{0, 101, 101, "CQ_DMA_APB_S", true},
{0, 102, 102, "SRAMROM_APB_S", true},
{0, 103, 104, "INFRACFG_MEM_APB_S", true},
{0, 104, 105, "RESERVED_DVFS_PROC_APB_S", true},
{0, 105, 108, "SYS_CIRQ1_APB_S", true},
{0, 106, 109, "SYS_CIRQ2_APB_S", true},
{0, 107, 110, "DEBUG_TRACKER_APB1_S", true},
{0, 108, 112, "EMI_APB_S", true},
{0, 109, 113, "EMI_MPU_APB_S", true},
/* 110 */
{0, 110, 114, "DEVICE_MPU_PDN_APB_S", true},
{0, 111, 115, "EMI_SUB_INFRA_APB_S", true},
{0, 112, 116, "EMI_MPU_SUB_INFRA_APB_S", true},
{0, 113, 117, "DEVICE_MPU_PDN_SUB_INFRA_APB_S", true},
{0, 114, 118, "MBIST_PDN_SUB_INFRA_APB_S", true},
{0, 115, 119, "INFRACFG_MEM_SUB_INFRA_APB_S", true},
{0, 116, 120, "PERI_FAST_M_APB_S", true},
{0, 117, 121, "PERI_SLOW_M_APB_S", true},
{0, 118, 122, "BCRM_SUB_INFRA_AO_APB_S", true},
{0, 119, 123, "DEBUG_CTRL_SUB_INFRA_AO_APB_S", true},
/* 120 */
{0, 120, 124, "BCRM_INFRA_PDN_APB_S", true},
{0, 121, 125, "BCRM_SUB_INFRA_PDN_APB_S", true},
{0, 122, 126, "SSC_SUB_INFRA_APB0_S", true},
{0, 123, 127, "SSC_SUB_INFRA_APB1_S", true},
{0, 124, 128, "SSC_SUB_INFRA_APB2_S", true},
{0, 125, 129, "INFRACFG_AO_MEM_SUB_INFRA_APB_S", true},
{-1, -1, 130, "OOB_way_en", true},
{-1, -1, 131, "OOB_way_en", true},
{-1, -1, 132, "OOB_way_en", true},
{-1, -1, 133, "OOB_way_en", true},
/* 130 */
{-1, -1, 134, "OOB_way_en", true},
{-1, -1, 135, "OOB_way_en", true},
{-1, -1, 136, "OOB_way_en", true},
{-1, -1, 137, "OOB_way_en", true},
{-1, -1, 138, "OOB_way_en", true},
{-1, -1, 139, "OOB_way_en", true},
{-1, -1, 140, "OOB_way_en", true},
{-1, -1, 141, "OOB_way_en", true},
{-1, -1, 142, "OOB_way_en", true},
{-1, -1, 143, "OOB_way_en", true},
/* 140 */
{-1, -1, 144, "OOB_way_en", true},
{-1, -1, 145, "OOB_way_en", true},
{-1, -1, 146, "OOB_way_en", true},
{-1, -1, 147, "OOB_way_en", true},
{-1, -1, 148, "OOB_way_en", true},
{-1, -1, 149, "OOB_way_en", true},
{-1, -1, 150, "OOB_way_en", true},
{-1, -1, 151, "OOB_way_en", true},
{-1, -1, 152, "OOB_way_en", true},
{-1, -1, 153, "OOB_way_en", true},
/* 150 */
{-1, -1, 154, "OOB_way_en", true},
{-1, -1, 155, "OOB_way_en", true},
{-1, -1, 156, "OOB_way_en", true},
{-1, -1, 157, "OOB_way_en", true},
{-1, -1, 158, "OOB_way_en", true},
{-1, -1, 159, "OOB_way_en", true},
{-1, -1, 160, "OOB_way_en", true},
{-1, -1, 161, "OOB_way_en", true},
{-1, -1, 162, "OOB_way_en", true},
{-1, -1, 163, "OOB_way_en", true},
/* 160 */
{-1, -1, 164, "OOB_way_en", true},
{-1, -1, 165, "OOB_way_en", true},
{-1, -1, 166, "OOB_way_en", true},
{-1, -1, 167, "OOB_way_en", true},
{-1, -1, 168, "OOB_way_en", true},
{-1, -1, 169, "OOB_way_en", true},
{-1, -1, 170, "OOB_way_en", true},
{-1, -1, 171, "OOB_way_en", true},
{-1, -1, 172, "OOB_way_en", true},
{-1, -1, 173, "OOB_way_en", true},
/* 170 */
{-1, -1, 174, "OOB_way_en", true},
{-1, -1, 175, "OOB_way_en", true},
{-1, -1, 176, "OOB_way_en", true},
{-1, -1, 177, "OOB_way_en", true},
{-1, -1, 178, "OOB_way_en", true},
{-1, -1, 179, "OOB_way_en", true},
{-1, -1, 180, "OOB_way_en", true},
{-1, -1, 181, "OOB_way_en", true},
{-1, -1, 182, "OOB_way_en", true},
{-1, -1, 183, "OOB_way_en", true},
/* 180 */
{-1, -1, 184, "OOB_way_en", true},
{-1, -1, 185, "OOB_way_en", true},
{-1, -1, 186, "OOB_way_en", true},
{-1, -1, 187, "OOB_way_en", true},
{-1, -1, 188, "OOB_way_en", true},
{-1, -1, 189, "OOB_way_en", true},
{-1, -1, 190, "OOB_way_en", true},
{-1, -1, 191, "OOB_way_en", true},
{-1, -1, 192, "OOB_way_en", true},
{-1, -1, 193, "OOB_way_en", true},
/* 190 */
{-1, -1, 194, "OOB_way_en", true},
{-1, -1, 195, "OOB_way_en", true},
{-1, -1, 196, "OOB_way_en", true},
{-1, -1, 197, "OOB_way_en", true},
{-1, -1, 198, "OOB_way_en", true},
{-1, -1, 199, "OOB_way_en", true},
{-1, -1, 200, "OOB_way_en", true},
{-1, -1, 201, "OOB_way_en", true},
{-1, -1, 202, "OOB_way_en", true},
{-1, -1, 203, "OOB_way_en", true},
/* 200 */
{-1, -1, 204, "OOB_way_en", true},
{-1, -1, 205, "OOB_way_en", true},
{-1, -1, 206, "OOB_way_en", true},
{-1, -1, 207, "OOB_way_en", true},
{-1, -1, 208, "OOB_way_en", true},
{-1, -1, 209, "OOB_way_en", true},
{-1, -1, 210, "OOB_way_en", true},
{-1, -1, 211, "OOB_way_en", true},
{-1, -1, 212, "OOB_way_en", true},
{-1, -1, 213, "OOB_way_en", true},
/* 210 */
{-1, -1, 214, "OOB_way_en", true},
{-1, -1, 215, "OOB_way_en", true},
{-1, -1, 216, "OOB_way_en", true},
{-1, -1, 217, "OOB_way_en", true},
{-1, -1, 218, "OOB_way_en", true},
{-1, -1, 219, "OOB_way_en", true},
{-1, -1, 220, "OOB_way_en", true},
{-1, -1, 221, "OOB_way_en", true},
{-1, -1, 222, "OOB_way_en", true},
{-1, -1, 223, "OOB_way_en", true},
/* 220 */
{-1, -1, 224, "OOB_way_en", true},
{-1, -1, 225, "OOB_way_en", true},
{-1, -1, 226, "OOB_way_en", true},
{-1, -1, 227, "OOB_way_en", true},
{-1, -1, 228, "OOB_way_en", true},
{-1, -1, 229, "OOB_way_en", true},
{-1, -1, 230, "OOB_way_en", true},
{-1, -1, 231, "OOB_way_en", true},
{-1, -1, 232, "OOB_way_en", true},
{-1, -1, 233, "OOB_way_en", true},
/* 230 */
{-1, -1, 234, "OOB_way_en", true},
{-1, -1, 235, "OOB_way_en", true},
{-1, -1, 236, "OOB_way_en", true},
{-1, -1, 237, "OOB_way_en", true},
{-1, -1, 238, "OOB_way_en", true},
{-1, -1, 239, "OOB_way_en", true},
{-1, -1, 240, "OOB_way_en", true},
{-1, -1, 241, "OOB_way_en", true},
{-1, -1, 242, "OOB_way_en", true},
{-1, -1, 243, "OOB_way_en", true},
/* 240 */
{-1, -1, 244, "OOB_way_en", true},
{-1, -1, 245, "OOB_way_en", true},
{-1, -1, 246, "OOB_way_en", true},
{-1, -1, 247, "OOB_way_en", true},
{-1, -1, 248, "OOB_way_en", true},
{-1, -1, 249, "OOB_way_en", true},
{-1, -1, 250, "OOB_way_en", true},
{-1, -1, 251, "OOB_way_en", true},
{-1, -1, 252, "Decode_error", true},
{-1, -1, 253, "Decode_error", true},
/* 250 */
{-1, -1, 254, "Decode_error", true},
{-1, -1, 255, "Decode_error", true},
{-1, -1, 256, "Decode_error", true},
{-1, -1, 257, "Decode_error", true},
{-1, -1, 258, "Decode_error", true},
{-1, -1, 259, "Decode_error", true},
{-1, -1, 260, "CQ_DMA", false},
{-1, -1, 261, "EMI", false},
{-1, -1, 262, "SUB_EMI", false},
{-1, -1, 263, "SUB_EMI_MPU", false},
/* 260 */
{-1, -1, 264, "EMI_MPU", false},
{-1, -1, 265, "GCE_M", false},
{-1, -1, 266, "GCE_M2", false},
{-1, -1, 267, "DEVICE_APC_PERI_AO2", false},
{-1, -1, 268, "DEVICE_APC_PERI_PDN2", false},
{-1, -1, 103, "RESERVED", false},
{-1, -1, 106, "RESERVED", false},
{-1, -1, 107, "RESERVED", false},
{-1, -1, 111, "RESERVED", false},
};
enum DEVAPC_VIO_SLAVE_NUM {
VIO_SLAVE_NUM_INFRA = ARRAY_SIZE(mt6885_devices_infra),
VIO_SLAVE_NUM_PERI = ARRAY_SIZE(mt6885_devices_peri),
VIO_SLAVE_NUM_PERI2 = ARRAY_SIZE(mt6885_devices_peri2),
};
#endif /* __DEVAPC_MT6885_H__ */