From a31845f7f9b4770cf9ddd8b6820641d2f4f4c1da Mon Sep 17 00:00:00 2001 From: Daniel Hellstrom Date: Mon, 28 Nov 2011 10:11:10 +0100 Subject: LIBPCI: added PCI layer to cpukit/libpci --- cpukit/sapi/include/confdefs.h | 46 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) (limited to 'cpukit/sapi') diff --git a/cpukit/sapi/include/confdefs.h b/cpukit/sapi/include/confdefs.h index d1a5229c5b..daeda0be3c 100644 --- a/cpukit/sapi/include/confdefs.h +++ b/cpukit/sapi/include/confdefs.h @@ -3480,6 +3480,52 @@ const rtems_libio_helper rtems_fs_init_helper = #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 + 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 + #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 + #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 -- cgit v1.2.3