1 /*
2 * Copyright (c) 2020 - 2024 Renesas Electronics Corporation and/or its affiliates
3 *
4 * SPDX-License-Identifier: BSD-3-Clause
5 */
6 
7 /**********************************************************************************************************************
8  * File Name    : mhu_iodefine.h
9  * Version      : 1.00
10  * Description  : IO define file for mhu.
11  *********************************************************************************************************************/
12 
13 /* ================================================================================================================= */
14 /* ================                              Device Specific Cluster Section                              ====== */
15 /* ================================================================================================================= */
16 
17 /* ================================================================================================================= */
18 /* ================                            Device Specific Peripheral Section                             ====== */
19 /* ================================================================================================================= */
20 
21 #ifndef MHU_IODEFINE_H
22 #define MHU_IODEFINE_H
23 
24 typedef struct
25 {
26     union
27     {
28         __IM uint32_t MSG_INT_STSn;
29         struct
30         {
31             __IM uint32_t STAT : 1;
32             uint32_t           : 31;
33         } MSG_INT_STSn_b;
34     };
35 
36     union
37     {
38         __IOM uint32_t MSG_INT_SETn;
39         struct
40         {
41             __IOM uint32_t SET : 1;
42             uint32_t           : 31;
43         } MSG_INT_SETn_b;
44     };
45 
46     union
47     {
48         __IOM uint32_t MSG_INT_CLRn;
49         struct
50         {
51             __IOM uint32_t CLEAR : 1;
52             uint32_t             : 31;
53         } MSG_INT_CLRn_b;
54     };
55 
56     __IM uint8_t RESERVED[4];
57     union
58     {
59         __IM uint32_t RSP_INT_STSn;
60         struct
61         {
62             __IM uint32_t STAT : 1;
63             uint32_t           : 31;
64         } RSP_INT_STSn_b;
65     };
66 
67     union
68     {
69         __IOM uint32_t RSP_INT_SETn;
70         struct
71         {
72             __IOM uint32_t SET : 1;
73             uint32_t           : 31;
74         } RSP_INT_SETn_b;
75     };
76 
77     union
78     {
79         __IOM uint32_t RSP_INT_CLRn;
80         struct
81         {
82             __IOM uint32_t CLEAR : 1;
83             uint32_t             : 31;
84         } RSP_INT_CLRn_b;
85     };
86 } R_MHU0_Type;
87 
88 typedef struct
89 {
90     union
91     {
92         __IM uint32_t SW_INT_STSn;
93         struct
94         {
95             __IM uint32_t STAT : 1;
96             uint32_t           : 31;
97         } SW_INT_STSn_b;
98     };
99 
100     union
101     {
102         __IOM uint32_t SW_INT_SETn;
103         struct
104         {
105             __IOM uint32_t SET : 1;
106             uint32_t           : 31;
107         } SW_INT_SETn_b;
108     };
109 
110     union
111     {
112         __IOM uint32_t SW_INT_CLRn;
113         struct
114         {
115             __IOM uint32_t CLEAR : 1;
116             uint32_t             : 31;
117         } SW_INT_CLRn_b;
118     };
119 } R_MHU_SWINT0_Type;
120 
121 /* ================================================================================================================= */
122 /* ================                          Device Specific Peripheral Address Map                           ====== */
123 /* ================================================================================================================= */
124 
125 #define R_MHU_NS0_BASE        0x50400000
126 #define R_MHU_NS1_BASE        0x50400020
127 #define R_MHU_NS2_BASE        0x50400040
128 #define R_MHU_NS3_BASE        0x50400060
129 #define R_MHU_NS4_BASE        0x50400080
130 #define R_MHU_NS5_BASE        0x504000A0
131 #define R_MHU_SWINT0_BASE     0x50400800
132 #define R_MHU_SWINT1_BASE     0x50400810
133 #define R_MHU_SWINT2_BASE     0x50400820
134 #define R_MHU_SWINT3_BASE     0x50400830
135 #define R_MHU_S0_BASE         0x40401000
136 #define R_MHU_S1_BASE         0x40401020
137 #define R_MHU_S2_BASE         0x40401040
138 #define R_MHU_S3_BASE         0x40401060
139 #define R_MHU_S4_BASE         0x40401080
140 #define R_MHU_S5_BASE         0x404010A0
141 
142 /* ================================================================================================================= */
143 /* ================                                  Peripheral declaration                                   ====== */
144 /* ================================================================================================================= */
145 
146 #define R_MHU_NS0        ((R_MHU0_Type *) R_MHU_NS0_BASE)
147 #define R_MHU_NS1        ((R_MHU0_Type *) R_MHU_NS1_BASE)
148 #define R_MHU_NS2        ((R_MHU0_Type *) R_MHU_NS2_BASE)
149 #define R_MHU_NS3        ((R_MHU0_Type *) R_MHU_NS3_BASE)
150 #define R_MHU_NS4        ((R_MHU0_Type *) R_MHU_NS4_BASE)
151 #define R_MHU_NS5        ((R_MHU0_Type *) R_MHU_NS5_BASE)
152 #define R_MHU_SWINT0     ((R_MHU_SWINT0_Type *) R_MHU_SWINT0_BASE)
153 #define R_MHU_SWINT1     ((R_MHU_SWINT0_Type *) R_MHU_SWINT1_BASE)
154 #define R_MHU_SWINT2     ((R_MHU_SWINT0_Type *) R_MHU_SWINT2_BASE)
155 #define R_MHU_SWINT3     ((R_MHU_SWINT0_Type *) R_MHU_SWINT3_BASE)
156 #define R_MHU_S0         ((R_MHU0_Type *) R_MHU_S0_BASE)
157 #define R_MHU_S1         ((R_MHU0_Type *) R_MHU_S1_BASE)
158 #define R_MHU_S2         ((R_MHU0_Type *) R_MHU_S2_BASE)
159 #define R_MHU_S3         ((R_MHU0_Type *) R_MHU_S3_BASE)
160 #define R_MHU_S4         ((R_MHU0_Type *) R_MHU_S4_BASE)
161 #define R_MHU_S5         ((R_MHU0_Type *) R_MHU_S5_BASE)
162 
163 #endif                                 /* MHU_IODEFINE_H */
164