Commit Graph

  • aec45f2479 Import the code coverage test additions from the (unpublished) Visual Studio project to the (published) MingW/Eclipse project. Update the MingW/Eclipse project to add a code coverage build configuration in addition to the existing Debug build configuration. Update StreamBufferDemo.c so functions are called directly, rather than via configASSERT(), so their code coverage can be measured when configASSERT() is not defined. In the Win32 port, replace the call to TerminateProcess() in vPortEndScheduler() with exit( 0 ) - which triggers the writing of the code coverage data to the disk. Fix bug in ucStreamBufferGetStreamBufferType() - which is only used by the Percepio trace tool. Update the line within vTaskStartScheduler() that was setting xTickCount to 0 to instead set it to configINITIAL_TICK_COUNT. Richard Barry 2018-03-14 15:58:47 +00:00
  • bf8d9f4726 Start moving code coverage tests from VisualStudio (not checked in) to the MingW project (checked in) by creating a second build configuration in the Windows Eclipse project that includes the code coverage command line options. Additionally make minor code updates to ensure configASSERT() is not defined, and the application runs for a finite time, when the code coverage build configuration is used. Richard Barry 2018-03-06 17:23:55 +00:00
  • c156522695 Complete testing of changes that allow xQueueOverwrite() to be used on a queue that is part of a queue set. Fix some compiler warnings in stream_buffer.c. Update the MingW/Eclipse project so it also includes static allocation tests. Richard Barry 2018-03-05 21:35:50 +00:00
  • f9bef06ec0 Introduce xMessageBufferNextLengthBytes() and tests for the same. Add call to traceTASK_SWITCHED_IN() in vTaskStartScheduler() so trace tools can see the first task to run. Richard Barry 2018-03-04 19:25:14 +00:00
  • 9ed3a9fe18 Fix buffer clean up in \FreeRTOS_Plus_TCP_Minimal_Windows_Simulator\demo_logging.c. Update queue code to allow an overwrite operation on a queue that is in a queue set, and add prvTestQueueOverwriteWithQueueSet() to test function. Update Eclipse Win32 project to bring it closer the the Visual Studio equivalent. Richard Barry 2018-02-26 21:22:44 +00:00
  • ff74e7aa63 Allow IP address to be passed into gethostbyname(). Ensure xNetworkBuffersInitialise() doesn't use a semaphore before it has been tested against NULL. Richard Barry 2018-02-18 19:58:26 +00:00
  • 7ddb8b342d Microblaze port: Place critical section around XIntc_Enable() to protect read/modify/write operation performed inside the library. Richard Barry 2018-01-30 17:42:12 +00:00
  • 208cc18a90 Ensure data cannot be sent to a TCP socket if the socket is in the process of closing. Correct definition of StaticTask_t in the case that portUSE_MPU_WRAPPERS is set to 1. prvTaskCheckFreeStackSpace() now returns configSTACK_DEPTH_TYPE to allow return values greater than max uint16_t value if required. xStreamBufferSend() and xStreamBufferReceive() no longer clear task notification bits - clearing was unnecessary as only the task notification state is used. Richard Barry 2018-01-30 17:39:14 +00:00
  • 0fe82b4d91 Correct out of date comment in tasks.c. Fix typo in comment in queue.h. Richard Barry 2017-12-28 20:20:26 +00:00
  • f7bc6297ca V10.0.1 Richard Barry 2017-12-20 23:37:41 +00:00
  • 13651934be Roll up the minor changes checked into svn since V10.0.0 into new V10.0.1 ready for release. Richard Barry 2017-12-18 22:54:18 +00:00
  • f998c8119a Update license information text files for the CLI, TCP and UDP products to be correct for V10. Richard Barry 2017-12-13 17:00:13 +00:00
  • 0d903cf2d6 FreeRTOS+TCP: Added ipconfigSOCKET_HAS_USER_WAKE_CALLBACK configuration option so the user can specify a callback to execute when data arrives. FreeRTOS+TCP: Improve print output when using WinPCap to assist in selecting the correct network interface. FreeRTOS kernel: Fix extern "C" { in stream_buffer.h. FreeRTOS kernel: Correct tskKERNEL_VERSION_NUMBER and tskKERNEL_VERSION_MAJOR constants for V10. Ensure the currently executing task is printed correctly in vTaskList(). Richard Barry 2017-12-12 17:47:56 +00:00
  • 6883316a3b V10.0.0 Richard Barry 2017-11-29 17:02:10 +00:00
  • 25cc771de8 V8.0.1 Richard Barry 2017-11-29 17:01:30 +00:00
  • cfc268814a Update to MIT licensed FreeRTOS V10.0.0 - see https://www.freertos.org/History.txt Richard Barry 2017-11-29 16:53:26 +00:00
  • e42a701e99 Add missing +TCP code. Richard Barry 2017-08-17 12:26:43 +00:00
  • 77e95538dc Added +TCP code to main repo. Richard Barry 2017-08-17 12:18:14 +00:00
  • 037abdddf2 Update TriCore port to work with latest GCC compiler. Richard Barry 2017-08-09 16:57:35 +00:00
  • b6f2402f3f Update trace recorder source to fix some compile time warnings. Richard Barry 2017-06-01 14:16:16 +00:00
  • 2307bc9dfa Add MSVC .vs directory to keep the IDE's windows layout. Richard Barry 2017-06-01 14:15:24 +00:00
  • 6eea3d8d4b Correct long time mis-spelled portINITIAL_EXEC_RETURN to portINITIAL_EXC_RETURN Richard Barry 2017-05-30 00:36:09 +00:00
  • 3f74cd483b Update linker script so main stack starts on 8-byte alignment. Richard Barry 2017-05-30 00:17:14 +00:00
  • 6b8eb1e936 Update IAR project for MSP432 to IAR version 8.11. Richard Barry 2017-05-30 00:03:31 +00:00
  • 2887612f27 FreeRTOS.h changes to go with the last tasks.c checkin. Richard Barry 2017-05-29 23:08:34 +00:00
  • b5d8be2209 Remove obsolete code from prvCheckTasksWaitingTermination(). Richard Barry 2017-05-29 22:55:09 +00:00
  • 533b533820 Fix typo in comment that got copied into multiple main.c file.s Richard Barry 2017-05-29 22:06:54 +00:00
  • 504d9c8bab Update the FreeRTOS_Plus_CLI_with_Trace_Windows_Simulator demo to use the latest FreeRTOS+Trace recorder code. Richard Barry 2017-05-29 22:05:25 +00:00
  • 35f5990e7a Update the MSVC and MingW demos to use the latest FreeRTOS+Trace recorder library. Richard Barry 2017-05-29 21:45:31 +00:00
  • f289bfb388 Update to the latest trace recorder library. Richard Barry 2017-05-29 21:43:07 +00:00
  • 9f84f353d0 Remove configurations other than 'debug' from the Win32 demo. Richard Barry 2017-05-07 18:22:31 +00:00
  • 2e89c13c1c Cosmetic changes only. Richard Barry 2017-04-26 00:23:57 +00:00
  • a99cd32208 Updated name of CORTEX_MPU_CEC_MEC_17xx_Keil_GCC to CORTEX_MPU_CEC_MEC_17xx_51xx_Keil_GCC. Richard Barry 2017-04-20 05:33:05 +00:00
  • 59925359ed Added traceQUEUE_CREATE_FAILED() trace macros into the queue create functions. Richard Barry 2017-04-10 01:58:58 +00:00
  • b080f13543 Add more "memory" clobbers into the MPU ports to make them robust to more aggressive optimisation in newer GCC version. Richard Barry 2017-04-10 01:58:01 +00:00
  • 0f85ead175 Add more "memory" clobbers into asm code of GCC/ARM_CRx_No_GIC port to make it robust with higher optimisation in newer versions of GCC. Richard Barry 2017-04-10 01:01:11 +00:00
  • 0a7a0a79d6 Updates to prevent warnings when compiled with LLVM. Richard Barry 2017-04-10 00:26:22 +00:00
  • 8ca40d80a9 Ensure the PIC32 interrupt stack is 8 byte aligned for all values of configISR_STACK_SIZE. Richard Barry 2017-04-09 20:13:48 +00:00
  • 96db5a3600 PIC32MZ project using later MPLAB X tools. Richard Barry 2017-04-09 19:35:32 +00:00
  • ffb228e448 Change name of the CEC and MEC directory to CORTEX_CEC_MEC_17xx_51xx_Keil_GCC as it is also applicable to the MEC5105 part. Richard Barry 2017-04-04 20:21:40 +00:00
  • 7fc04bfebe Change name of the CEC and MEC directory to CORTEX_MPU_CEC_MEC_17xx_51xx_Keil_GCC as it is also applicable to the MEC5105 part. Richard Barry 2017-04-04 20:16:37 +00:00
  • 464c2660ad Updates to the Cortex-M tickless idle code to reduce clock slippage. Updates to prevent the vTaskSwitchContext() function being removed from GCC builds when link time optimisation is used. Richard Barry 2017-03-28 03:13:48 +00:00
  • 7ee26c1b5e Enable button interrupts in the MSP432 demos in order to test code paths when an MCU exits low power mode for a reason other than a tick interrupt. Richard Barry 2017-03-28 03:12:20 +00:00
  • aa810cb926 Ensure vTaskGetInfo() sets the sate of the currently running task to eRunning - previously it was set to eReady. Richard Barry 2017-03-27 20:31:03 +00:00
  • 3b2bbcb56a Maintenance on MSP432 demo. Richard Barry 2017-03-09 02:13:40 +00:00
  • ad5659e93d Housekeeping check-in, no code changes. Richard Barry 2017-03-08 22:19:14 +00:00
  • 34b194150e Add CEC and MEC 17xx demo that is completely statically allocated. NOT FULLY TESTED YET. Richard Barry 2017-03-08 18:38:02 +00:00
  • b9fe24962e Add additional memory barriers into ARM GCC asm code to ensure no re-ordering across asm code as optimisers get more aggressive. Richard Barry 2017-03-07 04:06:10 +00:00
  • c3acc441ac Introduce vTaskInternalSetTimeOutState() which does not have a critical section, and add a critical section to the public version of the same. Richard Barry 2017-02-24 02:16:54 +00:00
  • 9b213e8c34 Add SimpleLink CC3220SF demo. Richard Barry 2017-02-24 02:12:27 +00:00
  • 67def3c14b Update Reliance Edge fail safe file system to the latest version. Richard Barry 2017-01-24 00:20:35 +00:00
  • 8d041c8e21 Update version number in preparation for maintenance release. Richard Barry 2017-01-22 05:28:13 +00:00
  • 979e41c9da Update UltraScale R5 hardware definition and BSP for 2016.4 SDK tools. Richard Barry 2017-01-21 21:59:25 +00:00
  • ff55eb920c Update Zynq MPSoC hardware definition and BSP files to be those shipped with the 2016.4 SDK. Richard Barry 2017-01-19 16:33:13 +00:00
  • 992a3c8c71 Update BSP source files for UltraScale Cortex-A53 and Cortex-R5 and Microblaze to the 2016.4 versions. Correct alignment issue in GCC Cortex-R port that was preventing full floating point usage in interrupts (other ports will be updated likewise). Update the UltraScale R5 demo to test the GCC Cortex-A9 port layer modification mentioned on the line above. Richard Barry 2017-01-19 04:11:21 +00:00
  • 6ffaa6f018 Correct alignment issue in GCC and RVDS Cortex-A9 port that was preventing full floating point usage in interrupts (other ports will be updated likewise). Update the Zynq demo to test the GCC Cortex-A9 port layer modification mentioned on the line above. Richard Barry 2017-01-18 18:33:48 +00:00
  • d67dcf9c74 Enhanced priority dis-inheritance functionality in the case where a task that caused another task to inherit its priority times out before obtain a mutex. Added test code to GenQTest to test the new priority dis-inheritance functionality. Allow the default names given to the Idle and Timer tasks to be overwridden by definitions in FreeRTOSConfig.h. Richard Barry 2017-01-16 03:58:51 +00:00
  • 883541bc8e Rename the CORTEX_MPU_MEC17xx_KEIL_GCC directory to CORTEX_MPU_CEC_MEC_Keil_GCC as it is also applicable to the CEC17xx parts. Richard Barry 2017-01-09 21:29:42 +00:00
  • c882141175 Change how volatile is used in some of the standard demos to remove compiler warnings in the latest GCC versions. Richard Barry 2017-01-04 05:07:12 +00:00
  • ca9edf3531 Increase the priority of the Windows threads used by the FreeRTOS Windows port, and, because the threads have high priority and run on the same core, prevent the port running on single core hosts so as to avoid locking up the host. Richard Barry 2017-01-04 04:48:22 +00:00
  • f98b675671 Add MPU project for multiple MEC17xx devices. Richard Barry 2016-12-11 22:56:30 +00:00
  • 225f13bac2 Update TaskNotify.c to test the condition where a direct to task notification is sent to a suspended task. Introduce configSTACK_DEPTH_TYPE so the application writer change the type used to specify a stack size from uint16_t to whatever they like. Defaults to uint16_t if not defined. Introduce configINITIAL_TICK_COUNT to allow users to start the tick count at something other than 0. Used for testing, but overflows can be better tested by setting configUSE_16_BIT_TICKS to 1. Split xQueueGenericReceive() into xQueueReceive(), xQueuePeek() and xQueueSemaphoreTake() as the first step in refactoring xQueueGenericReceive(). Add Cortex-M3 port layer for Code Composer Studio - previously there was only a Cortex-M4F port. Introduce configPRE_SUPPRESS_TICKS_AND_SLEEP_PROCESSING() to allow applications to prevent portSUPPRESS_TICKS_AND_SLEEP() being called. Previously the portPRE_SLEEP_PROCESSING() macro could only be used to abort entry into sleep time after clocks had been re-programmed for the distant wake time. Richard Barry 2016-11-25 21:07:56 +00:00
  • 7fcc976248 Update version of Reliance Edge. Richard Barry 2016-11-21 04:30:49 +00:00
  • 7cce089e40 Add support for statically allocated memory protected tasks - previously only dynamically allocated tasks could be memory protected. Richard Barry 2016-09-20 13:54:28 +00:00
  • 5c75e5a38a Correct the definition of StaticTask_t and add additional configASSERT() statements to catch future errors. Richard Barry 2016-09-14 08:21:24 +00:00
  • 40201bc253 Introduce configRECORD_STACK_HIGH_ADDRESS, which when set will result in both limits of the stack being saved in the TCB to allow enhanced debug capabilities. Introduce configINCLUDE_FREERTOS_TASK_C_ADDITIONS_H, which allows a user provided header file to be included at the bottom of the tasks.c source file, which can add user functions and access file scope data. Replace global on/off switches used for lint errors with save/restore switches. Richard Barry 2016-09-04 15:46:34 +00:00
  • f11912c5de Clean up lint errors. Richard Barry 2016-08-16 13:44:30 +00:00
  • 75ffac21d7 Changes to core code and port layer: + Add configASSERT() into ARM Cortex-M ports to check the number of priority bit settings. + Clear the 'control' register before starting ARM Cortex-M4F ports in case the FPU is used before the scheduler is started. This just saves a few bytes on the main stack as it prevents space being left for a later save of FPU registers. + Added xSemaphoreGetMutexHolderFromISR(). + Corrected use of portNVIC_PENDSVSET to portNVIC_PENDSVSET_BIT in MPU ports. Richard Barry 2016-08-16 11:38:58 +00:00
  • bdbf347c22 Remove clrex instruction from Cortex-M ports again as it is implicit in interrupt entry. Richard Barry 2016-06-28 10:39:25 +00:00
  • c296e2cff8 Improvements to the Cortex-M ports: - Clear the SysTick current value register before starting the SysTick (only required if something uses SysTick before starting the scheduler). - Ensure atomic operations are thread safe by executing clrex in the context switch. Richard Barry 2016-06-27 13:13:05 +00:00
  • 165c24cba9 V9.0.0 Richard Barry 2016-05-25 11:49:27 +00:00
  • 6c975cd46a Final check in before tagging V9.0.0. Richard Barry 2016-05-25 11:47:42 +00:00
  • 2bd7884ace Prepare for V9.0.0 release: + Change version number from V9.0.0rc2 to V9.0.0. Richard Barry 2016-05-20 18:05:46 +00:00
  • e23eca901d Preparing for V9.0.0 formal release: + Update various projects to use the latest versions of their build tools. Richard Barry 2016-05-20 12:18:59 +00:00
  • 0063b29cdf 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. Richard Barry 2016-05-19 13:28:12 +00:00
  • e10647f9c0 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. Richard Barry 2016-05-18 19:51:14 +00:00
  • ee9cd40b6d 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. Richard Barry 2016-05-18 10:41:28 +00:00
  • fedb98c5f6 Recreated MicroBlaze example using Vivado 2016.1 - the Microblaze project is still a work in progress - not yet fully functional. Richard Barry 2016-05-10 14:05:22 +00:00
  • 501be60574 Update the Microblaze hardware design and BSP to the latest IP and tool versions. Richard Barry 2016-05-09 15:55:51 +00:00
  • 324127837c 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. Richard Barry 2016-05-06 12:40:27 +00:00
  • 0cb71ee9ce Update the Xilinx UltraScale+ demo project to use the BSP and hardware platform generated by the 2016.1 version of the SDK. Richard Barry 2016-04-28 12:49:19 +00:00
  • 11fe9de0f0 Update the Xilinx UltraScale+ 64-bit demo to use the hardware definition and BSP from version 2016.1 of the SDK. Richard Barry 2016-04-28 12:23:52 +00:00
  • 0721cf102a 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. Richard Barry 2016-04-25 17:24:54 +00:00
  • 2ec97696db Remove Zynq 7000 project so it can be re-created using the 2016.1 edition of the SDK. Richard Barry 2016-04-25 13:37:57 +00:00
  • 0b5906d404 Remove obsolete MPU demos. Separate the MPU wrappers into their own file so they can be used from future MPU ports. Richard Barry 2016-04-25 12:03:47 +00:00
  • afd4b432f6 Improve coverage of the MPU API in the new MPU demo, fixing typos in the MPU port layer as they are found. Richard Barry 2016-04-24 18:33:16 +00:00
  • 12a0be1e69 Add software timer use to the new MPU demo. Update CEC1302 demos to demonstrate both aggregated and disaggregated interrupts. Richard Barry 2016-04-24 10:06:20 +00:00
  • 345819d550 Update the GCC Cortex-A9 port to introduce a version of the IRQ handler that saves the FPU registers. Richard Barry 2016-04-23 10:53:57 +00:00
  • ac67c39be9 Update the MPU port so it supports all the public functions found in V9.0.0rc2. Richard Barry 2016-04-20 15:42:34 +00:00
  • da6c95edae Update CEC1302 peripheral library version. Richard Barry 2016-04-18 15:52:19 +00:00
  • 057b38ad23 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. Richard Barry 2016-04-18 10:49:24 +00:00
  • 255145bde1 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. Richard Barry 2016-04-15 11:48:07 +00:00
  • ee5386756d Correct selected device in IAR SAMA5D2 project. Richard Barry 2016-04-14 11:18:13 +00:00
  • f0f2378961 Add SAMA5D2 Xplained IAR demo. Richard Barry 2016-04-14 11:14:58 +00:00
  • 5252301cb8 Rename CORTEX_M4F_CEC1302_Keil to CORTEX_M4F_CEC1302_Keil_GCC as it now contains both GCC and Keil projects. Richard Barry 2016-04-07 10:57:36 +00:00
  • 912445c341 Added GCC project to the CEC1302 demo. Richard Barry 2016-04-07 10:56:04 +00:00
  • 4b9c4aa757 Correct comment error that was replicated on many different main_full.c files. Richard Barry 2016-04-04 14:53:04 +00:00
  • f1725afbe5 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. Richard Barry 2016-03-31 15:22:10 +00:00
  • 384092b9b3 V9.0.0rc2 V9.0.0-rc2 Richard Barry 2016-03-30 12:26:37 +00:00
  • 07ac1399ee Update version number to 9.0.0rc2. Richard Barry 2016-03-30 12:20:36 +00:00