Commit Graph

339 Commits

Author SHA1 Message Date
Richard Barry
7eb7201b46 Casting only. 2008-04-12 23:26:44 +00:00
Richard Barry
b24032d4b0 Efficiency improvement. 2008-04-12 23:26:01 +00:00
Richard Barry
a6053582fc Update the sys tick to be more efficient. 2008-04-12 23:25:17 +00:00
Richard Barry
a9ed428422 Update prototypes and macros for the new xQueueSendFromISR() function and the task hook feature. 2008-04-12 09:48:40 +00:00
Richard Barry
da6d27b627 Introduce the application task hook feature. 2008-04-12 09:46:19 +00:00
Richard Barry
b73dafb1f4 Change the semantics of the xQueueGenericSendFromISR() function. 2008-04-12 09:45:02 +00:00
Richard Barry
2bc9dfa3f8 Ensure the first task starts with interrupts enabled. 2008-04-06 14:42:35 +00:00
Richard Barry
ed543197e0 Ensure the first task starts with interrupts enabled. 2008-04-06 14:41:04 +00:00
Richard Barry
24cb048892 Ensure the first task starts with interrupts enabled. 2008-04-06 14:38:27 +00:00
Richard Barry
ada4744871 Minor changes to the trace macros. 2008-04-06 09:37:26 +00:00
Richard Barry
06e8e93eb5 Added traceTASK_SWITCHED_OUT macro. 2008-04-06 09:36:48 +00:00
Richard Barry
a3677612d2 Corrected SysTick interval calculation. 2008-04-06 09:26:51 +00:00
Richard Barry
2ca3985a8c Corrected SysTick interval calculation. 2008-04-06 09:25:59 +00:00
Richard Barry
7ed94acdff Corrected SysTick interval calculation. 2008-04-06 09:25:00 +00:00
Richard Barry
cfcad6e78a Corrected prototypes for newly added functions that had the 'signed' qualifier missing. 2008-04-06 09:23:58 +00:00
Richard Barry
d1b9463e29 Changes required to build with the latest Xilinx tools. 2008-03-30 21:18:54 +00:00
Richard Barry
3fd422ff2f Return the lock counts to their original intended behaviour. 2008-03-29 20:50:38 +00:00
Richard Barry
9596b04eff Small mods, and update file headers. 2008-03-26 13:04:38 +00:00
Richard Barry
527fb6a907 Update version numbers to V4.8.0 2008-03-25 21:22:13 +00:00
Richard Barry
3b4545cdf6 Add extra const qualifiers and casts for linting purposes. 2008-03-25 18:30:09 +00:00
Richard Barry
8704fd145b 2008-03-24 13:01:33 +00:00
Richard Barry
343a6101c2 Correct function prototype. 2008-03-24 13:00:38 +00:00
Richard Barry
5024d47769 2008-03-24 10:18:07 +00:00
Richard Barry
8502ee5b1c Introduce configKERNEL_INTERRUPT_PRIORITY and make some performance optimisations. 2008-03-24 10:17:30 +00:00
Richard Barry
87575c5cfe Re-write the queue send and queue receive functions to improve their effect on interrupt responsiveness. 2008-03-23 16:06:45 +00:00
Richard Barry
ed28aa2046 Add critical section around xTaskCheckForTimeout() as the new queue code makes a call while the scheduler is not locked. 2008-03-23 16:00:51 +00:00
Richard Barry
5ebd39bfc9 Add utilities that can be used to query a queue from within an ISR. 2008-03-23 15:58:27 +00:00
Richard Barry
58905b6fb4 Performance optimisation. 2008-03-23 15:54:50 +00:00
Richard Barry
a8d03f24e3 Performance optimisation. 2008-03-23 15:53:37 +00:00
Richard Barry
ebfede454f Check in before attempting to remove absolute paths in PPC405 project. 2008-03-07 18:23:27 +00:00
Richard Barry
5cb4e9b5a6 Get preeprocessor working correctly. 2008-03-07 16:29:15 +00:00
Richard Barry
1aecde4efd Renaming .s to .S. 2008-03-07 13:43:27 +00:00
Richard Barry
ade2da38ed Clear the interrupt prior to servicing the interrupt - previously it was the other way around. 2008-03-07 11:08:10 +00:00
Richard Barry
bf5cd55c55 Comment ready for release. 2008-03-06 20:55:49 +00:00
Richard Barry
f73e663411 Rename PPC405 to PPC405_Xilinx. 2008-03-05 12:31:04 +00:00
Richard Barry
643c94a5a8 Rename PPC405 to PPC405_Xilinx. 2008-03-05 12:24:31 +00:00
Richard Barry
39b68e7fc5 PPC405 work in progress. 2008-03-05 12:21:46 +00:00
Richard Barry
ebcac1c4b5 PPC405 work in progress. 2008-03-05 10:13:59 +00:00
Richard Barry
8e856177c9 Modified uxTaskGetStackHighWaterMark() to take a parameter for the task to be checked, rather than just checking the stack of the calling task. 2008-03-05 10:13:18 +00:00
Richard Barry
47a7f0165b Modified uxTaskGetStackHighWaterMark() to take a parameter for the task to be checked, rather than just checking the stack of the calling task. 2008-03-05 10:12:35 +00:00
Richard Barry
60bead5003 Remove warnings generated by new features. 2008-03-03 21:46:29 +00:00
Richard Barry
39f6b0b5de Add stack check macros. 2008-03-03 20:56:55 +00:00
Richard Barry
71ef3153ea Add trace macros. 2008-03-03 16:32:37 +00:00
Richard Barry
b8b70528f4 Add trace macros. 2008-03-03 16:32:05 +00:00
Richard Barry
2b174e556c Add vTaskEnterCritical() and vTaskExitCritical() functions. 2008-02-25 18:54:28 +00:00
Richard Barry
ebf69dab5d More work in progress (PPC). 2008-02-25 18:53:23 +00:00
Richard Barry
9a9cd41098 Basic cooperative reg test tasks working. 2008-02-25 11:18:23 +00:00
Richard Barry
3c2306ed72 Work in progress, for backup purposes only. 2008-02-25 09:56:56 +00:00
Richard Barry
fedf9c7ba0 Add initial PPC405 files - this is a work in progress not a completed port. 2008-02-24 11:42:27 +00:00
Richard Barry
8c0260568e Add PPC definition. 2008-02-24 11:41:26 +00:00
Richard Barry
3e94695fb4 Update to V4.7.2. 2008-02-21 19:45:27 +00:00
Richard Barry
95189f40d2 2008-02-17 18:19:21 +00:00
Richard Barry
babd7f05f7 Remove obsolete code. 2008-02-17 18:08:59 +00:00
Richard Barry
125a9ef81d Correct cut and paste asm code. 2008-02-17 18:08:09 +00:00
Richard Barry
79dd981500 Remove casts that were generating warnings (even though the casts were added to remove warnings with some compilers). 2008-02-15 13:44:06 +00:00
Richard Barry
61efe2504c Revert critical section handling back to the original method. 2008-02-15 13:33:44 +00:00
Richard Barry
991624461f Revert to original critical section handling method. 2008-02-15 13:24:05 +00:00
Richard Barry
f44fc2c665 Change to use the configKERNEL_INTERRUPT_PRIORITY setting. 2008-02-13 19:43:30 +00:00
Richard Barry
5a418b56fa Tidy up - spell check. 2008-02-13 10:39:07 +00:00
Richard Barry
961e402e12 Add Fujitsu FX definition to portable.h. 2008-02-12 21:51:50 +00:00
Richard Barry
97bee57daa Work in progress still. 2008-02-12 21:50:24 +00:00
Richard Barry
0faf33fbca Work in progress. 2008-02-12 17:47:34 +00:00
Richard Barry
bdea62587e Work in progress. 2008-02-12 17:46:50 +00:00
Richard Barry
35afa63a47 Add Fujitsu 16bit port files. 2008-02-12 09:29:26 +00:00
Richard Barry
7e5450acd1 Change the critical section handling (Fujitsu 32bit port). 2008-02-11 21:02:40 +00:00
Richard Barry
7e6a2b0bd5 Update Fujitsu port files - work in progress. 2008-02-10 20:31:19 +00:00
Richard Barry
eed758709c Add MB91460 port and demo files. 2008-02-06 17:27:42 +00:00
Richard Barry
e6e5add7d8 Remove obsolete comment. 2008-02-06 16:49:39 +00:00
Richard Barry
05920be92a Correct sample code for recursive mutexes. 2008-02-04 08:37:01 +00:00
Richard Barry
c86dcf7826 Update to V4.7.1 2008-02-03 19:45:58 +00:00
Richard Barry
354a57ed5e Update counting semaphore function prototype. 2008-01-27 19:25:11 +00:00
Richard Barry
3ddf9a4210 Correct spelling. 2008-01-27 19:11:49 +00:00
Richard Barry
79b506472d Documentation updates. 2008-01-24 21:33:00 +00:00
Richard Barry
dfb8e7003b Prepare for V4.7.1 release. 2008-01-22 18:43:03 +00:00
Richard Barry
3c02bc385b Remove .bak files. 2008-01-22 18:26:07 +00:00
Richard Barry
2ac722926e Correct some documentation. 2007-12-18 20:07:21 +00:00
Richard Barry
fb799b7647 Update documentation. 2007-12-06 10:19:28 +00:00
Richard Barry
6e27b6ec86 Update documentation to correct spelling. 2007-12-05 21:50:00 +00:00
Richard Barry
44911a1c48 Update to V4.7.0. 2007-12-05 21:24:47 +00:00
Richard Barry
8603259d40 Add first version of alternative API. 2007-12-02 18:37:43 +00:00
Richard Barry
b6d2b739f3 Ensure warning free compilation under GCC. 2007-12-01 20:56:44 +00:00
Richard Barry
2931f43895 Missing PIC32 files. 2007-12-01 20:29:54 +00:00
Richard Barry
d69d2df8d6 Counting semaphore demo added. 2007-12-01 20:28:04 +00:00
Richard Barry
48b4870c7e Add STM32 Primer demo. Remove the .lock file from the Eclipse demos. 2007-11-26 15:43:24 +00:00
Richard Barry
620d3999ef Update to V4.6.1 - including PIC32MX port. 2007-11-05 16:44:39 +00:00
Richard Barry
0a9c978f18 Changes between V4.5.0 and V4.6.0 released October 28 2007
+ Changed the method used to force a context switch within an ISR for the
	  ARM7/9 GCC ports only.  The portENTER_SWITCHING_ISR() and 
	  portEXIT_SWITCHING_ISR() macros are no longer supported.  This is to 
	  ensure correct behaviour no matter which GCC version is used, with or
	  without the -fomit-frame-pointer option, and at all optimisation levels.
	+ Corrected the prototype for xQueueGenericSend() within queue.h.
2007-10-28 14:42:46 +00:00
Richard Barry
ada7fa862d Changed the way the ARM7/9 GCC ports enter interrupts that can cause a context switch. 2007-10-28 13:55:35 +00:00
Richard Barry
a3921adfe1 + The macro portENTER_SWITCHING_ISR() no longer attempts to use the frame pointer. Variables declared within ISRs must now be declared static. 2007-10-26 09:52:15 +00:00
Richard Barry
98a9959a44 Update to V4.5.0 files and directory structure. 2007-09-17 10:07:48 +00:00
Richard Barry
c77358491a Update the queue peek behaviour and add QPeek test files. 2007-08-23 11:37:41 +00:00
Richard Barry
5f16b0abca Fixed name of xQueueSendToFrontFromISR. 2007-08-23 07:23:53 +00:00
Richard Barry
86f4e8b4a0 Changed a couple of casts to remove compiler warnings. 2007-08-22 16:56:05 +00:00
Richard Barry
60338bd872 Added xQueueSendToBack, xQueueSendToFront, xQueuePeek and xSemaphoreCreateMutex - along with GenQTest.c to demonstrate their usage. 2007-08-21 16:54:48 +00:00
Richard Barry
15268bfbeb Update to V4.4.0. 2007-07-29 15:23:39 +00:00
Richard Barry
a06a2e492f Results of testing new prvIsTaskSuspended() function. 2007-07-28 18:41:53 +00:00
Richard Barry
de1094e980 Removed const from xTaskResumeFromISR() and xTaskResume() local variables as it upsets the call to the list function. 2007-07-28 18:35:03 +00:00
Richard Barry
7a8eb507a7 Modifications to correct behaviour when a task is blocked without specifying a wake time, and also introduce the xTaskGetSchedulerState() function. 2007-07-28 16:33:07 +00:00
Richard Barry
94c94d3c0e Updated AVR32 demos and added AVR32 UC3B demo. 2007-07-27 07:59:50 +00:00
Richard Barry
45e7e5ac55 Add in first STM32 demo. 2007-06-11 05:36:39 +00:00
Richard Barry
68a1ab1d04 Update in preparation for the V4.3.1 release. 2007-06-09 15:03:03 +00:00
Richard Barry
623aa3675f Update to V4.3.0 as described in http://www.FreeRTOS.org/History.txt 2007-06-05 09:56:16 +00:00
Richard Barry
5a3272cdca Accomodates wizC V14.00B and up with full optimisations.
Thanks Marcel.
2007-04-22 10:50:03 +00:00
Richard Barry
b36ba44e0d Add LPC2368 demo. 2007-04-05 13:47:25 +00:00
Richard Barry
0a6d59a611 V4.2.1 files. 2007-04-01 20:47:49 +00:00
Richard Barry
6118595a07 Add AVR32 port and demo files. 2007-04-01 19:52:27 +00:00
Richard Barry
504382bcb8 Add AVR32 port and demo files. 2007-04-01 19:46:26 +00:00
Richard Barry
17228aca47 Add an option for 8 byte alignment. 2007-03-07 17:52:10 +00:00
Richard Barry
712bfdf9d2 Update version number to V4.2.0. 2007-02-08 10:02:18 +00:00
Richard Barry
f20d072c4a Slight mod to take into account different definitions between SafeRTOS and FreeRTOS.org. 2007-01-28 12:18:03 +00:00
Richard Barry
684b802b27 Modification to the behaviour of xQueueSend() and xQueueReceive() in the case that a blocked task times out (bug fix). 2007-01-28 10:20:56 +00:00
Richard Barry
edc1e01eab Bug fix in xTaskCheckForTimeOut() in the case where the tick count has incremented by exactly portMAX_DELAY ticks between two calls (i.e. extremely unlikely). 2007-01-12 08:10:04 +00:00
Richard Barry
3e92d8aca0 Updated version numbers to V4.1.3. 2006-11-19 19:38:30 +00:00
Richard Barry
09969dc53e Slight mods to comments in STR75X GCC port and demo files. 2006-11-19 13:41:31 +00:00
Richard Barry
6ac900dc95 First version of STR75x RIDE port and demo. 2006-11-19 13:20:37 +00:00
Richard Barry
b2a52ede55 Changes from V4.1.2:
+ BUG FIX:  Removed the call to prvIsQueueEmpty from within xQueueCRReceive
	  as it exited with interrupts enabled.  Thanks Paul Katz.
2006-10-28 10:41:34 +00:00
Richard Barry
6083a3a3ad Ensure previous modification does not prevent compilation when INCLUDE_vTaskSuspend is set to false. 2006-10-28 09:47:41 +00:00
Richard Barry
96d4684fa7 Changes from V4.1.2
+ Tasks that block with a timeout of portMAX_DELAY are now blocked 
	  indefinitely.  Previously portMAX_DELAY was just the longest block time
	  possible.
2006-10-22 20:28:16 +00:00
Richard Barry
6456c000bd 2006-10-20 15:12:17 +00:00
Richard Barry
3021b1acc8 Change version numbers to V4.1.2 2006-10-09 11:49:50 +00:00
Richard Barry
3878b82c9b Add PIC24, dsPIC and Coldfire files. 2006-10-09 11:40:24 +00:00
Richard Barry
5561c55286 Update version number to V4.1.1. 2006-09-24 10:12:38 +00:00
Richard Barry
7508aa6219 Added the PRESERVE8 directive to all asm functions. 2006-09-24 10:05:48 +00:00
Richard Barry
155d8d1828 Update to V4.1.0. 2006-08-28 15:13:39 +00:00
Richard Barry
7c183b2f1c Add in the critical nesting save and restore. 2006-08-28 10:19:21 +00:00
Richard Barry
97a570fa10 Changes to the AVR demo's. IAR demo updated with new critical section method. 2006-08-28 09:35:31 +00:00
Richard Barry
b18929ef7d Changes ready for V4.1.0. 2006-08-27 14:09:54 +00:00
Richard Barry
b7199e5967 Removed spurious second portDISABLE_INTERRUPTS when compiling for ARM mode. 2006-08-13 09:27:54 +00:00
Richard Barry
6cc711d33e Only include xTaskResumeFromISR under the condition:
#if ( ( INCLUDE_xTaskResumeFromISR == 1 ) && ( INCLUDE_vTaskSuspend == 1 ) )
2006-08-11 10:56:12 +00:00
Richard Barry
ab964f3c9d Updated to V4.0.5
+ Introduced API function xTaskResumeFromISR().  Same functionality as
	  xTaskResume(), but can be called from within an interrupt service routine.
	+ Optimised vListInsert() in the case when the wake time is the maximum 
	  tick count value.
	+ Bug fix:  The 'value' of the event list item is updated when the priority
	  of a task is changed.  Previously only the priority of the TCB itself was
	  changed.
	+ vTaskPrioritySet() and vTaskResume() no longer use the event list item.
	  This has not been necessary since V4.0.1 when the xMissedYield handling
	  was added.
	+ Lowered the PCLK setting on the ARM9 STR9 demo from 96MHz to 48MHz.
	+ When ending the scheduler - do not try to attempt a context switch when
	  deleting the current task.
	+ SAM7X EMAC drivers:  Corrected the Rx frame length mask when obtaining 
	  the length from the rx descriptor.
2006-08-11 10:42:06 +00:00
Richard Barry
58a357e6e6 Implement xTaskResumeFromISR. 2006-08-11 10:02:38 +00:00
Richard Barry
17617c5451 Change to xTaskResumeFromISR() function only. This function is untested. 2006-07-03 19:39:42 +00:00
Richard Barry
d481cff89b Bug fix: The 'value' of the event list item is updated when the priority of a task is changed. Previously only the priority of the TCB itself was changed.
When resuming a task a check is first made to see if the task is actually suspended.

vTaskPrioritySet() and vTaskResume() no longer use the event list item.  This has not been necessary since V4.0.1 when the xMissedYield handling was added.
2006-07-03 19:34:28 +00:00
Richard Barry
bc141db940 Optimised vListInsert() in the case when the wake time is the maximum tick count value. 2006-07-03 19:32:59 +00:00
Richard Barry
3dcbed5763 Update to V4.0.4. Add in STR912 port and demo. 2006-06-22 17:18:31 +00:00
Richard Barry
05023971cb 2006-06-08 09:16:29 +00:00
Richard Barry
946da76519 2006-05-28 08:17:56 +00:00
Richard Barry
210d5beaae New port files for Tern E-Engine. 2006-05-27 13:59:20 +00:00
Richard Barry
4202a62517 New port files for HCS12 using GCC. 2006-05-27 13:58:02 +00:00
Richard Barry
b6df57c7e3 First version under SVN is V4.0.1 2006-05-02 09:39:15 +00:00