blob: 893d8030a101b449e8b46782b5c56cb4fd039aaa [file] [log] [blame]
Wolfgang Denk4646d2a2006-05-30 15:56:48 +02001/**
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
261extern UINT32* ixNpeMicrocode_binaryArray;
262
263#else
264
265extern 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 */