]> begriffs open source - freertos/log
freertos
10 years agoFreeRTOS source changes:
Richard Barry [Sun, 22 Nov 2015 21:14:39 +0000 (21:14 +0000)]
FreeRTOS source changes:
+ heap_1.c and heap_2.c now support configAPPLICATION_ALLOCATED_HEAP (heap_4.c already did) which allows the heap to be placed by the user rather than the linker.

Demo app changes:
+ SAMD20 project has been updated to use Atmel Studio 7.

10 years agoKernel changes:
Richard Barry [Fri, 20 Nov 2015 14:11:11 +0000 (14:11 +0000)]
Kernel changes:

+ Support tickless idle when configUSE_PREEMPTION is 0 (previously tickless idle was only supported when the pre-emptive scheduler was being used).
+ If a stack was statically allocated, then don't try freeing it if the TCB cannot be allocated.
+ Remove use of INCLUDE_xEventGroupsSetBitsFromISR() pre-processor macro, as it was not tested anyway.

Demo app changes:

+ Updated SAM4L Atmel Studio project to use Atmel Studio 7.

10 years agoFinal tidy up before tagging V8.2.3.
Richard Barry [Sat, 17 Oct 2015 17:25:50 +0000 (17:25 +0000)]
Final tidy up before tagging V8.2.3.

10 years agoUpdate version number ready for the V8.2.3 release.
Richard Barry [Fri, 16 Oct 2015 14:57:00 +0000 (14:57 +0000)]
Update version number ready for the V8.2.3 release.

10 years agoPreparing for maintenance release:
Richard Barry [Fri, 16 Oct 2015 11:29:36 +0000 (11:29 +0000)]
Preparing for maintenance release:

Kernel source changes:
- Added xTaskNotifyStateClear() API function.
- Added the GCC Cortex-R port (existed for a while) into the main download.
- Improved the IAR RL78 port's handling of different memory model combinations.
- Removed some compiler warnings in heap_5.c.

Demo app changes:
- Added example use of xTaskNotifyStateClear() to the TaskNotify standard demo tasks.

10 years agoPreparing for maintenance release -
Richard Barry [Thu, 15 Oct 2015 20:19:26 +0000 (20:19 +0000)]
Preparing for maintenance release -
Bug fix - issue introduced in V8.2.2 when the current timer list is empty and the overflow timer list is not empty.
Add PIC32MZ EF (floating point) support and update the MZ demo project to test the flop context switching.
Improve efficiency of the stack overflow checking.
Add CLI to RX71M demo.
General tidy up of new RZ and RX projects - including ensuring the UART driver copes with 0 length strings.
Add stack overflow checking to the [old] PIC24 demo.

10 years agoCheck in RX231 IAR demo.
Richard Barry [Sat, 10 Oct 2015 20:38:12 +0000 (20:38 +0000)]
Check in RX231 IAR demo.

10 years agoAdd FreeRTOS+CLI examples to the Renesas RZ/T demos.
Richard Barry [Sat, 10 Oct 2015 10:29:29 +0000 (10:29 +0000)]
Add FreeRTOS+CLI examples to the Renesas RZ/T demos.
Fix some compiler warnings.
Correct spellings in comments.

10 years agoUpdate FreeRTOS+Trace recorder library to v3.0.2
Richard Barry [Fri, 9 Oct 2015 13:30:09 +0000 (13:30 +0000)]
Update FreeRTOS+Trace recorder library to v3.0.2
Add streaming version of the FreeRTOS+Trace recorder, also V3.0.2

10 years agoDemo tasks:
Richard Barry [Mon, 5 Oct 2015 15:23:09 +0000 (15:23 +0000)]
Demo tasks:
- Complete the demo projects for the RX113 using IAR, GCC and Renesas compilers by including a basic UART CLI.

Standard demo tasks:
- Add some volatile qualifiers to variables in IntQueue.c.

10 years agoChanges in common files:
Richard Barry [Sat, 3 Oct 2015 18:48:41 +0000 (18:48 +0000)]
Changes in common files:
Add additional asserts into timers.c.

Trivial changes and changes in demo applications:
RX113 IAR project is not building and running.
Make FreeRTOS_SetupInterrupt() and FreeRTOS_ClearInterrupt() weak symbols in the Zynq SDK repository.
Correct typo in the port layer comments that was cut and paste into multiple files.

10 years agoUpdate RX231 projects to blink the LED.
Richard Barry [Fri, 25 Sep 2015 09:33:37 +0000 (09:33 +0000)]
Update RX231 projects to blink the LED.

10 years agoBaseline new RX projects before refining and tidying them up.
Richard Barry [Fri, 25 Sep 2015 08:26:55 +0000 (08:26 +0000)]
Baseline new RX projects before refining and tidying them up.

10 years agoFreeRTOS source:
Richard Barry [Wed, 23 Sep 2015 12:16:10 +0000 (12:16 +0000)]
FreeRTOS source:
+ Added Renesas RXv2 port for IAR.

Demo apps:
+ Demo/Rename the CORTEX_R4F_T_GCC_IAR_ARM directory to just Rename the CORTEX_R4F_T_GCC_IAR.
+ Add IAR project for the RX113.
+ Add RX231 e2studio projects for the RX231.

10 years agoBaseline new GCC and Renesas compiler projects for RX71M and RX113 before adding...
Richard Barry [Tue, 22 Sep 2015 08:45:15 +0000 (08:45 +0000)]
Baseline new GCC and Renesas compiler projects for RX71M and RX113 before adding IAR projects.

10 years agoModify RZ/T e2studio directory structure to accommodate an IAR project.
Richard Barry [Sun, 13 Sep 2015 21:39:17 +0000 (21:39 +0000)]
Modify RZ/T e2studio directory structure to accommodate an IAR project.
Start RZ/T port and demo project.

10 years agoRemove compiler warnings from auto-generated code.
Richard Barry [Sun, 13 Sep 2015 07:30:43 +0000 (07:30 +0000)]
Remove compiler warnings from auto-generated code.
Baseline prior to starting IAR RZ/T project.

10 years agoAdd PIC32MEC14xx port and demo application.
Richard Barry [Sat, 12 Sep 2015 20:47:59 +0000 (20:47 +0000)]
Add PIC32MEC14xx port and demo application.

10 years agoSimplify and improve GIC-less Cortex-R4 port.
Richard Barry [Sat, 12 Sep 2015 12:14:58 +0000 (12:14 +0000)]
Simplify and improve GIC-less Cortex-R4 port.
Add final tests into RZ/T demo.

10 years agoCommon source code:
Richard Barry [Fri, 11 Sep 2015 13:29:40 +0000 (13:29 +0000)]
Common source code:
- Remove configASSERT() if a queue cannot be created, malloc failed hook will be called anyway.

Demo apps:
- RZ/T blinky demo working, but still lots to do to improve the port.

10 years agoInitial RZ/T port and demo - work in progress, currently only the tick interrupt...
Richard Barry [Mon, 7 Sep 2015 17:29:14 +0000 (17:29 +0000)]
Initial RZ/T port and demo - work in progress, currently only the tick interrupt can be installed.

10 years agoUpdate the FreeRTOS+WolfSSL Win32 demo to use the latest WolfSSL libraries.
Richard Barry [Fri, 28 Aug 2015 13:58:05 +0000 (13:58 +0000)]
Update the FreeRTOS+WolfSSL Win32 demo to use the latest WolfSSL libraries.

10 years agoRename the FreeRTOS_Plus_CyaSSL_Windows_Simulator directory to FreeRTOS_Plus_WolfSSL_...
Richard Barry [Fri, 28 Aug 2015 13:49:47 +0000 (13:49 +0000)]
Rename the FreeRTOS_Plus_CyaSSL_Windows_Simulator directory to FreeRTOS_Plus_WolfSSL_Windows_Simulator.

10 years agoUpdate WolfSSL library to the latest version.
Richard Barry [Fri, 28 Aug 2015 13:46:22 +0000 (13:46 +0000)]
Update WolfSSL library to the latest version.

10 years agoRename the CyaSSL directory to WolfSSL
Richard Barry [Fri, 28 Aug 2015 13:27:31 +0000 (13:27 +0000)]
Rename the CyaSSL directory to WolfSSL

10 years agoFinal commit before tagging - cosmetic changes only.
Richard Barry [Wed, 12 Aug 2015 16:45:24 +0000 (16:45 +0000)]
Final commit before tagging - cosmetic changes only.

10 years agoFinal preparation for new release:
Richard Barry [Wed, 12 Aug 2015 10:34:30 +0000 (10:34 +0000)]
Final preparation for new release:

FreeRTOS+Trace:
 - Add trace macros for task notifications.
 - Update to the latest trace recorder library.

Demo projects:
 - Only include the CLI command to show run time states if configGENERATE_RUN_TIME_STATS is set to 1.

10 years agoUpdate version numbers in preparation for new release.
Richard Barry [Wed, 5 Aug 2015 12:59:42 +0000 (12:59 +0000)]
Update version numbers in preparation for new release.

10 years agoAdd FreeRTOS BSP for Xilinx SDK.
Richard Barry [Wed, 5 Aug 2015 10:21:59 +0000 (10:21 +0000)]
Add FreeRTOS BSP for Xilinx SDK.

10 years agoCommon scheduler code:
Richard Barry [Tue, 4 Aug 2015 17:36:55 +0000 (17:36 +0000)]
Common scheduler code:

- Back out changes that allow mutexes to be given from a semaphore after tests showed issues that would not be fast to fix.

Demo projects:

- Update the Microblaze Kintex 7 project and BSP to use version 2015.2 of the Xilinx SDK.

10 years agoPreparing for next release...
Richard Barry [Sat, 1 Aug 2015 15:00:22 +0000 (15:00 +0000)]
Preparing for next release...

Zynq ZC702 demo application:
Update the memcpy, memset and memcmp implementations so they don't err with -O3 optimisation.
Update to use the 2015.2 version of the SDK.

10 years agoPreparing for new release...
Richard Barry [Sat, 1 Aug 2015 07:03:32 +0000 (07:03 +0000)]
Preparing for new release...

Kernel changes:
- Remove an assert that was preventing xQueueSendFromISR() being used to give a mutex from an ISR (mutexes cannot be given using xSemaphoreGiveFromISR()).
- Introduce xTaskNotifyAndQueryFromISR() as the interrupt safe version of xTaskNotifyAndQuery().

Common demo task changes:
- Update IntSemTest.c to prove the theory that it is safe to give a mutex type semaphore from an interrupt using xQueueSendFromISR() instead of xSemaphoreGiveFromISR().
- Update TaskNotify.c to test the new xTaskNotifyAndQuery() from ISR fuction.

10 years agoAdd resource filters to the Eclipse project used to build the Galileo demo.
Richard Barry [Thu, 30 Jul 2015 21:13:03 +0000 (21:13 +0000)]
Add resource filters to the Eclipse project used to build the Galileo demo.

10 years agoPreparing for the next release...
Richard Barry [Thu, 30 Jul 2015 11:46:30 +0000 (11:46 +0000)]
Preparing for the next release...
New port and demo project:  Intel Galileo.

10 years agoPreparing for the next release...
Richard Barry [Thu, 30 Jul 2015 11:37:33 +0000 (11:37 +0000)]
Preparing for the next release...

PIC32MZ demo application:
- Update to use the latest XC32 compiler.

10 years agoStarting to prepare for the next release...
Richard Barry [Thu, 30 Jul 2015 11:30:05 +0000 (11:30 +0000)]
Starting to prepare for the next release...

Core FreeRTOS code:
+ Added PRIVILEGED_FUNCTION qualifier to those functions from which it was previously missing.

10 years agoMSP430:
Richard Barry [Sun, 26 Jul 2015 16:41:12 +0000 (16:41 +0000)]
MSP430:
Add additional NOPs as required by hardware manual.

Microblaze:
Previously a task inherited the exception enable state from the context from which xTaskCreate() was called.  Now tasks all have exceptions enabled if they are enabled in the hardware.

Windows/GCC:
Improve the implementation of portGET_HIGHEST_PRIORITY.

Common code:
Simplify the pointer use in xQueueGenericCreate()

Demo apps:
Remove jpg images that were used to create web pages.
Fix capitalisation issues in some demos where some header files are incldued with the wrong case, preventing building on Linux.
Remove the Microblaze demos that are using obsolete tools.
Update main_blinky for the Windows port demo to include a software timer example.

10 years agoCorrect calculation of xHeapStructSize in heap_4 and heap_5.
Richard Barry [Thu, 25 Jun 2015 12:14:54 +0000 (12:14 +0000)]
Correct calculation of xHeapStructSize in heap_4 and heap_5.
Convert uint32_t types to size_t types in heap_5.c, as was previously done for heap_4.c.

10 years agoAdd back some files essential for the PIC32MZ build.
Richard Barry [Wed, 24 Jun 2015 16:49:21 +0000 (16:49 +0000)]
Add back some files essential for the PIC32MZ build.

10 years agoMicroblaze: Add a port optimised task selection implementation to the Microblaze...
Richard Barry [Wed, 24 Jun 2015 15:10:03 +0000 (15:10 +0000)]
Microblaze:  Add a port optimised task selection implementation to the Microblaze port.
Windows port:  Add code to ensure Windows threads are truely suspended before resuming another thread.
Typo correction to the task notification standard demo task.
Correct case of some include file names to fix build issues on Linux.

10 years agoAdd SAMV7 (Cortex-M7) demo for Atmel Studio.
Richard Barry [Tue, 16 Jun 2015 12:38:35 +0000 (12:38 +0000)]
Add SAMV7 (Cortex-M7) demo for Atmel Studio.

10 years agoUpdate library files used in STM32F7 demo to the latest version released by ST.
Richard Barry [Thu, 4 Jun 2015 15:35:12 +0000 (15:35 +0000)]
Update library files used in STM32F7 demo to the latest version released by ST.

10 years agoKernel changes to improve power saving:
Richard Barry [Wed, 20 May 2015 15:46:40 +0000 (15:46 +0000)]
Kernel changes to improve power saving:
+ The timer task now blocks indefinitely if there are no timers active, allowing eTaskConfirmSleepModeStatus to return eNoTasksWaitingTimeout when configUSE_TIMERS is set to 1.
+ The next unblock time is calculated automatically after a task unblocks when waiting for a notification, allowing deep sleep to be entered earlier.

10 years agoFinalise MSP43FR5969 IAR and CCS demos (hopefully).
Richard Barry [Tue, 28 Apr 2015 13:53:30 +0000 (13:53 +0000)]
Finalise MSP43FR5969 IAR and CCS demos (hopefully).

10 years agoAdd CCS project for MSP430FR5969 demo.
Richard Barry [Mon, 27 Apr 2015 15:23:29 +0000 (15:23 +0000)]
Add CCS project for MSP430FR5969 demo.

10 years agoChange some data types in heap_4.c to allow it to be used on hardware that has 16...
Richard Barry [Mon, 27 Apr 2015 11:14:11 +0000 (11:14 +0000)]
Change some data types in heap_4.c to allow it to be used on hardware that has 16-bit pointers without generating compiler warnings.
Add a small data model configuration to the MSP43FR5969 IAR demo.
Correct some code comments in the SAMA5D4 demo.

10 years agoRename /Demo/MSP430FR5969_LaunchPad to /Demo/MSP430X_MSP430FR5969_LaunchPad for consi...
Richard Barry [Fri, 24 Apr 2015 11:42:25 +0000 (11:42 +0000)]
Rename /Demo/MSP430FR5969_LaunchPad to /Demo/MSP430X_MSP430FR5969_LaunchPad for consistency with other MSP430 demo directory names.
Fixed typos in comments repeated in multiple source files.

10 years agoComplete large memory model MSP430FR5969 demo - including CLI and run-time stats.
Richard Barry [Fri, 24 Apr 2015 11:34:19 +0000 (11:34 +0000)]
Complete large memory model MSP430FR5969 demo - including CLI and run-time stats.

10 years agoStart of an MSP430FR5969 IAR project - currently running Blinky only.
Richard Barry [Wed, 22 Apr 2015 15:36:44 +0000 (15:36 +0000)]
Start of an MSP430FR5969 IAR project - currently running Blinky only.

10 years agoUpdate TimerDemo.c to test the new vTimerSetTimerID() function.
Richard Barry [Mon, 13 Apr 2015 19:58:51 +0000 (19:58 +0000)]
Update TimerDemo.c to test the new vTimerSetTimerID() function.
Update WinPCap NetworkInterface.c for FreeRTOS+UDP to correctly store a pointer to the network buffer structure at the beginning of the network buffer.

10 years agoAdd the errno definitions used by FreeRTOS+TCP and FreeRTOS+FAT into FreeRTOS's projd...
Richard Barry [Mon, 13 Apr 2015 18:45:02 +0000 (18:45 +0000)]
Add the errno definitions used by FreeRTOS+TCP and FreeRTOS+FAT into FreeRTOS's projdefs.h.
Remove redundant global definition vPortInstallFreeRTOSVectorTable from the GCC ARM_CA9 portASM.S file.
Ensure correct sequence of start up sequence when the Windows port is used on multi-core Windows machines by starting one thread in the suspended state.
Move initialisation of xNextTaskUnblockTime to the function that starts the scheduler, rather than from where the variable is declared - this fixes a compiler warning in newer IAR compilers.
Fix "elif (SELECTED_PORT == PORT_MICROCHIP_PIC32MX || PORT_MICROCHIP_PIC32MZ)" in the FreeRTOS+Trace trcHardwarePort.h header file.

10 years agoFinal V8.2.1 release ready for tagging:
Richard Barry [Tue, 24 Mar 2015 15:24:49 +0000 (15:24 +0000)]
Final V8.2.1 release ready for tagging:
+ Added MSP432 (ARM Cortex-M4F MSP430!) demos for IAR, Keil and CCS.
+ Renamed directory containing demo for STM32F7 ARM Cortex-M7.
+ Renamed directory containing demo for SAMV71 ARM Cortex-M7.
+ Introduced xTaskNotifyAndQuery().

10 years agoUpdate version number ready for V8.2.1 release.
Richard Barry [Sat, 21 Mar 2015 21:03:42 +0000 (21:03 +0000)]
Update version number ready for V8.2.1 release.

10 years agoKernel changes:
Richard Barry [Sat, 21 Mar 2015 14:01:43 +0000 (14:01 +0000)]
Kernel changes:
Exclude the entire croutine.c file when configUSE_CO_ROUTINES is 0.

New ports:
Added Cortex-M7 IAR and Keil port layers that include a minor errata workaround r0p1 Cortex-M7 devices.
Added Cortex-M4F port layer for CCS.

New demo applications:
Added demo application for STM32F7.
Added demo application for SAMv71.

10 years agoMinor updates relating to formatting and comments only.
Richard Barry [Fri, 20 Mar 2015 15:43:20 +0000 (15:43 +0000)]
Minor updates relating to formatting and comments only.

10 years agoMinor updates to the Microblaze KC702 demo to allow easier connection from a Telnet...
Richard Barry [Mon, 16 Mar 2015 11:22:43 +0000 (11:22 +0000)]
Minor updates to the Microblaze KC702 demo to allow easier connection from a Telnet server.

10 years agoAdd networking option to the Microblaze Kintex demo.
Richard Barry [Fri, 13 Mar 2015 15:05:09 +0000 (15:05 +0000)]
Add networking option to the Microblaze Kintex demo.

10 years agoWork-in-progress check in of MicroBlaze Kintex7 demo.
Richard Barry [Tue, 10 Mar 2015 15:58:19 +0000 (15:58 +0000)]
Work-in-progress check in of MicroBlaze Kintex7 demo.

10 years agoKernel code:
Richard Barry [Wed, 4 Mar 2015 17:45:18 +0000 (17:45 +0000)]
Kernel code:
+ Added mtCOVERAGE_TEST_DELAY() macro to facilitate getting better code coverage during testing.
+ Update prvNotifyQueueSetContainer() so it does not call xTaskRemoveFromEventList() if it is called from an interrupt, and the queue is locked.

Demo apps:
Added QueueSetPolling.c/h demo/test functions.

10 years agoCorrect typeo that broke the Win32 port.
Richard Barry [Tue, 17 Feb 2015 14:28:10 +0000 (14:28 +0000)]
Correct typeo that broke the Win32 port.

10 years agoKernel updates:
Richard Barry [Wed, 11 Feb 2015 15:41:30 +0000 (15:41 +0000)]
Kernel updates:
+ Added vTimerSetTimerID() to compliment vTimerGetTimerID().  Now the timer ID can be used as timer local storage.
+ Updated comments and added some additional assert() calls.

Win32 port:
+ Some changes to allow easier 64-bit builds

PIC24/dsPIC port:
+ Added NOP after disable interrupt instruction.

10 years agoKernel updates:
Richard Barry [Mon, 26 Jan 2015 17:40:35 +0000 (17:40 +0000)]
Kernel updates:
- Add user configurable thread local storage array, with get/set access function.

10 years agoAdd run-time stats to the Kintex7 Microblaze demo.
Richard Barry [Mon, 19 Jan 2015 13:34:26 +0000 (13:34 +0000)]
Add run-time stats to the Kintex7 Microblaze demo.

10 years agoAdd the beginnings of a Microblaze project for the KC705.
Richard Barry [Fri, 16 Jan 2015 19:16:12 +0000 (19:16 +0000)]
Add the beginnings of a Microblaze project for the KC705.

10 years agoUpdate version number in preparation for official V8.2.0 release.
Richard Barry [Fri, 16 Jan 2015 13:20:28 +0000 (13:20 +0000)]
Update version number in preparation for official V8.2.0 release.

10 years agoDemo app changes:
Richard Barry [Thu, 15 Jan 2015 21:37:32 +0000 (21:37 +0000)]
Demo app changes:
Add a "query heap" command to the standard sample CLI commands.
Remove casting from configMAX_PRIORITIES setting in Win32 simulator demos as it was preventing a clean build.

Source code changes.
General tidy up and addition of assert points.

10 years agoRemove casting from configMAX_PRIORITIES setting in FAT SL / CLI demo as it was preve...
Richard Barry [Wed, 7 Jan 2015 07:02:17 +0000 (07:02 +0000)]
Remove casting from configMAX_PRIORITIES setting in FAT SL / CLI demo as it was preventing a clean build.

11 years agoRelease candidate - this will be tagged as FreeRTOS V8.2.0rc1 and a zip file provided.
Richard Barry [Wed, 24 Dec 2014 09:40:58 +0000 (09:40 +0000)]
Release candidate - this will be tagged as FreeRTOS V8.2.0rc1 and a zip file provided.
Minor lint changes.

11 years agoRename SAM4E demo directory to include the 'F' in 'M4F' - minor point for the sake...
Richard Barry [Wed, 24 Dec 2014 08:55:14 +0000 (08:55 +0000)]
Rename SAM4E demo directory to include the 'F' in 'M4F' - minor point for the sake of consistency.

11 years agoUpdate version numbers in preparation for V8.2.0 release candidate 1.
Richard Barry [Sun, 21 Dec 2014 19:09:18 +0000 (19:09 +0000)]
Update version numbers in preparation for V8.2.0 release candidate 1.

11 years agoKernel changes:
Richard Barry [Sun, 21 Dec 2014 10:26:36 +0000 (10:26 +0000)]
Kernel changes:
+ Made xTaskNotifyGiveFromISR() its own function, rather than a macro that calls xTaskNotifyFromISR() (minor performance improvement).
+ GCC and Keil Cortex-M4F ports now use vPortRaiseBASEPRI() in place of ulPortRaiseBASEPRI() where the return value is not required (minor performance improvement).

Demo changes:
Change the [very basic] FreeRTOS+UDP SAM4E driver to use task notifications rather than a semaphore (execution time now 55% what it was in FreeRTOS V8.1.2!).
Robustness improvements to IntQueue.c standard demo task.h.
Added the latest standard demo tasks, reg test tasks and int q  tasks to the SAM4E demo.

11 years agoKernel changes:
Richard Barry [Fri, 19 Dec 2014 16:27:56 +0000 (16:27 +0000)]
Kernel changes:
+ Do not attempt to free the stack of a deleted task if the stack was statically allocated.
+ Introduce configUSE_LIST_DATA_INTEGRITY_CHECK_BYTES - which optionally writes known values into the list and list item data structures in order to assist with the detection of memory corruptions.

Microblase port:
+Change occurrences of #if XPAR_MICROBLAZE_0_USE_FPU == 1 to  #if XPAR_MICROBLAZE_0_USE_FPU != 0 as the value can also be 2 or 3.

Demo app modifications:
+ Update Zynq project to use the 2014.4 tools and add in tests for the new task notification feature.
+ Update SAM4S project to include tests for the new task notification feature.

11 years ago+ Update demos that use FreeRTOS+Trace to work with the latest trace recorder library.
Richard Barry [Thu, 18 Dec 2014 11:02:15 +0000 (11:02 +0000)]
+ Update demos that use FreeRTOS+Trace to work with the latest trace recorder library.
+ Fix a few compiler warnings.
+ Add TickType_t specific critical sections so critical sections are not used when accessing the tick count in cases where the access is atomic (32-bit tick count, 32-bit architecture).

11 years ago+ New feature added: Task notifications.
Richard Barry [Mon, 15 Dec 2014 14:13:03 +0000 (14:13 +0000)]
+ New feature added:  Task notifications.
+ Optimise Cortex-M4F ports by inlining some critical section macros.
+ Original ports used a #define to set the path to portmacro.h - that method has been obsolete for years and now all the old definitions have been moved into a separate header files called deprecated_definitions.h.
+ Cortex-M port now check the active vector bits against 0xff when determining if a function is called from an interrupt - previously only a subset of the bits (0x1f) were checked.
+ Add in new standard demo/test files TaskNotify.c/h and include the files in the simulator demos.
+ Update trace recorder code, and some demos to use the new version (more to do).
+ Introduce uxTaskPriorityGetFromISR().
+ Minor typo corrections.
+ Update MingW simulator demo to match the MSVC simulator demo.

11 years agoCore kernel code:
Richard Barry [Wed, 15 Oct 2014 21:01:31 +0000 (21:01 +0000)]
Core kernel code:

Allow the stats formatting functions to be built in without stdio.h being included inside tasks.c.

Kernel port code:
- Slight change to the Cortex-A GIC-less port to move all non portable code to the application level.

SAMA5D4 demo project:
- Update the Atmel provided library to V1.1.
- Create a DDR build configuration.
- Ensure interrupts are all edge sensitive.
- Update the regtest code to use all 32 flop registers.

11 years agoDemo projects only:
Richard Barry [Thu, 9 Oct 2014 15:42:43 +0000 (15:42 +0000)]
Demo projects only:
+ Remove some #warnings messages from the Cycle 5 - which were left in the code as reminders of tests that were not yet completed but are now.

11 years agoCore kernel files:
Richard Barry [Wed, 8 Oct 2014 20:31:14 +0000 (20:31 +0000)]
Core kernel files:

+ Change how queues are allocated and deleted so only one pvPortMalloc() or vPortFree() is required in place of the previous 2.
+ Where the TCB is allocated in relation to the stack is now dependent on the stack growth direction.  The stack will not grow into the TCB.
+ Introduce the configAPPLICATION_ALLOCATED_HEAP constant to allow the application to provide the array used by heap_4.c as its heap.  This allows the application writer to use qualifiers on the array to, for example, force the memory into faster RAM.

Demo application:
+ Add demo for SAMA5D4 using IAR.

11 years agoMSP430 Demo projects only:
Richard Barry [Sun, 5 Oct 2014 20:43:12 +0000 (20:43 +0000)]
MSP430 Demo projects only:
Update project format to new IAR version.

11 years agoDemo project only:
Richard Barry [Wed, 1 Oct 2014 17:28:42 +0000 (17:28 +0000)]
Demo project only:
Added comprehensive demo including FreeRTOS+CLI to the Cyclone V SoC project.

11 years agoDemo project only: Cyclone V SoC now running from external RAM.
Richard Barry [Wed, 1 Oct 2014 09:30:35 +0000 (09:30 +0000)]
Demo project only:  Cyclone V SoC now running from external RAM.

11 years agoAdded project for Altera Cyclone V SoC, currently running from internal RAM.
Richard Barry [Tue, 30 Sep 2014 15:32:19 +0000 (15:32 +0000)]
Added project for Altera Cyclone V SoC, currently running from internal RAM.

11 years agoCore kernel code:
Richard Barry [Tue, 16 Sep 2014 14:54:32 +0000 (14:54 +0000)]
Core kernel code:
+ Introduce xSemaphoreGenericGiveFromISR() as an optimisation when giving semaphores and mutexes from an interrupt.

Demo applications:
+ Update IntSemTest.c to provide more code coverage in xSemaphoreGenericGiveFromISR().
+ Ensure the MMU is turned on in the RZ IAR demo.  It was already on in the RZ ARM demo.

11 years agoSAM4L tickless implementation: Bug fix and update the demo project to exercise the...
Richard Barry [Tue, 16 Sep 2014 12:24:14 +0000 (12:24 +0000)]
SAM4L tickless implementation:  Bug fix and update the demo project to exercise the fix.

11 years agoDemo project only:
Richard Barry [Fri, 12 Sep 2014 11:32:47 +0000 (11:32 +0000)]
Demo project only:
Add the new IntSem test/demo code into the MSVC demo project.

11 years agoDemo tasks only, with the aim of improving test coverage:
Richard Barry [Thu, 11 Sep 2014 12:06:27 +0000 (12:06 +0000)]
Demo tasks only, with the aim of improving test coverage:
+ Split out the code that uses a mutex from an interrupt from GenQTest.c and add to new common demo task IntSemTest.c.

11 years agoUpdate version number to 8.1.2 after moving the defaulting of configUSE_PORT_OPTIMISE...
Richard Barry [Tue, 2 Sep 2014 22:39:54 +0000 (22:39 +0000)]
Update version number to 8.1.2 after moving the defaulting of configUSE_PORT_OPTIMISED_TASK_SELECTION into individual port layers so it does not affect ports that do not support the definition.

11 years agoDemo code only:
Richard Barry [Tue, 2 Sep 2014 16:06:57 +0000 (16:06 +0000)]
Demo code only:
Add the IntQ standard test to the SAM4S project.

11 years agoCorrect potential compiler warning when configUSE_MUTEXES is set to 0.
Richard Barry [Sat, 30 Aug 2014 20:18:18 +0000 (20:18 +0000)]
Correct potential compiler warning when configUSE_MUTEXES is set to 0.
Add comments.

11 years agoUpdate version number to 8.1.1 for patch release that re-enables mutexes to be given...
Richard Barry [Fri, 29 Aug 2014 19:14:23 +0000 (19:14 +0000)]
Update version number to 8.1.1 for patch release that re-enables mutexes to be given from an interrupt.

11 years agoCore kernel code:
Richard Barry [Fri, 29 Aug 2014 13:53:58 +0000 (13:53 +0000)]
Core kernel code:
- Re-introduce the ability to give a mutex from an ISR.

Common demo code:
- Add additional tests into the GenQTest files for priority inheritance and using a mutex from an ISR.

11 years agoLower the minimum stack size used by the ATSAMA5 demo.
Richard Barry [Tue, 26 Aug 2014 16:53:40 +0000 (16:53 +0000)]
Lower the minimum stack size used by the ATSAMA5 demo.

11 years agoMinor edits prior to tagging V8.1.0.
Richard Barry [Tue, 26 Aug 2014 16:23:09 +0000 (16:23 +0000)]
Minor edits prior to tagging V8.1.0.

11 years ago***IMMINENT RELEASE NOTICE***
Richard Barry [Sat, 16 Aug 2014 20:19:40 +0000 (20:19 +0000)]
***IMMINENT RELEASE NOTICE***
Update version numbers ready for FreeRTOS V8.1.0 release in about 10 days.

11 years agoRemove some irrelevant CyaSSL files.
Richard Barry [Sat, 16 Aug 2014 15:43:43 +0000 (15:43 +0000)]
Remove some irrelevant CyaSSL files.

11 years agoDemo application related:
Richard Barry [Sat, 16 Aug 2014 14:29:39 +0000 (14:29 +0000)]
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 agoGeneral maintenance - changing comments and correcting spellings only.
Richard Barry [Mon, 4 Aug 2014 07:57:18 +0000 (07:57 +0000)]
General maintenance - changing comments and correcting spellings only.

11 years agoCommon demo tasks:
Richard Barry [Mon, 4 Aug 2014 07:53:20 +0000 (07:53 +0000)]
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 agoCortex-A5 IAR port:
Richard Barry [Sun, 3 Aug 2014 19:15:30 +0000 (19:15 +0000)]
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 agoCortex-A5 IAR port baseline prior to removing all SAMA5 specifics to make it generic.:
Richard Barry [Sun, 3 Aug 2014 18:37:58 +0000 (18:37 +0000)]
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 agoContinue working on the GIC-less Cortex-A5 port for IAR:
Richard Barry [Tue, 29 Jul 2014 21:31:04 +0000 (21:31 +0000)]
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.