Richard Barry
818eeccc0c
Re-org of RISC-V file structure and naming step 1.
6 years ago
Richard Barry
db750d0c82
Update RSIC-V port layer after testing saving and receiving of chip specific registers.
6 years ago
Richard Barry
60b133b2c6
Move the RISC-V pxPortInitialiseStack() implementation to the assembly port file from the C port file so it can have access to the number of chip specific registers it needs to save space for on the stack.
6 years ago
Richard Barry
911a1de273
Correct accidental deletion in GenQTest.c.
6 years ago
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
178fe4f143
Update the Freedom Studio RISC-V project so the gdbinit options are now specified on the command line.
6 years ago
Richard Barry
e5daf23d75
Update Freedom Studio RISC-V demo for the latest GCC RISC-V port - not yet tested.
6 years ago
Richard Barry
80f6f3e59b
Retarget Softconsole RISC-V demo from IGLOO2 to Renode as it can have more RAM and therefore have more test tasks running.
6 years ago
Richard Barry
ce36928ea8
Rename directories in the RISC-V port.
6 years ago
Richard Barry
2181c0375e
Backup Microsemi Renode project before adding a build configuration for the target hardware.
6 years ago
Richard Barry
8d213b42f2
Add vTimerSetReloadMode() calls to the code coverage tests.
6 years ago
Richard Barry
6edabbe7ea
Update the the MPU simulator project to exercise the timer API.
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
8285ca6b5f
Update RISC-V_IGLOO2_Creative_SoftConsole demo to make use of new RISC-V porting layer structure and exercise some external interrupts - all tests currently passing in Renode.
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
866635d2ad
Microsemi RISC-V project:
...
Reorganize project to separate Microsemi code into its own directory.
Add many more demo and tests.
6 years ago
Richard Barry
6b37800ade
Backup checkin of MiFive demo running in ReNode emulator.
6 years ago
Richard Barry
9a136a52df
Backup check in of the Microsemi IGLOO2 Creative Board RISC-V demo - still a work in progress.
6 years ago
Richard Barry
4b9dd38d1c
Backup checking of the Freedom Studio RISC-V project - still a work in progress.
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
d0ef322b13
Add kernel code to the RISC-V-Qemu-sifive_e-FreedomStudio demo.
6 years ago
Richard Barry
f7102f2342
Add a starting point for a Freedom Studio Risc V project.
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
74d0d16aab
Update xTaskRemoveFromEventList() so when tickless idle is used prvResetNextTaskUnblockTime() only gets called if the scheduler is not locked, as it would get called when the scheduler is unlocked in any case.
6 years ago
Richard Barry
55ff89373a
Update the method used to detect if a timer is active. Previously the timer was deemed to be inactive if it was not referenced from a list. However, when a timer is updated it is temporarily removed from, then re-added to a list, so now the timer's active status is stored separately.
6 years ago
Richard Barry
6fab2b9e0d
Add xTaskGetApplicationTaskTagFromISR(), which is an interrupt safe version of xTaskGetApplicationTaskTagFrom().
6 years ago
Gaurav Aggarwal
1af80854e6
Fix Xtensa project file and some documentation improvements.
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
0c0f0d0f8f
Minor synching - no functional changes.
7 years ago
Richard Barry
92ae8e7aff
Update version numbers ready for release.
7 years ago
Richard Barry
1a235efd2b
Update trace configuration files for the updated trace recorder code.
7 years ago
Richard Barry
be9c0730c3
Update trace recorder code to the latest.
...
Some minor changes to enable the configREMOVE_STATIC_QUALIFIER constant to be used by those debuggers that cannot cope with statics being used.
7 years ago
Richard Barry
21a8ff35dd
Two minor updates in the comments to fix html formatting that was preventing doxygen creating documents correctly.
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
0d6e3df7ec
Minor updates to fix issues with the Segger kernel aware plug since V10.1.0.
7 years ago
Richard Barry
893db45834
Changes required for the IAR StateViewer plug-in to work with FreeRTOS V10.1.0.
7 years ago
Richard Barry
b0ce1f61c9
Move some variables from function scope back to being file scope for the benefit of some kernel aware debuggers that were left working in a non-functioning mode after the V10.1.0 release - not last change for this purpose.
7 years ago
Richard Barry
a11b1a494d
FreeRTOS+UDP was removed in FreeRTOS V10.1.0 as it was replaced by FreeRTOS+TCP,
...
which was brought into the main download in FreeRTOS V10.0.0. FreeRTOS+TCP can
be configured as a UDP only stack, and FreeRTOS+UDP does not contain the patches
applied to FreeRTOS+TCP.
7 years ago
Richard Barry
3a1631fda3
Update copyright date ready for tagging V10.1.0.
7 years ago
Richard Barry
bdb088e66f
Fix some build issues in older kernel demo projects.
...
Update to V2.0.7 of the TCP/IP stack:
+ Multiple security improvements and fixes in packet parsing routines, DNS
caching, and TCP sequence number and ID generation.
+ Disable NBNS and LLMNR by default.
+ Add TCP hang protection by default.
We thank Ori Karliner of Zimperium zLabs Team for reporting these issues.
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
Richard Barry
78d20e2854
Only include the static definition of freertos_tasks_c_additions_init if FREERTOS_TASKS_C_ADDITIONS_INIT is defined, matching the guide used to include the function's prototype.
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
f7fc215247
Update stream buffer tests to try resetting a statically allocated stream buffer before deleting it (tests fix in code).
...
Update trace recorder library.
7 years ago
Richard Barry
0887713969
Fix issues whereby vStreamBufferReset() clobbered the flag that indicated the stream buffer was statically allocated.
7 years ago
Richard Barry
9119e1e0e3
Add starting point for IGLOO2 RISV-V demo project.
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
Richard Barry
10eea4aded
Remove period from the URL that links to the web page that describes the FreeRTOSConfig.h parameters.
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
d6fcd5dbba
Add the option to specify a stack size in the standard demo MessageBuffer tests.
...
Add stream and message buffer tests into the Zynq demo project.
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
4a8c4c9eaf
TimerHandle_t is now type safe instead of void *.
...
Remove casts that are no longer required not type safe handles are used.
7 years ago
Richard Barry
3d8681de9e
Continue updating to MISRA 2012 from 2004 - currently working on queue.c and committing as working copy prior to making larger change.
...
Change QueueHandle_t to be typesafe from void *.
Change StreamBuffer_t to be typesafe from void *.
7 years ago
Richard Barry
7a9f453f96
Remove casts from EventGroupHandle_t to EventGroup_t, and corresponding lint comments, which are not required now EventGroupHandle_t is type safe.
...
Fix the prototype of prvTimerCallback() in the MPU simulator demo (caught due to the new type safety in tasks.c).
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
585b16a39f
Update definition of StaticTimer_t so its size is correct on MSP403X large memory model builds.
7 years ago
Richard Barry
d30249789b
Previously the MPSoC Cortex-A53 demo was updated to the latest Xilinx SDK tools to the point where it was building, but not tested. This check in modifies the project files slightly following testing.
7 years ago
Richard Barry
26d8c76996
Update Zynq, MPSoc Cortex-A53 and MPSoc Cortex-R5 demo projects to build with the 18.1 version of the Xilinx SDK - building BUT NOT YET TESTED.
7 years ago
Richard Barry
a3148ba638
xTaskGenericNotify() now sets xYieldPending to pdTRUE even when the 'higher priority task woken' parameter is provided - making its behaviour consistent with event objects.
...
Ensure tasks that are blocked indefinitely on a direct to task notification return their state as eBlocked, previously was returned as eSuspended - making its behaviour consistent with event objects.
Fix typo in stream_buffer.c where "size_t xBytesAvailable ); PRIVILEGED_FUNCTION" had the semicolon in the wrong place.
Add testing of Stream Buffers to the AbortDelay.c tests.
Guard inclusion of C code when FreeRTOSConfig.h is included from an assembly file in the ARM7_LPC2129_IAR demo.
Fix minor typos in the Windows demo comment blocks.
7 years ago
Richard Barry
025088c280
Fix regressions introduced by introduction of configMESSAGE_BUFFER_LENGTH_TYPE constant - specifically enabling big endian support and updates to xStreamBufferNextMessageLengthBytes.
7 years ago
Richard Barry
3ec86b7a98
Introduce sbBYTES_TO_STORE_MESSAGE_LENGTH to allow the number of bytes used to hold a message length in a message buffer to be reduced if 4 bytes is always too many (save a little RAM).
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
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.
7 years ago
Richard Barry
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.
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
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.
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
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.
7 years ago
Richard Barry
0fe82b4d91
Correct out of date comment in tasks.c.
...
Fix typo in comment in queue.h.
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
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().
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
2307bc9dfa
Add MSVC .vs directory to keep the IDE's windows layout.
8 years ago
Richard Barry
6eea3d8d4b
Correct long time mis-spelled portINITIAL_EXEC_RETURN to portINITIAL_EXC_RETURN
8 years ago
Richard Barry
3f74cd483b
Update linker script so main stack starts on 8-byte alignment.
8 years ago
Richard Barry
6b8eb1e936
Update IAR project for MSP432 to IAR version 8.11.
8 years ago
Richard Barry
2887612f27
FreeRTOS.h changes to go with the last tasks.c checkin.
8 years ago
Richard Barry
b5d8be2209
Remove obsolete code from prvCheckTasksWaitingTermination().
8 years ago
Richard Barry
35f5990e7a
Update the MSVC and MingW demos to use the latest FreeRTOS+Trace recorder library.
8 years ago
Richard Barry
9f84f353d0
Remove configurations other than 'debug' from the Win32 demo.
8 years ago
Richard Barry
2e89c13c1c
Cosmetic changes only.
8 years ago
Richard Barry
a99cd32208
Updated name of CORTEX_MPU_CEC_MEC_17xx_Keil_GCC to CORTEX_MPU_CEC_MEC_17xx_51xx_Keil_GCC.
8 years ago
Richard Barry
59925359ed
Added traceQUEUE_CREATE_FAILED() trace macros into the queue create functions.
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