xref: /arm-trusted-firmware/drivers/renesas/common/qos_reg.h (revision 91f16700b400a8c0651d24a598fc48ee2997a0d7)
1*91f16700Schasinglulu /*
2*91f16700Schasinglulu  * Copyright (c) 2017-2019, Renesas Electronics Corporation. All rights reserved.
3*91f16700Schasinglulu  *
4*91f16700Schasinglulu  * SPDX-License-Identifier: BSD-3-Clause
5*91f16700Schasinglulu  */
6*91f16700Schasinglulu 
7*91f16700Schasinglulu #ifndef QOS_REG_H
8*91f16700Schasinglulu #define QOS_REG_H
9*91f16700Schasinglulu 
10*91f16700Schasinglulu #define	RCAR_QOS_NONE			3U
11*91f16700Schasinglulu #define	RCAR_QOS_TYPE_DEFAULT		0U
12*91f16700Schasinglulu 
13*91f16700Schasinglulu #define	RCAR_DRAM_SPLIT_LINEAR		0U
14*91f16700Schasinglulu #define	RCAR_DRAM_SPLIT_4CH		1U
15*91f16700Schasinglulu #define	RCAR_DRAM_SPLIT_2CH		2U
16*91f16700Schasinglulu #define	RCAR_DRAM_SPLIT_AUTO		3U
17*91f16700Schasinglulu #define	RST_BASE			(0xE6160000U)
18*91f16700Schasinglulu #define	RST_MODEMR			(RST_BASE + 0x0060U)
19*91f16700Schasinglulu 
20*91f16700Schasinglulu #define	DBSC_BASE			0xE6790000U
21*91f16700Schasinglulu #define DBSC_DBSYSCNT0			(DBSC_BASE + 0x0100U)
22*91f16700Schasinglulu #define DBSC_AXARB			(DBSC_BASE + 0x0800U)
23*91f16700Schasinglulu #define DBSC_DBCAM0CNF1			(DBSC_BASE + 0x0904U)
24*91f16700Schasinglulu #define DBSC_DBCAM0CNF2			(DBSC_BASE + 0x0908U)
25*91f16700Schasinglulu #define DBSC_DBCAM0CNF3			(DBSC_BASE + 0x090CU)
26*91f16700Schasinglulu #define DBSC_DBSCHCNT0			(DBSC_BASE + 0x1000U)
27*91f16700Schasinglulu #define DBSC_DBSCHCNT1			(DBSC_BASE + 0x1004U)
28*91f16700Schasinglulu #define DBSC_DBSCHSZ0			(DBSC_BASE + 0x1010U)
29*91f16700Schasinglulu #define DBSC_DBSCHRW0			(DBSC_BASE + 0x1020U)
30*91f16700Schasinglulu #define DBSC_DBSCHRW1			(DBSC_BASE + 0x1024U)
31*91f16700Schasinglulu #define DBSC_DBSCHQOS00			(DBSC_BASE + 0x1030U)
32*91f16700Schasinglulu #define DBSC_DBSCHQOS01			(DBSC_BASE + 0x1034U)
33*91f16700Schasinglulu #define DBSC_DBSCHQOS02			(DBSC_BASE + 0x1038U)
34*91f16700Schasinglulu #define DBSC_DBSCHQOS03			(DBSC_BASE + 0x103CU)
35*91f16700Schasinglulu #define DBSC_DBSCHQOS40			(DBSC_BASE + 0x1070U)
36*91f16700Schasinglulu #define DBSC_DBSCHQOS41			(DBSC_BASE + 0x1074U)
37*91f16700Schasinglulu #define DBSC_DBSCHQOS42			(DBSC_BASE + 0x1078U)
38*91f16700Schasinglulu #define DBSC_DBSCHQOS43			(DBSC_BASE + 0x107CU)
39*91f16700Schasinglulu #define DBSC_DBSCHQOS90			(DBSC_BASE + 0x10C0U)
40*91f16700Schasinglulu #define DBSC_DBSCHQOS91			(DBSC_BASE + 0x10C4U)
41*91f16700Schasinglulu #define DBSC_DBSCHQOS92			(DBSC_BASE + 0x10C8U)
42*91f16700Schasinglulu #define DBSC_DBSCHQOS93			(DBSC_BASE + 0x10CCU)
43*91f16700Schasinglulu #define DBSC_DBSCHQOS120		(DBSC_BASE + 0x10F0U)
44*91f16700Schasinglulu #define DBSC_DBSCHQOS121		(DBSC_BASE + 0x10F4U)
45*91f16700Schasinglulu #define DBSC_DBSCHQOS122		(DBSC_BASE + 0x10F8U)
46*91f16700Schasinglulu #define DBSC_DBSCHQOS123		(DBSC_BASE + 0x10FCU)
47*91f16700Schasinglulu #define DBSC_DBSCHQOS130		(DBSC_BASE + 0x1100U)
48*91f16700Schasinglulu #define DBSC_DBSCHQOS131		(DBSC_BASE + 0x1104U)
49*91f16700Schasinglulu #define DBSC_DBSCHQOS132		(DBSC_BASE + 0x1108U)
50*91f16700Schasinglulu #define DBSC_DBSCHQOS133		(DBSC_BASE + 0x110CU)
51*91f16700Schasinglulu #define DBSC_DBSCHQOS140		(DBSC_BASE + 0x1110U)
52*91f16700Schasinglulu #define DBSC_DBSCHQOS141		(DBSC_BASE + 0x1114U)
53*91f16700Schasinglulu #define DBSC_DBSCHQOS142		(DBSC_BASE + 0x1118U)
54*91f16700Schasinglulu #define DBSC_DBSCHQOS143		(DBSC_BASE + 0x111CU)
55*91f16700Schasinglulu #define DBSC_DBSCHQOS150		(DBSC_BASE + 0x1120U)
56*91f16700Schasinglulu #define DBSC_DBSCHQOS151		(DBSC_BASE + 0x1124U)
57*91f16700Schasinglulu #define DBSC_DBSCHQOS152		(DBSC_BASE + 0x1128U)
58*91f16700Schasinglulu #define DBSC_DBSCHQOS153		(DBSC_BASE + 0x112CU)
59*91f16700Schasinglulu #define DBSC_SCFCTST0			(DBSC_BASE + 0x1700U)
60*91f16700Schasinglulu #define DBSC_SCFCTST1			(DBSC_BASE + 0x1708U)
61*91f16700Schasinglulu #define DBSC_SCFCTST2			(DBSC_BASE + 0x170CU)
62*91f16700Schasinglulu 
63*91f16700Schasinglulu #define	AXI_BASE			0xE6784000U
64*91f16700Schasinglulu #define	AXI_ADSPLCR0			(AXI_BASE + 0x0008U)
65*91f16700Schasinglulu #define	AXI_ADSPLCR1			(AXI_BASE + 0x000CU)
66*91f16700Schasinglulu #define	AXI_ADSPLCR2			(AXI_BASE + 0x0010U)
67*91f16700Schasinglulu #define	AXI_ADSPLCR3			(AXI_BASE + 0x0014U)
68*91f16700Schasinglulu #define	AXI_MMCR			(AXI_BASE + 0x0300U)
69*91f16700Schasinglulu #define	ADSPLCR0_ADRMODE_DEFAULT	((uint32_t)0U << 31U)
70*91f16700Schasinglulu #define	ADSPLCR0_ADRMODE_GEN2		((uint32_t)1U << 31U)
71*91f16700Schasinglulu #define	ADSPLCR0_SPLITSEL(x)		((uint32_t)(x) << 16U)
72*91f16700Schasinglulu #define	ADSPLCR0_AREA(x)		((uint32_t)(x) <<  8U)
73*91f16700Schasinglulu #define	ADSPLCR0_SWP			0x0CU
74*91f16700Schasinglulu 
75*91f16700Schasinglulu #define	AXI_TR3CR			0xE67D100CU
76*91f16700Schasinglulu #define	AXI_TR4CR			0xE67D1014U
77*91f16700Schasinglulu 
78*91f16700Schasinglulu #define	QOS_BASE0			0xE67E0000U
79*91f16700Schasinglulu #define	QOSBW_FIX_QOS_BANK0		(QOS_BASE0 + 0x0000U)
80*91f16700Schasinglulu #define	QOSBW_FIX_QOS_BANK1		(QOS_BASE0 + 0x1000U)
81*91f16700Schasinglulu #define	QOSBW_BE_QOS_BANK0		(QOS_BASE0 + 0x2000U)
82*91f16700Schasinglulu #define	QOSBW_BE_QOS_BANK1		(QOS_BASE0 + 0x3000U)
83*91f16700Schasinglulu #define	QOSCTRL_SL_INIT			(QOS_BASE0 + 0x8000U)
84*91f16700Schasinglulu #define	QOSCTRL_REF_ARS			(QOS_BASE0 + 0x8004U)
85*91f16700Schasinglulu #define	QOSCTRL_STATQC			(QOS_BASE0 + 0x8008U)
86*91f16700Schasinglulu 
87*91f16700Schasinglulu #define	QOS_BASE1			0xE67F0000U
88*91f16700Schasinglulu #define	QOSCTRL_RAS			(QOS_BASE1 + 0x0000U)
89*91f16700Schasinglulu #define	QOSCTRL_FIXTH			(QOS_BASE1 + 0x0004U)
90*91f16700Schasinglulu #define	QOSCTRL_RAEN			(QOS_BASE1 + 0x0018U)
91*91f16700Schasinglulu #define	QOSCTRL_REGGD			(QOS_BASE1 + 0x0020U)
92*91f16700Schasinglulu #define	QOSCTRL_DANN			(QOS_BASE1 + 0x0030U)
93*91f16700Schasinglulu #define	QOSCTRL_DANT			(QOS_BASE1 + 0x0038U)
94*91f16700Schasinglulu #define	QOSCTRL_EC			(QOS_BASE1 + 0x003CU)
95*91f16700Schasinglulu #define	QOSCTRL_EMS			(QOS_BASE1 + 0x0040U)
96*91f16700Schasinglulu #define	QOSCTRL_FSS			(QOS_BASE1 + 0x0048U)
97*91f16700Schasinglulu #define	QOSCTRL_INSFC			(QOS_BASE1 + 0x0050U)
98*91f16700Schasinglulu #define	QOSCTRL_BERR			(QOS_BASE1 + 0x0054U)
99*91f16700Schasinglulu #define	QOSCTRL_EARLYR			(QOS_BASE1 + 0x0060U)
100*91f16700Schasinglulu #define	QOSCTRL_RACNT0			(QOS_BASE1 + 0x0080U)
101*91f16700Schasinglulu #define	QOSCTRL_STATGEN0		(QOS_BASE1 + 0x0088U)
102*91f16700Schasinglulu 
103*91f16700Schasinglulu #define	GPU_ACT_GRD			0xFD820808U
104*91f16700Schasinglulu #define	GPU_ACT0			0xFD820800U
105*91f16700Schasinglulu #define	GPU_ACT1			0xFD821800U
106*91f16700Schasinglulu #define	GPU_ACT2			0xFD822800U
107*91f16700Schasinglulu #define	GPU_ACT3			0xFD823800U
108*91f16700Schasinglulu #define	GPU_ACT4			0xFD824800U
109*91f16700Schasinglulu #define	GPU_ACT5			0xFD825800U
110*91f16700Schasinglulu #define	GPU_ACT6			0xFD826800U
111*91f16700Schasinglulu #define	GPU_ACT7			0xFD827800U
112*91f16700Schasinglulu 
113*91f16700Schasinglulu #define	RT_ACT0				0xFFC50800U
114*91f16700Schasinglulu #define	RT_ACT1				0xFFC51800U
115*91f16700Schasinglulu 
116*91f16700Schasinglulu #define	CPU_ACT0			0xF1300800U
117*91f16700Schasinglulu #define	CPU_ACT1			0xF1340800U
118*91f16700Schasinglulu #define	CPU_ACT2			0xF1380800U
119*91f16700Schasinglulu #define	CPU_ACT3			0xF13C0800U
120*91f16700Schasinglulu 
121*91f16700Schasinglulu #define	RCAR_REWT_TRAINING_DISABLE	0U
122*91f16700Schasinglulu #define	RCAR_REWT_TRAINING_ENABLE	1U
123*91f16700Schasinglulu 
124*91f16700Schasinglulu #define QOSWT_FIX_WTQOS_BANK0		(QOSBW_FIX_QOS_BANK0 + 0x0800U)
125*91f16700Schasinglulu #define QOSWT_FIX_WTQOS_BANK1		(QOSBW_FIX_QOS_BANK1 + 0x0800U)
126*91f16700Schasinglulu #define QOSWT_BE_WTQOS_BANK0		(QOSBW_BE_QOS_BANK0  + 0x0800U)
127*91f16700Schasinglulu #define QOSWT_BE_WTQOS_BANK1		(QOSBW_BE_QOS_BANK1  + 0x0800U)
128*91f16700Schasinglulu #define	QOSWT_WTEN			(QOS_BASE0 + 0x8030U)
129*91f16700Schasinglulu #define	QOSWT_WTREF			(QOS_BASE0 + 0x8034U)
130*91f16700Schasinglulu #define	QOSWT_WTSET0			(QOS_BASE0 + 0x8038U)
131*91f16700Schasinglulu #define	QOSWT_WTSET1			(QOS_BASE0 + 0x803CU)
132*91f16700Schasinglulu 
133*91f16700Schasinglulu #endif /* QOS_REG_H */
134