xref: /rk3399_rockchip-uboot/include/msc01.h (revision f15ea6e1d67782a1626d4a4922b6c20e380085e5)
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