Commit Graph

278 Commits (911a1de27330d1faff9166b03ae0b8267c5777b0)

Author SHA1 Message Date
Richard Barry d369110167 Allow the size of the stack used by many of the standard demo/test tasks to be overridden by FreeRTOSConfig.h settings.
Update the Freedom Studio RISC-V project so the 'full' build configuration is now functional.
6 years ago
Richard Barry ce36928ea8 Rename directories in the RISC-V port. 6 years ago
Richard Barry 148f588f56 Remove "FromISR' functions from the list of functions that switch to a privileged mode as IRQs are privileged already.
Add the vTimerSetReloadMode() API function.
6 years ago
Richard Barry 101806906d Rework RISC-V portASM.S to make it easier to add in chip specific RISC-V extensions and accommodate chips that don't include the CLINT. 6 years ago
Richard Barry 7cc42b2ab6 Save changes to the RISC-V port layer before making changes necessary to support pulpino too:
+ Switch positions of the asm functions used to start the kernel and handle traps to enable one to reference to the other.
+ Handle external interrupts (working with Renode emulator).
+ The _sp linker variable is now called __freertos_irq_stack_top.
6 years ago
Richard Barry 65f7a2dc19 Update RISC-V port to use a separate interrupt stack. 6 years ago
Richard Barry e85ea96f78 Some efficiency improvements in Risc-V port. 6 years ago
Richard Barry dc99300fa9 First task running in RISC-V-Qemu-sifive_e-FreedomStudio demo. 6 years ago
Richard Barry db64297487 Provide each Risc V task with an initial mstatus register value. 6 years ago
Richard Barry 8cef339aec Update Risc-V port to use environment call in place of software interrupt - still very much a work in progress. 6 years ago
Richard Barry baee711cb6 Continue work on Risc V port. 6 years ago
Richard Barry 6fab2b9e0d Add xTaskGetApplicationTaskTagFromISR(), which is an interrupt safe version of xTaskGetApplicationTaskTagFrom(). 6 years ago
Richard Barry c6de0001fa Added uxTaskGetStackHighWaterMark2(), which is the same as uxTaskGetStackHighWaterMark() other than the return type.
Allows the task name parameter passed into xTaskCreate() to be NULL.
6 years ago
Richard Barry e3dc5e934b RISC-V tasks now context switching to each other using taskYIELD() - not fully tested yet. 6 years ago
Richard Barry 2bcb1ab02b Add trap handler to RISC-V port so there is no dependency on third party code. 6 years ago
Richard Barry 32f35e9130 RISC-V:
Added code to setup the timer interrupt - not tested yet.
Added the taskYIELD() implementation - so far just checked it generates an interrupt.
6 years ago
Richard Barry b11eb3a59c RISC-V work in progress:
+ Initialise task stack.
    + Successfully jump to start of first task.
6 years ago
Richard Barry 92ae8e7aff Update version numbers ready for release. 7 years ago
Richard Barry e2750cd388 Case unused return values for memset and memcpy to void in stream_buffer.c to avoid compiler warnings when the warning level is turned up.
Remove duplicate comment in heap_1.c.
7 years ago
Richard Barry 3a1631fda3 Update copyright date ready for tagging V10.1.0. 7 years ago
Richard Barry fb9de58f56 Update version numbers in preparation for a new release. 7 years ago
Richard Barry 722ca8fb2b Update demo project for Tensilita - work in progres..
Add support for POSIX style errno - work in progress.
7 years ago
Gaurav Aggarwal 56dc0dd9b4 Merge bug fixes from Cadence 7 years ago
Richard Barry f6cbf20019 Update RISC-V project to used official port stubs in place of third party port. 7 years ago
Richard Barry 3bfc32d444 Add stubs for official RISC-V RV32 port. 7 years ago
Richard Barry 483f4a8c4b Small change to the directory name in which the RISC-V port is stored. 7 years ago
Richard Barry 3d8d2f3cc8 Add RISCV port layer. 7 years ago
Gaurav Aggarwal c4b1afc4ef Add Xtensa port
The project file is for Xtensa Xplorer simulator.
Also add tests for one size stream buffer.
7 years ago
Richard Barry 4fbcdbf13b Fix misra violations in queue.c by introducing a union that allows the correct data types to be used in place of void *, then tidy up where the union is used. 7 years ago
Richard Barry 390fb06b49 First pass at updating from MISRA 2004 to MISRA 2012:
Updated pvContainer member of list items to List_t * rather than void * as they are always contained in a list if anywhere.
Made EventGroupHandle_t typesafe pointer to forward referenced struct rather than void pointer.
Made TaskHandle_t typesafe pointer to forward referenced struct, rather than a void pointer.
7 years ago
Richard Barry 5bebf10fa4 Minor updates to comments only. 7 years ago
Richard Barry 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.
7 years ago
Richard Barry 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.
7 years ago
Richard Barry 7ddb8b342d Microblaze port: Place critical section around XIntc_Enable() to protect read/modify/write operation performed inside the library. 7 years ago
Richard Barry 13651934be Roll up the minor changes checked into svn since V10.0.0 into new V10.0.1 ready for release. 7 years ago
Richard Barry cfc268814a Update to MIT licensed FreeRTOS V10.0.0 - see https://www.freertos.org/History.txt 7 years ago
Richard Barry 037abdddf2 Update TriCore port to work with latest GCC compiler. 8 years ago
Richard Barry 6eea3d8d4b Correct long time mis-spelled portINITIAL_EXEC_RETURN to portINITIAL_EXC_RETURN 8 years ago
Richard Barry b080f13543 Add more "memory" clobbers into the MPU ports to make them robust to more aggressive optimisation in newer GCC version. 8 years ago
Richard Barry 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. 8 years ago
Richard Barry 0a7a0a79d6 Updates to prevent warnings when compiled with LLVM. 8 years ago
Richard Barry 8ca40d80a9 Ensure the PIC32 interrupt stack is 8 byte aligned for all values of configISR_STACK_SIZE. 8 years ago
Richard Barry 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.
8 years ago
Richard Barry ad5659e93d Housekeeping check-in, no code changes. 8 years ago
Richard Barry b9fe24962e Add additional memory barriers into ARM GCC asm code to ensure no re-ordering across asm code as optimisers get more aggressive. 8 years ago
Richard Barry c3acc441ac Introduce vTaskInternalSetTimeOutState() which does not have a critical section, and add a critical section to the public version of the same. 8 years ago
Richard Barry 8d041c8e21 Update version number in preparation for maintenance release. 8 years ago
Richard Barry 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.
8 years ago
Richard Barry 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.
8 years ago
Richard Barry 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. 8 years ago