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