| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
| |
A "make dist" is not supported. So, it makes no sense to have pure "make
dist" related stuff in the Makefile.am.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
| |
This header file contained timing overhead values which are hard to
maintain.
Update #3254.
|
| |
|
|
|
|
| |
Add bsp_fdt_map_intr() intended for the libbsd FDT support.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
configuration space
This patch fundamentally results from enhancements to the pc386 BSP
to support systems which do **NOT** have the legacy PCI BIOS. The
patch adds support for detecting when legacy PCI BIOS is not
present and then using IO space to access to PCI Configuration Space.
This resulted in dynamically selected between two implementations
of PCI and refactoring out the shared methods.
This patch adds shared implementations of pci_bus_count() and
pci_find_device(). Subsequent patches will remove implementations
of these methods in other BSPs where possible.
|
|
|
|
| |
Update #2408.
|
|
|
|
| |
Also regenerate preinstall.am. Closes #2434.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Changes relative to the previous patch set:
- Moved GPIO pin interrupts to rtems chains, instead of a local linked list;
- Restructured the pin tracking structure, separating the interrupt information for each pin meaning that a pin without any interrupt enabled only requires 8 bytes, while keeping interrupt information (handling information, handler chain control, ...) requires 24 additional bytes (total of 32 bytes per pin with interrupts enabled);
- Added support for 'parallel' pin function assignment, allowing the function assignment to be set for multiple pins in a single GPIO hardware call. If a BSP does not support this feature it becomes a sequence of individual calls per pin. Also added support for GPIO pin groupings, allowing to write and read byte data to a series of pins which behave as a single entity;
- Added bank tracking structure to maintain the bank lock and bank level interrupt information (threaded/normal handling, interrupt counter);
- Changed GPIO settings to BSP defined constants, reducing dynamic memory allocation;
- Switched interrupt tasks for a rtems interrupt server, with the possibility of using normal interrupts (user handlers being called within ISR context).
|
|
|
|
|
|
|
|
|
|
|
| |
The dummy.c was a de-facto default configuration. Rename it to
default-configuration.c. Use unlimited objects and the stack checker.
This makes it easier for new RTEMS users which will likely use this file
if they just work with the usual main() function as the application
entry point. Provide proper arguments for main() using the BSP command
line. Add spare user extensions and drivers.
Do not initialize the network by default. Delete bspinit.c.
|
|
|
|
|
|
| |
Add a simple Termios console driver using a table for statically
registered devices used in console_initialize() and dynamic installation
via console_device_install().
|
|
|
|
| |
Fix build error introduced in f535fe5311978af53635c2da8e5cb10ef9d78802.
|
|
|
|
|
|
| |
Merge RTEMS_FATAL_SOURCE_BSP_GENERIC and RTEMS_FATAL_SOURCE_BSP_SPECIFIC
into new fatal source RTEMS_FATAL_SOURCE_BSP. This makes it easier to
figure out the code position given a fatal source and code.
|
|
|
|
| |
Add bsp_generic_fatal().
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Script does what is expected and tries to do it as
smartly as possible.
+ remove occurrences of two blank comment lines
next to each other after Id string line removed.
+ remove entire comment blocks which only exited to
contain CVS Ids
+ If the processing left a blank line at the top of
a file, it was removed.
|
|
|
|
|
| |
See http://www.rtems.org/pipermail/rtems-devel/2012-May/001006.html
for details.
|
| |
|
|
|
|
|
| |
* Makefile.am: Add bspinit.c, a common Init task that manages
command line arguments from a BSP.
|
| |
|
|
|
|
| |
added support for an optional separate heap area.
|
|
|
|
| |
* Makefile.am: Fix indentation.
|
|
|
|
| |
* Makefile.am: Remove shared/main.c.
|
|
|
|
|
| |
* Makefile.am:
added new files in shared/vmeUniverse to EXTRA_DIST
|
|
|
|
|
|
|
| |
* Makefile.am:
moved VME.h from libbsp/powerpc/shared/vme to
libbsp/shared/vmeUniverse; eventually, this (and other)
VME API headers should migrate to cpukit.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* shared/vmeUniverse/vmeTsi148.c, shared/vmeUniverse/vmeTsi148.h,
shared/vmeUniverse/vme_am_defs.h: New files.
* Makefile.am, shared/vmeUniverse/README.universe,
shared/vmeUniverse/vmeUniverse.c, shared/vmeUniverse/vmeUniverse.h:
Several VME related upgrades and fixes, hopefully addressing PR#835:
vmeUniverse driver now supports shared interrupts. vmeUniverse now
supports up to four wires between universe and PIC. A new irq mgr
installation routine has been added allowing to use the new features.
(old version is still present for bwd compatibility). Calls have been
added to change interrupt routing (e.g., if wires have different
priorities at the PIC this feature can be used to configure
priorites). Routine for testing VME interrupts has been added (useful
during BSP development). A new header defining standard VME address
modes has been added so that the VME API doesn't have to #include a
particular bridge driver header. For all driver entry points, a 'XX'
variant has been added which allows to pass the chip's base address
[in case a second universe is sitting on a VME card :-)]. Driver now
uses interrupt line as read from PCI config. space (without offset)
BSP needs to use PCI fixup if necessary. Added a driver for the
tundra tsi148 VME bridge.
|
|
|
|
| |
* Makefile.am: Don't include lib.am.
|
|
|
|
|
| |
* bspstart.am: Use .$(OBJEXT) instead of .o.
* Makefile.am: Remove shmdr.
|
|
|
|
| |
* Makefile.am: s,${PROJECT_RELEASE}/lib,$(PROJECT_LIB),g.
|
|
|
|
|
|
|
|
| |
* Makefile.am: Use mkdir_p.
Remove dirs from PRE/TMPINSTALL_FILES.
* bsp.am: Replace bsplibdir by project_libdir.
Use mkdir_p instead of mkinstalldirs.
Remove dirs from PRE/TMPINSTALL_FILES.
|
|
|
|
|
| |
* Makefile.am: Misc. fixes.
* bsp.am: Add project_libdir.
|
|
|
|
|
|
|
| |
* Makefile.am: Merge-in shared/Makefile.am, shmdr/Makefile.am.
* shared/Makefile.am: Remove.
* shmdir/Makefile.am: Remove.
* bsp.am: Add preinstallation dirstamp support.
|
|
|
|
|
| |
Makefile.am: Reflect having moved automake.
shmdr/Makefile.am: Reflect having moved automake.
|
|
|
|
|
|
| |
* configure.ac: Remove (Merged into ../../configure.ac).
* Makefile.am: Reflect having merged configure.ac into
../../configure.ac.
|
|
|
|
|
|
| |
* configure.ac: Remove include/Makefile, include/rtems/Makefile,
include/rtems/score/Makefile (Eliminate targopts.h).
* Makefile.am: Remove include from SUBDIRS (Eliminate targopts.h)
|
|
|
|
|
|
|
|
|
|
|
| |
* configure.ac:
AC_INIT(package,_RTEMS_VERSION,_RTEMS_BUGS).
AM_INIT_AUTOMAKE([no-define foreign 1.6]).
* Makefile.am: Remove AUTOMAKE_OPTIONS.
* include/rtems/score/Makefile.am: Remove AUTOMAKE_OPTIONS.
* include/rtems/Makefile.am: Remove AUTOMAKE_OPTIONS.
* include/Makefile.am: Remove AUTOMAKE_OPTIONS.
* shmdr/Makefile.am: Remove AUTOMAKE_OPTIONS.
|
|
|
|
|
|
| |
* Makefile.am: Use @subdirs@ instead of RTEMS_LIBBSP_CPU_SUBDIR.
* configure.in: AC_PREREQ(2.52), apply RTEMS_CPU_SUBDIRS, remove
RTEMS_LIBBSP_CPU_SUBDIR.
|
|
|
|
|
|
|
|
| |
* Makefile.am: Use SUBDIRS = instead of SUBDIRS += to make
automake-1.5 happy.
* include/rtems/score/Makefile.am: Use CLEANFILES = to make
automake-1.5 happy.
* bsp.am: Use PREINSTALL_FILES = to make automake-1.5 happy.
|
|
|
|
| |
* Makefile.am: Use ... instead of RTEMS_TOPdir in ACLOCAL_AMFLAGS.
|
|
|
|
| |
* Makefile.am: Switch to ACLOCAL_AMFLAGS = -I $(RTEMS_TOPdir)/aclocal.
|
|
|
|
|
| |
* Makefile.am: ACLOCAL_AMFLAGS= -I $(RTEMS_TOPdir)/macros.
Switch to GNU canonicalization.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
that addresses aspects of the targopts.h multilib related
issues.
Changes:
* Move targopts.h to libbsp/include, because the current targopts.h
actually is a per-BSP-header and therefore can not stay below exec/.
* Introduce an autoheader generated header file
(exec/score/include/rtems/score/cpuopts.h), which shall take per-cpu
configuration options only.
* Move all autoconf-detectable/configure specified per-cpu
option-defines from targopts.h to cpuopts.h.
* Add Makefiles to the libbsp/shared directory hierarchy.
Notes:
* The new per-bsp targopts.h in libbsp includes the per-cpu
cpuopts.h. This way, the new targopts.h is kept backward compatible
to the old targopts.h and existing BSPs which (carelessly) include
targopts.h (i386, ppc) should be kept working when using the
multilib-disabled configuration scheme.
* cpuopts.h is not yet complete, because the per-BSP make-targopts
rules from custom/<BSP>.cfg files can not be applied to files below
exec/ when building multilibs.
* All files below exec/ should not include targopts.h anymore, but
should include cpuopts.h instead. However, eliminating inclusion of
targopts.h currently triggers further structural / header file inclusion
related issues, because several ports apply BSP or CPU_MODEL specific
defines from targopts.h below exec/
|
| |
|
|
that contains:
* The fix for the gen68360/network/Makefile.am
* automatically set permissions to 755 to scripts/buildall and
scripts-ada/buildall (I remembered a trick to achieve this :).
* automake support for libbsp/* and libcpu/* (Attn: This part will
finally break old-style configuration for all non-public cpus)
NOTES:
* This patch has only been tested for a random selection of BSPs (I
haven't rebuilt all toolchains yet).
* This patch is against rtem-cvs as of this morning (MET).
To apply:
patch -p1 <rtems-rc-20000118-5.diff
cvs rm -f ./c/src/lib/libbsp/Makefile.in
cvs rm -f ./c/src/lib/libbsp/shmdr/Makefile.in
cvs rm -f ./c/src/lib/libcpu/Makefile.in
cvs add ./c/src/lib/libbsp/Makefile.am
cvs add ./c/src/lib/libbsp/shmdr/Makefile.am
cvs add ./c/src/lib/libcpu/Makefile.am
./bootstrap
|