Commit Graph

39 Commits

Author SHA1 Message Date
Sebastian Huber
ca4602e914 Use linker set for libio initialization
Update #2408.
2016-02-03 10:00:57 +01:00
Ben Gras
6f6e5d758f libbsp/Makefile.am: gpio.h as preinstalled header
Also regenerate preinstall.am. Closes #2434.
2015-10-21 16:57:05 +02:00
Andre Marques
a57b72ded9 Removed GPIO API from the libbsp/shared Makefile. 2015-09-25 16:36:52 -04:00
Andre Marques
87f8b01f58 RTEMS GPIO API definition and implementation.
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).
2015-08-06 10:53:37 -04:00
Sebastian Huber
e870941bb0 libmisc: More useful default configuration
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.
2014-12-05 07:47:06 +01:00
Sebastian Huber
d5cc923fea bsps: Add Termios console driver initialization
Add a simple Termios console driver using a table for statically
registered devices used in console_initialize() and dynamic installation
via console_device_install().
2014-10-07 16:35:20 +02:00
Sebastian Huber
bdd6082618 bsps: Fix build error
Fix build error introduced in f535fe5311.
2014-09-18 11:07:41 +02:00
Sebastian Huber
33cb8bf64d score: Add RTEMS_FATAL_SOURCE_BSP
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.
2014-02-19 09:59:39 +01:00
Sebastian Huber
ade27c69eb bsps: Move bsp_generic_fatal_code to new file
Add bsp_generic_fatal().
2013-06-21 10:26:10 +02:00
Sebastian Huber
38c0b1121f bsps: New file <bsp/default-initial-extension.h> 2012-11-13 09:38:02 +01:00
Joel Sherrill
9b4422a251 Remove All CVS Id Strings Possible Using a Script
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.
2012-05-11 08:44:13 -05:00
Joel Sherrill
33a105fb69 Revert: Remove CVS Ids
See http://www.rtems.org/pipermail/rtems-devel/2012-May/001006.html
for details.
2012-05-07 11:08:48 -05:00
Ralf Corsépius
91d2e18249 Remove CVS-Ids. 2012-05-04 09:36:24 +02:00
Chris Johns
288146576b 2009-04-28 Chris Johns <chrisj@rtems.org>
* Makefile.am: Add bspinit.c, a common Init task that manages
        command line arguments from a BSP.
2009-04-28 06:36:25 +00:00
Ralf Corsepius
9d873dc9d9 Don't install files from shared/. Remove references to preinstall.am. 2008-09-26 05:40:00 +00:00
Thomas Doerfler
d4886a0695 Changed bsp_get_workarea() to bsp_get_work_area() and
added support for an optional separate heap area.
2008-07-24 14:52:55 +00:00
Ralf Corsepius
1a297e5326 2008-01-16 Ralf Corsepius <ralf.corsepius@rtems.org>
* Makefile.am: Fix indentation.
2008-01-16 04:54:28 +00:00
Ralf Corsepius
3644d07d1b 2007-02-16 Ralf Corsepius <ralf.corsepius@rtems.org>
* Makefile.am: Remove shared/main.c.
2007-02-16 02:01:22 +00:00
Till Straumann
668d44ba4c 2007-01-30 Till Straumann <strauman@slac.stanford.edu>
* Makefile.am:
	added new files in shared/vmeUniverse to EXTRA_DIST
2007-01-31 03:36:44 +00:00
Till Straumann
6f457e899a 2007-01-19 Till Straumann <strauman@slac.stanford.edu>
* 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.
2007-01-19 22:51:42 +00:00
Till Straumann
784e792a04 2005-11-04 Till Straumann <strauman@slac.stanford.edu>
* 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.
2005-11-04 08:17:56 +00:00
Ralf Corsepius
439ed0c51d 2004-02-09 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* Makefile.am: Don't include lib.am.
2004-02-09 14:41:17 +00:00
Ralf Corsepius
bb37d3263d 2003-12-18 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* bspstart.am: Use .$(OBJEXT) instead of .o.
	* Makefile.am: Remove shmdr.
2003-12-18 23:12:29 +00:00
Ralf Corsepius
bd7dc66b41 2003-12-13 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* Makefile.am: s,${PROJECT_RELEASE}/lib,$(PROJECT_LIB),g.
2003-12-13 05:23:42 +00:00
Ralf Corsepius
6dcc0f4ed7 2003-12-12 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* 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.
2003-12-12 15:34:16 +00:00
Ralf Corsepius
72c9ccf205 2003-12-11 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* Makefile.am: Misc. fixes.
	* bsp.am: Add project_libdir.
2003-12-11 06:22:34 +00:00
Ralf Corsepius
57d673c982 2003-12-03 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* Makefile.am: Merge-in shared/Makefile.am, shmdr/Makefile.am.
	* shared/Makefile.am: Remove.
	* shmdir/Makefile.am: Remove.
	* bsp.am: Add preinstallation dirstamp support.
2003-12-03 15:27:06 +00:00
Ralf Corsepius
3776f87bed 2003-08-16 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
Makefile.am: Reflect having moved automake.
	shmdr/Makefile.am: Reflect having moved automake.
2003-08-16 12:59:27 +00:00
Ralf Corsepius
5710072a71 2003-08-08 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* configure.ac: Remove (Merged into ../../configure.ac).
	* Makefile.am: Reflect having merged configure.ac into
	../../configure.ac.
2003-08-08 03:14:14 +00:00
Ralf Corsepius
5a8641e38e 2002-08-09 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* configure.ac: Remove include/Makefile, include/rtems/Makefile,
	include/rtems/score/Makefile (Eliminate targopts.h).
	* Makefile.am: Remove include from SUBDIRS (Eliminate targopts.h)
2002-08-09 04:16:27 +00:00
Joel Sherrill
c42980ab47 2002-03-27 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* 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.
2002-03-28 00:43:09 +00:00
Joel Sherrill
fc40d5d4a8 2001-10-09 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* 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.
2001-10-11 16:38:05 +00:00
Joel Sherrill
ee2319a580 2001-09-22 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* 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.
2001-09-24 18:19:47 +00:00
Joel Sherrill
feead22618 2000-11-09 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* Makefile.am: Use ... instead of RTEMS_TOPdir in ACLOCAL_AMFLAGS.
2000-11-09 16:43:05 +00:00
Joel Sherrill
a314d3b497 2000-11-02 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* Makefile.am: Switch to ACLOCAL_AMFLAGS = -I $(RTEMS_TOPdir)/aclocal.
2000-11-02 15:49:06 +00:00
Joel Sherrill
e83378d73e 2000-10-27 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* Makefile.am: ACLOCAL_AMFLAGS= -I $(RTEMS_TOPdir)/macros.
        Switch to GNU canonicalization.
2000-10-27 13:59:24 +00:00
Joel Sherrill
e0ba3e80ef Patch rtems-rc-20000709-1.diff from Ralf Corsepius <corsepiu@faw.uni-ulm.de>
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/
2000-07-10 19:23:38 +00:00
Joel Sherrill
df49c60c96 Merged from 4.5.0-beta3a 2000-06-12 15:00:15 +00:00
Joel Sherrill
847dbbe6c7 Patches rtems-rc-20000118-5.diff from Ralf Corsepius <corsepiu@faw.uni-ulm.de>
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
2000-02-01 13:41:54 +00:00