source: rtems-libbsd/rtemsbsd/include/machine/rtems-bsd-nexus-bus.h @ 8f870a3

Last change on this file since 8f870a3 was 8f870a3, checked in by Gedare Bloom <gedare@…>, on 06/25/21 at 18:43:28

aarch64/nexus: add GEM definitions for Versal

  • Property mode set to 100644
File size: 22.2 KB
Line 
1/*
2 * Copyright (c) 2013-2015 embedded brains GmbH.  All rights reserved.
3 *
4 *  embedded brains GmbH
5 *  Dornierstr. 4
6 *  82178 Puchheim
7 *  Germany
8 *  <rtems@embedded-brains.de>
9 *
10 * Copyright (c) 2016 Chris Johns <chrisj@rtems.org> All rights reserved.
11
12 * Redistribution and use in source and binary forms, with or without
13 * modification, are permitted provided that the following conditions
14 * are met:
15 * 1. Redistributions of source code must retain the above copyright
16 *    notice, this list of conditions and the following disclaimer.
17 * 2. Redistributions in binary form must reproduce the above copyright
18 *    notice, this list of conditions and the following disclaimer in the
19 *    documentation and/or other materials provided with the distribution.
20 *
21 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
22 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
23 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
24 * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
25 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
26 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
27 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
28 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
29 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
30 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
31 * SUCH DAMAGE.
32 */
33
34/*
35 * The Nexus bus devices.
36 *
37 * Driver Summary is:
38 *
39 *  Devices:
40 *   RTEMS_BSD_DRIVER_XILINX_ZYNQ_SLCR
41 *   RTEMS_BSD_DRIVER_LPC32XX_PWR
42 *   RTEMS_BSD_DRIVER_LPC32XX_TSC
43 *
44 *  Buses:
45 *   RTEMS_BSD_DRIVER_PC_LEGACY
46 *
47 *  USB:
48 *   RTEMS_BSD_DRIVER_DW_OTG
49 *   RTEMS_BSD_DRIVER_LPC32XX_OHCI
50 *   RTEMS_BSD_DRIVER_MMC
51 *   RTEMS_BSD_DRIVER_USB
52 *   RTEMS_BSD_DRIVER_USB_MASS
53 *
54 *  Networking:
55 *   RTEMS_BSD_DRIVER_SMC0
56 *    RTEMS_BSD_DRIVER_SMC0_BASE_ADDR
57 *    RTEMS_BSD_DRIVER_SMC0_IRQ
58 *   RTEMS_BSD_DRIVER_LPC32XX_LPE
59 *   RTEMS_BSD_DRIVER_FEC
60 *   RTEMS_BSD_DRIVER_XILINX_ZYNQ_CGEM0
61 *    RTEMS_BSD_DRIVER_CGEM0_IRQ
62 *   RTEMS_BSD_DRIVER_DWC0
63 *    RTEMS_BSD_DRIVER_DWC0_BASE_ADDR
64 *    RTEMS_BSD_DRIVER_DWC0_IRQ
65 *   RTEMS_BSD_DRIVER_TSEC
66 *    RTEMS_BSD_DRIVER_TSEC_BASE_ADDR
67 *    RTEMS_BSD_DRIVER_TSEC_TX_IRQ
68 *    RTEMS_BSD_DRIVER_TSEC_RX_IRQ
69 *    RTEMS_BSD_DRIVER_TSEC_ER_IRQ
70 *   RTEMS_BSD_DRIVER_PCI_LEM
71 *   RTEMS_BSD_DRIVER_PCI_IGB
72 *   RTEMS_BSD_DRIVER_PCI_EM
73 *   RTEMS_BSD_DRIVER_PCI_RE
74 *
75 *  MMI PHY:
76 *   RTEMS_BSD_DRIVER_E1000PHY
77 *   RTEMS_BSD_DRIVER_ICSPHY
78 *   RTEMS_BSD_DRIVER_REPHY
79 *   RTEMS_BSD_DRIVER_PHY_MIC
80 */
81
82#if !defined(RTEMS_BSD_NEXUS_BUS_h)
83#define RTEMS_BSD_NEXUS_BUS_h
84
85#include <rtems/bsd/bsd.h>
86
87#ifdef __cplusplus
88extern "C" {
89#endif /* __cplusplus */
90
91/**
92 * Keep the order of the groups.
93 **/
94
95/**
96 ** Devices
97 **
98 **/
99
100/*
101 * Xilinx Zynq System Level Control Registers (SLCR).
102 */
103#if !defined(RTEMS_BSD_DRIVER_XILINX_ZYNQ_SLCR)
104  /*
105   * Hard IP part of the Zynq so a fixed address.
106   */
107  #define RTEMS_BSD_DRIVER_XILINX_ZYNQ_SLCR                            \
108    static const rtems_bsd_device_resource zy7_slcr_res[] = {          \
109      {                                                                 \
110        .type = RTEMS_BSD_RES_MEMORY,                                   \
111        .start_request = 0,                                             \
112        .start_actual = 0xf8000000                                      \
113      }                                                                 \
114    };                                                                  \
115    RTEMS_BSD_DEFINE_NEXUS_DEVICE(zy7_slcr, 0,                          \
116                                  RTEMS_ARRAY_SIZE(zy7_slcr_res),      \
117                                  &zy7_slcr_res[0])
118#endif /* RTEMS_BSD_DRIVER_XILINX_ZYNQ_SLCR */
119
120/*
121 * LPC32XX Power Control (PWR).
122 */
123#if !defined(RTEMS_BSD_DRIVER_LPC32XX_PWR)
124  #define RTEMS_BSD_DRIVER_LPC32XX_PWR                                        \
125    static const rtems_bsd_device_resource lpc_pwr0_res[] = {                 \
126      {                                                                       \
127        .type = RTEMS_BSD_RES_MEMORY,                                         \
128        .start_request = 0,                                                   \
129        .start_actual = LPC32XX_BASE_SYSCON                                   \
130      }                                                                       \
131    };                                                                        \
132    RTEMS_BSD_DEFINE_NEXUS_DEVICE_ORDERED(pwr, 0, RTEMS_SYSINIT_ORDER_FIRST,  \
133                                  RTEMS_ARRAY_SIZE(lpc_pwr0_res),             \
134                                  &lpc_pwr0_res[0])
135#endif /* RTEMS_BSD_DRIVER_LPC32XX_PWR */
136
137/*
138 * LPC32XX TSC.
139 */
140#if !defined(RTEMS_BSD_DRIVER_LPC32XX_TSC)
141  #define RTEMS_BSD_DRIVER_LPC32XX_TSC                                      \
142    static const rtems_bsd_device_resource lpc_tsc0_res[] = {               \
143      {                                                                     \
144        .type = RTEMS_BSD_RES_MEMORY,                                       \
145        .start_request = 0,                                                 \
146        .start_actual = LPC32XX_BASE_ADC                                    \
147      }, {                                                                  \
148        .type = RTEMS_BSD_RES_IRQ,                                          \
149        .start_request = 0,                                                 \
150        .start_actual = LPC32XX_IRQ_TS_IRQ_OR_ADC                           \
151      }                                                                     \
152    };                                                                      \
153    RTEMS_BSD_DEFINE_NEXUS_DEVICE(lpctsc, 0,                                \
154                                  RTEMS_ARRAY_SIZE(lpc_tsc0_res),           \
155                                  &lpc_tsc0_res[0])
156#endif /* RTEMS_BSD_DRIVER_LPC32XX_TSC */
157
158/**
159 ** Physical Buses
160 **/
161
162/*
163 * PC legacy bus.
164 */
165#if !defined(RTEMS_BSD_DRIVER_PC_LEGACY)
166  #define RTEMS_BSD_DRIVER_PC_LEGACY                      \
167    RTEMS_BSD_DEFINE_NEXUS_DEVICE(legacy, 0, 0, NULL);    \
168    SYSINIT_DRIVER_REFERENCE(pcib, legacy);               \
169    SYSINIT_DRIVER_REFERENCE(pci, pcib)
170#endif /* RTEMS_BSD_DRIVER_PC_LEGACY */
171
172/**
173 ** USB
174 **/
175
176/*
177 * Designware/Synopsys OTG USB Controller.
178 */
179#if !defined(RTEMS_BSD_DRIVER_DW_OTG)
180  #define RTEMS_BSD_DRIVER_DW_OTG                                           \
181    SYSINIT_DRIVER_REFERENCE(dwcotg, simplebus)
182#endif /* RTEMS_BSD_DRIVER_DW_OTG */
183
184/*
185 * LPC32XX OHCI.
186 */
187#if !defined(RTEMS_BSD_DRIVER_LPC32XX_OHCI)
188  #define RTEMS_BSD_DRIVER_LPC32XX_OHCI                                     \
189    static const rtems_bsd_device_resource lpc_ohci0_res[] = {              \
190      {                                                                     \
191        .type = RTEMS_BSD_RES_MEMORY,                                       \
192        .start_request = 0,                                                 \
193        .start_actual = LPC32XX_BASE_USB                                    \
194      }, {                                                                  \
195        .type = RTEMS_BSD_RES_MEMORY,                                       \
196        .start_request = 0,                                                 \
197        .start_actual = (unsigned long)(&LPC32XX_I2C_RX)                    \
198      }, {                                                                  \
199        .type = RTEMS_BSD_RES_IRQ,                                          \
200        .start_request = 0,                                                 \
201        .start_actual = LPC32XX_IRQ_USB_HOST                                \
202      }                                                                     \
203    };                                                                      \
204    RTEMS_BSD_DEFINE_NEXUS_DEVICE(ohci, 0,                                  \
205                                  RTEMS_ARRAY_SIZE(lpc_ohci0_res),          \
206                                  &lpc_ohci0_res[0])
207#endif /* RTEMS_BSD_DRIVER_LPC32XX_OHCI */
208
209/*
210 * Designware/Synopsys MMC.
211 */
212#if !defined(RTEMS_BSD_DRIVER_DW_MMC)
213  #define RTEMS_BSD_DRIVER_DW_MMC                                \
214    SYSINIT_DRIVER_REFERENCE(dw_mmc, simplebus)
215#endif /* RTEMS_BSD_DRIVER_DW_MMC */
216
217/*
218 * Atmel Media Card Interface (MCI).
219 */
220#if !defined(RTEMS_BSD_DRIVER_AT91_MCI0)
221  #define RTEMS_BSD_DRIVER_AT91_MCI0(_base, _irq)                  \
222    static const rtems_bsd_device_resource at91_mci0_res[] = {     \
223      {                                                            \
224        .type = RTEMS_BSD_RES_MEMORY,                              \
225        .start_request = 0,                                        \
226        .start_actual = (_base)                                    \
227      }, {                                                         \
228        .type = RTEMS_BSD_RES_IRQ,                                 \
229        .start_request = 0,                                        \
230        .start_actual = (_irq)                                     \
231      }                                                            \
232    };                                                             \
233    RTEMS_BSD_DEFINE_NEXUS_DEVICE(at91_mci, 0,                     \
234                                  RTEMS_ARRAY_SIZE(at91_mci0_res), \
235                                  &at91_mci0_res[0])
236#endif /* RTEMS_BSD_DRIVER_AT91_MCI0 */
237
238/*
239 * MMC Driver.
240 */
241#if !defined(RTEMS_BSD_DRIVER_MMC)
242  #define RTEMS_BSD_DRIVER_MMC                    \
243    SYSINIT_DRIVER_REFERENCE(mmcsd, mmc)
244#endif /* RTEMS_BSD_DRIVER_MMC */
245
246#if !defined(RTEMS_BSD_DRIVER_ST_SDMMC)
247  #define RTEMS_BSD_DRIVER_ST_SDMMC(_num, _base, _dlyb, _irq)                 \
248    static const rtems_bsd_device_resource st_sdmmc ## _num ## _res[] = {     \
249      {                                                                       \
250        .type = RTEMS_BSD_RES_MEMORY,                                         \
251        .start_request = 0,                                                   \
252        .start_actual = (_base)                                               \
253      }, {                                                                    \
254        .type = RTEMS_BSD_RES_MEMORY,                                         \
255        .start_request = 1,                                                   \
256        .start_actual = (_dlyb)                                               \
257      }, {                                                                    \
258        .type = RTEMS_BSD_RES_IRQ,                                            \
259        .start_request = 0,                                                   \
260        .start_actual = (_irq)                                                \
261      }                                                                       \
262    };                                                                        \
263    RTEMS_BSD_DEFINE_NEXUS_DEVICE(st_sdmmc, 0,                                \
264                                  RTEMS_ARRAY_SIZE(st_sdmmc ## _num ## _res), \
265                                  &st_sdmmc ## _num ## _res[0])
266#endif /* RTEMS_BSD_DRIVER_ST_SDMMC */
267
268/*
269 * USB Drivers.
270 */
271#if !defined(RTEMS_BSD_DRIVER_USB)
272  #define RTEMS_BSD_DRIVER_USB                    \
273    SYSINIT_REFERENCE(usb_quirk_init);            \
274    SYSINIT_DRIVER_REFERENCE(uhub, usbus)
275#endif /* RTEMS_BSD_DRIVER_USB */
276
277/*
278 * USB Mass Storage Class driver.
279 */
280#if !defined(RTEMS_BSD_DRIVER_USB_MASS)
281  #define RTEMS_BSD_DRIVER_USB_MASS               \
282    SYSINIT_DRIVER_REFERENCE(umass, uhub)
283#endif /* RTEMS_BSD_DRIVER_USB_MASS */
284
285/*
286 * USB SAF1761 host controller driver.
287 */
288#if !defined(RTEMS_BSD_DRIVER_USB_SAF1761_OTG)
289  #define RTEMS_BSD_DRIVER_USB_SAF1761_OTG(_base, _irq)                  \
290    static const rtems_bsd_device_resource usb_saf1761_otg_res[] = {     \
291      {                                                                  \
292        .type = RTEMS_BSD_RES_MEMORY,                                    \
293        .start_request = 0,                                              \
294        .start_actual = (_base)                                          \
295      }, {                                                               \
296        .type = RTEMS_BSD_RES_IRQ,                                       \
297        .start_request = 0,                                              \
298        .start_actual = (_irq)                                           \
299      }                                                                  \
300    };                                                                   \
301    RTEMS_BSD_DEFINE_NEXUS_DEVICE(saf1761otg, 0,                         \
302                                  RTEMS_ARRAY_SIZE(usb_saf1761_otg_res), \
303                                  &usb_saf1761_otg_res[0])
304#endif /* RTEMS_BSD_DRIVER_USB_SAF1761_OTG */
305
306/**
307 ** Networking
308 **/
309
310/*
311 * SMC0 driver
312 */
313#if !defined(RTEMS_BSD_DRIVER_SMC0)
314  #define RTEMS_BSD_DRIVER_SMC0(_base, _irq)                     \
315    static const rtems_bsd_device_resource smc0_res[] = {        \
316      {                                                          \
317        .type = RTEMS_BSD_RES_MEMORY,                            \
318        .start_request = 0,                                      \
319        .start_actual = (_base)                                  \
320      }, {                                                       \
321        .type = RTEMS_BSD_RES_IRQ,                               \
322        .start_request = 0,                                      \
323        .start_actual = (_irq)                                   \
324      }                                                          \
325    };                                                           \
326    RTEMS_BSD_DEFINE_NEXUS_DEVICE(smc, 0,                        \
327                                  RTEMS_ARRAY_SIZE(smc0_res),    \
328                                  &smc0_res[0])
329#endif /* RTEMS_BSD_DRIVER_SMC */
330
331/*
332 * LPC32XX LPE driver
333 */
334#if !defined(RTEMS_BSD_DRIVER_LPC32XX_LPE)
335  #define RTEMS_BSD_DRIVER_LPC32XX_LPE                           \
336    static const rtems_bsd_device_resource lpc_lpe0_res[] = {    \
337      {                                                          \
338        .type = RTEMS_BSD_RES_MEMORY,                            \
339        .start_request = 0,                                      \
340        .start_actual = LPC32XX_BASE_ETHERNET                    \
341      }, {                                                       \
342        .type = RTEMS_BSD_RES_IRQ,                               \
343        .start_request = 0,                                      \
344        .start_actual = LPC32XX_IRQ_ETHERNET                     \
345      }                                                          \
346    };                                                           \
347    RTEMS_BSD_DEFINE_NEXUS_DEVICE(lpe, 0,                        \
348                                  RTEMS_ARRAY_SIZE(lpc_lpe0_res),    \
349                                  &lpc_lpe0_res[0])
350#endif /* RTEMS_BSD_DRIVER_LPC32XX_LPE */
351
352/*
353 * Coldfire Fast Ethernet Controller (FEC) driver.
354 */
355#if !defined(RTEMS_BSD_DRIVER_FEC)
356  #define RTEMS_BSD_DRIVER_FEC                            \
357    RTEMS_BSD_DEFINE_NEXUS_DEVICE(fec, 0, 0, NULL);
358#endif /* RTEMS_BSD_DRIVER_FEC */
359
360/*
361 * Atmel SAMv71 Ethernet Controller (sam) driver.
362 */
363#if !defined(RTEMS_BSD_DRIVER_IF_ATSAM)
364  #define RTEMS_BSD_DRIVER_IF_ATSAM                       \
365    RTEMS_BSD_DEFINE_NEXUS_DEVICE(if_atsam, 0, 0, NULL);
366#endif /* RTEMS_BSD_DRIVER_IF_ATSAM */
367
368/*
369 * Xilinx Zynq Cadence Gigbit Ethernet MAC (CGEM).
370 */
371#if !defined(RTEMS_BSD_DRIVER_XILINX_ZYNQ_CGEM)
372  #define RTEMS_BSD_DRIVER_XILINX_ZYNQ_CGEM(_num, _base, _irq)              \
373    static const rtems_bsd_device_resource cgem ## _num ## _res[] = {       \
374      {                                                                     \
375        .type = RTEMS_BSD_RES_MEMORY,                                       \
376        .start_request = 0,                                                 \
377        .start_actual = (_base)                                             \
378      }, {                                                                  \
379        .type = RTEMS_BSD_RES_IRQ,                                          \
380        .start_request = 0,                                                 \
381        .start_actual = (_irq)                                              \
382      }                                                                     \
383    };                                                                      \
384    RTEMS_BSD_DEFINE_NEXUS_DEVICE(cgem, _num,                               \
385                                  RTEMS_ARRAY_SIZE(cgem ## _num ## _res),   \
386                                  &cgem ## _num ## _res[0])
387#endif /* RTEMS_BSD_DRIVER_XILINX_ZYNQ_CGEM */
388#if !defined(RTEMS_BSD_DRIVER_XILINX_ZYNQ_CGEM0)
389  #define RTEMS_BSD_DRIVER_XILINX_ZYNQ_CGEM0(_irq)                \
390    RTEMS_BSD_DRIVER_XILINX_ZYNQ_CGEM(0, 0xe000b000, _irq)
391#endif /* RTEMS_BSD_DRIVER_XILINX_ZYNQ_CGEM0 */
392#if !defined(RTEMS_BSD_DRIVER_XILINX_ZYNQ_CGEM1)
393  #define RTEMS_BSD_DRIVER_XILINX_ZYNQ_CGEM1(_irq)       \
394    RTEMS_BSD_DRIVER_XILINX_ZYNQ_CGEM(1, 0xe000c000, _irq)
395#endif /* RTEMS_BSD_DRIVER_XILINX_ZYNQ_CGEM1 */
396#if !defined(RTEMS_BSD_DRIVER_XILINX_ZYNQMP_CGEM0)
397  #define RTEMS_BSD_DRIVER_XILINX_ZYNQMP_CGEM0(_irq)                \
398    RTEMS_BSD_DRIVER_XILINX_ZYNQ_CGEM(0, 0xff0b0000, _irq)
399#endif /* RTEMS_BSD_DRIVER_XILINX_ZYNQMP_CGEM0 */
400#if !defined(RTEMS_BSD_DRIVER_XILINX_ZYNQMP_CGEM1)
401  #define RTEMS_BSD_DRIVER_XILINX_ZYNQMP_CGEM1(_irq)       \
402    RTEMS_BSD_DRIVER_XILINX_ZYNQ_CGEM(1, 0xff0c0000, _irq)
403#endif /* RTEMS_BSD_DRIVER_XILINX_ZYNQMP_CGEM1 */
404#if !defined(RTEMS_BSD_DRIVER_XILINX_ZYNQMP_CGEM2)
405  #define RTEMS_BSD_DRIVER_XILINX_ZYNQMP_CGEM2(_irq)                \
406    RTEMS_BSD_DRIVER_XILINX_ZYNQ_CGEM(2, 0xff0d0000, _irq)
407#endif /* RTEMS_BSD_DRIVER_XILINX_ZYNQMP_CGEM2 */
408#if !defined(RTEMS_BSD_DRIVER_XILINX_ZYNQMP_CGEM3)
409  #define RTEMS_BSD_DRIVER_XILINX_ZYNQMP_CGEM3(_irq)       \
410    RTEMS_BSD_DRIVER_XILINX_ZYNQ_CGEM(3, 0xff0e0000, _irq)
411#endif /* RTEMS_BSD_DRIVER_XILINX_ZYNQMP_CGEM3 */
412/*
413 * Versal has a similar GEM as the CGEM. This should work for now.
414 */
415#if !defined(RTEMS_BSD_DRIVER_XILINX_VERSAL_GEM0)
416  #define RTEMS_BSD_DRIVER_XILINX_VERSAL_GEM0(_irq)                \
417    RTEMS_BSD_DRIVER_XILINX_ZYNQ_CGEM(0, 0xff0c0000, _irq)
418#endif /* RTEMS_BSD_DRIVER_XILINX_VERSAL_GEM0 */
419#if !defined(RTEMS_BSD_DRIVER_XILINX_VERSAL_GEM1)
420  #define RTEMS_BSD_DRIVER_XILINX_VERSAL_GEM1(_irq)       \
421    RTEMS_BSD_DRIVER_XILINX_ZYNQ_CGEM(1, 0xff0d0000, _irq)
422#endif /* RTEMS_BSD_DRIVER_XILINX_VERSAL_GEM1 */
423
424/*
425 * Designware/Synopsys Ethernet MAC Controller.
426 */
427#if !defined(RTEMS_BSD_DRIVER_DW_ETH)
428  #define RTEMS_BSD_DRIVER_DW_ETH                                   \
429    SYSINIT_DRIVER_REFERENCE(dwc, simplebus);
430#endif /* RTEMS_BSD_DRIVER_DW_ETH */
431
432/*
433 * NXP QorIQ Network Driver.
434 */
435#if !defined(RTEMS_BSD_DRIVER_TSEC)
436  #define RTEMS_BSD_DRIVER_TSEC(_base, _tx_irq, _rx_irq, _er_irq)   \
437    static const rtems_bsd_device_resource tsec0_res[] = {          \
438      {                                                             \
439        .type = RTEMS_BSD_RES_MEMORY,                               \
440        .start_request = 0,                                         \
441        .start_actual = (_base)                                     \
442      }, {                                                          \
443        .type = RTEMS_BSD_RES_IRQ,                                  \
444        .start_request = 0,                                         \
445        .start_actual = (_tx_irq)                                   \
446      }, {                                                          \
447        .type = RTEMS_BSD_RES_IRQ,                                  \
448        .start_request = 1,                                         \
449        .start_actual = (_rx_irq)                                   \
450      }, {                                                          \
451        .type = RTEMS_BSD_RES_IRQ,                                  \
452        .start_request = 2,                                         \
453        .start_actual = (_er_irq)                                   \
454      }                                                             \
455    };                                                              \
456    RTEMS_BSD_DEFINE_NEXUS_DEVICE(tsec, 0,                          \
457                                  RTEMS_ARRAY_SIZE(tsec0_res),      \
458                                  &tsec0_res[0])
459#endif /* RTEMS_BSD_DRIVER_TSEC */
460
461/*
462 * Intel's Legacy EM driver.
463 */
464#if !defined(RTEMS_BSD_DRIVER_PCI_LEM)
465  #define RTEMS_BSD_DRIVER_PCI_LEM                \
466    SYSINIT_DRIVER_REFERENCE(lem, pci);
467#endif /* RTEMS_BSD_DRIVER_PCI_LEM */
468
469/*
470 * Intel's Gigabit Driver.
471 */
472#if !defined(RTEMS_BSD_DRIVER_PCI_IGB)
473  #define RTEMS_BSD_DRIVER_PCI_IGB                \
474    SYSINIT_DRIVER_REFERENCE(igb, pci);
475#endif /* RTEMS_BSD_DRIVER_PCI_IGB */
476
477/*
478 * Intel's EM Driver.
479 */
480#if !defined(RTEMS_BSD_DRIVER_PCI_EM)
481  #define RTEMS_BSD_DRIVER_PCI_EM                 \
482    SYSINIT_DRIVER_REFERENCE(em, pci);
483#endif /* RTEMS_BSD_DRIVER_PCI_EM */
484
485/*
486 * Realtek Driver
487 */
488#if !defined(RTEMS_BSD_DRIVER_PCI_RE)
489  #define RTEMS_BSD_DRIVER_PCI_RE                 \
490    SYSINIT_DRIVER_REFERENCE(re, pci);
491#endif /* RTEMS_BSD_DRIVER_PCI_RE */
492
493/**
494 ** MMI Physical Layer Support.
495 **/
496
497/*
498 * E1000 PHY
499 */
500#if !defined(RTEMS_BSD_DRIVER_E1000PHY)
501  #define RTEMS_BSD_DRIVER_E1000PHY               \
502    SYSINIT_DRIVER_REFERENCE(e1000phy, miibus);
503#endif /* RTEMS_BSD_DRIVER_E1000PHY */
504
505/*
506 * ICS PHY
507 */
508#if !defined(RTEMS_BSD_DRIVER_ICSPHY)
509  #define RTEMS_BSD_DRIVER_ICSPHY               \
510    SYSINIT_DRIVER_REFERENCE(icsphy, miibus);
511#endif /* RTEMS_BSD_DRIVER_ICSPHY */
512
513/*
514 * Reltek PHY
515 */
516#if !defined(RTEMS_BSD_DRIVER_REPHY)
517  #define RTEMS_BSD_DRIVER_REPHY                  \
518    SYSINIT_DRIVER_REFERENCE(rgephy, miibus);
519#endif /* RTEMS_BSD_DRIVER_REPHY */
520
521/*
522 * MI PHY.
523 */
524#if !defined(RTEMS_BSD_DRIVER_PHY_MIC)
525  #define RTEMS_BSD_DRIVER_PHY_MIC                  \
526    SYSINIT_DRIVER_REFERENCE(micphy, miibus);
527#endif /* RTEMS_BSD_DRIVER_PHY_MIC */
528
529#ifdef __cplusplus
530}
531#endif /* __cplusplus */
532
533#endif
Note: See TracBrowser for help on using the repository browser.