1 | /* |
---|
2 | * The authors hereby grant permission to use, copy, modify, distribute, |
---|
3 | * and license this software and its documentation for any purpose, provided |
---|
4 | * that existing copyright notices are retained in all copies and that this |
---|
5 | * notice is included verbatim in any distributions. No written agreement, |
---|
6 | * license, or royalty fee is required for any of the authorized uses. |
---|
7 | * Modifications to this software may be copyrighted by their authors |
---|
8 | * and need not follow the licensing terms described here, provided that |
---|
9 | * the new terms are clearly indicated on the first page of each file where |
---|
10 | * they apply. |
---|
11 | */ |
---|
12 | |
---|
13 | /* |
---|
14 | ** Copyright (C) 2008 Analog Devices Inc., All Rights Reserved. |
---|
15 | ** |
---|
16 | ************************************************************************************ |
---|
17 | ** |
---|
18 | ** This include file contains a list of macro "defines" to enable the programmer |
---|
19 | ** to use symbolic names for the ADSP-BF518 peripherals. |
---|
20 | ** |
---|
21 | ************************************************************************************ |
---|
22 | ** System MMR Register Map |
---|
23 | ************************************************************************************/ |
---|
24 | |
---|
25 | #ifndef _CDEF_BF518_H |
---|
26 | #define _CDEF_BF518_H |
---|
27 | |
---|
28 | /* include all Core registers and bit definitions */ |
---|
29 | #include <defBF518.h> |
---|
30 | |
---|
31 | /* include core specific register pointer definitions */ |
---|
32 | #include <cdef_LPBlackfin.h> |
---|
33 | |
---|
34 | /* SYSTEM & MMR ADDRESS DEFINITIONS FOR ADSP-BF518 */ |
---|
35 | |
---|
36 | /* include cdefBF51x_base.h for the set of #defines that are common to all ADSP-BF51x processors */ |
---|
37 | #include <cdefBF51x_base.h> |
---|
38 | |
---|
39 | #ifdef _MISRA_RULES |
---|
40 | #pragma diag(push) |
---|
41 | #pragma diag(suppress:misra_rule_19_4:"some macro definitions not MISRA compliant") |
---|
42 | #endif /* _MISRA_RULES */ |
---|
43 | |
---|
44 | /* The following are the #defines needed by ADSP-BF518 that are not in the common header */ |
---|
45 | |
---|
46 | /* 10/100 Ethernet Controller */ |
---|
47 | #define pEMAC_OPMODE ((volatile unsigned long *)EMAC_OPMODE) |
---|
48 | #define pEMAC_ADDRLO ((volatile unsigned long *)EMAC_ADDRLO) |
---|
49 | #define pEMAC_ADDRHI ((volatile unsigned long *)EMAC_ADDRHI) |
---|
50 | #define pEMAC_HASHLO ((volatile unsigned long *)EMAC_HASHLO) |
---|
51 | #define pEMAC_HASHHI ((volatile unsigned long *)EMAC_HASHHI) |
---|
52 | #define pEMAC_STAADD ((volatile unsigned long *)EMAC_STAADD) |
---|
53 | #define pEMAC_STADAT ((volatile unsigned long *)EMAC_STADAT) |
---|
54 | #define pEMAC_FLC ((volatile unsigned long *)EMAC_FLC) |
---|
55 | #define pEMAC_VLAN1 ((volatile unsigned long *)EMAC_VLAN1) |
---|
56 | #define pEMAC_VLAN2 ((volatile unsigned long *)EMAC_VLAN2) |
---|
57 | #define pEMAC_WKUP_CTL ((volatile unsigned long *)EMAC_WKUP_CTL) |
---|
58 | #define pEMAC_WKUP_FFMSK0 ((volatile unsigned long *)EMAC_WKUP_FFMSK0) |
---|
59 | #define pEMAC_WKUP_FFMSK1 ((volatile unsigned long *)EMAC_WKUP_FFMSK1) |
---|
60 | #define pEMAC_WKUP_FFMSK2 ((volatile unsigned long *)EMAC_WKUP_FFMSK2) |
---|
61 | #define pEMAC_WKUP_FFMSK3 ((volatile unsigned long *)EMAC_WKUP_FFMSK3) |
---|
62 | #define pEMAC_WKUP_FFCMD ((volatile unsigned long *)EMAC_WKUP_FFCMD) |
---|
63 | #define pEMAC_WKUP_FFOFF ((volatile unsigned long *)EMAC_WKUP_FFOFF) |
---|
64 | #define pEMAC_WKUP_FFCRC0 ((volatile unsigned long *)EMAC_WKUP_FFCRC0) |
---|
65 | #define pEMAC_WKUP_FFCRC1 ((volatile unsigned long *)EMAC_WKUP_FFCRC1) |
---|
66 | |
---|
67 | #define pEMAC_SYSCTL ((volatile unsigned long *)EMAC_SYSCTL) |
---|
68 | #define pEMAC_SYSTAT ((volatile unsigned long *)EMAC_SYSTAT) |
---|
69 | #define pEMAC_RX_STAT ((volatile unsigned long *)EMAC_RX_STAT) |
---|
70 | #define pEMAC_RX_STKY ((volatile unsigned long *)EMAC_RX_STKY) |
---|
71 | #define pEMAC_RX_IRQE ((volatile unsigned long *)EMAC_RX_IRQE) |
---|
72 | #define pEMAC_TX_STAT ((volatile unsigned long *)EMAC_TX_STAT) |
---|
73 | #define pEMAC_TX_STKY ((volatile unsigned long *)EMAC_TX_STKY) |
---|
74 | #define pEMAC_TX_IRQE ((volatile unsigned long *)EMAC_TX_IRQE) |
---|
75 | |
---|
76 | #define pEMAC_MMC_CTL ((volatile unsigned long *)EMAC_MMC_CTL) |
---|
77 | #define pEMAC_MMC_RIRQS ((volatile unsigned long *)EMAC_MMC_RIRQS) |
---|
78 | #define pEMAC_MMC_RIRQE ((volatile unsigned long *)EMAC_MMC_RIRQE) |
---|
79 | #define pEMAC_MMC_TIRQS ((volatile unsigned long *)EMAC_MMC_TIRQS) |
---|
80 | #define pEMAC_MMC_TIRQE ((volatile unsigned long *)EMAC_MMC_TIRQE) |
---|
81 | |
---|
82 | #define pEMAC_RXC_OK ((volatile unsigned long *)EMAC_RXC_OK) |
---|
83 | #define pEMAC_RXC_FCS ((volatile unsigned long *)EMAC_RXC_FCS) |
---|
84 | #define pEMAC_RXC_ALIGN ((volatile unsigned long *)EMAC_RXC_ALIGN) |
---|
85 | #define pEMAC_RXC_OCTET ((volatile unsigned long *)EMAC_RXC_OCTET) |
---|
86 | #define pEMAC_RXC_DMAOVF ((volatile unsigned long *)EMAC_RXC_DMAOVF) |
---|
87 | #define pEMAC_RXC_UNICST ((volatile unsigned long *)EMAC_RXC_UNICST) |
---|
88 | #define pEMAC_RXC_MULTI ((volatile unsigned long *)EMAC_RXC_MULTI) |
---|
89 | #define pEMAC_RXC_BROAD ((volatile unsigned long *)EMAC_RXC_BROAD) |
---|
90 | #define pEMAC_RXC_LNERRI ((volatile unsigned long *)EMAC_RXC_LNERRI) |
---|
91 | #define pEMAC_RXC_LNERRO ((volatile unsigned long *)EMAC_RXC_LNERRO) |
---|
92 | #define pEMAC_RXC_LONG ((volatile unsigned long *)EMAC_RXC_LONG) |
---|
93 | #define pEMAC_RXC_MACCTL ((volatile unsigned long *)EMAC_RXC_MACCTL) |
---|
94 | #define pEMAC_RXC_OPCODE ((volatile unsigned long *)EMAC_RXC_OPCODE) |
---|
95 | #define pEMAC_RXC_PAUSE ((volatile unsigned long *)EMAC_RXC_PAUSE) |
---|
96 | #define pEMAC_RXC_ALLFRM ((volatile unsigned long *)EMAC_RXC_ALLFRM) |
---|
97 | #define pEMAC_RXC_ALLOCT ((volatile unsigned long *)EMAC_RXC_ALLOCT) |
---|
98 | #define pEMAC_RXC_TYPED ((volatile unsigned long *)EMAC_RXC_TYPED) |
---|
99 | #define pEMAC_RXC_SHORT ((volatile unsigned long *)EMAC_RXC_SHORT) |
---|
100 | #define pEMAC_RXC_EQ64 ((volatile unsigned long *)EMAC_RXC_EQ64) |
---|
101 | #define pEMAC_RXC_LT128 ((volatile unsigned long *)EMAC_RXC_LT128) |
---|
102 | #define pEMAC_RXC_LT256 ((volatile unsigned long *)EMAC_RXC_LT256) |
---|
103 | #define pEMAC_RXC_LT512 ((volatile unsigned long *)EMAC_RXC_LT512) |
---|
104 | #define pEMAC_RXC_LT1024 ((volatile unsigned long *)EMAC_RXC_LT1024) |
---|
105 | #define pEMAC_RXC_GE1024 ((volatile unsigned long *)EMAC_RXC_GE1024) |
---|
106 | |
---|
107 | #define pEMAC_TXC_OK ((volatile unsigned long *)EMAC_TXC_OK) |
---|
108 | #define pEMAC_TXC_1COL ((volatile unsigned long *)EMAC_TXC_1COL) |
---|
109 | #define pEMAC_TXC_GT1COL ((volatile unsigned long *)EMAC_TXC_GT1COL) |
---|
110 | #define pEMAC_TXC_OCTET ((volatile unsigned long *)EMAC_TXC_OCTET) |
---|
111 | #define pEMAC_TXC_DEFER ((volatile unsigned long *)EMAC_TXC_DEFER) |
---|
112 | #define pEMAC_TXC_LATECL ((volatile unsigned long *)EMAC_TXC_LATECL) |
---|
113 | #define pEMAC_TXC_XS_COL ((volatile unsigned long *)EMAC_TXC_XS_COL) |
---|
114 | #define pEMAC_TXC_DMAUND ((volatile unsigned long *)EMAC_TXC_DMAUND) |
---|
115 | #define pEMAC_TXC_CRSERR ((volatile unsigned long *)EMAC_TXC_CRSERR) |
---|
116 | #define pEMAC_TXC_UNICST ((volatile unsigned long *)EMAC_TXC_UNICST) |
---|
117 | #define pEMAC_TXC_MULTI ((volatile unsigned long *)EMAC_TXC_MULTI) |
---|
118 | #define pEMAC_TXC_BROAD ((volatile unsigned long *)EMAC_TXC_BROAD) |
---|
119 | #define pEMAC_TXC_XS_DFR ((volatile unsigned long *)EMAC_TXC_XS_DFR) |
---|
120 | #define pEMAC_TXC_MACCTL ((volatile unsigned long *)EMAC_TXC_MACCTL) |
---|
121 | #define pEMAC_TXC_ALLFRM ((volatile unsigned long *)EMAC_TXC_ALLFRM) |
---|
122 | #define pEMAC_TXC_ALLOCT ((volatile unsigned long *)EMAC_TXC_ALLOCT) |
---|
123 | #define pEMAC_TXC_EQ64 ((volatile unsigned long *)EMAC_TXC_EQ64) |
---|
124 | #define pEMAC_TXC_LT128 ((volatile unsigned long *)EMAC_TXC_LT128) |
---|
125 | #define pEMAC_TXC_LT256 ((volatile unsigned long *)EMAC_TXC_LT256) |
---|
126 | #define pEMAC_TXC_LT512 ((volatile unsigned long *)EMAC_TXC_LT512) |
---|
127 | #define pEMAC_TXC_LT1024 ((volatile unsigned long *)EMAC_TXC_LT1024) |
---|
128 | #define pEMAC_TXC_GE1024 ((volatile unsigned long *)EMAC_TXC_GE1024) |
---|
129 | #define pEMAC_TXC_ABORT ((volatile unsigned long *)EMAC_TXC_ABORT) |
---|
130 | |
---|
131 | |
---|
132 | /* EMAC PTP (IEEE 1588) (0xFFC030A0 - 0xFFC030EC)*/ |
---|
133 | #define pEMAC_PTP_CTL ((volatile unsigned short *)EMAC_PTP_CTL) |
---|
134 | #define pEMAC_PTP_IE ((volatile unsigned short *)EMAC_PTP_IE) |
---|
135 | #define pEMAC_PTP_ISTAT ((volatile unsigned short *)EMAC_PTP_ISTAT) |
---|
136 | #define pEMAC_PTP_FOFF ((volatile unsigned long *)EMAC_PTP_FOFF) |
---|
137 | #define pEMAC_PTP_FV1 ((volatile unsigned long *)EMAC_PTP_FV1) |
---|
138 | #define pEMAC_PTP_FV2 ((volatile unsigned long *)EMAC_PTP_FV2) |
---|
139 | #define pEMAC_PTP_FV3 ((volatile unsigned long *)EMAC_PTP_FV3) |
---|
140 | #define pEMAC_PTP_ADDEND ((volatile unsigned long *)EMAC_PTP_ADDEND) |
---|
141 | #define pEMAC_PTP_ACCR ((volatile unsigned long *)EMAC_PTP_ACCR) |
---|
142 | #define pEMAC_PTP_OFFSET ((volatile unsigned long *)EMAC_PTP_OFFSET) |
---|
143 | #define pEMAC_PTP_TIMELO ((volatile unsigned long *)EMAC_PTP_TIMELO) |
---|
144 | #define pEMAC_PTP_TIMEHI ((volatile unsigned long *)EMAC_PTP_TIMEHI) |
---|
145 | #define pEMAC_PTP_RXSNAPLO ((volatile unsigned long *)EMAC_PTP_RXSNAPLO) |
---|
146 | #define pEMAC_PTP_RXSNAPHI ((volatile unsigned long *)EMAC_PTP_RXSNAPHI) |
---|
147 | #define pEMAC_PTP_TXSNAPLO ((volatile unsigned long *)EMAC_PTP_TXSNAPLO) |
---|
148 | #define pEMAC_PTP_TXSNAPHI ((volatile unsigned long *)EMAC_PTP_TXSNAPHI) |
---|
149 | #define pEMAC_PTP_ALARMLO ((volatile unsigned long *)EMAC_PTP_ALARMLO) |
---|
150 | #define pEMAC_PTP_ALARMHI ((volatile unsigned long *)EMAC_PTP_ALARMHI) |
---|
151 | #define pEMAC_PTP_ID_OFF ((volatile unsigned short *)EMAC_PTP_ID_OFF) |
---|
152 | #define pEMAC_PTP_ID_SNAP ((volatile unsigned long *)EMAC_PTP_ID_SNAP) |
---|
153 | #define pEMAC_PTP_PPS_STARTLO ((volatile unsigned long *)EMAC_PTP_PPS_STARTLO) |
---|
154 | #define pEMAC_PTP_PPS_STARTHI ((volatile unsigned long *)EMAC_PTP_PPS_STARTHI) |
---|
155 | #define pEMAC_PTP_PPS_PERIOD ((volatile unsigned long *)EMAC_PTP_PPS_PERIOD) |
---|
156 | |
---|
157 | |
---|
158 | /* SDH Registers (0xFFC03800 - 0xFFC03CFF)*/ |
---|
159 | #define pSDH_PWR_CTL ((volatile unsigned short *)SDH_PWR_CTL) |
---|
160 | #define pSDH_CLK_CTL ((volatile unsigned short *)SDH_CLK_CTL) |
---|
161 | #define pSDH_ARGUMENT ((volatile unsigned long *)SDH_ARGUMENT) |
---|
162 | #define pSDH_COMMAND ((volatile unsigned short *)SDH_COMMAND) |
---|
163 | #define pSDH_RESP_CMD ((volatile unsigned short *)SDH_RESP_CMD) |
---|
164 | #define pSDH_RESPONSE0 ((volatile unsigned long *)SDH_RESPONSE0) |
---|
165 | #define pSDH_RESPONSE1 ((volatile unsigned long *)SDH_RESPONSE1) |
---|
166 | #define pSDH_RESPONSE2 ((volatile unsigned long *)SDH_RESPONSE2) |
---|
167 | #define pSDH_RESPONSE3 ((volatile unsigned long *)SDH_RESPONSE3) |
---|
168 | #define pSDH_DATA_TIMER ((volatile unsigned long *)SDH_DATA_TIMER) |
---|
169 | #define pSDH_DATA_LGTH ((volatile unsigned short *)SDH_DATA_LGTH) |
---|
170 | #define pSDH_DATA_CTL ((volatile unsigned short *)SDH_DATA_CTL) |
---|
171 | #define pSDH_DATA_CNT ((volatile unsigned short *)SDH_DATA_CNT) |
---|
172 | #define pSDH_STATUS ((volatile unsigned long *)SDH_STATUS) |
---|
173 | #define pSDH_STATUS_CLR ((volatile unsigned short *)SDH_STATUS_CLR) |
---|
174 | #define pSDH_MASK0 ((volatile unsigned long *)SDH_MASK0) |
---|
175 | #define pSDH_MASK1 ((volatile unsigned long *)SDH_MASK1) |
---|
176 | #define pSDH_FIFO_CNT ((volatile unsigned short *)SDH_FIFO_CNT) |
---|
177 | #define pSDH_FIFO ((volatile unsigned long *)SDH_FIFO) |
---|
178 | #define pSDH_E_STATUS ((volatile unsigned short *)SDH_E_STATUS) |
---|
179 | #define pSDH_E_MASK ((volatile unsigned short *)SDH_E_MASK) |
---|
180 | #define pSDH_CFG ((volatile unsigned short *)SDH_CFG) |
---|
181 | #define pSDH_RD_WAIT_EN ((volatile unsigned short *)SDH_RD_WAIT_EN) |
---|
182 | #define pSDH_PID0 ((volatile unsigned short *)SDH_PID0) |
---|
183 | #define pSDH_PID1 ((volatile unsigned short *)SDH_PID1) |
---|
184 | #define pSDH_PID2 ((volatile unsigned short *)SDH_PID2) |
---|
185 | #define pSDH_PID3 ((volatile unsigned short *)SDH_PID3) |
---|
186 | #define pSDH_PID4 ((volatile unsigned short *)SDH_PID4) |
---|
187 | #define pSDH_PID5 ((volatile unsigned short *)SDH_PID5) |
---|
188 | #define pSDH_PID6 ((volatile unsigned short *)SDH_PID6) |
---|
189 | #define pSDH_PID7 ((volatile unsigned short *)SDH_PID7) |
---|
190 | |
---|
191 | |
---|
192 | /* RSI Registers (0xFFC03800 - 0xFFC03CFF)*/ |
---|
193 | #define pRSI_PWR_CONTROL ((volatile unsigned short *)RSI_PWR_CONTROL) |
---|
194 | #define pRSI_CLK_CONTROL ((volatile unsigned short *)RSI_CLK_CONTROL) |
---|
195 | #define pRSI_ARGUMENT ((volatile unsigned long *)RSI_ARGUMENT) |
---|
196 | #define pRSI_COMMAND ((volatile unsigned short *)RSI_COMMAND) |
---|
197 | #define pRSI_RESP_CMD ((volatile unsigned short *)RSI_RESP_CMD) |
---|
198 | #define pRSI_RESPONSE0 ((volatile unsigned long *)RSI_RESPONSE0) |
---|
199 | #define pRSI_RESPONSE1 ((volatile unsigned long *)RSI_RESPONSE1) |
---|
200 | #define pRSI_RESPONSE2 ((volatile unsigned long *)RSI_RESPONSE2) |
---|
201 | #define pRSI_RESPONSE3 ((volatile unsigned long *)RSI_RESPONSE3) |
---|
202 | #define pRSI_DATA_TIMER ((volatile unsigned long *)RSI_DATA_TIMER) |
---|
203 | #define pRSI_DATA_LGTH ((volatile unsigned short *)RSI_DATA_LGTH) |
---|
204 | #define pRSI_DATA_CONTROL ((volatile unsigned short *)RSI_DATA_CONTROL) |
---|
205 | #define pRSI_DATA_CNT ((volatile unsigned short *)RSI_DATA_CNT) |
---|
206 | #define pRSI_STATUS ((volatile unsigned long *)RSI_STATUS) |
---|
207 | #define pRSI_STATUSCL ((volatile unsigned short *)RSI_STATUSCL) |
---|
208 | #define pRSI_MASK0 ((volatile unsigned long *)RSI_MASK0) |
---|
209 | #define pRSI_MASK1 ((volatile unsigned long *)RSI_MASK1) |
---|
210 | #define pRSI_FIFO_CNT ((volatile unsigned short *)RSI_FIFO_CNT) |
---|
211 | #define pRSI_CEATA_CONTROL ((volatile unsigned short *)RSI_CEATA_CONTROL) |
---|
212 | #define pRSI_FIFO ((volatile unsigned long *)RSI_FIFO) |
---|
213 | #define pRSI_ESTAT ((volatile unsigned short *)RSI_ESTAT) |
---|
214 | #define pRSI_EMASK ((volatile unsigned short *)RSI_EMASK) |
---|
215 | #define pRSI_CONFIG ((volatile unsigned short *)RSI_CONFIG) |
---|
216 | #define pRSI_RD_WAIT_EN ((volatile unsigned short *)RSI_RD_WAIT_EN) |
---|
217 | #define pRSI_PID0 ((volatile unsigned short *)RSI_PID0) |
---|
218 | #define pRSI_PID1 ((volatile unsigned short *)RSI_PID1) |
---|
219 | #define pRSI_PID2 ((volatile unsigned short *)RSI_PID2) |
---|
220 | #define pRSI_PID3 ((volatile unsigned short *)RSI_PID3) |
---|
221 | |
---|
222 | #ifdef _MISRA_RULES |
---|
223 | #pragma diag(pop) |
---|
224 | #endif /* _MISRA_RULES */ |
---|
225 | |
---|
226 | #endif /* _CDEF_BF518_H */ |
---|