xref: /arm-trusted-firmware/plat/intel/soc/common/include/socfpga_f2sdram_manager.h (revision 91f16700b400a8c0651d24a598fc48ee2997a0d7)
1*91f16700Schasinglulu /*
2*91f16700Schasinglulu  * Copyright (c) 2019-2023, Intel Corporation. All rights reserved.
3*91f16700Schasinglulu  *
4*91f16700Schasinglulu  * SPDX-License-Identifier: BSD-3-Clause
5*91f16700Schasinglulu  */
6*91f16700Schasinglulu 
7*91f16700Schasinglulu #ifndef SOCFPGA_F2SDRAMMANAGER_H
8*91f16700Schasinglulu #define SOCFPGA_F2SDRAMMANAGER_H
9*91f16700Schasinglulu 
10*91f16700Schasinglulu #include "socfpga_plat_def.h"
11*91f16700Schasinglulu 
12*91f16700Schasinglulu /* FPGA2SDRAM Register Map */
13*91f16700Schasinglulu #define SOCFPGA_F2SDRAMMGR_SIDEBANDMGR_FLAGINSTATUS0	0x14
14*91f16700Schasinglulu #define SOCFPGA_F2SDRAMMGR_SIDEBANDMGR_FLAGOUTCLR0	0x54
15*91f16700Schasinglulu #define SOCFPGA_F2SDRAMMGR_SIDEBANDMGR_FLAGOUTSET0	0x50
16*91f16700Schasinglulu 
17*91f16700Schasinglulu #define FLAGOUTCLR0_F2SDRAM0_ENABLE		(BIT(8))
18*91f16700Schasinglulu #define FLAGOUTSETCLR_F2SDRAM0_ENABLE		(BIT(1))
19*91f16700Schasinglulu #define FLAGOUTSETCLR_F2SDRAM1_ENABLE		(BIT(4))
20*91f16700Schasinglulu #define FLAGOUTSETCLR_F2SDRAM2_ENABLE		(BIT(7))
21*91f16700Schasinglulu 
22*91f16700Schasinglulu #define FLAGOUTSETCLR_F2SDRAM0_IDLEREQ		(BIT(0))
23*91f16700Schasinglulu #define FLAGOUTSETCLR_F2SDRAM1_IDLEREQ		(BIT(3))
24*91f16700Schasinglulu #define FLAGOUTSETCLR_F2SDRAM2_IDLEREQ		(BIT(6))
25*91f16700Schasinglulu #define FLAGINSTATUS_F2SDRAM0_IDLEACK		(BIT(1))
26*91f16700Schasinglulu #define FLAGINSTATUS_F2SDRAM1_IDLEACK		(BIT(5))
27*91f16700Schasinglulu #define FLAGINSTATUS_F2SDRAM2_IDLEACK		(BIT(9))
28*91f16700Schasinglulu #define FLAGINSTATUS_F2SDRAM0_CMDIDLE		(BIT(2))
29*91f16700Schasinglulu #define FLAGINSTATUS_F2SDRAM1_CMDIDLE		(BIT(6))
30*91f16700Schasinglulu #define FLAGINSTATUS_F2SDRAM2_CMDIDLE		(BIT(10))
31*91f16700Schasinglulu #define FLAGINSTATUS_F2SDRAM0_NOCIDLE		(BIT(0))
32*91f16700Schasinglulu #define FLAGINSTATUS_F2SDRAM1_NOCIDLE		(BIT(4))
33*91f16700Schasinglulu #define FLAGINSTATUS_F2SDRAM2_NOCIDLE		(BIT(8))
34*91f16700Schasinglulu 
35*91f16700Schasinglulu #define FLAGOUTSETCLR_F2SDRAM0_FORCE_DRAIN	(BIT(2))
36*91f16700Schasinglulu #define FLAGOUTSETCLR_F2SDRAM1_FORCE_DRAIN	(BIT(5))
37*91f16700Schasinglulu #define FLAGOUTSETCLR_F2SDRAM2_FORCE_DRAIN	(BIT(8))
38*91f16700Schasinglulu 
39*91f16700Schasinglulu #define FLAGINSTATUS_F2SOC_RESPEMPTY		(BIT(3))
40*91f16700Schasinglulu #define FLAGINSTATUS_F2SDRAM0_RESPEMPTY		(BIT(3))
41*91f16700Schasinglulu #define FLAGINSTATUS_F2SDRAM1_RESPEMPTY		(BIT(7))
42*91f16700Schasinglulu #define FLAGINSTATUS_F2SDRAM2_RESPEMPTY		(BIT(11))
43*91f16700Schasinglulu #define FLAGINSTATUS_F2S_FM_TRACKERIDLE		(BIT(4))
44*91f16700Schasinglulu 
45*91f16700Schasinglulu #define SOCFPGA_F2SDRAMMGR(_reg)	(SOCFPGA_F2SDRAMMGR_REG_BASE \
46*91f16700Schasinglulu 						+ (SOCFPGA_F2SDRAMMGR_##_reg))
47*91f16700Schasinglulu 
48*91f16700Schasinglulu #endif /* SOCFPGA_F2SDRAMMGR_H */
49