xref: /rk3399_rockchip-uboot/arch/arm/mach-rmobile/include/mach/rcar-mstp.h (revision c98b171e1098f94b2ff7720c45a25a602882f876)
1*7a7d246dSNobuhiro Iwamatsu /*
2*7a7d246dSNobuhiro Iwamatsu  * arch/arm/include/asm/arch-rmobile/rcar-mstp.h
3*7a7d246dSNobuhiro Iwamatsu  *
4*7a7d246dSNobuhiro Iwamatsu  * Copyright (C) 2013, 2014 Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com>
5*7a7d246dSNobuhiro Iwamatsu  * Copyright (C) 2013, 2014 Renesas Electronics Corporation
6*7a7d246dSNobuhiro Iwamatsu  *
7*7a7d246dSNobuhiro Iwamatsu  * SPDX-License-Identifier:	GPL-2.0
8*7a7d246dSNobuhiro Iwamatsu  */
9*7a7d246dSNobuhiro Iwamatsu 
10*7a7d246dSNobuhiro Iwamatsu #ifndef __ASM_ARCH_RCAR_MSTP_H
11*7a7d246dSNobuhiro Iwamatsu #define __ASM_ARCH_RCAR_MSTP_H
12*7a7d246dSNobuhiro Iwamatsu 
13*7a7d246dSNobuhiro Iwamatsu #define mstp_setbits(type, addr, saddr, set) \
14*7a7d246dSNobuhiro Iwamatsu 		out_##type((saddr), in_##type(addr) | (set))
15*7a7d246dSNobuhiro Iwamatsu #define mstp_clrbits(type, addr, saddr, clear) \
16*7a7d246dSNobuhiro Iwamatsu 		out_##type((saddr), in_##type(addr) & ~(clear))
17*7a7d246dSNobuhiro Iwamatsu #define mstp_setclrbits(type, addr, set, clear) \
18*7a7d246dSNobuhiro Iwamatsu 		out_##type((addr), (in_##type(addr) | (set)) & ~(clear))
19*7a7d246dSNobuhiro Iwamatsu #define mstp_setbits_le32(addr, saddr, set) \
20*7a7d246dSNobuhiro Iwamatsu 		mstp_setbits(le32, addr, saddr, set)
21*7a7d246dSNobuhiro Iwamatsu #define mstp_clrbits_le32(addr, saddr, clear) \
22*7a7d246dSNobuhiro Iwamatsu 		mstp_clrbits(le32, addr, saddr, clear)
23*7a7d246dSNobuhiro Iwamatsu #define mstp_setclrbits_le32(addr, set, clear) \
24*7a7d246dSNobuhiro Iwamatsu 		mstp_setclrbits(le32, addr, set, clear)
25*7a7d246dSNobuhiro Iwamatsu 
26*7a7d246dSNobuhiro Iwamatsu #ifndef CONFIG_SMSTP0_ENA
27*7a7d246dSNobuhiro Iwamatsu #define CONFIG_SMSTP0_ENA	0x00
28*7a7d246dSNobuhiro Iwamatsu #endif
29*7a7d246dSNobuhiro Iwamatsu #ifndef CONFIG_SMSTP1_ENA
30*7a7d246dSNobuhiro Iwamatsu #define CONFIG_SMSTP1_ENA	0x00
31*7a7d246dSNobuhiro Iwamatsu #endif
32*7a7d246dSNobuhiro Iwamatsu #ifndef CONFIG_SMSTP2_ENA
33*7a7d246dSNobuhiro Iwamatsu #define CONFIG_SMSTP2_ENA	0x00
34*7a7d246dSNobuhiro Iwamatsu #endif
35*7a7d246dSNobuhiro Iwamatsu #ifndef CONFIG_SMSTP3_ENA
36*7a7d246dSNobuhiro Iwamatsu #define CONFIG_SMSTP3_ENA	0x00
37*7a7d246dSNobuhiro Iwamatsu #endif
38*7a7d246dSNobuhiro Iwamatsu #ifndef CONFIG_SMSTP4_ENA
39*7a7d246dSNobuhiro Iwamatsu #define CONFIG_SMSTP4_ENA	0x00
40*7a7d246dSNobuhiro Iwamatsu #endif
41*7a7d246dSNobuhiro Iwamatsu #ifndef CONFIG_SMSTP5_ENA
42*7a7d246dSNobuhiro Iwamatsu #define CONFIG_SMSTP5_ENA	0x00
43*7a7d246dSNobuhiro Iwamatsu #endif
44*7a7d246dSNobuhiro Iwamatsu #ifndef CONFIG_SMSTP6_ENA
45*7a7d246dSNobuhiro Iwamatsu #define CONFIG_SMSTP6_ENA	0x00
46*7a7d246dSNobuhiro Iwamatsu #endif
47*7a7d246dSNobuhiro Iwamatsu #ifndef CONFIG_SMSTP7_ENA
48*7a7d246dSNobuhiro Iwamatsu #define CONFIG_SMSTP7_ENA	0x00
49*7a7d246dSNobuhiro Iwamatsu #endif
50*7a7d246dSNobuhiro Iwamatsu #ifndef CONFIG_SMSTP8_ENA
51*7a7d246dSNobuhiro Iwamatsu #define CONFIG_SMSTP8_ENA	0x00
52*7a7d246dSNobuhiro Iwamatsu #endif
53*7a7d246dSNobuhiro Iwamatsu #ifndef CONFIG_SMSTP9_ENA
54*7a7d246dSNobuhiro Iwamatsu #define CONFIG_SMSTP9_ENA	0x00
55*7a7d246dSNobuhiro Iwamatsu #endif
56*7a7d246dSNobuhiro Iwamatsu #ifndef CONFIG_SMSTP10_ENA
57*7a7d246dSNobuhiro Iwamatsu #define CONFIG_SMSTP10_ENA	0x00
58*7a7d246dSNobuhiro Iwamatsu #endif
59*7a7d246dSNobuhiro Iwamatsu #ifndef CONFIG_SMSTP11_ENA
60*7a7d246dSNobuhiro Iwamatsu #define CONFIG_SMSTP11_ENA	0x00
61*7a7d246dSNobuhiro Iwamatsu #endif
62*7a7d246dSNobuhiro Iwamatsu 
63*7a7d246dSNobuhiro Iwamatsu #ifndef CONFIG_RMSTP0_ENA
64*7a7d246dSNobuhiro Iwamatsu #define CONFIG_RMSTP0_ENA	0x00
65*7a7d246dSNobuhiro Iwamatsu #endif
66*7a7d246dSNobuhiro Iwamatsu #ifndef CONFIG_RMSTP1_ENA
67*7a7d246dSNobuhiro Iwamatsu #define CONFIG_RMSTP1_ENA	0x00
68*7a7d246dSNobuhiro Iwamatsu #endif
69*7a7d246dSNobuhiro Iwamatsu #ifndef CONFIG_RMSTP2_ENA
70*7a7d246dSNobuhiro Iwamatsu #define CONFIG_RMSTP2_ENA	0x00
71*7a7d246dSNobuhiro Iwamatsu #endif
72*7a7d246dSNobuhiro Iwamatsu #ifndef CONFIG_RMSTP3_ENA
73*7a7d246dSNobuhiro Iwamatsu #define CONFIG_RMSTP3_ENA	0x00
74*7a7d246dSNobuhiro Iwamatsu #endif
75*7a7d246dSNobuhiro Iwamatsu #ifndef CONFIG_RMSTP4_ENA
76*7a7d246dSNobuhiro Iwamatsu #define CONFIG_RMSTP4_ENA	0x00
77*7a7d246dSNobuhiro Iwamatsu #endif
78*7a7d246dSNobuhiro Iwamatsu #ifndef CONFIG_RMSTP5_ENA
79*7a7d246dSNobuhiro Iwamatsu #define CONFIG_RMSTP5_ENA	0x00
80*7a7d246dSNobuhiro Iwamatsu #endif
81*7a7d246dSNobuhiro Iwamatsu #ifndef CONFIG_RMSTP6_ENA
82*7a7d246dSNobuhiro Iwamatsu #define CONFIG_RMSTP6_ENA	0x00
83*7a7d246dSNobuhiro Iwamatsu #endif
84*7a7d246dSNobuhiro Iwamatsu #ifndef CONFIG_RMSTP7_ENA
85*7a7d246dSNobuhiro Iwamatsu #define CONFIG_RMSTP7_ENA	0x00
86*7a7d246dSNobuhiro Iwamatsu #endif
87*7a7d246dSNobuhiro Iwamatsu #ifndef CONFIG_RMSTP8_ENA
88*7a7d246dSNobuhiro Iwamatsu #define CONFIG_RMSTP8_ENA	0x00
89*7a7d246dSNobuhiro Iwamatsu #endif
90*7a7d246dSNobuhiro Iwamatsu #ifndef CONFIG_RMSTP9_ENA
91*7a7d246dSNobuhiro Iwamatsu #define CONFIG_RMSTP9_ENA	0x00
92*7a7d246dSNobuhiro Iwamatsu #endif
93*7a7d246dSNobuhiro Iwamatsu #ifndef CONFIG_RMSTP10_ENA
94*7a7d246dSNobuhiro Iwamatsu #define CONFIG_RMSTP10_ENA	0x00
95*7a7d246dSNobuhiro Iwamatsu #endif
96*7a7d246dSNobuhiro Iwamatsu #ifndef CONFIG_RMSTP11_ENA
97*7a7d246dSNobuhiro Iwamatsu #define CONFIG_RMSTP11_ENA	0x00
98*7a7d246dSNobuhiro Iwamatsu #endif
99*7a7d246dSNobuhiro Iwamatsu 
100*7a7d246dSNobuhiro Iwamatsu struct mstp_ctl {
101*7a7d246dSNobuhiro Iwamatsu 	u32 s_addr;
102*7a7d246dSNobuhiro Iwamatsu 	u32 s_dis;
103*7a7d246dSNobuhiro Iwamatsu 	u32 s_ena;
104*7a7d246dSNobuhiro Iwamatsu 	u32 r_addr;
105*7a7d246dSNobuhiro Iwamatsu 	u32 r_dis;
106*7a7d246dSNobuhiro Iwamatsu 	u32 r_ena;
107*7a7d246dSNobuhiro Iwamatsu };
108*7a7d246dSNobuhiro Iwamatsu 
109*7a7d246dSNobuhiro Iwamatsu #endif /* __ASM_ARCH_RCAR_MSTP_H */
110