Commit Graph

34 Commits

Author SHA1 Message Date
Sebastian Huber
9c12bcfdc5 Fix format warnings 2019-01-07 09:49:16 +01:00
Sebastian Huber
c38d5177a9 build: Merge libpci/Makefile.am 2018-10-10 07:53:50 +02:00
Sebastian Huber
2d0bc839ed build: Remove EXTRA_DIST
A "make dist" is not supported. So, it makes no sense to have pure "make
dist" related stuff in the Makefile.am.
2018-04-04 10:09:04 +02:00
Chris Johns
2afb22b7e1 Remove make preinstall
A speciality of the RTEMS build system was the make preinstall step.  It
copied header files from arbitrary locations into the build tree.  The
header files were included via the -Bsome/build/tree/path GCC command
line option.

This has at least seven problems:

* The make preinstall step itself needs time and disk space.

* Errors in header files show up in the build tree copy.  This makes it
  hard for editors to open the right file to fix the error.

* There is no clear relationship between source and build tree header
  files.  This makes an audit of the build process difficult.

* The visibility of all header files in the build tree makes it
  difficult to enforce API barriers.  For example it is discouraged to
  use BSP-specifics in the cpukit.

* An introduction of a new build system is difficult.

* Include paths specified by the -B option are system headers.  This
  may suppress warnings.

* The parallel build had sporadic failures on some hosts.

This patch removes the make preinstall step.   All installed header
files are moved to dedicated include directories in the source tree.
Let @RTEMS_CPU@ be the target architecture, e.g. arm, powerpc, sparc,
etc.  Let @RTEMS_BSP_FAMILIY@ be a BSP family base directory, e.g.
erc32, imx, qoriq, etc.

The new cpukit include directories are:

* cpukit/include

* cpukit/score/cpu/@RTEMS_CPU@/include

* cpukit/libnetworking

The new BSP include directories are:

* bsps/include

* bsps/@RTEMS_CPU@/include

* bsps/@RTEMS_CPU@/@RTEMS_BSP_FAMILIY@/include

There are build tree include directories for generated files.

The include directory order favours the most general header file, e.g.
it is not possible to override general header files via the include path
order.

The "bootstrap -p" option was removed.  The new "bootstrap -H" option
should be used to regenerate the "headers.am" files.

Update #3254.
2018-01-25 08:45:26 +01:00
Sebastian Huber
569fd5097c sparc: Remove BSP specifics from <pci/irq.h>
Update #3254.
Update #3260.
Update #3269.
2018-01-02 14:49:56 +01:00
Sebastian Huber
3b392b6113 sparc: Remove BSP specifics from <pci/access.h>
Update #3254.
Update #3260.
2018-01-02 14:49:56 +01:00
Daniel Hellstrom
f9fbb3336f libpci: fix pci device allocation
The refactoring of pci_dev_create() was incorrect since the code relied on
different defines before including pci/cfg.h. This reverts back to the
original code having two pci_dev_create() one in auto and one in read library.
confdefs.h selectes between the two libraries so both there is no link
conflict.

Updates #3029
2017-09-29 13:36:44 +02:00
Sebastian Huber
76b9c313ac libpci: Use calloc()
Update #2133.
2017-08-25 11:01:15 +02:00
Sebastian Huber
b2ed712d26 Include missing <string.h>
Update #2133.
2017-08-25 10:58:58 +02:00
Javier Jalle
61788e76b9 leon, GR-CPCI-GR740: Added peripheral PCI driver 2017-05-02 12:34:44 +02:00
Daniel Hellstrom
91df5a6995 libpci: code cleanup 2017-03-06 07:54:55 +01:00
Daniel Hellstrom
bef5e23ef6 DRVMGR: renamed RES_EMPTY to DRVMGR_RES_EMPTY 2015-04-17 01:10:30 +02:00
Daniel Hellstrom
14d55debf1 DRVMGR: renamed info_dev to get_info_dev 2015-04-17 01:10:30 +02:00
Daniel Hellstrom
246fe225f1 DRVMGR: change name of freq_get to get_freq 2015-04-17 01:10:29 +02:00
Daniel Hellstrom
e53daed25e LIBPCI: updated license to rtems.org 2015-04-17 01:10:28 +02:00
Daniel Hellstrom
f4bf22c8e5 LIBPCI: new implementation private header file
- new implementation private header file
 - moved double implementation of pci_dev_create used by read & auto cfg
   libraries to common pci_dev_create.c
 - moved declaration of pci_bus_cnt to private header file so avoid extern
   in .c files
2015-04-17 01:10:28 +02:00
Daniel Hellstrom
1f4f1e2e12 LIBPCI: various comment/unsed clean-ups 2015-04-17 01:10:28 +02:00
Daniel Hellstrom
346a9a5739 LIBPCI: use enum with pci_system_type 2015-04-17 01:10:28 +02:00
Daniel Hellstrom
15620f5b6b LIBPCI: use RTEMS_INLINE_ROUTINE 2015-04-17 01:10:28 +02:00
Daniel Hellstrom
dc623099ca LIBPCI: moved comment out of license header 2015-04-17 01:10:27 +02:00
Daniel Hellstrom
e189f24186 PCI BUS: moved comment out of license header 2015-04-17 01:10:27 +02:00
Daniel Hellstrom
39937b6c85 LIBPCI: added license and auto-gen comment to pci/ids.h
To be Merged.
2015-04-17 01:10:27 +02:00
Daniel Hellstrom
07e5a0e884 LIBPCI: clean-up pci_for_each_child() search arg 2015-04-17 01:10:27 +02:00
Daniel Hellstrom
4ab9296952 LIBPCI: remove $Id in makefile.am 2015-04-17 01:10:27 +02:00
Daniel Hellstrom
c1c37a1c58 LIBPCI: converted to BSD header 2015-04-17 01:10:26 +02:00
Daniel Hellstrom
56ea46ba40 DRVMGR: PCI BUS converted to BSD header 2015-04-17 01:10:26 +02:00
Daniel Hellstrom
1f669148da LIBPCI: moved pci_bus copyright into a single line 2015-04-17 01:10:26 +02:00
Daniel Hellstrom
71e8a5ccd9 LIBPCI: moved copyright into a single line 2015-04-17 01:10:26 +02:00
Daniel Hellstrom
358b85437f LIBPCI: removed unused changes file 2015-04-17 01:10:26 +02:00
Daniel Hellstrom
a2e0e6e59e LIBPCI: fixed RES2DEV in pci/cfg.h 2015-04-17 01:10:26 +02:00
Daniel Hellstrom
ab907e8eab NGMP PCI: added support for NGMP prototype boards 2015-04-17 01:10:19 +02:00
Daniel Hellstrom
ffd8002dbd GR-CPCI-LEON4-N2X: added PCI peripheral driver for PCI device
Interrupts have not been test yet
2015-04-17 01:10:19 +02:00
Daniel Hellstrom
1c5a7e5e52 LIBPCI: added DRVMGR model for PCI bus 2015-04-17 01:10:16 +02:00
Daniel Hellstrom
a31845f7f9 LIBPCI: added PCI layer to cpukit/libpci 2015-04-17 01:10:15 +02:00