summaryrefslogtreecommitdiffstats
path: root/rtems/freebsd/machine/rtems-bsd-sysinit.h
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@oarcorp.com>2012-03-07 09:52:04 -0600
committerJoel Sherrill <joel.sherrill@oarcorp.com>2012-03-07 09:52:04 -0600
commita9153ec3040f54fa52b68e14dafed2aba7b780ae (patch)
treefda80e3380dfebf7d97868507aa185757852e882 /rtems/freebsd/machine/rtems-bsd-sysinit.h
downloadrtems-libbsd-a9153ec3040f54fa52b68e14dafed2aba7b780ae.tar.bz2
Initial import
Code is based on FreeBSD 8.2 with USB support from Sebastian Huber and Thomas Doerfler. Initial TCP/IP stack work is from Kevel Kirspel.
Diffstat (limited to 'rtems/freebsd/machine/rtems-bsd-sysinit.h')
-rw-r--r--rtems/freebsd/machine/rtems-bsd-sysinit.h67
1 files changed, 67 insertions, 0 deletions
diff --git a/rtems/freebsd/machine/rtems-bsd-sysinit.h b/rtems/freebsd/machine/rtems-bsd-sysinit.h
new file mode 100644
index 00000000..98de2b80
--- /dev/null
+++ b/rtems/freebsd/machine/rtems-bsd-sysinit.h
@@ -0,0 +1,67 @@
+/**
+ * @file
+ *
+ * @ingroup rtems_bsd_machine
+ *
+ * @brief TODO.
+ */
+
+/*
+ * Copyright (c) 2009, 2010 embedded brains GmbH. All rights reserved.
+ *
+ * embedded brains GmbH
+ * Obere Lagerstr. 30
+ * 82178 Puchheim
+ * Germany
+ * <rtems@embedded-brains.de>
+ *
+ * The license and distribution terms for this file may be
+ * found in the file LICENSE in this distribution or at
+ * http://www.rtems.com/license/LICENSE.
+ */
+
+#ifndef _RTEMS_BSD_MACHINE_RTEMS_BSD_SYSINIT_H_
+#define _RTEMS_BSD_MACHINE_RTEMS_BSD_SYSINIT_H_
+
+#include <rtems/freebsd/sys/cdefs.h>
+#include <rtems/freebsd/sys/queue.h>
+#include <rtems/freebsd/sys/kernel.h>
+
+#define SYSINIT_NEED_FREEBSD_CORE \
+ SYSINIT_REFERENCE(configure1); \
+ SYSINIT_REFERENCE(module); \
+ SYSINIT_REFERENCE(kobj); \
+ SYSINIT_REFERENCE(linker_kernel); \
+ SYSINIT_MODULE_REFERENCE(rootbus); \
+ SYSINIT_DRIVER_REFERENCE(nexus, root)
+
+#define SYSINIT_NEED_USB_CORE \
+ SYSINIT_REFERENCE(usb_quirk_init); \
+ SYSINIT_DRIVER_REFERENCE(uhub, usbus)
+
+#define SYSINIT_NEED_USB_OHCI \
+ SYSINIT_DRIVER_REFERENCE(ohci, nexus); \
+ SYSINIT_DRIVER_REFERENCE(usbus, ohci)
+
+#define SYSINIT_NEED_USB_EHCI \
+ SYSINIT_DRIVER_REFERENCE(ehci, nexus); \
+ SYSINIT_DRIVER_REFERENCE(usbus, ehci)
+
+#define SYSINIT_NEED_USB_MASS_STORAGE \
+ SYSINIT_DRIVER_REFERENCE(umass, uhub)
+
+#define SYSINIT_NEED_USB_MOUSE \
+ SYSINIT_DRIVER_REFERENCE(umass, uhub)
+
+#define SYSINIT_NEED_SDHC \
+ SYSINIT_DRIVER_REFERENCE(sdhci, nexus); \
+ SYSINIT_DRIVER_REFERENCE(mmc, sdhci); \
+ SYSINIT_DRIVER_REFERENCE(mmcsd, mmc)
+
+#define SYSINIT_NEED_NET_MII \
+ SYSINIT_DRIVER_REFERENCE(icsphy, miibus);
+
+/* FIXME */
+extern const char *const _bsd_nexus_devices [];
+
+#endif /* _RTEMS_BSD_MACHINE_RTEMS_BSD_SYSINIT_H_ */