/* * Copyright (c) 2013, 2018 embedded brains GmbH. All rights reserved. * * embedded brains GmbH * Dornierstr. 4 * 82178 Puchheim * Germany * * * Copyright (c) 2016 Chris Johns All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. */ #if !defined(BSP_NEXUS_DEVICES_h) #define BSP_NEXUS_DEVICES_h #include #include #include #include #if defined(LIBBSP_ARM_REALVIEW_PBX_A9_BSP_H) #include RTEMS_BSD_DRIVER_SMC0(0x4e000000, RVPBXA9_IRQ_ETHERNET); #elif defined(LIBBSP_ARM_BEAGLE_BSP_H) #include RTEMS_BSD_DEFINE_NEXUS_DEVICE(ofwbus, 0, 0, NULL); SYSINIT_DRIVER_REFERENCE(simplebus, ofwbus); SYSINIT_DRIVER_REFERENCE(ti_scm, simplebus); SYSINIT_DRIVER_REFERENCE(am335x_prcm, simplebus); SYSINIT_DRIVER_REFERENCE(usbss, simplebus); SYSINIT_DRIVER_REFERENCE(musbotg, usbss); SYSINIT_DRIVER_REFERENCE(sdhci_ti, simplebus); SYSINIT_DRIVER_REFERENCE(mmcsd, mmc); SYSINIT_DRIVER_REFERENCE(cpsw, cpswss); SYSINIT_DRIVER_REFERENCE(ukphy, miibus); SYSINIT_DRIVER_REFERENCE(rtems_i2c, simplebus); SYSINIT_DRIVER_REFERENCE(ofw_iicbus, rtems_i2c); SYSINIT_DRIVER_REFERENCE(iic, iicbus); SYSINIT_DRIVER_REFERENCE(iicbus, rtems_i2c); #ifdef RTEMS_BSD_MODULE_NET80211 SYSINIT_DRIVER_REFERENCE(rtwn_usb, uhub); SYSINIT_MODULE_REFERENCE(wlan_ratectl_none); SYSINIT_MODULE_REFERENCE(wlan_sta); SYSINIT_MODULE_REFERENCE(wlan_amrr); SYSINIT_MODULE_REFERENCE(wlan_wep); SYSINIT_MODULE_REFERENCE(wlan_tkip); SYSINIT_MODULE_REFERENCE(wlan_ccmp); SYSINIT_REFERENCE(rtwn_rtl8188eufw); #endif /* RTEMS_BSD_MODULE_NET80211 */ RTEMS_BSD_DRIVER_USB; RTEMS_BSD_DRIVER_USB_MASS; #elif defined(LIBBSP_ARM_LPC32XX_BSP_H) #include RTEMS_BSD_DRIVER_LPC32XX_PWR; RTEMS_BSD_DRIVER_LPC32XX_LPE; RTEMS_BSD_DRIVER_LPC32XX_TSC; RTEMS_BSD_DRIVER_ICSPHY; RTEMS_BSD_DRIVER_LPC32XX_OHCI; SYSINIT_DRIVER_REFERENCE(usbus, ohci); RTEMS_BSD_DRIVER_USB; RTEMS_BSD_DRIVER_USB_MASS; #elif defined(LIBBSP_M68K_GENMCF548X_BSP_H) RTEMS_BSD_DRIVER_FEC; #elif defined(LIBBSP_ARM_XILINX_ZYNQ_BSP_H) #include RTEMS_BSD_DRIVER_XILINX_ZYNQ_SLCR; RTEMS_BSD_DRIVER_XILINX_ZYNQ_CGEM0(ZYNQ_IRQ_ETHERNET_0); RTEMS_BSD_DRIVER_E1000PHY; #elif defined(LIBBSP_ARM_ATSAM_BSP_H) RTEMS_BSD_DRIVER_USB; RTEMS_BSD_DRIVER_USB_MASS; RTEMS_BSD_DRIVER_IF_ATSAM; SYSINIT_DRIVER_REFERENCE(ukphy, miibus); #elif defined(LIBBSP_ARM_ALTERA_CYCLONE_V_BSP_H) RTEMS_BSD_DEFINE_NEXUS_DEVICE(ofwbus, 0, 0, NULL); SYSINIT_DRIVER_REFERENCE(simplebus, ofwbus); RTEMS_BSD_DRIVER_DW_ETH; RTEMS_BSD_DRIVER_PHY_MIC; RTEMS_BSD_DRIVER_DW_OTG; RTEMS_BSD_DRIVER_USB; RTEMS_BSD_DRIVER_USB_MASS; RTEMS_BSD_DRIVER_DW_MMC; RTEMS_BSD_DRIVER_MMC; #elif defined(LIBBSP_ARM_IMX_BSP_H) RTEMS_BSD_DEFINE_NEXUS_DEVICE(ofwbus, 0, 0, NULL); SYSINIT_DRIVER_REFERENCE(simplebus, ofwbus); SYSINIT_DRIVER_REFERENCE(ffec, simplebus); SYSINIT_DRIVER_REFERENCE(ukphy, miibus); SYSINIT_DRIVER_REFERENCE(imx51_gpio, simplebus); SYSINIT_DRIVER_REFERENCE(sdhci_fsl, simplebus); RTEMS_BSD_DRIVER_MMC; #elif defined(LIBBSP_ARM_LPC24XX_BSP_H) RTEMS_BSD_DEFINE_NEXUS_DEVICE(ohci, 0, 0, NULL); SYSINIT_DRIVER_REFERENCE(usbus, ohci); RTEMS_BSD_DRIVER_USB; RTEMS_BSD_DRIVER_USB_MASS; #elif defined(LIBBSP_I386_PC386_BSP_H) RTEMS_BSD_DRIVER_PC_LEGACY; RTEMS_BSD_DRIVER_PCI_LEM; RTEMS_BSD_DRIVER_PCI_IGB; RTEMS_BSD_DRIVER_PCI_EM; RTEMS_BSD_DRIVER_PCI_RE; RTEMS_BSD_DRIVER_REPHY; #elif defined(LIBBSP_POWERPC_QORIQ_BSP_H) #if QORIQ_CHIP_IS_T_VARIANT(QORIQ_CHIP_VARIANT) #include #ifdef QORIQ_IS_HYPERVISOR_GUEST RTEMS_BSD_DEFINE_NEXUS_DEVICE(dpaa_ml, 0, 0, NULL); #else /* !QORIQ_IS_HYPERVISOR_GUEST */ RTEMS_BSD_DEFINE_NEXUS_DEVICE(fman, 0, 0, NULL); RTEMS_BSD_DEFINE_NEXUS_DEVICE(fman, 1, 0, NULL); SYSINIT_DRIVER_REFERENCE(fman_mac, fman); SYSINIT_DRIVER_REFERENCE(fman_port, fman_mac); SYSINIT_DRIVER_REFERENCE(ukphy, miibus); #endif /* QORIQ_IS_HYPERVISOR_GUEST */ #else /* QORIQ_CHIP_IS_T_VARIANT(QORIQ_CHIP_VARIANT) */ #include RTEMS_BSD_DEFINE_NEXUS_DEVICE(ofwbus, 0, 0, NULL); SYSINIT_DRIVER_REFERENCE(simplebus, ofwbus); SYSINIT_DRIVER_REFERENCE(tsec, simplebus); SYSINIT_DRIVER_REFERENCE(ukphy, miibus); #endif /* QORIQ_CHIP_IS_T_VARIANT(QORIQ_CHIP_VARIANT) */ #elif defined(LIBBSP_POWERPC_TQM8XX_BSP_H) RTEMS_BSD_DEFINE_NEXUS_DEVICE(fec, 0, 0, NULL); SYSINIT_DRIVER_REFERENCE(ukphy, miibus); #endif #endif