summaryrefslogtreecommitdiffstats
path: root/cpukit/rtems/include (follow)
Commit message (Collapse)AuthorAgeFilesLines
* 2005-05-14 Sergei Organov <osv@topconrd.ru>Joel Sherrill2005-05-201-0/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PR 746/rtems Optimize realloc(). The problem is that realloc() can neither grow nor shrink efficiently the current memory region without support from underlying heap/region modules. The patch introduces one new routine for each of heap and region modules, _Heap_Resize_block(), and rtems_region_resize_segment(), respectively, and uses the latter to optimize realloc(). The implementation of _Heap_Resize_block() lead to changing of the heap allocation strategy: now the heap manager, when splits larger free block into used and new free parts, makes the first part of the block used, not the last one as it was before. Due to this new strategy, _Heap_Resize_block() never needs to change the user pointer. Caveat: unlike previous heap implementation, first few bytes of the contents of the memory allocated from the heap are now almost never all zero. This can trigger bugs in client code that have not been visible before this patch. * libcsupport/src/malloc.c (realloc): try to resize segment in place using new rtems_region_resize_segment() routine before falling back to the malloc()/free() method. * score/src/heap.c: (_Heap_Initialize): change initial heap layout to reflect new allocation strategy of using of the lower part of a previously free block when splitting it for the purpose of allocation. (_Heap_Block_allocate): when split, make the lower part used, and leave the upper part free. Return type changed from Heap_Block* to uint32_t. * score/include/rtems/score/heap.h: (Heap_Statistics): added 'resizes' field. (Heap_Resize_status): new enum. (_Heap_Resize_block): new routine. (_Heap_Block_allocate): return type changed from Heap_Block* to uint32_t. * score/src/heapwalk.c: reflect new heap layout in checks. * score/src/heapsizeofuserarea.c: more assertions added. * score/src/heapresizeblock.c: new file. (_Heap_Resize_block): new routine. * score/src/heapfree.c: reverse the checks _Heap_Is_block_in() and _Heap_Is_prev_used() on entry to be in this order. * score/src/heapallocate.c, score/src/heapallocatealigned.c: ignore return value of _Heap_Block_allocate(). * score/Makefile.am (HEAP_C_FILES): added src/heapresizeblock.c. * rtems/include/rtems/rtems/region.h: (rtems_region_resize_segment): new interface routine. (_Region_Process_queue): new internal routine called from rtems_region_resize_segment() and rtems_region_return_segment(). * rtems/src/regionreturnsegment.c: move queue management code into the new internal routine _Region_Process_queue() and call it. * rtems/src/regionresizesegment.c: new file. (rtems_region_resize_segment): new interface routine. * rtems/src/regionprocessqueue.c: new file. (_Region_Process_queue): new internal routine containing queue management code factored out from 'regionreturnsegment.c'. * rtems/Makefile.am (REGION_C_FILES): Added src/regionresizesegment.c, and src/regionprocessqueue.c. * ada/rtems.adb, ada/rtems.ads: Added Region_Resize_Segment.
* Use rtems_id for semaphores.Ralf Corsepius2005-02-041-1/+1
|
* New header guard.Ralf Corsepius2005-01-2832-64/+64
|
* 2004-11-29 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2004-11-291-1/+16
| | | | | | | | | | | | * libcsupport/src/mallocfreespace.c, rtems/Makefile.am, rtems/include/rtems/rtems/region.h, score/Makefile.am, score/include/rtems/score/heap.h, score/src/heapgetinfo.c: Add capability to return information about just the free blocks in a region or heap. Also changed the semantics of free space available to be the largest block of memory that can be allocated. * rtems/src/regiongetfreeinfo.c, score/src/heapgetfreeinfo.c: New files. : score/include/rtems/score/object.h, score/src/objectinitializeinformation.c: Remove warning.
* Add doxygen preamble.Ralf Corsepius2004-11-021-2/+5
|
* 2004-10-02 Ralf Corsepius <ralf_corsepiu@rtems.org>Ralf Corsepius2004-11-0231-64/+154
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * rtems/include/rtems.h, rtems/include/rtems/rtems/asr.h, rtems/include/rtems/rtems/attr.h, rtems/include/rtems/rtems/cache.h, rtems/include/rtems/rtems/clock.h, rtems/include/rtems/rtems/config.h, rtems/include/rtems/rtems/dpmem.h, rtems/include/rtems/rtems/event.h, rtems/include/rtems/rtems/eventmp.h, rtems/include/rtems/rtems/eventset.h, rtems/include/rtems/rtems/intr.h, rtems/include/rtems/rtems/message.h, rtems/include/rtems/rtems/modes.h, rtems/include/rtems/rtems/mp.h, rtems/include/rtems/rtems/msgmp.h, rtems/include/rtems/rtems/options.h, rtems/include/rtems/rtems/part.h, rtems/include/rtems/rtems/partmp.h, rtems/include/rtems/rtems/ratemon.h, rtems/include/rtems/rtems/region.h, rtems/include/rtems/rtems/regionmp.h, rtems/include/rtems/rtems/rtemsapi.h, rtems/include/rtems/rtems/sem.h, rtems/include/rtems/rtems/semmp.h, rtems/include/rtems/rtems/signal.h, rtems/include/rtems/rtems/signalmp.h, rtems/include/rtems/rtems/status.h, rtems/include/rtems/rtems/support.h, rtems/include/rtems/rtems/taskmp.h, rtems/include/rtems/rtems/tasks.h, rtems/include/rtems/rtems/timer.h, rtems/include/rtems/rtems/types.h: Add doxygen preamble.
* 2004-11-01 Ralf Corsepius <ralf_corsepius@rtems.org>Ralf Corsepius2004-11-011-2/+2
| | | | | * rtems/include/rtems/rtems/tasks.h, rtems/src/taskstart.c: rtems_task_start(..., rtems_task_argument argument );
* 2004-05-06 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2004-05-061-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PR 618/rtems * rtems/include/rtems/rtems/status.h, rtems/src/clockget.c, rtems/src/clockset.c, rtems/src/dpmemcreate.c, rtems/src/dpmemexternal2internal.c, rtems/src/dpmeminternal2external.c, rtems/src/eventmp.c, rtems/src/eventreceive.c, rtems/src/eventsend.c, rtems/src/msgqbroadcast.c, rtems/src/msgqcreate.c, rtems/src/msgqflush.c, rtems/src/msgqgetnumberpending.c, rtems/src/msgqreceive.c, rtems/src/msgqsubmit.c, rtems/src/partcreate.c, rtems/src/partdelete.c, rtems/src/partgetbuffer.c, rtems/src/ratemoncancel.c, rtems/src/ratemoncreate.c, rtems/src/ratemondelete.c, rtems/src/ratemongetstatus.c, rtems/src/ratemonident.c, rtems/src/ratemonperiod.c, rtems/src/regioncreate.c, rtems/src/regiondelete.c, rtems/src/regionextend.c, rtems/src/regiongetsegment.c, rtems/src/regiongetsegmentsize.c, rtems/src/regionreturnsegment.c, rtems/src/semcreate.c, rtems/src/semdelete.c, rtems/src/semflush.c, rtems/src/semident.c, rtems/src/taskcreate.c, rtems/src/taskgetnote.c, rtems/src/taskmode.c, rtems/src/taskrestart.c, rtems/src/taskresume.c, rtems/src/tasksetnote.c, rtems/src/tasksuspend.c, rtems/src/taskvariableadd.c, rtems/src/taskvariabledelete.c, rtems/src/taskvariableget.c, rtems/src/taskwakewhen.c, rtems/src/timercreate.c, rtems/src/timerdelete.c, rtems/src/timerfireafter.c, rtems/src/timerfirewhen.c, rtems/src/timerserverfireafter.c, rtems/src/timerserverfirewhen.c, score/include/rtems/score/object.h, score/src/coretodvalidate.c, score/src/objectnametoid.c: Add NULL checks.
* Remove stray white spaces.Ralf Corsepius2004-04-1814-69/+69
|
* 2004-04-13 Ralf Corsepius <ralf_corsepius@rtems.org>Ralf Corsepius2004-04-131-1/+7
| | | | | | | | * rtems/include/rtems/rtems/types.h: Include <rtems/stdint.h> instead of <stdint.h>. Conditionally typedef rtems*signed64 types. * score/include/rtems/system.h: Include <rtems/stdint.h> instead of <stdint.h>.
* 2004-03-30 Ralf Corsepius <ralf_corsepius@rtems.org>Ralf Corsepius2004-03-301-1/+3
| | | | | | | | * rtems/include/rtems/rtems/region.h: Include stddef.h for size_t. (rtems_region_get_segment_size): Use size_t instead of uint32_t for "size" (3rd arg). * rtems/src/regiongetsegmentsize.c: Reflect changes above. * libcsupport/src/malloc.c: Reflect changes above.
* 2004-03-29 Ralf Corsepius <ralf_corsepius@rtems.org>Ralf Corsepius2004-03-2920-98/+98
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * rtems/include/rtems.h, rtems/include/rtems/rtems/asr.h, rtems/include/rtems/rtems/attr.h, rtems/include/rtems/rtems/clock.h, rtems/include/rtems/rtems/config.h, rtems/include/rtems/rtems/dpmem.h, rtems/include/rtems/rtems/eventset.h, rtems/include/rtems/rtems/message.h, rtems/include/rtems/rtems/modes.h, rtems/include/rtems/rtems/msgmp.h, rtems/include/rtems/rtems/options.h, rtems/include/rtems/rtems/part.h, rtems/include/rtems/rtems/ratemon.h, rtems/include/rtems/rtems/region.h, rtems/include/rtems/rtems/regionmp.h, rtems/include/rtems/rtems/sem.h, rtems/include/rtems/rtems/support.h, rtems/include/rtems/rtems/taskmp.h, rtems/include/rtems/rtems/tasks.h, rtems/include/rtems/rtems/timer.h, rtems/inline/rtems/rtems/part.inl, rtems/inline/rtems/rtems/region.inl, rtems/macros/rtems/rtems/part.inl, rtems/src/attr.c, rtems/src/dpmem.c, rtems/src/dpmemcreate.c, rtems/src/dpmemexternal2internal.c, rtems/src/dpmeminternal2external.c, rtems/src/eventseize.c, rtems/src/msg.c, rtems/src/msgmp.c, rtems/src/msgqallocate.c, rtems/src/msgqbroadcast.c, rtems/src/msgqcreate.c, rtems/src/msgqflush.c, rtems/src/msgqgetnumberpending.c, rtems/src/msgqident.c, rtems/src/msgqreceive.c, rtems/src/msgqsend.c, rtems/src/msgqsubmit.c, rtems/src/msgqtranslatereturncode.c, rtems/src/msgqurgent.c, rtems/src/part.c, rtems/src/partcreate.c, rtems/src/partident.c, rtems/src/partmp.c, rtems/src/ratemon.c, rtems/src/region.c, rtems/src/regioncreate.c, rtems/src/regionextend.c, rtems/src/regiongetsegment.c, rtems/src/regiongetsegmentsize.c, rtems/src/regionmp.c, rtems/src/regionreturnsegment.c, rtems/src/rtemstimer.c, rtems/src/sem.c, rtems/src/semcreate.c, rtems/src/semident.c, rtems/src/semmp.c, rtems/src/semobtain.c, rtems/src/semtranslatereturncode.c, rtems/src/taskcreate.c, rtems/src/taskgetnote.c, rtems/src/taskident.c, rtems/src/taskinitusers.c, rtems/src/taskmp.c, rtems/src/taskrestart.c, rtems/src/tasks.c, rtems/src/tasksetnote.c, rtems/src/taskstart.c, rtems/src/timerserver.c: Convert to using c99 fixed size types.
* Unused.Ralf Corsepius2004-03-083-6/+0
|
* 2004-01-30 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2004-01-301-30/+0
| | | | | * ChangeLog, rtems/Makefile.am, rtems/include/rtems/rtems/support.h: Reverse developmental patches accidentally committed.
* 2004-01-30 Wilfried Busalski <w.busalski@lancier-monitoring.de>Joel Sherrill2004-01-301-0/+30
| | | | | | | PR pppd/564 * rtems/Makefile.am, rtems/include/rtems/rtems/support.h: ppp0 Interface lose packets if the system use a slow baudrate for the modem or the tcp/ip-packet is fragmented.
* 2003-09-04 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2003-09-0432-32/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * include/rtems.h, include/rtems/rtems/asr.h, include/rtems/rtems/attr.h, include/rtems/rtems/cache.h, include/rtems/rtems/clock.h, include/rtems/rtems/config.h, include/rtems/rtems/dpmem.h, include/rtems/rtems/event.h, include/rtems/rtems/eventmp.h, include/rtems/rtems/eventset.h, include/rtems/rtems/intr.h, include/rtems/rtems/message.h, include/rtems/rtems/modes.h, include/rtems/rtems/mp.h, include/rtems/rtems/msgmp.h, include/rtems/rtems/options.h, include/rtems/rtems/part.h, include/rtems/rtems/partmp.h, include/rtems/rtems/ratemon.h, include/rtems/rtems/region.h, include/rtems/rtems/regionmp.h, include/rtems/rtems/rtemsapi.h, include/rtems/rtems/sem.h, include/rtems/rtems/semmp.h, include/rtems/rtems/signal.h, include/rtems/rtems/signalmp.h, include/rtems/rtems/status.h, include/rtems/rtems/support.h, include/rtems/rtems/taskmp.h, include/rtems/rtems/tasks.h, include/rtems/rtems/timer.h, include/rtems/rtems/types.h, inline/rtems/rtems/asr.inl, inline/rtems/rtems/attr.inl, inline/rtems/rtems/dpmem.inl, inline/rtems/rtems/event.inl, inline/rtems/rtems/eventset.inl, inline/rtems/rtems/message.inl, inline/rtems/rtems/modes.inl, inline/rtems/rtems/options.inl, inline/rtems/rtems/part.inl, inline/rtems/rtems/ratemon.inl, inline/rtems/rtems/region.inl, inline/rtems/rtems/sem.inl, inline/rtems/rtems/status.inl, inline/rtems/rtems/support.inl, inline/rtems/rtems/tasks.inl, inline/rtems/rtems/timer.inl, macros/rtems/rtems/asr.inl, macros/rtems/rtems/attr.inl, macros/rtems/rtems/dpmem.inl, macros/rtems/rtems/event.inl, macros/rtems/rtems/eventset.inl, macros/rtems/rtems/message.inl, macros/rtems/rtems/modes.inl, macros/rtems/rtems/options.inl, macros/rtems/rtems/part.inl, macros/rtems/rtems/ratemon.inl, macros/rtems/rtems/region.inl, macros/rtems/rtems/sem.inl, macros/rtems/rtems/status.inl, macros/rtems/rtems/support.inl, macros/rtems/rtems/tasks.inl, macros/rtems/rtems/timer.inl, src/attr.c, src/clockget.c, src/clockset.c, src/clocktick.c, src/dpmem.c, src/dpmemcreate.c, src/dpmemdelete.c, src/dpmemexternal2internal.c, src/dpmemident.c, src/dpmeminternal2external.c, src/event.c, src/eventmp.c, src/eventreceive.c, src/eventseize.c, src/eventsend.c, src/eventsurrender.c, src/eventtimeout.c, src/intr.c, src/intrbody.c, src/intrcatch.c, src/mp.c, src/msg.c, src/msgmp.c, src/msgqallocate.c, src/msgqbroadcast.c, src/msgqcreate.c, src/msgqdelete.c, src/msgqflush.c, src/msgqgetnumberpending.c, src/msgqident.c, src/msgqreceive.c, src/msgqsend.c, src/msgqsubmit.c, src/msgqtranslatereturncode.c, src/msgqurgent.c, src/part.c, src/partcreate.c, src/partdelete.c, src/partgetbuffer.c, src/partident.c, src/partmp.c, src/partreturnbuffer.c, src/ratemon.c, src/ratemoncancel.c, src/ratemoncreate.c, src/ratemondelete.c, src/ratemongetstatus.c, src/ratemonident.c, src/ratemonperiod.c, src/ratemontimeout.c, src/region.c, src/regioncreate.c, src/regiondelete.c, src/regionextend.c, src/regiongetinfo.c, src/regiongetsegment.c, src/regiongetsegmentsize.c, src/regionident.c, src/regionmp.c, src/regionreturnsegment.c, src/rtclock.c, src/rtemsidtoname.c, src/rtemstimer.c, src/sem.c, src/semcreate.c, src/semdelete.c, src/semflush.c, src/semident.c, src/semmp.c, src/semobtain.c, src/semrelease.c, src/semtranslatereturncode.c, src/signal.c, src/signalcatch.c, src/signalmp.c, src/signalsend.c, src/taskcreate.c, src/taskdelete.c, src/taskgetnote.c, src/taskident.c, src/taskinitusers.c, src/taskissuspended.c, src/taskmode.c, src/taskmp.c, src/taskrestart.c, src/taskresume.c, src/tasks.c, src/tasksetnote.c, src/tasksetpriority.c, src/taskstart.c, src/tasksuspend.c, src/taskvariableadd.c, src/taskvariabledelete.c, src/taskvariableget.c, src/taskwakeafter.c, src/taskwakewhen.c, src/timercancel.c, src/timercreate.c, src/timerdelete.c, src/timerfireafter.c, src/timerfirewhen.c, src/timergetinfo.c, src/timerident.c, src/timerreset.c, src/timerserver.c, src/timerserverfireafter.c, src/timerserverfirewhen.c: URL for license changed.
* 2003-08-14 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2003-08-142-1/+22
| | | | | | | | | | | * Makefile.am, include/rtems.h, include/rtems/rtems/status.h, src/dpmemident.c, src/msgqident.c, src/partident.c, src/ratemonident.c, src/regionident.c, src/semident.c, src/taskident.c, src/timerident.c: Added ID to name lookup service and changed name of id/name translation status code. This propagated to multiple functions. The user API service added was rtems_object_id_to_name() * src/rtemsidtoname.c: New file.
* 2003-06-12 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2003-06-124-4/+4
| | | | | | | * include/rtems/rtems/msgmp.h, include/rtems/rtems/partmp.h, include/rtems/rtems/regionmp.h, include/rtems/rtems/semmp.h, src/msgmp.c, src/partmp.c, src/regionmp.c, src/semmp.c: Removed warnings.
* Merger from rtems-4.6-branchRalf Corsepius2003-05-301-1/+1
|
* 2003-05-27 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Ralf Corsepius2003-05-271-21/+18
| | | | | | PR 409: * include/rtems/rtems/types.h: Include rtems/stdint.h. Apply c99-types to typedef rtems_[un]signed[8|16|32|64].
* 2002-12-09 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Ralf Corsepius2002-12-091-47/+0
| | | | | | | | * include/Makefile.am: Remove. * inline/Makefile.am: Remove. * macros/Makefile.am: Remove. * src/Makefile.am: Remove. * Makefile.am: Merge-in removed Makefile.ams.
* 2002-12-02 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2002-12-021-1/+1
| | | | | * include/rtems/rtems/support.h: Added casts to eliminate warnings on 16 bit targets like the h8300.
* 2002-07-01 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2002-07-011-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * Mega patch merge to change the format of the object IDs to loosen the dependency between the SCORE and the various APIs. There was considerable work to simplify the object name management and it appears that the name_table field is no longer needed. This patch also includes the addition of the internal mutex which is currently only used to protect some types of allocation and deallocation. This significantly can reduce context switch latency under certain circumstances. In particular, some heap/region operations were O(n) and had dispatching disabled. This should help enormously. With this merge, the patch is not as clean as it should be. In particular, the documentation has not been modified to reflect the new object ID layout, the IDs in the test screens are not updated, and _Objects_Get_information needs to be a real routine not inlined. As part of this patch a lot of MP code for thread/proxy blocking was made conditional and cleaned up. * include/rtems.h, inline/rtems/rtems/region.inl, macros/rtems/rtems/region.inl, src/dpmem.c, src/dpmemcreate.c, src/msg.c, src/msgqcreate.c, src/part.c, src/partcreate.c, src/ratemon.c, src/ratemoncreate.c, src/region.c, src/regioncreate.c, src/regiondelete.c, src/regionextend.c, src/regiongetinfo.c, src/regiongetsegment.c, src/regiongetsegmentsize.c, src/regionident.c, src/regionreturnsegment.c, src/rtemstimer.c, src/sem.c, src/semcreate.c, src/taskcreate.c, src/taskident.c, src/tasks.c, src/timercreate.c: Modified as part of above.
* 2002-06-17 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Ralf Corsepius2002-06-171-1/+1
| | | | * Include $(top_srcdir)/automake/*.am.
* 2001-03-29 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2002-04-021-9/+9
| | | | | * Per PR126, configuration structures now match docs. * include/rtems/rtems/config.h: Use public data types.
* 2001-03-29 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2002-03-291-18/+33
| | | | | | | | | | | * Per PR147 addressed problems when reseting and inserting a timer into a timer chain that did not honor time passage since the last time the timer server was scheduled and the new insertion. * include/rtems/rtems/timer.h, src/timerreset.c, src/timerserver.c, src/timerserverfireafter.c, src/timerserverfirewhen.c: Broke up the "reset server" routine into a set of very specific routines that allowed the server to be unscheduled, timer chains to be "synchronized" with the current time before inserting a new timer.
* 2002-03-27 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Joel Sherrill2002-03-281-1/+0
| | | | | | | | * Makefile.am: Remove AUTOMAKE_OPTIONS. * include/Makefile.am: Remove AUTOMAKE_OPTIONS. * inline/Makefile.am: Remove AUTOMAKE_OPTIONS. * macros/Makefile.am: Remove AUTOMAKE_OPTIONS. * src/Makefile.am: Remove AUTOMAKE_OPTIONS.
* 2001-01-31 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2002-02-011-0/+21
| | | | | * include/rtems/rtems/timer.h: Missed merging these modifications in previous merge of new timer functionality.
* 2001-01-22 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2002-01-221-0/+3
| | | | | * include/rtems/rtems/timer.h, src/timerserver.c: Add priority argument to rtems_timer_initiate_server().
* 2001-01-16 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2002-01-161-6/+127
| | | | | | | | | | | | | | | | | | | | * Added task-based timers to the Timer Manager. This added three new directives: - rtems_timer_initiate_server - rtems_timer_server_fire_after - rtems_timer_server_fire_when In the process of doing this, a number of cleanups were made. * src/timerserver.c, src/timerserverfireafter.c, src/timerserverfirewhen.c: New files. * include/timer/timer.h: Added new prototypes and supporting types. * inline/rtems/rtems/timer.h, macros/rtems/rtems/timer.h: Enhanced _Timer_Is_interval_class() to cover the class TIMER_INTERVAL_ON_TASK. * src/Makefile.am: Accounted for new files. * src/rtemstimer.c: Added initialization of _Timer_Server variable. * src/timercancel.c, src/timerreset.c: Account for addition of timer classes. Also corrected the headers. * src/timercreate.c, src/timerdelete.c, src/timerfireafter.c, src/timerfireafter.c, src/timerident.c: Corrected header.
* 2001-10-16 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Joel Sherrill2001-10-161-7/+33
| | | | | | | | | | | | | * include/rtems/Makefile.am: Remove. * include/rtems/rtems/Makefile.am: Remove. * include/Makefile.am: Handle subdirs, require automake-1.5. * inline/rtems/Makefile.am: Remove. * inline/rtems/rtems/Makefile.am: Remove. * inline/Makefile.am: Handle subdirs, require automake-1.5. * macros/rtems/Makefile.am: Remove. * macros/rtems/rtems/Makefile.am: Remove. * macros: Handle subdirs, require automake-1.5. * Makefile.am: require automake-1.5.
* 2001-09-28 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Joel Sherrill2001-09-281-1/+1
| | | | | | | * include/rtems/rtems/Makefile.am: Use 'PREINSTALL_FILES ='. * include/Makefile.am: Use 'PREINSTALL_FILES ='. * inline/rtems/rtems/Makefile.am: Use 'PREINSTALL_FILES ='. * macros/rtems/rtems/Makefile.am: Use 'PREINSTALL_FILES ='.
* 2001-02-03 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Joel Sherrill2001-02-051-4/+2
| | | | | | | * include/Makefile.am, include/rtems/rtems/Makefile.am, inline/rtems/rtems/Makefile.am, macros/rtems/rtems/Makefile.am, rtems/optman/Makefile.am: Apply include_*HEADERS instead of H_FILES.
* 2001-01-22 Michael Hamel <mhamel@adi.co.nz>Joel Sherrill2001-01-221-1/+1
| | | | | * include/rtems.h, src/signalcatch.c: Modifications to make CodeWarrior happy.
* 2000-10-18 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2000-10-182-0/+22
| | | | | | | * src/regiongetinfo.c, include/rtems/rtems/region.h, include/rtems/rtems/types.h, src/Makefile.am: Added region_get_information() and information control block. * src/regiongetinfo.c: New file.
* 2000-09-29 Stephan Merker <merker@decrc.abb.de>Joel Sherrill2000-09-291-0/+1
| | | | | | | * include/rtems/rtems/ratemon.h, src/ratemonperiod.c, src/ratemontimeout.c: Add next_length field so period length can be changed by the the sequence period(X), period(not X) with no intervening cancel or expiration.
* Patch from John Cotton <john.cotton@nrc.ca> to correct style ofJoel Sherrill2000-06-161-16/+16
| | | | names to be rtems_PACKAGE_method.
* Added include of options.h since it was not being picked upJoel Sherrill2000-06-141-0/+1
| | | | by the network build.
* New file.Joel Sherrill2000-06-131-0/+137
|
* Moved i386 and m68k cache management code to libcpu. EverythingJoel Sherrill2000-06-132-140/+1
| | | | | | now is an implementation of the prototypes in rtems/rtems/cache.h. The libcpu/i386/wrapup directory is no longer needed. The PowerPC needs this done to it.
* Patch from John Cotton <john.cotton@nrc.ca>, Charles-Antoine GauthierJoel Sherrill2000-06-121-0/+140
| | | | | | | | | | | | | | | <charles.gauthier@iit.nrc.ca>, and Darlene A. Stewart <Darlene.Stewart@nrc.ca> to add support for a number of very significant things: + BSPs for many variations on the Motorola MBX8xx board series + Cache Manager including initial support for m68040 and PowerPC + Rework of mpc8xx libcpu code so all mpc8xx CPUs now use same code base. + Rework of eth_comm BSP to utiltize above. John reports this works on the 821 and 860
* Merged from 4.5.0-beta3aJoel Sherrill2000-06-122-7/+6
|
* Patch rtems-rc-4.5.0-13-cvs.diff from Ralf Corsepius <corsepiu@faw.uni-ulm.de>.Joel Sherrill2000-04-133-0/+6
| | | | adds .cvsignore.
* Directive rtems_task_variable_get() added by Eric Norum.Joel Sherrill2000-01-231-0/+12
|
* Patch from Eric Norum <eric@cls.usask.ca> to implement this:Joel Sherrill2000-01-211-2/+3
| | | | | | | | | | | | | | | | | | | | I'd like to propose a change to RTEMS task variables that I think would make them more useful. I think that it is early enough in their existence to still make changes to their API. 1) Change type from `int' to `void *'. 2) Add extra argument to task_variable_add -- if non-NULL, a pointer to a `destructor' function to be called when the task exits. This function would be called with that task's value of the task variable as its argument. In many cases, the `dtor' function could be `free'. rtems_status_code rtems_task_variable_add ( rtems_id tid, void **ptr, void (*dtor)(void *)); rtems_status_code rtems_task_variable_delete (rtems_id tid, void **ptr); This would be all we'd need to cleanly and efficiently support C++ per-thread exception information without dragging in all that POSIX API stuff.
* Added support for simple binary semaphores in addition to the highJoel Sherrill2000-01-051-7/+6
| | | | | | | | | | | | power binary/mutex style semaphores already supported by RTEMS. This was done at the request of Eric Norum <eric@cls.usask.ca> in support of his effort to port EPICS to RTEMS. This change consisted of changing the nesting_allowed boolean into a lock_nesting_behavior enumerated value as well as allowing the core mutex object to optionally support ensuring that the holder of a binary semaphore released it. Finally, a more subtle enhancement was to allow the non-holder to release a priority inheritance/ceiling mutex and still allow the holding task to return to its original priority.
* First attempt at adding simple binary semaphore in addition to the currentJoel Sherrill1999-12-131-1/+5
| | | | | "mutex" and counting semaphore. This is at the request of Eric Norum and his EPICS porting effort.
* Patch rtems-rc-19991123-rc-0.diff from Ralf Corsepius <corsepiu@faw.uni-ulm.de>Joel Sherrill1999-11-291-0/+14
| | | | | | | | | | | | | | | | | | | | | | | which (among other things) converted the mptests to automake. SUB_DIRS was used instead of SUBDIRS in some Makefile.ins (apparently a leftover from moving the start* directories) Addtional major bugs: * psxtests/include was empty (incomplete psxtests changes). * bogus handling of *.scn in itrontests (screens/sptests vs. screens/itrontests installation dirs) In addition I have added a few more changes (I couldn't resist) * automake support for itrontests * OPERATION_COUNT support in tmitrontests/ * automake support for tmitrontests * automake suppport for mptests * Some (minor) corrections to several configure.in/Makefile.ams => c/src/tests/ is completly under automake control, now. => we could start to sort out the structural issues with c/src/tests (tests/support, stubdr, tools, get "make dist" working)
* Patch rtems-rc-19991117-4.diff from Ralf Corsepius <corsepiu@faw.uni-ulm.de>:Joel Sherrill1999-11-221-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | .. a major configuration cleanup ... major enhancement of automake support. ... and it contains a *major* breakthough: Automake support for libchip and libmisc *LEAF* directories. To implement this I have used several nasty tricks * The basical trick is to wrap an old Makefile.in's contents into a Makefile.am and still continue to use (i.e include) the old *.cfg files. * Replaced each INSTALL_IF_CHANGE and INSTALL_VARIANT with make dependencies * Add a gnu-make ifdef AUTOMAKE to main.cfg to avoid conflicts between automake and RTEMS make rules * Replaced each install:: and preinstall:: rule with make dependencies * Replaced SUB_DIRS with SUBDIRS in all Makefile.ins (Automake convention) * Removed each manually added autoconf substitution which automake performs automatically. This is not yet full automake support, because using the temporary installation directory, preinstallation in general and building variants are in contradiction to automake's basic working principles ... ... the new Makefile.ams work still somewhat clumsy ... nevertheless they work (quite well). WARNING: At first glance this patch is small, but * it affects the whole configuration system. * it opens the road to introducing automake to all Makefile.ins currently not being under automake control. JOEL> Does this remove or add any files? Both, all Makefile.ins below libchip and libmisc get replaced with Makefile.ams.
* Updated copyright notice.Joel Sherrill1999-11-1731-62/+31
|