1*baf37f06SPaul Burton /* 2*baf37f06SPaul Burton * Copyright (C) 2013 Imagination Technologies 3*baf37f06SPaul Burton * Author: Paul Burton <paul.burton@imgtec.com> 4*baf37f06SPaul Burton * 5*baf37f06SPaul Burton * SPDX-License-Identifier: GPL-2.0+ 6*baf37f06SPaul Burton */ 7*baf37f06SPaul Burton 8*baf37f06SPaul Burton #ifndef __MSC01_H__ 9*baf37f06SPaul Burton #define __MSC01_H__ 10*baf37f06SPaul Burton 11*baf37f06SPaul Burton /* 12*baf37f06SPaul Burton * Bus Interface Unit 13*baf37f06SPaul Burton */ 14*baf37f06SPaul Burton 15*baf37f06SPaul Burton #define MSC01_BIU_IP1BAS1L_OFS 0x0208 16*baf37f06SPaul Burton #define MSC01_BIU_IP1MSK1L_OFS 0x0218 17*baf37f06SPaul Burton #define MSC01_BIU_IP1BAS2L_OFS 0x0248 18*baf37f06SPaul Burton #define MSC01_BIU_IP1MSK2L_OFS 0x0258 19*baf37f06SPaul Burton #define MSC01_BIU_IP2BAS1L_OFS 0x0288 20*baf37f06SPaul Burton #define MSC01_BIU_IP2MSK1L_OFS 0x0298 21*baf37f06SPaul Burton #define MSC01_BIU_IP2BAS2L_OFS 0x02c8 22*baf37f06SPaul Burton #define MSC01_BIU_IP2MSK2L_OFS 0x02d8 23*baf37f06SPaul Burton #define MSC01_BIU_IP3BAS1L_OFS 0x0308 24*baf37f06SPaul Burton #define MSC01_BIU_IP3MSK1L_OFS 0x0318 25*baf37f06SPaul Burton #define MSC01_BIU_IP3BAS2L_OFS 0x0348 26*baf37f06SPaul Burton #define MSC01_BIU_IP3MSK2L_OFS 0x0358 27*baf37f06SPaul Burton #define MSC01_BIU_MCBAS1L_OFS 0x0388 28*baf37f06SPaul Burton #define MSC01_BIU_MCMSK1L_OFS 0x0398 29*baf37f06SPaul Burton #define MSC01_BIU_MCBAS2L_OFS 0x03c8 30*baf37f06SPaul Burton #define MSC01_BIU_MCMSK2L_OFS 0x03d8 31*baf37f06SPaul Burton 32*baf37f06SPaul Burton /* 33*baf37f06SPaul Burton * PCI Bridge 34*baf37f06SPaul Burton */ 35*baf37f06SPaul Burton 36*baf37f06SPaul Burton #define MSC01_PCI_SC2PMBASL_OFS 0x0208 37*baf37f06SPaul Burton #define MSC01_PCI_SC2PMMSKL_OFS 0x0218 38*baf37f06SPaul Burton #define MSC01_PCI_SC2PMMAPL_OFS 0x0228 39*baf37f06SPaul Burton #define MSC01_PCI_SC2PIOBASL_OFS 0x0248 40*baf37f06SPaul Burton #define MSC01_PCI_SC2PIOMSKL_OFS 0x0258 41*baf37f06SPaul Burton #define MSC01_PCI_SC2PIOMAPL_OFS 0x0268 42*baf37f06SPaul Burton #define MSC01_PCI_P2SCMSKL_OFS 0x0308 43*baf37f06SPaul Burton #define MSC01_PCI_P2SCMAPL_OFS 0x0318 44*baf37f06SPaul Burton #define MSC01_PCI_INTSTAT_OFS 0x0608 45*baf37f06SPaul Burton #define MSC01_PCI_CFGADDR_OFS 0x0610 46*baf37f06SPaul Burton #define MSC01_PCI_CFGDATA_OFS 0x0618 47*baf37f06SPaul Burton #define MSC01_PCI_HEAD0_OFS 0x2000 48*baf37f06SPaul Burton #define MSC01_PCI_HEAD1_OFS 0x2008 49*baf37f06SPaul Burton #define MSC01_PCI_HEAD2_OFS 0x2010 50*baf37f06SPaul Burton #define MSC01_PCI_HEAD3_OFS 0x2018 51*baf37f06SPaul Burton #define MSC01_PCI_HEAD4_OFS 0x2020 52*baf37f06SPaul Burton #define MSC01_PCI_HEAD5_OFS 0x2028 53*baf37f06SPaul Burton #define MSC01_PCI_HEAD6_OFS 0x2030 54*baf37f06SPaul Burton #define MSC01_PCI_HEAD7_OFS 0x2038 55*baf37f06SPaul Burton #define MSC01_PCI_HEAD8_OFS 0x2040 56*baf37f06SPaul Burton #define MSC01_PCI_HEAD9_OFS 0x2048 57*baf37f06SPaul Burton #define MSC01_PCI_HEAD10_OFS 0x2050 58*baf37f06SPaul Burton #define MSC01_PCI_HEAD11_OFS 0x2058 59*baf37f06SPaul Burton #define MSC01_PCI_HEAD12_OFS 0x2060 60*baf37f06SPaul Burton #define MSC01_PCI_HEAD13_OFS 0x2068 61*baf37f06SPaul Burton #define MSC01_PCI_HEAD14_OFS 0x2070 62*baf37f06SPaul Burton #define MSC01_PCI_HEAD15_OFS 0x2078 63*baf37f06SPaul Burton #define MSC01_PCI_BAR0_OFS 0x2220 64*baf37f06SPaul Burton #define MSC01_PCI_CFG_OFS 0x2380 65*baf37f06SPaul Burton #define MSC01_PCI_SWAP_OFS 0x2388 66*baf37f06SPaul Burton 67*baf37f06SPaul Burton #define MSC01_PCI_SC2PMMSKL_MSK_MSK 0xff000000 68*baf37f06SPaul Burton #define MSC01_PCI_SC2PIOMSKL_MSK_MSK 0xff000000 69*baf37f06SPaul Burton 70*baf37f06SPaul Burton #define MSC01_PCI_INTSTAT_TA_SHF 6 71*baf37f06SPaul Burton #define MSC01_PCI_INTSTAT_TA_MSK (0x1 << MSC01_PCI_INTSTAT_TA_SHF) 72*baf37f06SPaul Burton #define MSC01_PCI_INTSTAT_MA_SHF 7 73*baf37f06SPaul Burton #define MSC01_PCI_INTSTAT_MA_MSK (0x1 << MSC01_PCI_INTSTAT_MA_SHF) 74*baf37f06SPaul Burton 75*baf37f06SPaul Burton #define MSC01_PCI_CFGADDR_BNUM_SHF 16 76*baf37f06SPaul Burton #define MSC01_PCI_CFGADDR_BNUM_MSK (0xff << MSC01_PCI_CFGADDR_BNUM_SHF) 77*baf37f06SPaul Burton #define MSC01_PCI_CFGADDR_DNUM_SHF 11 78*baf37f06SPaul Burton #define MSC01_PCI_CFGADDR_DNUM_MSK (0x1f << MSC01_PCI_CFGADDR_DNUM_SHF) 79*baf37f06SPaul Burton #define MSC01_PCI_CFGADDR_FNUM_SHF 8 80*baf37f06SPaul Burton #define MSC01_PCI_CFGADDR_FNUM_MSK (0x3 << MSC01_PCI_CFGADDR_FNUM_SHF) 81*baf37f06SPaul Burton #define MSC01_PCI_CFGADDR_RNUM_SHF 2 82*baf37f06SPaul Burton #define MSC01_PCI_CFGADDR_RNUM_MSK (0x3f << MSC01_PCI_CFGADDR_RNUM_SHF) 83*baf37f06SPaul Burton 84*baf37f06SPaul Burton #define MSC01_PCI_HEAD0_VENDORID_SHF 0 85*baf37f06SPaul Burton #define MSC01_PCI_HEAD0_DEVICEID_SHF 16 86*baf37f06SPaul Burton 87*baf37f06SPaul Burton #define MSC01_PCI_HEAD2_REV_SHF 0 88*baf37f06SPaul Burton #define MSC01_PCI_HEAD2_CLASS_SHF 16 89*baf37f06SPaul Burton 90*baf37f06SPaul Burton #define MSC01_PCI_CFG_EN_SHF 15 91*baf37f06SPaul Burton #define MSC01_PCI_CFG_EN_MSK (0x1 << MSC01_PCI_CFG_EN_SHF) 92*baf37f06SPaul Burton #define MSC01_PCI_CFG_G_SHF 16 93*baf37f06SPaul Burton #define MSC01_PCI_CFG_G_MSK (0x1 << MSC01_PCI_CFG_G_SHF) 94*baf37f06SPaul Burton #define MSC01_PCI_CFG_RA_SHF 17 95*baf37f06SPaul Burton #define MSC01_PCI_CFG_RA_MSK (0x1 << MSC01_PCI_CFG_RA_SHF) 96*baf37f06SPaul Burton 97*baf37f06SPaul Burton #define MSC01_PCI_SWAP_BAR0_BSWAP_SHF 0 98*baf37f06SPaul Burton #define MSC01_PCI_SWAP_IO_BSWAP_SHF 18 99*baf37f06SPaul Burton 100*baf37f06SPaul Burton /* 101*baf37f06SPaul Burton * Peripheral Bus Controller 102*baf37f06SPaul Burton */ 103*baf37f06SPaul Burton 104*baf37f06SPaul Burton #define MSC01_PBC_CLKCFG_OFS 0x0100 105*baf37f06SPaul Burton #define MSC01_PBC_CS0CFG_OFS 0x0400 106*baf37f06SPaul Burton #define MSC01_PBC_CS0TIM_OFS 0x0500 107*baf37f06SPaul Burton #define MSC01_PBC_CS0RW_OFS 0x0600 108*baf37f06SPaul Burton 109*baf37f06SPaul Burton #define MSC01_PBC_CLKCFG_SHF 0 110*baf37f06SPaul Burton #define MSC01_PBC_CLKCFG_MSK (0x1f << MSC01_PBC_CLKCFG_SHF) 111*baf37f06SPaul Burton 112*baf37f06SPaul Burton #define MSC01_PBC_CS0CFG_WS_SHF 0 113*baf37f06SPaul Burton #define MSC01_PBC_CS0CFG_WS_MSK (0x1f << MSC01_PBC_CS0CFG_WS_SHF) 114*baf37f06SPaul Burton #define MSC01_PBC_CS0CFG_WSIDLE_SHF 8 115*baf37f06SPaul Burton #define MSC01_PBC_CS0CFG_WSIDLE_MSK (0x1f << MSC01_PBC_CS0CFG_WSIDLE_SHF) 116*baf37f06SPaul Burton #define MSC01_PBC_CS0CFG_DTYP_SHF 16 117*baf37f06SPaul Burton #define MSC01_PBC_CS0CFG_DTYP_MSK (0x3 << MSC01_PBC_CS0CFG_DTYP_SHF) 118*baf37f06SPaul Burton #define MSC01_PBC_CS0CFG_ADM_SHF 20 119*baf37f06SPaul Burton #define MSC01_PBC_CS0CFG_ADM_MSK (0x1 << MSC01_PBC_CS0CFG_ADM_SHF) 120*baf37f06SPaul Burton 121*baf37f06SPaul Burton #define MSC01_PBC_CS0TIM_CAT_SHF 0 122*baf37f06SPaul Burton #define MSC01_PBC_CS0TIM_CAT_MSK (0x1f << MSC01_PBC_CS0TIM_CAT_SHF) 123*baf37f06SPaul Burton #define MSC01_PBC_CS0TIM_CDT_SHF 8 124*baf37f06SPaul Burton #define MSC01_PBC_CS0TIM_CDT_MSK (0x1f << MSC01_PBC_CS0TIM_CDT_SHF) 125*baf37f06SPaul Burton 126*baf37f06SPaul Burton #define MSC01_PBC_CS0RW_WAT_SHF 0 127*baf37f06SPaul Burton #define MSC01_PBC_CS0RW_WAT_MSK (0x1f << MSC01_PBC_CS0RW_WAT_SHF) 128*baf37f06SPaul Burton #define MSC01_PBC_CS0RW_WDT_SHF 8 129*baf37f06SPaul Burton #define MSC01_PBC_CS0RW_WDT_MSK (0x1f << MSC01_PBC_CS0RW_WDT_SHF) 130*baf37f06SPaul Burton #define MSC01_PBC_CS0RW_RAT_SHF 16 131*baf37f06SPaul Burton #define MSC01_PBC_CS0RW_RAT_MSK (0x1f << MSC01_PBC_CS0RW_RAT_SHF) 132*baf37f06SPaul Burton #define MSC01_PBC_CS0RW_RDT_SHF 24 133*baf37f06SPaul Burton #define MSC01_PBC_CS0RW_RDT_MSK (0x1f << MSC01_PBC_CS0RW_RDT_SHF) 134*baf37f06SPaul Burton 135*baf37f06SPaul Burton #endif /* __MSC01_H__ */ 136