1 /***************************************************************************//**
2  * @file
3  * @brief Verify that part specific main header files are supported and included
4  * @author Energy Micro AS
5  * @version 3.0.0
6  *******************************************************************************
7  * @section License
8  * <b>(C) Copyright 2012 Energy Micro AS, http://www.energymicro.com</b>
9  *******************************************************************************
10  *
11  * Permission is granted to anyone to use this software for any purpose,
12  * including commercial applications, and to alter it and redistribute it
13  * freely, subject to the following restrictions:
14  *
15  * 1. The origin of this software must not be misrepresented; you must not
16  *    claim that you wrote the original software.
17  * 2. Altered source versions must be plainly marked as such, and must not be
18  *    misrepresented as being the original software.
19  * 3. This notice may not be removed or altered from any source distribution.
20  *
21  * DISCLAIMER OF WARRANTY/LIMITATION OF REMEDIES: Energy Micro AS has no
22  * obligation to support this Software. Energy Micro AS is providing the
23  * Software "AS IS", with no express or implied warranties of any kind,
24  * including, but not limited to, any implied warranties of merchantability
25  * or fitness for any particular purpose or warranties against infringement
26  * of any proprietary rights of a third party.
27  *
28  * Energy Micro AS will not be liable for any consequential, incidental, or
29  * special damages, or any other relief, or for any claim by any third party,
30  * arising from your use of this Software.
31  *
32  ******************************************************************************/
33 #ifndef __EM_PART_H
34 #define __EM_PART_H
35 
36 #ifdef __cplusplus
37 extern "C" {
38 #endif
39 
40 /***************************************************************************//**
41  * @addtogroup EM_Library
42  * @{
43  ******************************************************************************/
44 
45 /***************************************************************************//**
46  * @addtogroup Part
47  * @brief Lists all Energy Micro parts that are supported by emlib
48  * @{
49  ******************************************************************************/
50 
51 /* Gecko parts */
52 #if defined(EFM32G200F16)
53 #include "efm32.h"
54 #elif defined(EFM32G200F32)
55 #include "efm32.h"
56 #elif defined(EFM32G200F64)
57 #include "efm32.h"
58 #elif defined(EFM32G210F128)
59 #include "efm32.h"
60 #elif defined(EFM32G222F128)
61 #include "efm32.h"
62 #elif defined(EFM32G222F32)
63 #include "efm32.h"
64 #elif defined(EFM32G222F64)
65 #include "efm32.h"
66 #elif defined(EFM32G230F128)
67 #include "efm32.h"
68 #elif defined(EFM32G230F32)
69 #include "efm32.h"
70 #elif defined(EFM32G230F64)
71 #include "efm32.h"
72 #elif defined(EFM32G232F128)
73 #include "efm32.h"
74 #elif defined(EFM32G232F32)
75 #include "efm32.h"
76 #elif defined(EFM32G232F64)
77 #include "efm32.h"
78 #elif defined(EFM32G280F128)
79 #include "efm32.h"
80 #elif defined(EFM32G280F32)
81 #include "efm32.h"
82 #elif defined(EFM32G280F64)
83 #include "efm32.h"
84 #elif defined(EFM32G290F128)
85 #include "efm32.h"
86 #elif defined(EFM32G290F32)
87 #include "efm32.h"
88 #elif defined(EFM32G290F64)
89 #include "efm32.h"
90 #elif defined(EFM32G840F128)
91 #include "efm32.h"
92 #elif defined(EFM32G840F32)
93 #include "efm32.h"
94 #elif defined(EFM32G840F64)
95 #include "efm32.h"
96 #elif defined(EFM32G842F128)
97 #include "efm32.h"
98 #elif defined(EFM32G842F32)
99 #include "efm32.h"
100 #elif defined(EFM32G842F64)
101 #include "efm32.h"
102 #elif defined(EFM32G880F128)
103 #include "efm32.h"
104 #elif defined(EFM32G880F32)
105 #include "efm32.h"
106 #elif defined(EFM32G880F64)
107 #include "efm32.h"
108 #elif defined(EFM32G890F128)
109 #include "efm32.h"
110 #elif defined(EFM32G890F32)
111 #include "efm32.h"
112 #elif defined(EFM32G890F64)
113 #include "efm32.h"
114 /* Tiny Gecko parts */
115 #elif defined(EFM32TG108F16)
116 #include "efm32.h"
117 #elif defined(EFM32TG108F32)
118 #include "efm32.h"
119 #elif defined(EFM32TG108F4)
120 #include "efm32.h"
121 #elif defined(EFM32TG108F8)
122 #include "efm32.h"
123 #elif defined(EFM32TG110F16)
124 #include "efm32.h"
125 #elif defined(EFM32TG110F32)
126 #include "efm32.h"
127 #elif defined(EFM32TG110F4)
128 #include "efm32.h"
129 #elif defined(EFM32TG110F8)
130 #include "efm32.h"
131 #elif defined(EFM32TG210F16)
132 #include "efm32.h"
133 #elif defined(EFM32TG210F32)
134 #include "efm32.h"
135 #elif defined(EFM32TG210F8)
136 #include "efm32.h"
137 #elif defined(EFM32TG222F16)
138 #include "efm32.h"
139 #elif defined(EFM32TG222F32)
140 #include "efm32.h"
141 #elif defined(EFM32TG222F8)
142 #include "efm32.h"
143 #elif defined(EFM32TG230F16)
144 #include "efm32.h"
145 #elif defined(EFM32TG230F32)
146 #include "efm32.h"
147 #elif defined(EFM32TG230F8)
148 #include "efm32.h"
149 #elif defined(EFM32TG232F16)
150 #include "efm32.h"
151 #elif defined(EFM32TG232F32)
152 #include "efm32.h"
153 #elif defined(EFM32TG232F8)
154 #include "efm32.h"
155 #elif defined(EFM32TG822F16)
156 #include "efm32.h"
157 #elif defined(EFM32TG822F32)
158 #include "efm32.h"
159 #elif defined(EFM32TG822F8)
160 #include "efm32.h"
161 #elif defined(EFM32TG840F16)
162 #include "efm32.h"
163 #elif defined(EFM32TG840F32)
164 #include "efm32.h"
165 #elif defined(EFM32TG840F8)
166 #include "efm32.h"
167 #elif defined(EFM32TG842F16)
168 #include "efm32.h"
169 #elif defined(EFM32TG842F32)
170 #include "efm32.h"
171 #elif defined(EFM32TG842F8)
172 #include "efm32.h"
173 /* Giant Gecko parts */
174 #elif defined(EFM32GG230F1024)
175 #include "efm32.h"
176 #elif defined(EFM32GG230F512)
177 #include "efm32.h"
178 #elif defined(EFM32GG232F1024)
179 #include "efm32.h"
180 #elif defined(EFM32GG232F512)
181 #include "efm32.h"
182 #elif defined(EFM32GG280F1024)
183 #include "efm32.h"
184 #elif defined(EFM32GG280F512)
185 #include "efm32.h"
186 #elif defined(EFM32GG290F1024)
187 #include "efm32.h"
188 #elif defined(EFM32GG290F512)
189 #include "efm32.h"
190 #elif defined(EFM32GG295F1024)
191 #include "efm32.h"
192 #elif defined(EFM32GG295F512)
193 #include "efm32.h"
194 #elif defined(EFM32GG330F1024)
195 #include "efm32.h"
196 #elif defined(EFM32GG330F512)
197 #include "efm32.h"
198 #elif defined(EFM32GG332F1024)
199 #include "efm32.h"
200 #elif defined(EFM32GG332F512)
201 #include "efm32.h"
202 #elif defined(EFM32GG380F1024)
203 #include "efm32.h"
204 #elif defined(EFM32GG380F512)
205 #include "efm32.h"
206 #elif defined(EFM32GG390F1024)
207 #include "efm32.h"
208 #elif defined(EFM32GG390F512)
209 #include "efm32.h"
210 #elif defined(EFM32GG395F1024)
211 #include "efm32.h"
212 #elif defined(EFM32GG395F512)
213 #include "efm32.h"
214 #elif defined(EFM32GG840F1024)
215 #include "efm32.h"
216 #elif defined(EFM32GG840F512)
217 #include "efm32.h"
218 #elif defined(EFM32GG842F1024)
219 #include "efm32.h"
220 #elif defined(EFM32GG842F512)
221 #include "efm32.h"
222 #elif defined(EFM32GG880F1024)
223 #include "efm32.h"
224 #elif defined(EFM32GG880F512)
225 #include "efm32.h"
226 #elif defined(EFM32GG890F1024)
227 #include "efm32.h"
228 #elif defined(EFM32GG890F512)
229 #include "efm32.h"
230 #elif defined(EFM32GG895F1024)
231 #include "efm32.h"
232 #elif defined(EFM32GG895F512)
233 #include "efm32.h"
234 #elif defined(EFM32GG940F1024)
235 #include "efm32.h"
236 #elif defined(EFM32GG940F512)
237 #include "efm32.h"
238 #elif defined(EFM32GG942F1024)
239 #include "efm32.h"
240 #elif defined(EFM32GG942F512)
241 #include "efm32.h"
242 #elif defined(EFM32GG980F1024)
243 #include "efm32.h"
244 #elif defined(EFM32GG980F512)
245 #include "efm32.h"
246 #elif defined(EFM32GG990F1024)
247 #include "efm32.h"
248 #elif defined(EFM32GG990F512)
249 #include "efm32.h"
250 #elif defined(EFM32GG995F1024)
251 #include "efm32.h"
252 #elif defined(EFM32GG995F512)
253 #include "efm32.h"
254 /* Leopard Gecko parts */
255 #elif defined(EFM32LG230F128)
256 #include "efm32.h"
257 #elif defined(EFM32LG230F256)
258 #include "efm32.h"
259 #elif defined(EFM32LG230F64)
260 #include "efm32.h"
261 #elif defined(EFM32LG232F128)
262 #include "efm32.h"
263 #elif defined(EFM32LG232F256)
264 #include "efm32.h"
265 #elif defined(EFM32LG232F64)
266 #include "efm32.h"
267 #elif defined(EFM32LG280F128)
268 #include "efm32.h"
269 #elif defined(EFM32LG280F256)
270 #include "efm32.h"
271 #elif defined(EFM32LG280F64)
272 #include "efm32.h"
273 #elif defined(EFM32LG290F128)
274 #include "efm32.h"
275 #elif defined(EFM32LG290F256)
276 #include "efm32.h"
277 #elif defined(EFM32LG290F64)
278 #include "efm32.h"
279 #elif defined(EFM32LG295F128)
280 #include "efm32.h"
281 #elif defined(EFM32LG295F256)
282 #include "efm32.h"
283 #elif defined(EFM32LG295F64)
284 #include "efm32.h"
285 #elif defined(EFM32LG330F128)
286 #include "efm32.h"
287 #elif defined(EFM32LG330F256)
288 #include "efm32.h"
289 #elif defined(EFM32LG330F64)
290 #include "efm32.h"
291 #elif defined(EFM32LG332F128)
292 #include "efm32.h"
293 #elif defined(EFM32LG332F256)
294 #include "efm32.h"
295 #elif defined(EFM32LG332F64)
296 #include "efm32.h"
297 #elif defined(EFM32LG380F128)
298 #include "efm32.h"
299 #elif defined(EFM32LG380F256)
300 #include "efm32.h"
301 #elif defined(EFM32LG380F64)
302 #include "efm32.h"
303 #elif defined(EFM32LG390F128)
304 #include "efm32.h"
305 #elif defined(EFM32LG390F256)
306 #include "efm32.h"
307 #elif defined(EFM32LG390F64)
308 #include "efm32.h"
309 #elif defined(EFM32LG395F128)
310 #include "efm32.h"
311 #elif defined(EFM32LG395F256)
312 #include "efm32.h"
313 #elif defined(EFM32LG395F64)
314 #include "efm32.h"
315 #elif defined(EFM32LG840F128)
316 #include "efm32.h"
317 #elif defined(EFM32LG840F256)
318 #include "efm32.h"
319 #elif defined(EFM32LG840F64)
320 #include "efm32.h"
321 #elif defined(EFM32LG842F128)
322 #include "efm32.h"
323 #elif defined(EFM32LG842F256)
324 #include "efm32.h"
325 #elif defined(EFM32LG842F64)
326 #include "efm32.h"
327 #elif defined(EFM32LG880F128)
328 #include "efm32.h"
329 #elif defined(EFM32LG880F256)
330 #include "efm32.h"
331 #elif defined(EFM32LG880F64)
332 #include "efm32.h"
333 #elif defined(EFM32LG890F128)
334 #include "efm32.h"
335 #elif defined(EFM32LG890F256)
336 #include "efm32.h"
337 #elif defined(EFM32LG890F64)
338 #include "efm32.h"
339 #elif defined(EFM32LG895F128)
340 #include "efm32.h"
341 #elif defined(EFM32LG895F256)
342 #include "efm32.h"
343 #elif defined(EFM32LG895F64)
344 #include "efm32.h"
345 #elif defined(EFM32LG940F128)
346 #include "efm32.h"
347 #elif defined(EFM32LG940F256)
348 #include "efm32.h"
349 #elif defined(EFM32LG940F64)
350 #include "efm32.h"
351 #elif defined(EFM32LG942F128)
352 #include "efm32.h"
353 #elif defined(EFM32LG942F256)
354 #include "efm32.h"
355 #elif defined(EFM32LG942F64)
356 #include "efm32.h"
357 #elif defined(EFM32LG980F128)
358 #include "efm32.h"
359 #elif defined(EFM32LG980F256)
360 #include "efm32.h"
361 #elif defined(EFM32LG980F64)
362 #include "efm32.h"
363 #elif defined(EFM32LG990F128)
364 #include "efm32.h"
365 #elif defined(EFM32LG990F256)
366 #include "efm32.h"
367 #elif defined(EFM32LG990F64)
368 #include "efm32.h"
369 #elif defined(EFM32LG995F128)
370 #include "efm32.h"
371 #elif defined(EFM32LG995F256)
372 #include "efm32.h"
373 /* EFR4 parts */
374 #elif defined(EFR4D1080F256)
375 #include "efr4.h"
376 #elif defined(EFR4D1090F256)
377 #include "efr4.h"
378 #elif defined(EFR4D1092F256)
379 #include "efr4.h"
380 #elif defined(EFR4D2080F256)
381 #include "efr4.h"
382 #elif defined(EFR4D2090F256)
383 #include "efr4.h"
384 #elif defined(EFR4D2092F256)
385 #include "efr4.h"
386 #elif defined(EFR4D2280F256)
387 #include "efr4.h"
388 #elif defined(EFR4D2290F256)
389 #include "efr4.h"
390 #elif defined(EFR4D2292F256)
391 #include "efr4.h"
392 
393 #else
394 #error "em_part.h: PART NUMBER undefined"
395 #endif
396 
397 #if defined(_EFM32_GIANT_FAMILY)
398 /* Add EFM32 Giant and Leopard Gecko specifics here */
399 #define _EFM_DEVICE /**< Energy Micro EFM-type microcontroller */
400 #elif defined(_EFM32_TINY_FAMILY)
401 /* Add EFM32 Tiny Gecko specifics here */
402 #define _EFM_DEVICE /**< Energy Micro EFM-type microcontroller */
403 #elif defined(_EFM32_GECKO_FAMILY)
404 /* Add EFM32 Gecko specifics here */
405 #define _EFM_DEVICE /**< Energy Micro EFM-type microcontroller */
406 #elif defined(_EFR4_DRACO_FAMILY)
407 /* Add EFR4 Draco specifics here */
408 #define _EFR_DEVICE /**< Energy Micro EFR-type RF SoC or transceiver */
409 #else
410 #error "em_part.h: Unknown device type"
411 #endif
412 
413 /** @} (end addtogroup Part) */
414 /** @} (end addtogroup EM_Library) */
415 
416 #ifdef __cplusplus
417 }
418 #endif
419 
420 #endif /* __EM_PART_H */
421