Richard Barry
7d49c2190c
Minor edits prior to tagging V8.1.0.
11 years ago
Richard Barry
d33a14b5fb
***IMMINENT RELEASE NOTICE***
...
Update version numbers ready for FreeRTOS V8.1.0 release in about 10 days.
11 years ago
Richard Barry
52e687086c
Demo application related:
...
+ Update the RZ IAR project so it targets the RZ RSK rather than custom hardware.
+ Update the RZ ARM/DS-5 project so it targets the RZ RSK rather than custom hardware.
+ Updated RX64M demos to use the new iodefine.h naming.
Cortex-A9 port related:
+ Update IAR, ARM and GCC Cortex-A9 port layers to include a 'task exit error' function which is called if a task attempts to incorrectly exit its implementing function.
+ Moved the instruction which switches into system mode out of the restore context macro, as it is only needed when starting the first task.
Core kernel files related:
+ Ensure there are no references to the mutexes held count when mutexes are excluded from the build.
11 years ago
Richard Barry
162448f06b
General maintenance - changing comments and correcting spellings only.
11 years ago
Richard Barry
60538c7480
Common demo tasks:
...
- Add additional tests to GenQTest.c to test the updated priority inheritance mechanism.
- Slightly increase some delays in recmutex.c to prevent it reporting false errors in high load test cases.
SAMA5D3 Xplained IAR demo:
- Remove space being allocated for stacks that are not used.
- Remove explicit enabling of interrupts in ISR handers as this is now done from the central ISR callback before the individual handers are invoked.
- Reduce both the allocated heap size and the stack allocated to each task.
- Enable I cache.
11 years ago
Richard Barry
47f895cb34
Cortex-A5 IAR port:
...
- Removed SAMA5 specifics from the port layer, and instead call a generic ISR callback as per Cortex-A9 ports.
11 years ago
Richard Barry
b2e739495a
Cortex-A5 IAR port baseline prior to removing all SAMA5 specifics to make it generic.:
...
- Slight improvement to the save context macro.
- Remove some #warning remarks.
- Enable interrupts before calling the ISR handler rather than in the ISR handler.
11 years ago
Richard Barry
3a3d061cc5
Continue working on the GIC-less Cortex-A5 port for IAR:
...
- Add in the assert when a task attempts to exit its implementing function without deleting itself.
- Remove obsolete code from the context switch asm code (obsoleted by the fact that there is no mask register).
- Attempt to make code more generic by using definitions for additional register addresses.
11 years ago
Richard Barry
e9b5deb34a
Carry on working on SAMA5D3 demo:
...
- Add full interrupt nesting tests.
- Add additional critical section/context switching tests.
- Set interrupt priorities so everything can run at once without any software watchdog errors.
- Re-enable interrupts in each IRQ handler.
- Add in run-time stats.
11 years ago
Richard Barry
146b46df87
SAMA5D3 demo: Add CDC driver code and use CDC to create a simple command console.
11 years ago
Richard Barry
5fcd270398
Re-test Zynq demo now it is using the latest tools.
11 years ago
Richard Barry
bd9d37924d
Add back Zynq demo - this time using SDK V14.2.
11 years ago
Richard Barry
96ceb9f537
Remove Zynq demo project ready to recreate the project using the 14.2 version of Xilinx's SDK.
11 years ago
Richard Barry
5b96cf6eea
Add 'full' demo to the SAMA5 Xplained demo - but so far without interrupt nesting tests or CLI.
11 years ago
Richard Barry
8ad9b75810
Rename ARM_CAx_No_GIC ARM_CA5_No_GIC and add FreeRTOSConfig setting to specify the number of registers in the FPU unit.
11 years ago
Richard Barry
29336e35b5
SAMA5D3 Xplained demo blinky running.
11 years ago
Richard Barry
f4a1a7d577
Add new port layer for Cortex-A devices without the means to mask interrupt priorities.
11 years ago
Richard Barry
5b96c12e92
Start of SAMA5D3 XPlained demo.
11 years ago
Richard Barry
8aa5fa3459
Make the parameters to vPortDefineHeapRegions() const.
...
Add additional asserts to the Keil CM3 and CM4F ports (other CM3/4 ports already updated).
Add the additional yield necessitated by the mutex held count to the case when configUSE_QUEUE_SETS is 0.
11 years ago
Richard Barry
4fe2abc792
Update the MSVC simulator demo to demonstrate heap_5 allocator and pdTICKS_TO_MS macro being used.
11 years ago
Richard Barry
d96dc2adb0
Simply some of the alignment calculations in heap_4.c to match those used in heap_5.c.
...
Remove some apparently obsolete code from xTaskPriorityDisinherit() (a task cannot be both blocked and giving bac a mutex at the same time].
Update the new "mutex held count" increment and decrement functions to allow mutexes to be created before the scheduler is started.
11 years ago
Richard Barry
b0ba273489
Check in the portable.h version required to use heap_5.c.
11 years ago
Richard Barry
4b26dc0614
Check in the new memory allocator that allows the heap to span multiple blocks.
11 years ago
Richard Barry
4ce4de750a
Update timer demo in PIC32MZ demo to remove multiple extern definition created by adding in the macro that checks non ISR safe functions are not called from ISRs.
11 years ago
Richard Barry
42b1688a30
Implementation of mutex held counting in tasks.c - needs optimisation before release.
11 years ago
Richard Barry
583b144bc3
Default the definition of portASSERT_IF_IN_ISR() to nothing if it is not defined.
...
Helper updates to allow a count of the number of mutexes held to be added.
Updates to the CCS Cortex-R4 implementation necessitated by a change in compiler semantics.
Update PIC32MX and MZ ports to assert if a non ISR safe function is called from an ISR.
11 years ago
Richard Barry
b4659d8872
Add code to assert() if non ISR safe API function is called from ISR in Tasking CM4F ports - plus fix bug where the max syscall interrupt priority was used incorrectly in the Tasking CM4F port.
11 years ago
Richard Barry
113220628f
Add code to assert() if non ISR safe API function is called from ISR in IAR and GCC CM3 and CM4F ports - Keil and tasking to follow.
11 years ago
Richard Barry
4723209074
Simplify the assert that checks if a non-ISR safe function is called from an ISR in the GCC Cortex-A9 port.
11 years ago
Richard Barry
d45f18cc8d
Add additional comments to the Zynq lwIP demo.
11 years ago
Richard Barry
8426eba8e7
Added portASSERT_IF_IN_INTERRUPT() macro to the GCC Cortex A9 port layer.
11 years ago
Richard Barry
de7df3cfda
Zynq demo: Fix Xilinx network driver by deferring the function that allocated memory from the interrupt into a task. Add DHCP option.
11 years ago
Richard Barry
f1a0534a56
Remove some of the lwip asserts to allow use with 64-bit alignment.
11 years ago
Richard Barry
7fa64efeeb
Switch to using the private watchdog as the run time stats timer in the Zynq demo.
11 years ago
Richard Barry
2f6cb8a86c
Reorganise Zynq project after spitting lwIP example into a separate configuration.
11 years ago
Richard Barry
e92795bcc8
Move the Zynq's lwIP example from the Full demo into its own configuration as having the lwIP tasks at a high priority made the self checking test tasks report failures, while having the lwIP tasks at a low priority slugged the throughput.
11 years ago
Richard Barry
be8b0ed21d
Update lwIP byte alignment to make Zynq pings more reliable.
11 years ago
Richard Barry
16ff69e873
Update RL78 GCC demo application after testing with fixed compiler.
11 years ago
Richard Barry
9efb5c8b2f
Check in RL78 GCC port layer now it has been verified with the fixed compiler.
11 years ago
Richard Barry
5cbab67186
Complete RX64M GCC demo.
11 years ago
Richard Barry
1130a53ec8
Reverse order of projdefs.h and FreeRTOSConfig.h includes in FreeRTOS.h to allow addition of pdMS_TO_TICKS() macro.
...
Update RXv2 GCC port to match RXv2 Renesas port.
11 years ago
Richard Barry
5cd0b1e5ef
Add -nomessage command line option to RX64M demo to suppress warning about the yield function being defined when it is not called directly.
11 years ago
Richard Barry
f46070dc79
Ensure demo app files are using FreeRTOS V8 names - a few were missed previously.
11 years ago
Richard Barry
ef254df85f
A few additional casts to keep the Renesas RX compiler happy.
11 years ago
Richard Barry
74ffdb0b89
Add lwIP driver into Zynq demo - not yet fully functional.
11 years ago
Richard Barry
09a89763ee
Add brackets in lwIP assert statement to prevent compiler warnings.
11 years ago
Richard Barry
b215310e63
Add some missing volatiles to __asm statements in the CA9 GCC port.
11 years ago
Richard Barry
0bb794301a
Update version number ready for release.
11 years ago
Richard Barry
911e82a909
Add xQueueGetMutexHolder() to MPU functions.
11 years ago
Richard Barry
f25503977e
Event Groups: Convert the 'clear bits from ISR' function into a pended function to fix reentrancy issue.
...
Event Groups: Ensure the 'wait bits' and 'sync' functions don't return values that still contain some internal control bits.
11 years ago
Richard Barry
fa7222ab4a
Update demos that use FreeRTOS+FAT SL to have correct version numbers after the update of FreeRTOS+FAT SL itself.
11 years ago
Richard Barry
03c95b5950
Update IAR XMC4200 project to fix link error that resulted from updating the IAR version to 7.x.
11 years ago
Richard Barry
6af9b013eb
Ensure xNewLib_reent is reclaimed when a task is deleted.
11 years ago
Richard Barry
82207ebffa
Add test and correct code for the unusual case of a task using an event group to synchronise only with itself.
...
Add critical sections around call to prvResetNextTaskUnblockTime() that can occur from within a task.
11 years ago
Richard Barry
ef7f3c5320
Add the pcTimerGetTimerName() API function.
11 years ago
Richard Barry
887fcd04f4
Add interrupt nesting test code into RX64M demo.
11 years ago
Richard Barry
42cbd6a778
Add RSK definition and LED flash tasks into RX64M demo.
11 years ago
Richard Barry
29a08b5e24
Update Cortex-A port layers to ensure the ICCRPR and ICCPMR registers are always accessed as 32-bit values.
11 years ago
Richard Barry
d59bf60ff9
Started to create RX64M GCC project - building but not yet converted to new core.
11 years ago
Richard Barry
6fe7e7ef67
Delete old RL78 launch configurations.
11 years ago
Richard Barry
7f7ad3d081
Add RL78/L1C configuration into e2studio demo.
11 years ago
Richard Barry
2283bfb0ae
RL78/L1C configuration added to the IAR RL78 demo projects.
11 years ago
Richard Barry
a5f00caf16
Working but incomplete RXv2 demo.
11 years ago
Richard Barry
05a0e4379e
First pass at RXv2 port layer.
11 years ago
Richard Barry
3788026636
RXv1 tests running before updating to RXv2.
11 years ago
Richard Barry
b17ab311af
Start to create an RX64M demo.
11 years ago
Richard Barry
9bd5e5cf03
Cast away a few unused return types to ensure lint/compilers don't generate warnings when the warning level is high.
11 years ago
Richard Barry
c8953a68cd
Add extra #error message as a configuration sanity check.
11 years ago
Richard Barry
ba6d285ea8
Minor updates to ensure all kernel aware debuggers are happy with V8.
11 years ago
Richard Barry
e101e7e437
Update version number to V8.0.0 (without the release candidate number).
11 years ago
Richard Barry
38ae9b76bc
Add logic to determine the tick timer source and vector installation into the PIC32MZ port assembly file to allow more efficient interrupt entry.
11 years ago
Richard Barry
c3dd6f6593
Add event group code to the PIC32MZ demo.
11 years ago
Richard Barry
0f6b699eef
Linting.
11 years ago
Richard Barry
a2089bbcf6
Add #define INCLUDE_eTaskGetState 1 to the demos that use the int queue test.
11 years ago
Richard Barry
d6da7b1231
Remove test of trace functions from the Win32/GCC build as it messes up the trace recorder.
11 years ago
Richard Barry
0ccfdd1021
Remove test of trace functions from the Win32 build as it messes up the trace recorder.
11 years ago
Richard Barry
853696a991
Add event groups demo to SAM4E demo.
11 years ago
Richard Barry
b7eb76904a
Add event group tests to IAR LM3S demo.
11 years ago
Richard Barry
e4dbc6b770
Make xEventGroupSetBitsFromISR() a function when configUSE_TRACE_FACILITY is enabled to allow the inclusion of a trace macro.
11 years ago
Richard Barry
b96016e234
Follow instructions on http://blogs.msdn.com/b/vsproject/archive/2009/07/21/enable-c-project-system-logging.aspx to manually prevent MSVC from incorrectly reporting the MSVC demo project as being out of date.
11 years ago
Richard Barry
5a2a8fc319
Update the demo directory to use the version 8 type naming conventions.
11 years ago
Richard Barry
c6d8892b0d
Replace xTaskIsTaskSuspended() call with eTaskGetState() call in IntQueue.c as the former is now a private function.
11 years ago
Richard Barry
4f01401c00
Add a small amount of randomisation into the Zynq demo.
11 years ago
Richard Barry
0cc51d99a7
Add event groups demo to Zynq demo.
...
Add C implementations of some standard library functions to the Zynq demo to prevent the GCC libraries (which use floating point registers as scratch registers) being linked in.
11 years ago
Richard Barry
3eb212f454
Update IAR RL78 demo regtest tasks to make use of SKZ instructions as the latest IAR linker didn't seem to like the previous version.
11 years ago
Richard Barry
84f4ae9aa0
Make xTaskIsTaskSuspended() a private function as it should only be called from within critical sections.
...
Fix issue in and simplify the xTaskRemoveFromUnorderedEventList() function. The function is new to the V8 release candidates so does not effect official released code.
11 years ago
Richard Barry
eea669240b
Remove inclusion of now removed header file from the RZ/IAR LowLevelInitialise.c file.
11 years ago
Richard Barry
d4ca65f22f
Third attempt: Improve how TimerDemo.c manages differences between the tick count and its own internal tick count, which can temporarily differ when the tick hook is called while the scheduler is suspended.
11 years ago
Richard Barry
660162a5b8
Update the Win32/MingW demo to match the latest Win32/MSVC demo.
11 years ago
Richard Barry
d12ec14160
Add configCLEAR_TICK_INTERRUPT() to the IAR and RVDS Cortex-A9 ports.
...
Replace LDMFD with POP instructions in IAR and RVDS Cortex-A9 ports.
Replace branch to address with indirect branch and exchange to address in register in the IAR and RVDS Cortex-A9 ports.
11 years ago
Richard Barry
9a8da3ff38
Second attempt: Improve how TimerDemo.c manages differences between the tick count and its own internal tick count, which can temporarily differ when the tick hook is called while the scheduler is suspended.
11 years ago
Richard Barry
03f9bbda52
Improve how TimerDemo.c manages differences between the tick count and its own internal tick count, which can temporarily differ when the tick hook is called while the scheduler is suspended.
11 years ago
Richard Barry
481db56078
Related to Zynq demo: Remove compiler warnings when configASSERT() is not defined and set the type of the assembly functions to allow them to be called when the C code is compiled to THUMB instructions.
11 years ago
Richard Barry
f843888e60
Complete GCC/Cortex-A9 port.
11 years ago
Richard Barry
c83414ccc4
Finish the Zynq demo.
11 years ago
Richard Barry
2fc4e89b98
Add in interrupt nesting test.
11 years ago
Richard Barry
d898d16c44
Check in working IntQueueTimer.c for Zynq before overhauling to ensure it conforms to the FreeRTOS style and coding standard.
11 years ago
Richard Barry
6c72f470ac
Update Zynq serial.c to be interrupt driven.
11 years ago
Richard Barry
d310ac4552
Add very basic serial CLI to the Zynq demo - needs a lot of tidy up yet!
11 years ago
Richard Barry
51ea2639a9
vQueueAddToRegistry() now takes a const char * instead of a char *.
...
tmrCOMMAND_CHANGE_PERIOD_FROM_ISR constant added for the "FromISR" version of the software timer change period API function.
11 years ago
Richard Barry
0bf2e615b2
Uncheck the "Do not search standard system directories for header files" compiler option in two RX600 project to ensure stdint.h can be found correctly.
11 years ago
Richard Barry
6130fec60e
Introduce xTimerPendFunctionCall().
...
Change INCLUDE_xTimerPendFunctionCallFromISR to INCLUDE_xTimerPendFunctionCall
Update event group trace macros to match the new trace recorder code.
Ensure parameter name consistency by renaming any occurrences of xBlockTime and xBlockTimeTicks to xTicksToWait.
Continue work on GCC/RL78 port - still a work in progress.
Adjust how the critical section was used in xQueueAddToSet.
11 years ago
Richard Barry
888733ef79
Add main_full.c to Zynq demo. Still a work in progress.
11 years ago
Richard Barry
b352be2e23
Tidy up GCC Cortex-A port layer - still a work in progress.
11 years ago
Richard Barry
14f895478d
Continue work on GCC/Cortex-A port layer.
11 years ago
Richard Barry
4c9b5d88ae
Continue Zynq demo - ParTest.c now working (with single LED), but still very much a work in progress.
11 years ago
Richard Barry
1e26b1875f
Remove #error that attempted to catch stdint.h not being included.
...
Split the previously overloaded trmCOMMAND_nnn definitions into individual definitions to enable better logging.
11 years ago
Richard Barry
d0323e67ae
Continue working on GCC/CA_9 port layer - tick interrupt now working but needs tidy up.
11 years ago
Richard Barry
8cb6a4f032
Continue working on Zynq demo - tick interrupt now working but needs tidy up.
11 years ago
Richard Barry
371f6f359a
Carry on working on the Zynq demo - still a work in progress.
11 years ago
Richard Barry
3e430b3801
Carry on working on the Cortex-A/GCC port layer - still a work in progress.
11 years ago
Richard Barry
33351b02c9
Beginnings of a project to build the GCC Cortex-A port targeting a Zynq.
11 years ago
Richard Barry
86023aa5a6
Beginnings of GCC Cortex-A port - not yet completely converted from IAR version.
11 years ago
Richard Barry
d8c135e2dc
Add extern 'C' to FreeRTOS.h.
...
Remove obsolete extern declaration of vTaskSwitchContext() from the MPX430X IAR portmacro.h (other older portmacro.h header files contain the same declaration).
11 years ago
Richard Barry
a1b8079df1
Introduce configENABLE_BACKWARD_COMPATIBILITY to allow the #defines that provide backward compatibility with FreeRTOS version prior to V8 to be optionally omitted.
11 years ago
Richard Barry
f01bf9fdc3
Add additional NOP after EINT instruction in MSP430 ports.
11 years ago
Richard Barry
a20e75082e
Remove obsolete OpenOCD driver.
11 years ago
Richard Barry
1aaa80fba6
Map portTICK_RATE_MS to portTICK_PERIOD_MS.
11 years ago
Richard Barry
a56d4b998c
Minor tidy ups that don't effect code generation, plus:
...
When a task is unblocked the need for a context switch is only signalled if the unblocked task has a priority higher than the currently running task, instead of higher than or equal to the priority of the currently running task.
11 years ago
Richard Barry
723682f1dd
Minor comment corrections prior to tagging.
11 years ago
Richard Barry
a8836b5c43
Change version numbers ready for V8.0.0 release candidate 1 tag.
11 years ago
Richard Barry
3705435417
Add the event group interrupt tests to the Win32 demo projects.
11 years ago
Richard Barry
8ae3d489fe
Comment the event groups standard demo files.
11 years ago
Richard Barry
2aa19f1a14
Add xEventGroupClearBitsFromISR() and xEventGroupGetBitsFromISR() functions.
...
Move some types defines out of generic kernel headers into feature specific headers.
Convert the function prototype dypedefs to the new _t naming.
11 years ago
Richard Barry
38e7554138
Update FreeRTOS+ more demos that use FreeRTOS+CLI to remove casting to int8_t * from strings.
11 years ago
Richard Barry
42a2338f1c
Update demos that use FreeRTOS+CLI to remove casting to int8_t * from strings.
11 years ago
Richard Barry
e95b482f56
Minor updates to demo projects to ensure correct building with V8 rc1.
11 years ago
Richard Barry
f9072e7bac
Remove casting from definition of configMAX_PRIORITIES to allow its use in pre-processor defined conditional compilation.
11 years ago
Richard Barry
e4965ca03c
Minor updates to demo projects to ensure correct building with V8 rc1.
11 years ago
Richard Barry
2b6eb1c5ab
Revert some library files back to using standard types as they are not FreeRTOS files.
11 years ago
Richard Barry
b54158d1dc
Replace use of legacy portTYPE macros from old demos and standard demo files.
11 years ago
Richard Barry
3e20aa7d60
Replace standard types with stdint.h types.
...
Replace #define types with typedefs.
Rename all typedefs to have a _t extension.
Add #defines to automatically convert old FreeRTOS specific types to their new names (with the _t).
11 years ago
Richard Barry
f292243dcf
Change 'signed char *pcTaskName) to 'char *pcTaskName' in vApplicationStackOverflowHook().
11 years ago
Richard Barry
653fdb81d5
Continue to remove unnecessary 'signed char *' casts from strings that are now just plain char * types.
11 years ago
Richard Barry
da93f1fc4b
Start to remove unnecessary 'signed char *' casts from strings that are now just plain char * types.
11 years ago
Richard Barry
b4116a7c7d
Change the type used for strings and single characters from signed char to just char.
11 years ago
Richard Barry
b3aa1e90ad
Add additional const qualifiers.
11 years ago
Richard Barry
6179690dc9
Don't free xQueue->ucHead if it is NULL.
11 years ago
Richard Barry
a3c2f45116
Move the event groups single tasks test out of the common demo file (they are now part of the module tests).
11 years ago
Richard Barry
c861e3883d
Add coverage test markers.
11 years ago
Richard Barry
64ad1c00b5
In process of module testing event_groups.c.
...
Introduce xPortRunning variable into Win32 simulator port layer.
Add port optimised task selection macro for the GCC Win32 port layer (the MSVC version has had one for a while).
Ensure the event list item value does not get modified by code in tasks.c (priority inheritance, or priority change) when it is in use by the event group implementation.
11 years ago
Richard Barry
0147415c40
Change some task priorities in the MingW simulator demo.
11 years ago
Richard Barry
39b2d049a6
Update GCC/Eclipse Win32 simulator port to make better use of Eclipse resource filters and match the functionality of the MSVC equivalent.
11 years ago
Richard Barry
4b2f9dad42
Force the SysTick clock bit to be set in Cortex-M3 and Cortex-M4F bits if configSYSTICK_CLOCK_HZ is not defined, otherwise leave the bit as it is found as the SysTick may use a divided clock.
11 years ago
Richard Barry
040a7c02df
Change the configCPU_CLOCK_HZ setting in the SAM4E demo to use the SystemCoreClock variable.
11 years ago
Richard Barry
a320d6dffd
Update the ucQueueNumber member of the queue structure (used with FreeRTOS+Trace to be an unsigned portBASE_TYPE instead of an unsigned char.
11 years ago
Richard Barry
c17c65fc09
Introduce prvResetNextTaskUnblockTime() to encapsulate functionality from various places in the code into a single function.
11 years ago
Richard Barry
acad916453
Change the way one thread deletes another in the Windows simulator port (the way one thread deleted itself was already changed in a previous check-in).
...
Reset the expected block time variable when a task is suspended or deleted in case the value held in the variables was associated with the task just suspended or deleted.
11 years ago
Richard Barry
0d1e12522b
Update Cortex-M3 and Cortex-M4F ports to allow the SysTick to be clocked at a different speed than the system clock (as is done in the recent STM32L demo. ).
...
Add additional asserts and isb instructions into the Cortex-M3 and Cortex-M4F ports.
11 years ago
Richard Barry
6b3393b4b6
Add trace macros into the event groups implementation.
...
Add a task pre-delete hook to allow the insertion of any port specific clean up when a task is deleted.
Increase use of 'const' qualifiers.
Add vPortCloseRunningThread() into the Win32 port layer to attempt to allow Windows threads to be closed more gracefully when a task deletes itself.
11 years ago