]> git.sur5r.net Git - freertos/log
freertos
7 years agoFinal check in before tagging V9.0.0. V9.0.0
rtel [Wed, 25 May 2016 11:47:42 +0000 (11:47 +0000)]
Final check in before tagging V9.0.0.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2463 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

7 years agoPrepare for V9.0.0 release:
rtel [Fri, 20 May 2016 18:05:46 +0000 (18:05 +0000)]
Prepare for V9.0.0 release:
+ Change version number from V9.0.0rc2 to V9.0.0.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2462 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

7 years agoPreparing for V9.0.0 formal release:
rtel [Fri, 20 May 2016 12:18:59 +0000 (12:18 +0000)]
Preparing for V9.0.0 formal release:
+ Update various projects to use the latest versions of their build tools.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2461 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

7 years agoPrepare for V9.0.0 release.
rtel [Thu, 19 May 2016 13:28:12 +0000 (13:28 +0000)]
Prepare for V9.0.0 release.
+ Set flash wait states on MSP432 demos.
+ Remove use of obsolete IO library in PIC32 demos.
+ Remove obsolete item left on stack of first task to run in the Cortex-M0 ports.
+ Correct IA32 GCC vPortExitCritical() implementation when configMAX_API_CALL_INTERRUPT_PRIORITY == portMAX_PRIORITY.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2460 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

7 years agoIncrease the test coverage of the GCC MPU demo that runs in the Keil simulator.
rtel [Wed, 18 May 2016 19:51:14 +0000 (19:51 +0000)]
Increase the test coverage of the GCC MPU demo that runs in the Keil simulator.
Add an MPU demo that uses the Keil simulator that also uses the Keil compiler.
Correct a few version numbers for files recently added to the repository.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2459 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

7 years agoAdd GCC ARM Cortex-M4F MPU port.
rtel [Wed, 18 May 2016 10:41:28 +0000 (10:41 +0000)]
Add GCC ARM Cortex-M4F MPU port.
Add RVDS ARM Cortex-M4F MPU port.
Increase the size of each buffer allocated to pbufs in the Microblaze lwIP demo to prevent pbufs chaining.
Use _start as the top of the stack for each Microblaze task, rather than NULL, as NULL was causing the Xilinx SDK to try and unwind the stack too far.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2458 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

7 years agoRecreated MicroBlaze example using Vivado 2016.1 - the Microblaze project is still...
rtel [Tue, 10 May 2016 14:05:22 +0000 (14:05 +0000)]
Recreated MicroBlaze example using Vivado 2016.1 - the Microblaze project is still a work in progress - not yet fully functional.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2457 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

7 years agoUpdate the Microblaze hardware design and BSP to the latest IP and tool versions.
rtel [Mon, 9 May 2016 15:55:51 +0000 (15:55 +0000)]
Update the Microblaze hardware design and BSP to the latest IP and tool versions.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2456 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

7 years agoUpdate some more standard demos for use on 64-bit architectures.
rtel [Fri, 6 May 2016 12:40:27 +0000 (12:40 +0000)]
Update some more standard demos for use on 64-bit architectures.
Update the Xilinx Ultrascale+ Cortex-A53 (64-bit) and Cortex-R5 (32-bit) demos to use version 2016.1 of the SDK.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2455 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

7 years agoUpdate the Xilinx UltraScale+ demo project to use the BSP and hardware platform gener...
rtel [Thu, 28 Apr 2016 12:49:19 +0000 (12:49 +0000)]
Update the Xilinx UltraScale+ demo project to use the BSP and hardware platform generated by the 2016.1 version of the SDK.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2454 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

7 years agoUpdate the Xilinx UltraScale+ 64-bit demo to use the hardware definition and BSP...
rtel [Thu, 28 Apr 2016 12:23:52 +0000 (12:23 +0000)]
Update the Xilinx UltraScale+ 64-bit demo to use the hardware definition and BSP from version 2016.1 of the SDK.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2453 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoCompletely re-generate the Zynq 7000 demo using the 2016.1 SDK tools.
rtel [Mon, 25 Apr 2016 17:24:54 +0000 (17:24 +0000)]
Completely re-generate the Zynq 7000 demo using the 2016.1 SDK tools.
Introduce configUSE_TASK_FPU_SUPPORT into the GCC Cortex-A9 port to allow tasks to have an FPU context by default.
Add MikroC Cortex-M4F port.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2452 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoRemove Zynq 7000 project so it can be re-created using the 2016.1 edition of the...
rtel [Mon, 25 Apr 2016 13:37:57 +0000 (13:37 +0000)]
Remove Zynq 7000 project so it can be re-created using the 2016.1 edition of the SDK.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2451 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoRemove obsolete MPU demos.
rtel [Mon, 25 Apr 2016 12:03:47 +0000 (12:03 +0000)]
Remove obsolete MPU demos.
Separate the MPU wrappers into their own file so they can be used from future MPU ports.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2450 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoImprove coverage of the MPU API in the new MPU demo, fixing typos in the MPU port...
rtel [Sun, 24 Apr 2016 18:33:16 +0000 (18:33 +0000)]
Improve coverage of the MPU API in the new MPU demo, fixing typos in the MPU port layer as they are found.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2449 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoAdd software timer use to the new MPU demo.
rtel [Sun, 24 Apr 2016 10:06:20 +0000 (10:06 +0000)]
Add software timer use to the new MPU demo.
Update CEC1302 demos to demonstrate both aggregated and disaggregated interrupts.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2448 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoUpdate the GCC Cortex-A9 port to introduce a version of the IRQ handler that saves...
rtel [Sat, 23 Apr 2016 10:53:57 +0000 (10:53 +0000)]
Update the GCC Cortex-A9 port to introduce a version of the IRQ handler that saves the FPU registers.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2447 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoUpdate the MPU port so it supports all the public functions found in V9.0.0rc2.
rtel [Wed, 20 Apr 2016 15:42:34 +0000 (15:42 +0000)]
Update the MPU port so it supports all the public functions found in V9.0.0rc2.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2446 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoUpdate CEC1302 peripheral library version.
rtel [Mon, 18 Apr 2016 15:52:19 +0000 (15:52 +0000)]
Update CEC1302 peripheral library version.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2445 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoUpdates to support FreeRTOS MPU in FreeRTOS V9.0.0 - including a GCC project that...
rtel [Mon, 18 Apr 2016 10:49:24 +0000 (10:49 +0000)]
Updates to support FreeRTOS MPU in FreeRTOS V9.0.0 - including a GCC project that runs in the Keil simulator to allow development and testing.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2444 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoxTaskGetTaskHandle() changed to xTaskGetHandle().
rtel [Fri, 15 Apr 2016 11:48:07 +0000 (11:48 +0000)]
xTaskGetTaskHandle() changed to xTaskGetHandle().
Tidy up CEC1302 demo.
Ensure bit 0 of the task address is clear when setting up stack of initial Cortex-M3/4/7 stacks (for strict compliance, although not practically necessary).
vTaskGetTaskInfo() changed to vTaskGetInfo() - with a macro added for backward compatibility.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2443 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoCorrect selected device in IAR SAMA5D2 project.
rtel [Thu, 14 Apr 2016 11:18:13 +0000 (11:18 +0000)]
Correct selected device in IAR SAMA5D2 project.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2442 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoAdd SAMA5D2 Xplained IAR demo.
rtel [Thu, 14 Apr 2016 11:14:58 +0000 (11:14 +0000)]
Add SAMA5D2 Xplained IAR demo.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2441 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoRename CORTEX_M4F_CEC1302_Keil to CORTEX_M4F_CEC1302_Keil_GCC as it now contains...
rtel [Thu, 7 Apr 2016 10:57:36 +0000 (10:57 +0000)]
Rename CORTEX_M4F_CEC1302_Keil to CORTEX_M4F_CEC1302_Keil_GCC as it now contains both GCC and Keil projects.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2440 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoAdded GCC project to the CEC1302 demo.
rtel [Thu, 7 Apr 2016 10:56:04 +0000 (10:56 +0000)]
Added GCC project to the CEC1302 demo.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2439 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoCorrect comment error that was replicated on many different main_full.c files.
rtel [Mon, 4 Apr 2016 14:53:04 +0000 (14:53 +0000)]
Correct comment error that was replicated on many different main_full.c files.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2438 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoRemove compiler warning by ensure prvInitialiseMutex() is not included if configUSE_M...
rtel [Thu, 31 Mar 2016 15:22:10 +0000 (15:22 +0000)]
Remove compiler warning by ensure prvInitialiseMutex() is not included if configUSE_MUTEXES is 0.
Reduce the number of xTaskCreateStatic() parameters by having the function return the task handle, rather than pass the task handle out using a parameter.  This is also consistent with other objectCreate() functions.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2437 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoUpdate version number to 9.0.0rc2. V9.0.0rc2
rtel [Wed, 30 Mar 2016 12:20:36 +0000 (12:20 +0000)]
Update version number to 9.0.0rc2.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2435 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoUpdate MSP432 projects to use updated driver library files.
rtel [Wed, 30 Mar 2016 11:12:06 +0000 (11:12 +0000)]
Update MSP432 projects to use updated driver library files.
Remove references to INCLUDE_pcTaskGetTaskName and INCLUDE_xTimerGetTimerDaemonTaskHandle, which are no longer required.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2434 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoMake the pcObjectGetName() API function naming consistent - so rename pcTaskGetTaskNa...
rtel [Tue, 29 Mar 2016 17:16:34 +0000 (17:16 +0000)]
Make the pcObjectGetName() API function naming consistent - so rename pcTaskGetTaskName() to pcTaskGetName(), rename pcTimerGetTimerName() to pcTimerGetName() and add a #defines in FreeRTOS.h to make the changes backward compatible.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2433 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoCreate minor optimisations (just an asm instruction or two) by using consts in a...
rtel [Tue, 29 Mar 2016 13:07:27 +0000 (13:07 +0000)]
Create minor optimisations (just an asm instruction or two) by using consts in a few places where previously a volatile variable that didn't change was used.
Add the simple xTimerGetPeriod() and xTimerGetExpiryTime() functions.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2432 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years ago- Rework the StaticAllocation.c common demo file to reflect the changes to the static...
rtel [Tue, 29 Mar 2016 11:08:42 +0000 (11:08 +0000)]
- Rework the StaticAllocation.c common demo file to reflect the changes to the static allocation object create functions from the previous check-in.
- Correct various typos in comments.
- Add xTimerGetPeriod() function (feature request).

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2431 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoUpdate the documentation contained in the header files to be correct for V9.0.0 relea...
rtel [Sat, 26 Mar 2016 11:05:42 +0000 (11:05 +0000)]
Update the documentation contained in the header files to be correct for V9.0.0 release candidate 2.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2430 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoNotes:
rtel [Tue, 22 Mar 2016 16:23:37 +0000 (16:23 +0000)]
Notes:
+ The MPU port is not supported in this revision number.
+ The documentation for the static allocation functions in the header files has not yet been updated for this revision.

Kernel updates:
+ Simplify the static allocation of objects implementation.
+ Introduce configSUPPORT_DYNAMIC_ALLOCATION in addition to the existing configSUPPORT_STATIC_ALLOCATION so FreeRTOS can be built without providing a heap at all.

Demo application updates:
+ Update the demos to take into account the new configSUPPORT_DYNAMIC_ALLOCATION constant.
+ Add an MSVC demo that only uses static allocation, and does not include a FreeRTOS heap.
+ Update the MSVC project to use both configSUPPORT_STATIC_ALLOCATION and configSUPPORT_DYNAMIC_ALLOCATION.
+ Update the MingW project to use only configSUPPORT_DYNAMIC_ALLOCATION.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2428 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoVery minor changes to the EFM32 Giant and Pearl Geckos demos in preparation for pre...
rtel [Fri, 18 Mar 2016 19:40:03 +0000 (19:40 +0000)]
Very minor changes to the EFM32 Giant and Pearl Geckos demos in preparation for pre-release of the projects.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2426 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoAdd low power timer library source file for the Pearl Gecko demo.
rtel [Wed, 16 Mar 2016 17:18:21 +0000 (17:18 +0000)]
Add low power timer library source file for the Pearl Gecko demo.
Fix types in comments.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2425 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoRework the low power demo that uses the RTCC clock on the Pearl Gecko, and add attent...
rtel [Wed, 16 Mar 2016 17:17:07 +0000 (17:17 +0000)]
Rework the low power demo that uses the RTCC clock on the Pearl Gecko, and add attentional test code.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2424 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoReplace Gecko Simplicity Studio project that had multiple build configurations with...
rtel [Wed, 2 Mar 2016 17:45:55 +0000 (17:45 +0000)]
Replace Gecko Simplicity Studio project that had multiple build configurations with one that has a single build configuration and targets the Giant Gecko starter kit.  Now there are separate projects for the Giant and Pearl Geckos.
Update the Pearl Gecko project to use the register test tasks that include the FPU registers.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2423 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoAdd Pearl Gecko demo.
rtel [Wed, 2 Mar 2016 16:03:25 +0000 (16:03 +0000)]
Add Pearl Gecko demo.
Fix build error when configSUPPORT_STATIC_ALLOCATION and configNUM_THREAD_LOCAL_STORAGE_POINTERS were greater than zero at the same time.
Allow the pdMS_TO_TICKS macro to be overridden by a definition in FreeRTOSConfig.h.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2422 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoAdd files necessary to create a Pearl Gecko build configuration in the new EFM32...
rtel [Sat, 20 Feb 2016 15:27:40 +0000 (15:27 +0000)]
Add files necessary to create a Pearl Gecko build configuration in the new EFM32 SimplicityStudio project.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2421 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoUpdate FreeRTOS+ version number ready for version 9 release candidate 1. V9.0.0rc1
rtel [Thu, 18 Feb 2016 19:02:43 +0000 (19:02 +0000)]
Update FreeRTOS+ version number ready for version 9 release candidate 1.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2419 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoUpdate version number ready for version 9 release candidate 1.
rtel [Thu, 18 Feb 2016 17:11:14 +0000 (17:11 +0000)]
Update version number ready for version 9 release candidate 1.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2418 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoPrepare for a FreeRTOS V9 release candidate:
rtel [Thu, 18 Feb 2016 10:07:42 +0000 (10:07 +0000)]
Prepare for a FreeRTOS V9 release candidate:
- Remove the standard demo files that used the [long since deprecated] alternative API.
- Add standard demo task that tests the new xTaskAbortDelay() function.
- Update the Win32 Visual Studio project to use Visual Studio 2015 Community Edition.
- Rename the xGenericListItem TCB member to xStateListItem as it better describes the member's purpose.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2417 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoCore kernel code changes:
rtel [Sun, 14 Feb 2016 11:58:11 +0000 (11:58 +0000)]
Core kernel code changes:
+ Added xTaskAbortDelay() function, which causes a task to exit the Blocked state even before the timeout has expired or the event the task is waiting for has occurred.
+ For efficiency and code size reasons on some architectures, replace many instances of "== pdTRUE" with "!= pdFALSE".

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2416 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoFreeRTOS source:
rtel [Wed, 10 Feb 2016 12:58:15 +0000 (12:58 +0000)]
FreeRTOS source:
 - Major refactor to consolidate the multiple places where a task is removed from a ready list and placed in a delay list into a single function, reducing code size, and enabling the easy addition of up-coming functionality.
 - Replace the enum used for task notification states with a uint8_t to reduce the TCB struct size with some compilers, and allow additional members to be added without increasing its size.
 - Rearrange FreeRTOS.h so all INCLUDE_ defaults are grouped together.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2415 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoKernel source code:
rtel [Tue, 9 Feb 2016 16:02:54 +0000 (16:02 +0000)]
Kernel source code:
+ Added xPortIsInsideInterrupt() to RVDS ARM CM4F port - the same will get added to other ports in time.

Demo application code:
+ Added first pass Microchip CEC1302 demo for Keil.
+ Harden the new StaticAllocation.c standard demo tasks against integer promotion rules causing problems on 16-bit architectures.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2414 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoTest the RTC and BURTC tickless implementations on the Gecko parts, and make correct...
rtel [Wed, 3 Feb 2016 11:58:30 +0000 (11:58 +0000)]
Test the RTC and BURTC tickless implementations on the Gecko parts, and make correct as appropriate.
Replace some references to the older portTICK_RATE_MS macro with the newer pdMS_TO_TICKS() macro in the standard demo files.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2413 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoUpdate EFM32 demos to include an option to use the RTC as the clock source when using...
rtel [Mon, 1 Feb 2016 18:04:50 +0000 (18:04 +0000)]
Update EFM32 demos to include an option to use the RTC as the clock source when using low power tickless mode.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2412 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoAdded a build configuration for the Wonder Gecko starter kit to the existing Giant...
rtel [Sun, 31 Jan 2016 20:22:00 +0000 (20:22 +0000)]
Added a build configuration for the Wonder Gecko starter kit to the existing Giant Gecko Simplicity Studio project.
Fix some lint warnings that were generated by some of the new core functionality.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2411 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoAdd vTaskGetTaskInfo() function that allows a TaskStatus_t structure to be returned...
rtel [Thu, 28 Jan 2016 16:59:57 +0000 (16:59 +0000)]
Add vTaskGetTaskInfo() function that allows a TaskStatus_t structure to be returned for an individual task (previously information could only be obtained for all the tasks at once).
Add a member to the TaskStatus_t structure that is used to return the base address of the stack used by the task being queried.
Add xTaskGetTaskHandle() that allows the handle of a task to be looked up from the task's text name.
Continue to document the macros that allow RTOS objects to be created using statically allocated memory.
Introduced vApplicationDaemonTaskStartupHook(), which allows initialisation that that needs to be executed after the scheduler has been started to be executed from the RTOS daemon task.
Call prvResetNextTaskUnblockTime() in xTaskResumeAll() if a task is moved from the pending ready list - this can prevent an unnecessary wake from sleep mode if a task is unblocked by an interrupt while in a low power tickless state.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2410 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoBaseline the Giant Gecko demo, which now has the first pass at a low power tickless...
rtel [Mon, 25 Jan 2016 21:17:47 +0000 (21:17 +0000)]
Baseline the Giant Gecko demo, which now has the first pass at a low power tickless implementation.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2409 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoEnsure the code builds when configSUPPORT_STATIC_ALLOCATION is 0.
rtel [Fri, 22 Jan 2016 22:09:11 +0000 (22:09 +0000)]
Ensure the code builds when configSUPPORT_STATIC_ALLOCATION is 0.
Continue to document the new static allocation functions.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2408 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoProvide the ability to create event groups and software timers using pre statically...
rtel [Thu, 21 Jan 2016 14:10:04 +0000 (14:10 +0000)]
Provide the ability to create event groups and software timers using pre statically allocated memory - now all RTOS objects can be created using statically allocated memory.
Rename StaticTCB_t to StaticTask_t.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2407 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoContinue to add the ability to create RTOS objects using static rather than dynamic...
rtel [Wed, 20 Jan 2016 14:04:40 +0000 (14:04 +0000)]
Continue to add the ability to create RTOS objects using static rather than dynamic memory allocation - now including all the semaphore types.
Update the StaticAllocation.c standard demo file to exercise the new static allocation functions.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2406 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoImplement functionality that allows the memory required to create a queue or semaphor...
rtel [Tue, 19 Jan 2016 13:41:28 +0000 (13:41 +0000)]
Implement functionality that allows the memory required to create a queue or semaphore to be allocated statically.
Update the standard demo task that tests statically allocated tasks to also test statically allocated queues.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2405 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoRename DummyTCB_t to StaticTCB_t.
rtel [Mon, 18 Jan 2016 15:57:02 +0000 (15:57 +0000)]
Rename DummyTCB_t to StaticTCB_t.
Move structures used for static allocation of tasks and queues into FreeRTOS.h from their individual API header files.
Add SAME70 Xplained Atmel Studio project.
Update SAMV71 Atmel Studio project to use Studio 7.
Revert some changes to GenQTest.c standard demo task which only function correctly when a queue registry was used.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2404 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoRemove unused header files from new EFM32 demo.
rtel [Sun, 17 Jan 2016 16:04:56 +0000 (16:04 +0000)]
Remove unused header files from new EFM32 demo.
Prep the code ready to create a tickless implementation.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2403 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoAdd EFM32 Giant Gecko Starter Kit demo - still a work in progress as the low power...
rtel [Sun, 17 Jan 2016 14:34:27 +0000 (14:34 +0000)]
Add EFM32 Giant Gecko Starter Kit demo - still a work in progress as the low power tick management has not been implemented yet.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2402 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoKernel changes:
rtel [Tue, 12 Jan 2016 15:52:44 +0000 (15:52 +0000)]
Kernel changes:

Minor change to xQueueGenericReceive() to catch the extreme case of data being placed into a queue between a task timing out and leaving the xQueueGenericReceive() function.
Added xSemaphoreGetCount() macro.

Demo app changes:
Updated countsem.c to test the new xSemaphoreGetCount() macro.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2401 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoCorrect a comment that had been cut and paste into multiple main.c files.
rtel [Tue, 12 Jan 2016 10:38:16 +0000 (10:38 +0000)]
Correct a comment that had been cut and paste into multiple main.c files.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2400 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoAdd in the CORTEX_A53_64-bit_UltraScale_MPSoC demo application (a demo has been inclu...
rtel [Tue, 22 Dec 2015 13:56:20 +0000 (13:56 +0000)]
Add in the CORTEX_A53_64-bit_UltraScale_MPSoC demo application (a demo has been included in the Xilinx SDK download for some time already).
Update a few demo application files to work with 64-bit data types.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2399 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoFreeRTOS source updates:
rtel [Mon, 21 Dec 2015 08:25:41 +0000 (08:25 +0000)]
FreeRTOS source updates:
+ Add the pre-existing 64-bit Cortex-A53 port layer into the head revision of the main repository.

Demo application updates:
+ Update Zynq demo to use SDK version 2015.4
+ Add task static allocation standard demo to Zynq demo.
+ Make the XScuGic object accessible outside of the vConfigureTickInterrupt(), again in the Zynq demo.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2398 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoChanges to the FreeRTOS code:
rtel [Sun, 20 Dec 2015 13:44:21 +0000 (13:44 +0000)]
Changes to the FreeRTOS code:
+ Introduced xTaskCreateStatic() to allow tasks to be created without any dynamic memory allocation.
+ When a task notification is used to unblock a task from an ISR, but the xHigherPriorityTaskWoken parameter is not used, then pend a context switch to occur during the next tick interrupt.

Demo application changes:
+ Updated TaskNotify.c to test the case where a task is unblocked by an ISR, but does not use its xHigherPriorityTaskWoken parameter.
+ Updated the Win32 MSVC project to test statically allocated tasks being created and deleted.
+ Introduced StaticAllocation.c standard demo task.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2397 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoFreeRTOS source:
rtel [Tue, 8 Dec 2015 20:22:58 +0000 (20:22 +0000)]
FreeRTOS source:
+ Previously, if a task was deleted, the memory allocated to the task by the RTOS was freed in the Idle task.  Now if a task deletes another task the memory is freed immediately.  The idle task is however still responsible for freeing the memory when a task deletes itself.
+ Added pcQueueGetQueueName() function to return the name of a queue from its handle, assuming the queue is registers.

Demo application:
+ Update GenQTest to exercise the new pcQueueGetQueueName() function.
+ Delete workspaces from old Eclipse examples, leaving just the projects.
+ Rework comments in the MSVC simply blinky demo.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2396 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoFreeRTOS Source files:
rtel [Sun, 22 Nov 2015 22:03:00 +0000 (22:03 +0000)]
FreeRTOS Source files:
+ Updated all ARM Cortex-M0 ports to include an additional ISB instruction as the scheduler is started.

Demo app files:
+ Fixex build issues in XMC1000 demos.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2395 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoFreeRTOS source changes:
rtel [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.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2394 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoKernel changes:
rtel [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.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2393 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

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

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2391 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

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

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2390 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoPreparing for maintenance release:
rtel [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.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2389 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoPreparing for maintenance release -
rtel [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.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2388 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

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

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2387 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoAdd FreeRTOS+CLI examples to the Renesas RZ/T demos.
rtel [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.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2386 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoUpdate FreeRTOS+Trace recorder library to v3.0.2
rtel [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

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2385 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoDemo tasks:
rtel [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.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2384 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoChanges in common files:
rtel [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.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2383 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

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

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2382 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

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

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2381 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoFreeRTOS source:
rtel [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.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2380 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoBaseline new GCC and Renesas compiler projects for RX71M and RX113 before adding...
rtel [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.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2379 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoModify RZ/T e2studio directory structure to accommodate an IAR project.
rtel [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.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2378 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoRemove compiler warnings from auto-generated code.
rtel [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.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2377 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

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

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2376 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoSimplify and improve GIC-less Cortex-R4 port.
rtel [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.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2375 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoCommon source code:
rtel [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.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2374 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoInitial RZ/T port and demo - work in progress, currently only the tick interrupt...
rtel [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.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2373 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

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

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2372 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoRename the FreeRTOS_Plus_CyaSSL_Windows_Simulator directory to FreeRTOS_Plus_WolfSSL_...
rtel [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.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2371 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

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

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2370 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

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

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2369 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoFinal commit before tagging - cosmetic changes only. V8.2.2
rtel [Wed, 12 Aug 2015 16:45:24 +0000 (16:45 +0000)]
Final commit before tagging - cosmetic changes only.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2367 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoFinal preparation for new release:
rtel [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.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2366 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

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

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2365 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

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

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2364 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoCommon scheduler code:
rtel [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.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2363 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoPreparing for next release...
rtel [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.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2362 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoPreparing for new release...
rtel [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.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2361 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

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

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2360 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

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

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2359 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

8 years agoPreparing for the next release...
rtel [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.

git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2358 1d2547de-c912-0410-9cb9-b8ca96c0e9e2