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