]> git.sur5r.net Git - u-boot/blob - drivers/net/npe/include/IxNpeMicrocode.h
893d8030a101b449e8b46782b5c56cb4fd039aaa
[u-boot] / drivers / net / npe / include / IxNpeMicrocode.h
1 /**
2  * @date   April 18, 2005
3  *
4  * @brief  IXP400 NPE Microcode Image file
5  *
6  * This file was generated by the IxNpeDlImageGen tool.
7  * It contains a NPE microcode image suitable for use
8  * with the NPE Downloader (IxNpeDl) component in the
9  * IXP400 Access Driver software library.
10  *
11  * @par
12  * IXP400 SW Release version 2.0
13  *
14  * -- Copyright Notice --
15  *
16  * @par
17  * Copyright 2001-2005, Intel Corporation.
18  * All rights reserved.
19  *
20  * @par
21  * Redistribution and use in source and binary forms, with or without
22  * modification, are permitted provided that the following conditions
23  * are met:
24  * 1. Redistributions of source code must retain the above copyright
25  *    notice, this list of conditions and the following disclaimer.
26  * 2. Redistributions in binary form must reproduce the above copyright
27  *    notice, this list of conditions and the following disclaimer in the
28  *    documentation and/or other materials provided with the distribution.
29  * 3. Neither the name of the Intel Corporation nor the names of its contributors
30  *    may be used to endorse or promote products derived from this software
31  *    without specific prior written permission.
32  *
33  * @par
34  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
35  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
36  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
37  * ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
38  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
39  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
40  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
41  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
42  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
43  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
44  * SUCH DAMAGE.
45  *
46  * @par
47  * -- End of Copyright Notice --
48 */
49
50 /**
51  * @defgroup IxNpeMicrocode IXP400 NPE Microcode Image Library
52  *
53  * @brief Library containing a set of NPE firmware images, for use
54  * with NPE Downloader s/w component
55  *
56  * @{
57  */
58
59 /**
60  * @def IX_NPE_IMAGE_INCLUDE
61  *
62  * @brief Wrap the following Image identifiers with "#if IX_NPE_IMAGE_INCLUDE ... #endif" to include the image in the library
63  */
64 #define IX_NPE_IMAGE_INCLUDE 1
65
66 /**
67  * @def IX_NPE_IMAGE_OMIT
68  *
69  * @brief Wrap the following Image identifiers with "#if IX_NPE_IMAGE_OMIT ... #endif" to OMIT the image from the library
70  */
71 #define IX_NPE_IMAGE_OMIT    0
72
73
74 #if IX_NPE_IMAGE_INCLUDE
75 /**
76  * @def IX_NPEDL_NPEIMAGE_NPEA_HSS0
77  *
78  * @brief NPE Image Id for NPE-A with HSS-0 Only feature.  It supports 32 channelized and 4 packetized.
79  */
80 #define IX_NPEDL_NPEIMAGE_NPEA_HSS0 0x00010000
81 #endif
82
83 #if IX_NPE_IMAGE_INCLUDE
84 /**
85  * @def IX_NPEDL_NPEIMAGE_NPEA_HSS0_ATM_SPHY_1_PORT
86  *
87  * @brief NPE Image Id for NPE-A with HSS-0 and ATM feature. For HSS, it supports 16/32 channelized and 4/0 packetized. For ATM, it supports AAL5, AAL0 and OAM for UTOPIA SPHY, 1 logical port, 32 VCs. It also has Fast Path support.
88  */
89 #define IX_NPEDL_NPEIMAGE_NPEA_HSS0_ATM_SPHY_1_PORT 0x00020000
90 #endif
91
92 #if IX_NPE_IMAGE_INCLUDE
93 /**
94  * @def IX_NPEDL_NPEIMAGE_NPEA_HSS0_ATM_MPHY_1_PORT
95  *
96  * @brief NPE Image Id for NPE-A with HSS-0 and ATM feature. For HSS, it supports 16/32 channelized and 4/0 packetized. For ATM, it supports AAL5, AAL0 and OAM for UTOPIA MPHY, 1 logical port, 32 VCs. It also has Fast Path support.
97  */
98 #define IX_NPEDL_NPEIMAGE_NPEA_HSS0_ATM_MPHY_1_PORT 0x00030000
99 #endif
100
101 #if IX_NPE_IMAGE_INCLUDE
102 /**
103  * @def IX_NPEDL_NPEIMAGE_NPEA_ATM_MPHY_12_PORT
104  *
105  * @brief NPE Image Id for NPE-A with ATM-Only feature. It supports AAL5, AAL0 and OAM for UTOPIA MPHY, 12 logical ports, 32 VCs. It also has Fast Path support.
106  */
107 #define IX_NPEDL_NPEIMAGE_NPEA_ATM_MPHY_12_PORT 0x00040000
108 #endif
109
110 #if IX_NPE_IMAGE_INCLUDE
111 /**
112  * @def IX_NPEDL_NPEIMAGE_NPEA_DMA
113  *
114  * @brief NPE Image Id for NPE-A with DMA-Only feature.
115  */
116 #define IX_NPEDL_NPEIMAGE_NPEA_DMA 0x00150100
117 #endif
118
119 #if IX_NPE_IMAGE_INCLUDE
120 /**
121  * @def IX_NPEDL_NPEIMAGE_NPEA_HSS_2_PORT
122  *
123  * @brief NPE Image Id for NPE-A with HSS-0 and HSS-1 feature. Each HSS port supports 32 channelized and 4 packetized.
124  */
125 #define IX_NPEDL_NPEIMAGE_NPEA_HSS_2_PORT 0x00090000
126 #endif
127
128 #if IX_NPE_IMAGE_INCLUDE
129 /**
130  * @def IX_NPEDL_NPEIMAGE_NPEA_ETH
131  *
132  * @brief NPE Image Id for NPE-A with Basic Ethernet Rx/Tx which includes: MAC_FILTERING, MAC_LEARNING, SPANNING_TREE, FIREWALL
133  */
134 #define IX_NPEDL_NPEIMAGE_NPEA_ETH 0x10800200
135 #endif
136
137 #if IX_NPE_IMAGE_INCLUDE
138 /**
139  * @def IX_NPEDL_NPEIMAGE_NPEA_ETH_LEARN_FILTER_SPAN_FIREWALL
140  *
141  * @brief NPE Image Id for NPE-A with Basic Ethernet Rx/Tx which includes: MAC_FILTERING, MAC_LEARNING, SPANNING_TREE, FIREWALL
142  */
143 #define IX_NPEDL_NPEIMAGE_NPEA_ETH_LEARN_FILTER_SPAN_FIREWALL 0x10800200
144 #endif
145
146 #if IX_NPE_IMAGE_INCLUDE
147 /**
148  * @def IX_NPEDL_NPEIMAGE_NPEA_ETH_LEARN_FILTER_SPAN_FIREWALL_VLAN_QOS
149  *
150  * @brief NPE Image Id for NPE-A with Ethernet Rx/Tx which includes: MAC_FILTERING, MAC_LEARNING, SPANNING_TREE, FIREWALL, VLAN_QOS
151  */
152 #define IX_NPEDL_NPEIMAGE_NPEA_ETH_LEARN_FILTER_SPAN_FIREWALL_VLAN_QOS 0x10810200
153 #endif
154
155 #if IX_NPE_IMAGE_INCLUDE
156 /**
157  * @def IX_NPEDL_NPEIMAGE_NPEA_ETH_SPAN_FIREWALL_VLAN_QOS_HDR_CONV
158  *
159  * @brief NPE Image Id for NPE-A with Ethernet Rx/Tx which includes: SPANNING_TREE, FIREWALL, VLAN_QOS, HEADER_CONVERSION
160  */
161 #define IX_NPEDL_NPEIMAGE_NPEA_ETH_SPAN_FIREWALL_VLAN_QOS_HDR_CONV 0x10820200
162 #endif
163
164 #if IX_NPE_IMAGE_INCLUDE
165 /**
166  * @def IX_NPEDL_NPEIMAGE_NPEB_ETH
167  *
168  * @brief NPE Image Id for NPE-B with Basic Ethernet Rx/Tx which includes: MAC_FILTERING, MAC_LEARNING, SPANNING_TREE, FIREWALL
169  */
170 #define IX_NPEDL_NPEIMAGE_NPEB_ETH 0x01000200
171 #endif
172
173 #if IX_NPE_IMAGE_INCLUDE
174 /**
175  * @def IX_NPEDL_NPEIMAGE_NPEB_ETH_LEARN_FILTER_SPAN_FIREWALL
176  *
177  * @brief NPE Image Id for NPE-B with Basic Ethernet Rx/Tx which includes: MAC_FILTERING, MAC_LEARNING, SPANNING_TREE, FIREWALL
178  */
179 #define IX_NPEDL_NPEIMAGE_NPEB_ETH_LEARN_FILTER_SPAN_FIREWALL 0x01000200
180 #endif
181
182 #if IX_NPE_IMAGE_INCLUDE
183 /**
184  * @def IX_NPEDL_NPEIMAGE_NPEB_ETH_LEARN_FILTER_SPAN_FIREWALL_VLAN_QOS
185  *
186  * @brief NPE Image Id for NPE-B with Ethernet Rx/Tx which includes: MAC_FILTERING, MAC_LEARNING, SPANNING_TREE, FIREWALL, VLAN_QOS
187  */
188 #define IX_NPEDL_NPEIMAGE_NPEB_ETH_LEARN_FILTER_SPAN_FIREWALL_VLAN_QOS 0x01010200
189 #endif
190
191 #if IX_NPE_IMAGE_INCLUDE
192 /**
193  * @def IX_NPEDL_NPEIMAGE_NPEB_ETH_SPAN_FIREWALL_VLAN_QOS_HDR_CONV
194  *
195  * @brief NPE Image Id for NPE-B with Ethernet Rx/Tx which includes: SPANNING_TREE, FIREWALL, VLAN_QOS, HEADER_CONVERSION
196  */
197 #define IX_NPEDL_NPEIMAGE_NPEB_ETH_SPAN_FIREWALL_VLAN_QOS_HDR_CONV 0x01020200
198 #endif
199
200 #if IX_NPE_IMAGE_INCLUDE
201 /**
202  * @def IX_NPEDL_NPEIMAGE_NPEB_DMA
203  *
204  * @brief NPE Image Id for NPE-B with DMA-Only feature.
205  */
206 #define IX_NPEDL_NPEIMAGE_NPEB_DMA 0x01020100
207 #endif
208
209 #if IX_NPE_IMAGE_INCLUDE
210 /**
211  * @def IX_NPEDL_NPEIMAGE_NPEC_ETH
212  *
213  * @brief NPE Image Id for NPE-C with Basic Ethernet Rx/Tx which includes: MAC_FILTERING, MAC_LEARNING, SPANNING_TREE, FIREWALL
214  */
215 #define IX_NPEDL_NPEIMAGE_NPEC_ETH 0x02000200
216 #endif
217
218 #if IX_NPE_IMAGE_INCLUDE
219 /**
220  * @def IX_NPEDL_NPEIMAGE_NPEC_ETH_LEARN_FILTER_SPAN_FIREWALL
221  *
222  * @brief NPE Image Id for NPE-C with Basic Ethernet Rx/Tx which includes: MAC_FILTERING, MAC_LEARNING, SPANNING_TREE, FIREWALL
223  */
224 #define IX_NPEDL_NPEIMAGE_NPEC_ETH_LEARN_FILTER_SPAN_FIREWALL 0x02000200
225 #endif
226
227 #if IX_NPE_IMAGE_INCLUDE
228 /**
229  * @def IX_NPEDL_NPEIMAGE_NPEC_ETH_LEARN_FILTER_SPAN_FIREWALL_VLAN_QOS
230  *
231  * @brief NPE Image Id for NPE-C with Ethernet Rx/Tx which includes: MAC_FILTERING, MAC_LEARNING, SPANNING_TREE, FIREWALL, VLAN_QOS
232  */
233 #define IX_NPEDL_NPEIMAGE_NPEC_ETH_LEARN_FILTER_SPAN_FIREWALL_VLAN_QOS 0x02010200
234 #endif
235
236 #if IX_NPE_IMAGE_INCLUDE
237 /**
238  * @def IX_NPEDL_NPEIMAGE_NPEC_ETH_SPAN_FIREWALL_VLAN_QOS_HDR_CONV
239  *
240  * @brief NPE Image Id for NPE-C with Ethernet Rx/Tx which includes: SPANNING_TREE, FIREWALL, VLAN_QOS, HEADER_CONVERSION
241  */
242 #define IX_NPEDL_NPEIMAGE_NPEC_ETH_SPAN_FIREWALL_VLAN_QOS_HDR_CONV 0x02020200
243 #endif
244
245 #if IX_NPE_IMAGE_INCLUDE
246 /**
247  * @def IX_NPEDL_NPEIMAGE_NPEC_DMA
248  *
249  * @brief NPE Image Id for NPE-C with DMA-Only feature.
250  */
251 #define IX_NPEDL_NPEIMAGE_NPEC_DMA 0x02080100
252 #endif
253
254 /* Number of NPE firmware images in this library */
255 #define IX_NPE_MICROCODE_AVAILABLE_VERSIONS_COUNT 17
256
257 /* Location of Microcode Images */
258 #ifdef IX_NPE_MICROCODE_FIRMWARE_INCLUDED
259 #ifdef IX_NPEDL_READ_MICROCODE_FROM_FILE
260
261 extern UINT32* ixNpeMicrocode_binaryArray;
262
263 #else
264
265 extern unsigned IxNpeMicrocode_array[];
266
267 #endif
268 #endif
269
270 /*
271  * sr: undef all but the bare minimum to reduce flash usage for U-Boot
272  */
273 #undef IX_NPEDL_NPEIMAGE_NPEA_HSS0
274 #undef IX_NPEDL_NPEIMAGE_NPEA_HSS0_ATM_SPHY_1_PORT
275 #undef IX_NPEDL_NPEIMAGE_NPEA_HSS0_ATM_MPHY_1_PORT
276 #undef IX_NPEDL_NPEIMAGE_NPEA_ATM_MPHY_12_PORT
277 #undef IX_NPEDL_NPEIMAGE_NPEA_DMA
278 #undef IX_NPEDL_NPEIMAGE_NPEA_HSS_2_PORT
279 #undef IX_NPEDL_NPEIMAGE_NPEA_ETH
280 #undef IX_NPEDL_NPEIMAGE_NPEA_ETH_LEARN_FILTER_SPAN_FIREWALL
281 #undef IX_NPEDL_NPEIMAGE_NPEA_ETH_LEARN_FILTER_SPAN_FIREWALL_VLAN_QOS
282 #undef IX_NPEDL_NPEIMAGE_NPEA_ETH_SPAN_FIREWALL_VLAN_QOS_HDR_CONV
283 #undef IX_NPEDL_NPEIMAGE_NPEB_ETH
284 #undef IX_NPEDL_NPEIMAGE_NPEB_ETH_LEARN_FILTER_SPAN_FIREWALL
285 /* #undef IX_NPEDL_NPEIMAGE_NPEB_ETH_LEARN_FILTER_SPAN_FIREWALL_VLAN_QOS */
286 #undef IX_NPEDL_NPEIMAGE_NPEB_ETH_SPAN_FIREWALL_VLAN_QOS_HDR_CONV
287 #undef IX_NPEDL_NPEIMAGE_NPEB_DMA
288 #undef IX_NPEDL_NPEIMAGE_NPEC_ETH
289 #undef IX_NPEDL_NPEIMAGE_NPEC_ETH_LEARN_FILTER_SPAN_FIREWALL
290 /* #undef IX_NPEDL_NPEIMAGE_NPEC_ETH_LEARN_FILTER_SPAN_FIREWALL_VLAN_QOS */
291 #undef IX_NPEDL_NPEIMAGE_NPEC_ETH_SPAN_FIREWALL_VLAN_QOS_HDR_CONV
292 #undef IX_NPEDL_NPEIMAGE_NPEC_DMA
293
294 /**
295  * @} defgroup IxNpeMicrocode
296  */