[PATCH v2 24/44] config: Add <rtems/confdefs/libpci.h>
Sebastian Huber
sebastian.huber at embedded-brains.de
Fri Feb 21 10:52:36 UTC 2020
Derive copyright and license for new file form the file history.
Update #3875.
---
cpukit/headers.am | 1 +
cpukit/include/rtems/confdefs.h | 47 +----------------------
cpukit/include/rtems/confdefs/libpci.h | 70 ++++++++++++++++++++++++++++++++++
3 files changed, 72 insertions(+), 46 deletions(-)
create mode 100644 cpukit/include/rtems/confdefs/libpci.h
diff --git a/cpukit/headers.am b/cpukit/headers.am
index f0c8319dcb..658444cf9e 100644
--- a/cpukit/headers.am
+++ b/cpukit/headers.am
@@ -183,6 +183,7 @@ include_rtems_HEADERS += include/rtems/userenv.h
include_rtems_HEADERS += include/rtems/version.h
include_rtems_HEADERS += include/rtems/vmeintr.h
include_rtems_HEADERS += include/rtems/watchdogdrv.h
+include_rtems_confdefs_HEADERS += include/rtems/confdefs/libpci.h
include_rtems_confdefs_HEADERS += include/rtems/confdefs/obsolete.h
include_rtems_debugger_HEADERS += include/rtems/debugger/rtems-debugger-bsp.h
include_rtems_debugger_HEADERS += include/rtems/debugger/rtems-debugger-remote.h
diff --git a/cpukit/include/rtems/confdefs.h b/cpukit/include/rtems/confdefs.h
index 1fecfdcbb6..b2a10902e4 100644
--- a/cpukit/include/rtems/confdefs.h
+++ b/cpukit/include/rtems/confdefs.h
@@ -51,6 +51,7 @@
#include <rtems/posix/shm.h>
#include <rtems/posix/timer.h>
#include <rtems/confdefs/obsolete.h>
+#include <rtems/confdefs/libpci.h>
#include <limits.h>
@@ -2658,52 +2659,6 @@ struct _reent *__getreent(void)
#endif
#endif
-/*
- * Select PCI Configuration Library
- */
-#ifdef RTEMS_PCI_CONFIG_LIB
- #ifdef CONFIGURE_INIT
- #define PCI_LIB_NONE 0
- #define PCI_LIB_AUTO 1
- #define PCI_LIB_STATIC 2
- #define PCI_LIB_READ 3
- #define PCI_LIB_PERIPHERAL 4
- #if CONFIGURE_PCI_LIB == PCI_LIB_AUTO
- #define PCI_CFG_AUTO_LIB
- #include <pci/cfg.h>
- struct pci_bus pci_hb;
- #define PCI_LIB_INIT pci_config_auto
- #define PCI_LIB_CONFIG pci_config_auto_register
- #elif CONFIGURE_PCI_LIB == PCI_LIB_STATIC
- #define PCI_CFG_STATIC_LIB
- #include <pci/cfg.h>
- #define PCI_LIB_INIT pci_config_static
- #define PCI_LIB_CONFIG NULL
- /* Let user define PCI configuration (struct pci_bus pci_hb) */
- #elif CONFIGURE_PCI_LIB == PCI_LIB_READ
- #define PCI_CFG_READ_LIB
- #include <pci/cfg.h>
- #define PCI_LIB_INIT pci_config_read
- #define PCI_LIB_CONFIG NULL
- struct pci_bus pci_hb;
- #elif CONFIGURE_PCI_LIB == PCI_LIB_PERIPHERAL
- #define PCI_LIB_INIT pci_config_peripheral
- #define PCI_LIB_CONFIG NULL
- /* Let user define PCI configuration (struct pci_bus pci_hb) */
- #elif CONFIGURE_PCI_LIB == PCI_LIB_NONE
- #define PCI_LIB_INIT NULL
- #define PCI_LIB_CONFIG NULL
- /* No PCI Configuration at all, user can use/debug access routines */
- #else
- #error NO PCI LIBRARY DEFINED
- #endif
-
- const int pci_config_lib_type = CONFIGURE_PCI_LIB;
- int (*pci_config_lib_init)(void) = PCI_LIB_INIT;
- void (*pci_config_lib_register)(void *config) = PCI_LIB_CONFIG;
- #endif
-#endif
-
#ifdef __cplusplus
}
#endif
diff --git a/cpukit/include/rtems/confdefs/libpci.h b/cpukit/include/rtems/confdefs/libpci.h
new file mode 100644
index 0000000000..a68eea1903
--- /dev/null
+++ b/cpukit/include/rtems/confdefs/libpci.h
@@ -0,0 +1,70 @@
+/*
+ * Copyright (C) 2011 Cobham Gaisler AB
+ *
+ * The license and distribution terms for this file may be
+ * found in the file LICENSE in this distribution or at
+ * http://www.rtems.org/license/LICENSE.
+ */
+
+/**
+ * @file
+ *
+ * @ingroup RTEMSApplicationConfiguration
+ *
+ * @brief This header file evaluates PCI library configuration options.
+ */
+
+#ifndef _RTEMS_CONFDEFS_LIBPCI_H
+#define _RTEMS_CONFDEFS_LIBPCI_H
+
+#ifndef __CONFIGURATION_TEMPLATE_h
+#error "Do not include this file directly, use <rtems/confdefs.h> instead"
+#endif
+
+/*
+ * Select PCI Configuration Library
+ */
+#ifdef RTEMS_PCI_CONFIG_LIB
+ #ifdef CONFIGURE_INIT
+ #define PCI_LIB_NONE 0
+ #define PCI_LIB_AUTO 1
+ #define PCI_LIB_STATIC 2
+ #define PCI_LIB_READ 3
+ #define PCI_LIB_PERIPHERAL 4
+ #if CONFIGURE_PCI_LIB == PCI_LIB_AUTO
+ #define PCI_CFG_AUTO_LIB
+ #include <pci/cfg.h>
+ struct pci_bus pci_hb;
+ #define PCI_LIB_INIT pci_config_auto
+ #define PCI_LIB_CONFIG pci_config_auto_register
+ #elif CONFIGURE_PCI_LIB == PCI_LIB_STATIC
+ #define PCI_CFG_STATIC_LIB
+ #include <pci/cfg.h>
+ #define PCI_LIB_INIT pci_config_static
+ #define PCI_LIB_CONFIG NULL
+ /* Let user define PCI configuration (struct pci_bus pci_hb) */
+ #elif CONFIGURE_PCI_LIB == PCI_LIB_READ
+ #define PCI_CFG_READ_LIB
+ #include <pci/cfg.h>
+ #define PCI_LIB_INIT pci_config_read
+ #define PCI_LIB_CONFIG NULL
+ struct pci_bus pci_hb;
+ #elif CONFIGURE_PCI_LIB == PCI_LIB_PERIPHERAL
+ #define PCI_LIB_INIT pci_config_peripheral
+ #define PCI_LIB_CONFIG NULL
+ /* Let user define PCI configuration (struct pci_bus pci_hb) */
+ #elif CONFIGURE_PCI_LIB == PCI_LIB_NONE
+ #define PCI_LIB_INIT NULL
+ #define PCI_LIB_CONFIG NULL
+ /* No PCI Configuration at all, user can use/debug access routines */
+ #else
+ #error NO PCI LIBRARY DEFINED
+ #endif
+
+ const int pci_config_lib_type = CONFIGURE_PCI_LIB;
+ int (*pci_config_lib_init)(void) = PCI_LIB_INIT;
+ void (*pci_config_lib_register)(void *config) = PCI_LIB_CONFIG;
+ #endif
+#endif
+
+#endif /* _RTEMS_CONFDEFS_LIBPCI_H */
--
2.16.4
More information about the devel
mailing list