6db4831e98
Android 14
130 lines
3.2 KiB
C
130 lines
3.2 KiB
C
/* SPDX-License-Identifier: GPL-2.0 */
|
|
/*
|
|
* Copyright (C) 2019 MediaTek Inc.
|
|
*/
|
|
|
|
#ifndef __DEVAPC_MT6768_H__
|
|
#define __DEVAPC_MT6768_H__
|
|
|
|
/******************************************************************************
|
|
* VARIABLE DEFINATION
|
|
******************************************************************************/
|
|
|
|
/* 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_DAPC_DEFAULT false
|
|
|
|
#define PLAT_VIO_CFG_MAX_IDX 242
|
|
#define PLAT_VIO_MAX_IDX 282
|
|
#define PLAT_VIO_MASK_STA_NUM 9
|
|
#define PLAT_VIO_SHIFT_MAX_BIT 21
|
|
|
|
/******************************************************************************
|
|
* DATA STRUCTURE & FUNCTION DEFINATION
|
|
******************************************************************************/
|
|
|
|
const char *bus_id_to_master(int bus_id, uint32_t vio_addr, int vio_idx);
|
|
const char *index_to_subsys(unsigned int index);
|
|
|
|
/* violation index corresponds to subsys */
|
|
enum SMI_INDEX {
|
|
SMI_COMMON = 157,
|
|
SMI_LARB0 = 158,
|
|
IMGSYS_SMI_LARB2 = 182,
|
|
VDECSYS_SMI_LARB1 = 198,
|
|
};
|
|
|
|
enum MFGSYS_INDEX {
|
|
MFGSYS_START = 151,
|
|
MFGSYS_END = 154,
|
|
};
|
|
|
|
enum MMSYS_INDEX {
|
|
MMSYS_MDP_START = 155,
|
|
MMSYS_MDP_END = 165,
|
|
MMSYS_DISP_START = 166,
|
|
MMSYS_DISP_END = 176,
|
|
};
|
|
|
|
enum IMGSYS_INDEX {
|
|
IMGSYS_START = 181,
|
|
IMGSYS_END = 196,
|
|
};
|
|
|
|
enum VENCSYS_INDEX {
|
|
VENCSYS_START = 201,
|
|
VENCSYS_END = 208,
|
|
};
|
|
|
|
enum VDECSYS_INDEX {
|
|
VDECSYS_START = 197,
|
|
VDECSYS_END = 200,
|
|
};
|
|
|
|
enum CAMSYS_INDEX {
|
|
CAMSYS_START = 209,
|
|
CAMSYS_END = 242,
|
|
};
|
|
|
|
enum OTHER_TYPES_INDEX {
|
|
SRAMROM_VIO_INDEX = 270,
|
|
TOPAXI_SI0_DECERR = 264,
|
|
PERIAXI_SI1_DECERR = 266,
|
|
};
|
|
|
|
enum BUSID_LENGTH {
|
|
PERIAXI_INT_MI_BIT_LENGTH = 4,
|
|
TOPAXI_MI0_BIT_LENGTH = 12,
|
|
};
|
|
|
|
/* bit == 2 means don't care */
|
|
struct PERIAXI_ID_INFO {
|
|
const char *master;
|
|
uint8_t bit[PERIAXI_INT_MI_BIT_LENGTH];
|
|
};
|
|
|
|
struct TOPAXI_ID_INFO {
|
|
const char *master;
|
|
uint8_t bit[TOPAXI_MI0_BIT_LENGTH];
|
|
};
|
|
|
|
/******************************************************************************
|
|
* PLATFORM DEFINATION
|
|
******************************************************************************/
|
|
|
|
/* For Infra VIO_DBG */
|
|
#define INFRA_VIO_DBG_MSTID 0x0000FFFF
|
|
#define INFRA_VIO_DBG_MSTID_START_BIT 0
|
|
#define INFRA_VIO_DBG_DMNID 0x003F0000
|
|
#define INFRA_VIO_DBG_DMNID_START_BIT 16
|
|
#define INFRA_VIO_DBG_W_VIO 0x00400000
|
|
#define INFRA_VIO_DBG_W_VIO_START_BIT 22
|
|
#define INFRA_VIO_DBG_R_VIO 0x00800000
|
|
#define INFRA_VIO_DBG_R_VIO_START_BIT 23
|
|
#define INFRA_VIO_ADDR_HIGH 0x0F000000
|
|
#define INFRA_VIO_ADDR_HIGH_START_BIT 24
|
|
|
|
/* 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 DEVAPC PD */
|
|
#define PD_VIO_MASK_OFFSET 0x0
|
|
#define PD_VIO_STA_OFFSET 0x400
|
|
#define PD_VIO_DBG0_OFFSET 0x900
|
|
#define PD_VIO_DBG1_OFFSET 0x904
|
|
#define PD_APC_CON_OFFSET 0xF00
|
|
#define PD_SHIFT_STA_OFFSET 0xF10
|
|
#define PD_SHIFT_SEL_OFFSET 0xF14
|
|
#define PD_SHIFT_CON_OFFSET 0xF20
|
|
|
|
#define SRAM_START_ADDR (0x100000)
|
|
|
|
#endif /* __DEVAPC_MT6768_H__ */
|