[rtems-docs commit] c-user: Move "PCI Library Configuration"

Sebastian Huber sebh at rtems.org
Thu Mar 12 09:32:37 UTC 2020


Module:    rtems-docs
Branch:    master
Commit:    b71fb436fd085b647c0c39a08d30226ff5267edc
Changeset: http://git.rtems.org/rtems-docs/commit/?id=b71fb436fd085b647c0c39a08d30226ff5267edc

Author:    Sebastian Huber <sebastian.huber at embedded-brains.de>
Date:      Mon Mar  9 08:57:38 2020 +0100

c-user: Move "PCI Library Configuration"

Update #3836.

---

 c-user/config/index.rst  | 53 +---------------------------------------------
 c-user/config/libpci.rst | 55 ++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 56 insertions(+), 52 deletions(-)

diff --git a/c-user/config/index.rst b/c-user/config/index.rst
index 1413920..a389d71 100644
--- a/c-user/config/index.rst
+++ b/c-user/config/index.rst
@@ -26,58 +26,7 @@ Configuring a System
     scheduler-clustered
     device-driver
     mpci
-
-PCI Library Configuration
-=========================
-
-This section defines the system configuration parameters supported by
-``rtems/confdefs.h`` related to configuring the PCI Library for RTEMS.
-
-The PCI Library startup behaviour can be configured in four different ways
-depending on how ``CONFIGURE_PCI_CONFIG_LIB`` is defined:
-
-.. index:: PCI_LIB_AUTO
-
-``PCI_LIB_AUTO``
-  Used to enable the PCI auto configuration software. PCI will be automatically
-  probed, PCI buses enumerated, all devices and bridges will be initialized
-  using Plug & Play software routines. The PCI device tree will be populated
-  based on the PCI devices found in the system, PCI devices will be configured
-  by allocating address region resources automatically in PCI space according
-  to the BSP or host bridge driver set up.
-
-.. index:: PCI_LIB_READ
-
-``PCI_LIB_READ``
-  Used to enable the PCI read configuration software. The current PCI
-  configuration is read to create the RAM representation (the PCI device tree)
-  of the PCI devices present. PCI devices are assumed to already have been
-  initialized and PCI buses enumerated, it is therefore required that a BIOS or
-  a boot loader has set up configuration space prior to booting into RTEMS.
-
-.. index:: PCI_LIB_STATIC
-
-``PCI_LIB_STATIC``
-  Used to enable the PCI static configuration software. The user provides a PCI
-  tree with information how all PCI devices are to be configured at compile
-  time by linking in a custom ``struct pci_bus pci_hb`` tree. The static PCI
-  library will not probe PCI for devices, instead it will assume that all
-  devices defined by the user are present, it will enumerate the PCI buses and
-  configure all PCI devices in static configuration accordingly. Since probe
-  and allocation software is not needed the startup is faster, has smaller
-  footprint and does not require dynamic memory allocation.
-
-.. index:: PCI_LIB_PERIPHERAL
-
-``PCI_LIB_PERIPHERAL``
-  Used to enable the PCI peripheral configuration. It is similar to
-  ``PCI_LIB_STATIC``, but it will never write the configuration to the PCI
-  devices since PCI peripherals are not allowed to access PCI configuration
-  space.
-
-Note that selecting ``PCI_LIB_STATIC`` or ``PCI_LIB_PERIPHERAL`` but not
-defining ``pci_hb`` will reuslt in link errors. Note also that in these modes
-Plug & Play is not performed.
+    libpci
 
 Event Recording Configuration
 =============================
diff --git a/c-user/config/libpci.rst b/c-user/config/libpci.rst
new file mode 100644
index 0000000..b62a56c
--- /dev/null
+++ b/c-user/config/libpci.rst
@@ -0,0 +1,55 @@
+.. SPDX-License-Identifier: CC-BY-SA-4.0
+
+.. Copyright (C) 1988, 2008 On-Line Applications Research Corporation (OAR)
+
+PCI Library Configuration
+=========================
+
+This section defines the system configuration parameters supported by
+``rtems/confdefs.h`` related to configuring the PCI Library for RTEMS.
+
+The PCI Library startup behaviour can be configured in four different ways
+depending on how ``CONFIGURE_PCI_CONFIG_LIB`` is defined:
+
+.. index:: PCI_LIB_AUTO
+
+``PCI_LIB_AUTO``
+  Used to enable the PCI auto configuration software. PCI will be automatically
+  probed, PCI buses enumerated, all devices and bridges will be initialized
+  using Plug & Play software routines. The PCI device tree will be populated
+  based on the PCI devices found in the system, PCI devices will be configured
+  by allocating address region resources automatically in PCI space according
+  to the BSP or host bridge driver set up.
+
+.. index:: PCI_LIB_READ
+
+``PCI_LIB_READ``
+  Used to enable the PCI read configuration software. The current PCI
+  configuration is read to create the RAM representation (the PCI device tree)
+  of the PCI devices present. PCI devices are assumed to already have been
+  initialized and PCI buses enumerated, it is therefore required that a BIOS or
+  a boot loader has set up configuration space prior to booting into RTEMS.
+
+.. index:: PCI_LIB_STATIC
+
+``PCI_LIB_STATIC``
+  Used to enable the PCI static configuration software. The user provides a PCI
+  tree with information how all PCI devices are to be configured at compile
+  time by linking in a custom ``struct pci_bus pci_hb`` tree. The static PCI
+  library will not probe PCI for devices, instead it will assume that all
+  devices defined by the user are present, it will enumerate the PCI buses and
+  configure all PCI devices in static configuration accordingly. Since probe
+  and allocation software is not needed the startup is faster, has smaller
+  footprint and does not require dynamic memory allocation.
+
+.. index:: PCI_LIB_PERIPHERAL
+
+``PCI_LIB_PERIPHERAL``
+  Used to enable the PCI peripheral configuration. It is similar to
+  ``PCI_LIB_STATIC``, but it will never write the configuration to the PCI
+  devices since PCI peripherals are not allowed to access PCI configuration
+  space.
+
+Note that selecting ``PCI_LIB_STATIC`` or ``PCI_LIB_PERIPHERAL`` but not
+defining ``pci_hb`` will reuslt in link errors. Note also that in these modes
+Plug & Play is not performed.



More information about the vc mailing list