Commit Graph

1359 Commits (p3_rel_wip)

Author SHA1 Message Date
RichardBarry 1509e4f742
Add a hardware definition project for the MicroZed board (#607)
Add a hardware definition project for the MicroZed board to the existing Zynq ZC702 project.
Add a text file that describes how to switch the Zynq project form the ZC702 hardware to the MicroZed hardware.
3 years ago
RichardBarry 92b26dbf99
Update win32 demo to exercise configRUN_TIME_COUNTER_TYPE (#623)
* PR https://github.com/FreeRTOS/FreeRTOS-Kernel/pull/350 introduced configRUN_TIME_COUNTER_TYPE and ulTaskGetIdleRunTimePercent().  This PR updates the Win32 demo to exercise both additions with configRUN_TIME_COUNTER_TYPE set to uint64_t.

* Add ultaskgetidleruntimepercent to lexicon.txt.

Co-authored-by: Cobus van Eeden <35851496+cobusve@users.noreply.github.com>
3 years ago
Gaurav-Aggarwal-AWS c984275953
Update the SiFive HiFive IAR project (#804)
Update the SiFive HiFive IAR project

1. Update to the latest toolchain.
2. Add the prints needed by CI.

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
3 years ago
Aniruddha Kanhere 9b7911b046
Update readme file with latest instructions to run CBMC proofs (#801)
* Update readme

* Address comments

* Update instructions according to comments

* Remove windows based instructions

* Add details for CBMC-viewer
3 years ago
Gaurav-Aggarwal-AWS 19b2ed4bf6
Update submodule pointers of third party demos (#798)
Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
3 years ago
Ming Yue eadf6d4919
Update spike project ReadMe (#793)
* Update README.

* Update README and fix RV64 toolchain config.
3 years ago
Ming Yue 13ece80ea4
Update vega project to use the latest RISC-V port (#788)
Update vega board project to support the new RISC-V port
3 years ago
林振凱 9abd84992b
Set the mtvec register in the Spike demonstraction (#794)
* Set the mtvec register to freertos_risc_v_trap_handler
3 years ago
Ming Yue cc8c0266a8
Update polarfire project to latest RISC-V port with vector mode support (#791)
* Update PolarFire Project to support vector mode.l

* Update vector alignments.

* Update file headers.

* Code review changes

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>

Co-authored-by: Gaurav Aggarwal <aggarg@amazon.com>
3 years ago
Gaurav-Aggarwal-AWS 449c7b29ca
Demo projects for nRF9160-DK (#784)
* Add demo projects for nRF9160-DK

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
3 years ago
Gaurav-Aggarwal-AWS 4255ac5c28
Update SiFive FreedomStudio project (#785)
SiFive FreedomStudio project changes needed for refactored code

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
3 years ago
Ming Yue 673d3d7eea
Update GCC RISC-V QEMU project to support new RISC-V port and vector mode (#780) 3 years ago
swaldhoer 2b956b97c7
Update uncrustify configuration and improve CI setup (see FreeRTOS/FreeRTOS-Kernel/pull/445) (#782)
* pin uncrustify version and update configuration file

* Update AbortDelay.c

* Update BlockQ.c

* Update MessageBufferDemo.c

* Update QPeek.c

* Update StaticAllocation.c

* Update integer.c

* Update recmutex.c

* Update create.c

* Update prvCopyDataToQueue.c

* Update prvUnlockQueue.c

* Update vQueueDelete.c

* Update xQueueGenericSend.c

* Update xQueueGenericSendFromISR.c

* Update xQueuePeek.c

* Update xQueueReceive.c

* Update IntSemTest.c

* Update dynamic.c

* Update lexicon.txt

Co-authored-by: alfred gedeon <28123637+alfred2g@users.noreply.github.com>
3 years ago
Ming Yue fea193d03c
Update Kernel Pointer. (#779)
* Update Kernel Pointer.

* Update manifest.yml.
3 years ago
RichardBarry 4629138a42
Extend qemu virt riscv demo (#774)
* Simple blinky demo working.  Not tried full demo yet.

* Get the full demo running.

* Add Eclipse project to build the RISC-V_RV32_QEMU_VIRT_GCC gcc makefile.

* Add regtest tasks to the RISC-V_RV32_QEMU_VIRT_GCC demo.

* Update priority of the timer task.

* Adjust timer frequency and optimisation level before committing prior to rearranging the Eclipse project.

* Reorganise Eclipse project slightly.

* Add note to the RISC-V-Qemu-virt_GCC readme file about the updated version in RISC-V_RV32_QEMU_VIRT_GCC.

* Update headers in newly added source files so they pass the automated header check.

* Update lexicon to pass automated spell check.

Co-authored-by: none <>
3 years ago
Oscar Shiang 0744c28749
RISC-V-Qemu-virt: Add assert macros in FreeRTOSConfig (#777)
vAssertCalled() is already defined in main.c. We need to set the
related macros in FreeRTOSConfig header as well, or the boundary
checking through assert could not be executed
3 years ago
Ming Yue 778ba90b96
GCC/Rx100 Demo project files update to e2 Studio v8 (#776)
* Upgrade GCC project files for e2 studio v7.8.0 in Demo/RX100-RSK_GCC_e2studio folder

* Update Demo project file to e2 Studio v8 and remove the .bat file.

* Update the choice of toolchain version.

* Update the link in file header.

Co-authored-by: NoMaY (a user of Japan.RenesasRulz.com) <NoMaY-jp@outlook.com>
3 years ago
Gaurav-Aggarwal-AWS d6a415da70
Update FreeRTOS-Kernel submodule pointer (#771)
Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
3 years ago
Gaurav-Aggarwal-AWS 2f5a633383
Add tests to increase queue code coverage (#770)
These tests cover the following portion in the queue code:

static void prvUnlockQueue( Queue_t * const pxQueue )
{
    ...

    if( prvNotifyQueueSetContainer( pxQueue ) != pdFALSE )
    {
        /* The queue is a member of a queue set, and posting to
            * the queue set caused a higher priority task to unblock.
            * A context switch is required. */
        vTaskMissedYield();
    }
    else
    {
        mtCOVERAGE_TEST_MARKER();
    }

    ...
}

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
3 years ago
Gaurav-Aggarwal-AWS 89938537bc
Add tests to cover https://github.com/FreeRTOS/FreeRTOS-Kernel/pull/435 (#768)
Add tests to cover https://github.com/FreeRTOS/FreeRTOS-Kernel/pull/435

This ensures that the coverage does not go down with the PR
https://github.com/FreeRTOS/FreeRTOS-Kernel/pull/435.

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
3 years ago
Gaurav-Aggarwal-AWS 26dcb22052
Fix tests needed for https://github.com/FreeRTOS/FreeRTOS-Kernel/pull/435 (#766)
* Fix tests needed for https://github.com/FreeRTOS/FreeRTOS-Kernel/pull/435

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
3 years ago
Joseph Julicher 598508a10b
added configUSE_TICKLESS_IDLE (#764) 3 years ago
Joseph Julicher 626b54819b
fix minor spelling issue by removing contraction (#763) 3 years ago
RichardBarry a7507b082e
Correct the version in the header comments. (#760)
Co-authored-by: none <>
3 years ago
RichardBarry 4d9755d00e
Create Zynq demo using the latest Vitis tools (#746)
* Add hello world project for Vitis.

* Working hello world program.

* Remove the call to ps7_init().

* Demo moved from the XSDK project to Vitis is now compiling - not tried running yet though.

* Blink is printing out in blinky demo.

* Adjust the priorities of the demo tasks to enable them to run at once.
Update blocktim.c so it stores the line on which an error was detected in the error occurred variable rather than just setting the variable to true.

* Add launch configuration file.
Remove unused definitions from FreeRTOSConfig.h.
Edit the comments that describe what the demo does.

* Revert changes to blocktim.c, which should have been in a separate PR.

* Correct header comments in new files.

* Update headers for core checks.

* Third attempt at getting headers through the commit checks - copy headers from other files is not enough.

* Still trying to get core checks to pass.

* Update lexicon.txt

* Correct spelling in Cortex-A9 QEMU main.c.

Co-authored-by: none <>
3 years ago
johnrhen 43defa566c
Apply release changes to main branch (#759)
* Update History.txt and README.md for December release (#744)

* Update History.txt and README.md for release

* Bump mbedtls submodule to v2.28.0 (#745)

* Patch project files for mbedtls (#751)

* Apply group 1 patches

* Apply patches for group 2

* Update project files for mbedTLS new version

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>

* Fix warnings in projects

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>

* Fix warnings in HTTP_S3_Download demo

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>

Co-authored-by: Gaurav Aggarwal <aggarg@amazon.com>

* Update changelog and history for corePKCS11 update (#752)

* Update submodule pointer and manifest.yml for corePKCS11 (#754)

* Update readme and history.txt to show that Sigv4 is a newly added library (#756)

* Revert update to v143 of VS toolset (#757)

* [AUTO][RELEASE]: Bump file header version to "202112.00"

* Update file headers to satisfy core checks

Co-authored-by: Muneeb Ahmed <54290492+muneebahmed10@users.noreply.github.com>
Co-authored-by: Gaurav Aggarwal <aggarg@amazon.com>
Co-authored-by: johnrhen <johnrhen@users.noreply.github.com>
3 years ago
RichardBarry 4f71a94a70
Correct include path in the MPS2 QEMU IAR project. (#748)
Co-authored-by: none <>
3 years ago
RichardBarry dc263aa3a2
Add a GCC build to the QEMU/IAR project (#728)
* Rename the CORTEX_MPS2_QEMU_IAR directory to CORTEX_MPS2_QEMU_IAR_GCC

* Add makefile and startup.c.

* GCC build is working, but not yet running.

* Add eclipse project.

* Tidy up the linker file.
Add the debug launch file to the file system.

* Add printf-stdarg.c to the GCC build.

* Increase heap size for the GCC build.

* Copy IAR project files into a dedicated IAR build directory.

* Delete the IAR project from its original location now it is in its own build directory.

* Update headers to correct version number.

* Update lexicon.txt.

* Update core_checker.py.

* Change line endings in lexicon.txt.

* Increase the stack size of the task that prints out strings.

* Update linker script to build with older ld versions.

* Add links to the online documentation page for this demo.

* Fix line endings

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>

* Remove linker and project files from header check

Eclipse project files have names .project and .cproject. Python splitext
will treat these as file names and not as extension and as a result, it
is not enough to just add these to ignored extension list. Instead, we
need to add them to ignored files list.

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>

* Remove startup files from header check

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>

Co-authored-by: RichardBarry <richardbarry.c@gmail.com>
Co-authored-by: none <>
Co-authored-by: Gaurav Aggarwal <aggarg@amazon.com>
3 years ago
Mark Tuttle 21f2799392
Always prepare source tree for cbmc proofs (#743)
Co-authored-by: Mark R. Tuttle <mrtuttle@amazon.com>
3 years ago
Joseph Julicher 1102a0df4e
Cortex M3 QEMU demo now builds with -Wall -Wextra (#727)
* Added -Wall -Wextra to the Coretex M3 QEMU demo

* Fixed warnings & errors in Cortex M3 QEMU demo

* Fixed the FULL demo to compile with full errors.

* Update FreeRTOS/Demo/CORTEX_M3_MPS2_QEMU_GCC/init/startup.c

Co-authored-by: Gaurav-Aggarwal-AWS <33462878+aggarg@users.noreply.github.com>

* Applied the ( void ) r0 pattern to prvGetRegisterFromStack

Co-authored-by: Gaurav-Aggarwal-AWS <33462878+aggarg@users.noreply.github.com>
3 years ago
Mark Tuttle eb9caf9d98
Advance litani submodule for CBMC proofs (#725)
Co-authored-by: Mark R. Tuttle <mrtuttle@amazon.com>
3 years ago
Gaurav-Aggarwal-AWS 575acb8a1a
Enable C89 flag for unit tests (#718)
Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
3 years ago
Gaurav Aggarwal 4a465406b4 Fix CI check failure
Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
3 years ago
Gaurav Aggarwal a59838489b Update FreeRTOS-Kernel to main
Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
3 years ago
Gaurav Aggarwal a86178136d Revert "Revert "UT: Add streambuffer test to make PR #391 pass (#690)""
This reverts commit 7340a72dee.
3 years ago
aggarg 74e03ddcfe [AUTO][RELEASE]: Bump submodules per manifest.yml for V202111.00 3 years ago
aggarg ecd1a8f9f1 [AUTO][RELEASE]: Bump file header version to "202111.00" 3 years ago
Gaurav Aggarwal 7340a72dee Revert "UT: Add streambuffer test to make PR #391 pass (#690)"
This reverts commit a32ab34192.
3 years ago
Gaurav Aggarwal dd28c8c376 Update FreeRTOS-Kernel to 10.4.6
Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
3 years ago
tianmc1 223d2d0e21
Updated Safer Interrupt Demo to yield in ISR if higher priority task was woken (#702)
Updated Safer Interrupt Demo to yield in ISR if higher priority task was woken
3 years ago
Seppe Soete de3d043f74
Fixed some typos in the readme in the Posix_GCC demo (#697)
Co-authored-by: Seppe Soete <info@seppesoete.be>
Co-authored-by: Joshua Yan <52796499+yanjos-dev@users.noreply.github.com>
3 years ago
Joshua Yan 0592d1df00
Update FreeRTOS submodule to be on the latest main (#700)
* Update FreeRTOS submodule to be on the latest main

* Update the manifest to match the submodule pointer
3 years ago
alfred gedeon a32ab34192
UT: Add streambuffer test to make PR #391 pass (#690)
UT: Add streambuffer test to make PR #391 pass
3 years ago
Mark Tuttle 409adde459
Advance litani submodule for cbmc proofs to latest version (#687)
Co-authored-by: Mark R. Tuttle <mrtuttle@amazon.com>
3 years ago
tianmc1 8216e02df7
Renamed demo for safer interrupt (#686) 3 years ago
tianmc1 4c779335d6
Added Safe interrupt demo (#685)
Add project to be used for safer interrupts
3 years ago
Mark Tuttle 0390b0fc9b
Add CBMC viewer configuration files (#683)
* Revert cbmc-viewer flags

* Add cbmc-viewer configuration files

* Repair CBMC patch to prvCopyDataToQueue

Authored-by: Mark R. Tuttle <mrtuttle@amazon.com>
4 years ago
Gaurav-Aggarwal-AWS fe6e501488
Update LPCXpresso55S69 SDK to 2.10.0 (#684)
Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
4 years ago
Gaurav-Aggarwal-AWS dfa1023504
Fix the license year in source files (#681)
This commit also fixes some other formatting issues including, tabs and
comments.

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
4 years ago
Gaurav-Aggarwal-AWS 008affa7bf
Add demo project for Polarfire board (#679)
Add the demo project for PolarFire SoC

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
4 years ago
Gaurav-Aggarwal-AWS 5f21507703
Add prints for CI (#670)
* Add prints for CI markers

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
4 years ago
Archit Aggarwal d122d26d7d
Re-add submodules to Community and Partner Contribution repos (#669) 4 years ago
tianmc1 67e5d4e6ec [AUTO][RELEASE]: Bump submodules per manifest.yml for V202107.00 4 years ago
tianmc1 176f1cae02 [AUTO][RELEASE]: Bump file header version to "202107.00" 4 years ago
Archit Aggarwal 69b9155bad
Hygiene changes of old Demo folders and temporary removal of submodules (#666)
* Remove submodules of community and partner contribution repos, and stale directory of FreeRTOS+UDP

* Obselete NTP demo and rename of HTTP server demo folder

* Update manifest.yml
4 years ago
tianmc1 17efff0e34
Updated kernel submodule pointer to kernel V10.4.4 release (#664)
* Updated kernel submodule pointer to kernel V10.4.4 release

* Updated manifest.yml
4 years ago
alfred gedeon ae92d8c6ee
Add uncrustify github workflow (#659)
* Add uncrustify github workflow

* Fix exclusion pattern

* fix find expression

* exclude uncrustify files

* Uncrustify common demo and test files

* exlude white space checking files

* Fix EOL whitespace checker

* Remove whitespaces from EOL

* Fix space at EOL

* Fix find spaces at EOL

Co-authored-by: Archit Aggarwal <architag@amazon.com>
4 years ago
Gaurav-Aggarwal-AWS e2b1d46340
Update the template readme file (#658)
Update instructions to use repositories instead of directories.

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
4 years ago
Gaurav-Aggarwal-AWS 2fedeff332
Update BSP and SDK for HiFive board (#645)
* Update BSP and SDK for HiFive board

This commit also adds demo start and success/failure output messages.
4 years ago
alfred gedeon e38c279b22
Fix: qemu mps2 demo bug (#649) 4 years ago
alfred gedeon 693a9994b0
Add static to a variable in Qemu mps2 demo (#646) 4 years ago
alfred gedeon d663850e1b
Demo: Exit on Error with Qemu MPS2 Full Demo (#642) 4 years ago
alfred gedeon 141070a2eb
Demo: Run uncrustify on quemu mps2 demo (#643) 4 years ago
Graham Sanderson 25e73f2e75
RP2040 Demo (#618)
* Fix code to match comment; idle prioriry task should not block to yield, as then it will hardly run at all (bug affects SMP tests)

* Add RP2040 Demo - can be used for 'main' or 'smp' branch of FreeRTOS_Kernel

* move to latest main/ of FreeRTOS-Kernel

* move RP2040 demos into Community-Supported

* Update whitespace issue

Co-authored-by: Gaurav-Aggarwal-AWS <33462878+aggarg@users.noreply.github.com>

* Add SMP to lexicon

Co-authored-by: Gaurav-Aggarwal-AWS <33462878+aggarg@users.noreply.github.com>
4 years ago
Gaurav-Aggarwal-AWS bec88bfe41
Update the size of privileged data section (#639)
This is needed because FreeRTOS heap is now placed in the privileged
data section.

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
4 years ago
Shivangi d1c84a324a
Template Project for existing FreeRTOS port (#637)
* Partner demo changes

* Adding template folder

* readme addition to partner supported folder

* updating license

Co-authored-by: Gaurav-Aggarwal-AWS <33462878+aggarg@users.noreply.github.com>
4 years ago
Alfred Gedeon a14f136596 Doc: Add new lines 4 years ago
Alfred Gedeon 449ad960e2 Doc: Improve debugging doc with Qemu demo 4 years ago
thomas-coding e66c4a93ee
Fix data copy address error (#632)
* Fix data copy address error

Co-authored-by: Jinping Wu <jinping.wu@verisilicon.com>
4 years ago
victorfdezc 4c4a0ab755
Fix Bug from Issue #565 (#629)
Co-authored-by: Victor <vfernandez@maccorobotics.com>
Co-authored-by: Paul Bartell <pbartell@amazon.com>
Co-authored-by: Shivangi <66447522+gshvang@users.noreply.github.com>
4 years ago
Archit Gupta 5e596c2e32
Add new submodules for port demo contribution (#628)
Adds two new submodules for community and partner supported ports demos.
4 years ago
Alfred Gedeon 6881522370 Demo: fix trace vs coverage options, add option no trace on enter 4 years ago
Dan Good b6624fa44d
Remove or rework assumptions in queue proofs (#603)
This commit is paired with another to queue.c in the kernel.  To
accomodate changes in newer versions of CBMC, the
--pointer-overflow-check is removed.
4 years ago
Alfred Gedeon 9904e571f9 Remove extra Makefile print 4 years ago
Alfred Gedeon b0e693e88b Demo: exit 1 on error exit 2 on Ctrl_C 4 years ago
Alfred Gedeon e84fc19966 Make full demo exit on error 4 years ago
Dan Good f37753da06
Update unit tests to match changes in queue.c (#614) 4 years ago
Alfred Gedeon 0c0333985b Run unctustify, fix some Readme wording 4 years ago
Alfred Gedeon a2029c781c Enable profiling for the linux port 4 years ago
alfred gedeon 5136a30399
Test: Mask unit test warning (#592)
* Test: Mask unit test warning

* Fix Unit Test Bug

* Unit Test: Add setters and getters for xMaskAssertAndAbort

* Fix Warning

* Update Makefile
4 years ago
alfred gedeon 3c4049c8f7
Update kernel HEAD (#611) 4 years ago
Joseph Julicher 5d3ec8031f
deprecating the mcf5235 demos (#609) 4 years ago
Carl Lundin 4ad4c7679e
Clean up commits. (#596) 4 years ago
Aniruddha Kanhere 1bc759d413
Aws only files spell check (#593)
* Added spell check

* All words

* Add a missing word

* Fix header checks

* Fix header checks v1

* Fix header check v2

* Updated freertos link in header

* Fixed afr link in the header

* Fix last of header checks

* Update the spell check script to check amazon licensed files only

* Fixed paths and added comments

* Try with modified repo

* Add inplace substitute option to sed

* Use official repo as the spell checker source

* Add vendor file to the ignored list

Co-authored-by: root <root@ip-172-31-5-28.us-west-2.compute.internal>
4 years ago
Archit Aggarwal 971a6e1d22
Merge FreeRTOS 202104.00 to main (#585) 4 years ago
RichardBarry 9f10725bee
Minor update to the UART write function in the IAR/QEMU/MPS2 demo (#535)
* Minor update to the UART write function in the IAR/QEMU/MPS2 demo project.  Now the function checks to ensure there is space in the Tx buffer before writing to the buffer - although this does not appear to be necessary in QEMU it is more correct.

* Update main.c

Co-authored-by: Aniruddha Kanhere <60444055+AniruddhaKanhere@users.noreply.github.com>
4 years ago
Paul Bartell 7a695784bc
Add queue.c CMock unit test (#552)
* Disregard coverage data without a function_name field set

* Fix calling make on subdirectories

* Undefine FORTIFY_SOURCE when running without ENABLE_SANITIZERS

* Add queue and semaphore unit tests

* Update FreeRTOS-Kernel submodule revision
4 years ago
RichardBarry 53af0ec62e
Revert "Add test for timer start delayed past expiration (#557)" (#566)
This reverts commit 9c91199016.
4 years ago
Jeff Tenney 9c91199016
Add test for timer start delayed past expiration (#557)
Co-authored-by: Dan Good <49254594+dan4thewin@users.noreply.github.com>
Co-authored-by: RichardBarry <3073890+RichardBarry@users.noreply.github.com>
4 years ago
Archit Aggarwal 999e81e721
Bump submodules of Kernel and AWS libraries (#564) 4 years ago
Archit Aggarwal cd75d5607f
Relocate History.txt and fix an typo (#558) 4 years ago
Jeff Tenney f2bcfb3866
Add test for backlogged auto-reload timer (#553)
* Add test for backlogged auto-reset timer

Must call vTimerDemoIncludeBacklogTests() to activate.

* Fix little style issues

- Update to new header
- Add parentheses (style)
- Remove trailing space accidentally introduced

* Don't verify full clearing of backlog

The timer task should be free to process the stop request without a
specific requirement to work through the backlog of callbacks for the
stopped timer.  The timer task should be allowed to cancel the entire
backlog, part of it, or none of it.  In other words, once the
application sends the stop request, it should not depend on receiving
any more callbacks, even backlogged ones.

The only requirement here is that the timer stop as requested.

Co-authored-by: Joseph Julicher <jjulicher@mac.com>
Co-authored-by: Cobus van Eeden <35851496+cobusve@users.noreply.github.com>
4 years ago
Tim Newsome c280f26c1b
Small RISC-V spike demo improvements (#554)
* Put XLEN into .o files.

Makes it easier to work on voth RV32 and RV64 binaries side-by-side.

* Let the debugger disable HTIF use.

* Makefile now links the binary at BASE_ADDRESS

I need this so I can easily generate the appropriate binaries for
riscv-tests/debug. Unfortunately there doesn't seem to be any good
mechanism to externally define values for lds files, so I'm running it
through the C preprocessor.

Co-authored-by: Joseph Julicher <jjulicher@mac.com>
4 years ago
Paul Bartell 595b05bce8 Fix spelling in stream_buffer_utest.c 4 years ago
Paul Bartell 58b1f9b27d Fix spelling in message_buffer_utest.c 4 years ago
Gaurav Aggarwal 308739464b Update test comments
Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
(cherry picked from commit 44c66f1df2)
4 years ago
Paul Bartell 5c7f33fbfb Fix typo in message_buffer_utest.c 4 years ago
Paul Bartell c82e6caa34 Remove imporper TEST_PROTECT usage from message_buffer_utest.c.
The way TEST_PROTECT is currently used in this test causes an infinite loop if the expected configASSERT failure does not occur.
4 years ago
Paul Bartell 68cb6142ae Remove improper TEST_PROTECT usage which results in an infinite loop when an expected configASSERT does not occur.
Replace TEST_PROTECT usage with CException library.

Fix test_xStreamBufferSend_zero_bytes test case logic (no assertion occurs in this case).
4 years ago
Carl Lundin d0d633a524
Reintroduce quarantined CBMC test (#516)
This CBMC test would go over the memory limit of most hosts, causing the
kernel to kill the process. With larger memory capabilities, this can be
re-enabled.
4 years ago
Tim Newsome 3fee3ac61f
Add RISC-V demo for the spike simulator. (#532)
* Add RISC-V demo for the spike simulator.

* Figuring out what the header checker wants.

* Fix more headers.

* Ignore htif.c and htif.h for header checks.

These files are already stamped with BSD-3-Clause, which I'm not allowed
to remove. There are numerous other files with the same license in
FreeRTOS, so I assume this is fine.

* Use proxy syscalls for RV32.

Looks like spike won't be changed to make htif character writes work
propery for RV32.

This is now an even closer copy of the version in opensbi, which is
arguably strictly better.

* Support RV64 builds to use with spike.

OpenOCD does not currently support debugging 64-bit FreeRTOS, but now
that I have a target to test hopefully that will be remedied shortly.

* Tweak rv32 instructions.

This way you can have separate cross-tools installations that can
coexist side by side.

Co-authored-by: Joseph Julicher <jjulicher@mac.com>
4 years ago
Carl Lundin aaece95529
Update Tasks.c CBMC Proofs to Latest Code (#547)
* Fix Tasks.c patch, line numbers were out of sync and patching was
broken.
* Add assumption to TaskCreate proof that a task's priority is less than
the configured max.

With the introduction of
9efe10b805
an assertion is added to ensure a new task's priority is less than the
confirmed max. The CBMC proof for TaskCreate needs to include this assumption
in order to not assert and fail. Since this is now enforced in the code
we can add an assumption to the proof that a task must be created with a
priority smaller than the configured max.
4 years ago
Paul Bartell 2e084538a8 Re-enable list, message_buffer, and stream_buffers unit tests 4 years ago
Ming Yue fb0c517148
Add event_groups.c Unit Test (#536)
* Added event_groups.c Unit Test.

* Formatted and more comments.

* Formatted

* Split some test cases and add comment and coverage tag.

* Update test cases.

* Remove xEventGroupDelete Invalid Input test case, since the implementation does not handle this.
4 years ago
Paul Bartell 19271ddc8d Work around gcov json output bug
When gcov outputs into it's intermediate json format, sometimes it marks blocks as unexecuted but also sets an execution count != 0. In this case, the "count" field is correct, but the "unexecuted_block" field is incorrect.

When outputting lcov formatted coverage data in filtercov.py, only output a branch coverage data lines (BRDA) with a "-" for the "taken" field when both count==0 and unexecuted_block==true in the input gcov json intermediate file.
4 years ago
Ravishankar Bhagavandas e39c34ba7e
Adding unit tests for stream buffer and message buffer (#528)
* Initial commit

* Add more stream buffer tests

* Adding message buffer tests

* Adding tests to cover config assert branches

Co-authored-by: alfred gedeon <28123637+alfred2g@users.noreply.github.com>
4 years ago
Paul Bartell 7020db5403
Force a branch in the definition of configASSERT in the default CMock FreeRTOSConfig.h file (#538)
* Force a branch in the definition of configASSERT in the default CMock FreeRTOSConfig.h file
* Run uncrustify on FreeRTOSConfig.h
4 years ago
Paul Bartell 92aca6e910
Collect initial coverage data so that untagged functions are still included in the lcov report (#537)
Collect initial coverage data with lcov --initial and add this to coverage data to the combined coverage from each test binary.
This ensures that all functions in the target file(s) are included in coverage statistics, even if those functions are not tagged in a _utest.c file.
Note: Functions which are excluded by the preprocessor will not have initial coverage data generated for them.
4 years ago
Paul Bartell 3a48781a03 Skip filtering of coverage if no @coverage tags are found in a _utest.c file 4 years ago
Cobus van Eeden 26478d721f
Add message buffer space available coherency test (#515)
* Introduce tasks that test the coherency of the reported space available in a message buffer from two separate tasks.  Designed to highlight the issue reported in https://github.com/FreeRTOS/FreeRTOS-Kernel/pull/264
Introduce configRUN_ADDITIONAL_TESTS which must be set to 1 to run the new tests.  That is because the new tests got added to an existing standard demo file and smaller platforms may not have the resources to run them.
Set configRUN_ADDITIONAL_TESTS to 1 in the MSVC and IAR/QEMU project so both project run the new test.
Also add missing 'volatile' qualifier in the IAR/QEMU project on some register accesses.

* Update xAreMessageBufferTasksStillRunning() to report errors from the new message buffer size coherency tests.

Co-authored-by: RichardBarry <ribarry@amazon.com>
Co-authored-by: RichardBarry <3073890+RichardBarry@users.noreply.github.com>
4 years ago
Paul Bartell f39765be22
Kernel UT: Enable preprocessor when running cflow in callgraph.py (#530)
* Add INCLUDE_DIR to the commandline call to cflow in callgraph.py

This removes dependent functions from the list when they are disabled in the FreeRTOS config.

* Add argparse to callgraph.py so that no output file is created on failure.
4 years ago
newbs 270474aed4
Update serial.c for latest microchip DFP (1.6.88 from 1.1.40) (#517)
Update line 58 to make compatible with Microchip DFP 1.6.88


Co-authored-by: Joshua Yan <52796499+yanjos-dev@users.noreply.github.com>
4 years ago
newbs ee1940bdb9
update configurations.xml to use the latest Microchip AVR DFP 1.6.88 (#518) 4 years ago
Paul Bartell 6257160ee6
Make the address sanitizer optional for CMock kernel unit tests (#526)
* Make the address sanitizer optional

The address sanitizer is now disabled by default for CMock tests because it introduces additional branches into the compiled code. When make is run with the ENABLE_SANITIZER=1 argument, the address sanitizer is enabled and coverage data may not be accurate.

* Change from ifdef to ifeq ($(ENABLE_SANITIZER),1) to address PR comment
4 years ago
alfred gedeon cbc96ff596
Demo: remove commented code, and unused macros (#525) 4 years ago
Paul Bartell d7e5f40885
Clean up CMock makefiles and add coverage filtering (#523)
* Cleanup Makefiles

* Add lcovrc configuration file

* Add CMock test build directory to .gitignore

* Add callgraph.py and filtercov.py scripts

* Cleanup list Makefile and update list_utest.c with coverage tags

* Add information about coverage filtering and running single test cases

* Remove -fprofile-exclude-files for compatibility with older versions of gcc.
Fix line endings (change to unix style)

* Lint callgraph.py and filtercov.py. Print and error when no target functions are defined.

* Indent with spaces when possible

* Replace tabs with spaces and enable .RECIPEPREFIX

* Add fake_port.h and related portmacro.h changes

* Fix list makefile when bin directory is not available

* Clean up grouped rules

* Update makesfile.. Add "two_tests" example dir

* Fix memory checker error

* Move common makefile items to subdir.mk and testdir.mk includes

* Update core_checker.py exclusions

* Remove line from portmacro.h that doesn't match core_checker.py
4 years ago
Nathan Chong 5309372245
Minor VeriFast proof changes to match V10.4.3 (#519)
* Minor changes for V10.4.3

* Update license
4 years ago
Carl Lundin 47052bc054
Correct FreeRTOS.org link in main_full.c for: (#510)
* FreeRTOS/Demo/CORTEX_M3_MPS2_QEMU_GCC/main_full.c
* FreeRTOS/Demo/Posix_GCC/main_full.c
4 years ago
RichardBarry 2e4485a0d6
Create Cortex-M3 QEMU project for testing with the IAR compiler (#503)
* Initial version of the CORTEX_MPS2_QEMU_IAR - needs tidying up and so far only contains the comprehensive demo.

* Update the comment block at the top of the source files to match the latest official release.

* Split out the main_full() demo from main().  Still need to add in the main_blinky() demo.

* Add the blinky demo option.

* Tidy up the QEMU/IAR project.

* Configure the QEMU IAR project to only create the blinky demo.

* Delete readme.txt which was in the wrong directory.

* Fix errors in the comments at the top of the file as highlighted by the auto checks.

Co-authored-by: alfred gedeon <28123637+alfred2g@users.noreply.github.com>
4 years ago
Paul Bartell 570ae6bb52
Add unity memory extension, fake_assert, and enable -fsanitize=address (#506)
* Enable libunitymemory extension to track dynamic memory usage during unit tests
* Use UnityMemory in timers_utest.c
* Add fake_assert.h to allow mocking of configASSERT calls
* Add .editorconfig to make github show indentation correctly
* Add unity memory and fake_assert to queue_utest.c
* Add -fsanitize=address CFLAG when running unit tests
* Define mtCOVERAGE_TEST_MARKER macro to include mtCOVERAGE_TEST_MARKER lines in coverage figures
* Add additional memory check / protection CFLAGS for CMock tests
* Fix out of bounds array access in list_utest.c
* Move the fake_assert.h include to the top of FreeRTOSConfig.h
4 years ago
alfred gedeon c4d8002634
Generate JUnit style report for kernel unit test (#504)
* Add JUnit test report to ut
* Add JUnit test report with make run
* Fix gcc path
4 years ago
David Chalco 63aec3607d
Unit Test/timer[0] (#502)
* define CC/LD iff undef. Add timers suite

* timers_utest[0]
4 years ago
Carl Lundin f6dff3fea3
Add Litani to run CBMC proofs (#501)
Update to out of source makefile build and add run-cbmc-proofs.py

CBMC proofs can now be run with Litani with the command
"./run-cbmc-proofs.py"

Based on commits:
* 1646301 - Ignore CBMC proof failures, fail the build later (4 months ago) <Kareem Khazem>
* 7e8c91a - Fix Makefile prerequisite symbol for CBMC proofs (4 months ago) <Kareem Khazem>
* bee04be - Enable CBMC proofs to run in CI (4 months ago) <Kareem Khazem>

Found in https://github.com/FreeRTOS/FreeRTOS-Plus-TCP
4 years ago
alfred gedeon cd92c42b52
Kernel list.c Unit Test (#497)
* Test: List.c Unit Test

* Test: test list.h macros

* Test: Fix UT bug

* Remove unecessary statement from Makefile

* Update list_utest.c

* Update list_utest.c

Co-authored-by: Cobus van Eeden <35851496+cobusve@users.noreply.github.com>
4 years ago
alfred gedeon c4839ecda3
Comment: Remove tcp echo client from the comments (#500) 4 years ago
alfred gedeon 9b9011917a
Add Kernel Unit Tests Environment (#494)
* Implement Kernel Unit Test Framework with CMock

* Add Readme.md to unit tests

* Add Posix build checker to git actions

* Add Ruby requirement

* Fix file header checks

* Fix header checks

* Add color output to test runs
4 years ago
alfred gedeon 47d37354bc
Add Posix build checker to git actions (#489)
* Add Posix build checker to git actions

* fix checker path

* Fix script, checkout recursively

* fix build check script return value

* clone submodules as well with posix checker

* Add quotes to true for submodules

* Fix Submodules

* Remove pcap dependency from Makefile

* install libpcap for build check

* Add networking build to posix

* Separate network build from normal build

* add libpcap after building normal posix
4 years ago
alfred gedeon 36fd2c8d8c
Update Kernel submodule (#488) 4 years ago
Cobus van Eeden 3781cd9224
Add build dependency (#486) 4 years ago
Cobus van Eeden 68a500bca3
Initial vscode debug configuration (#485) 4 years ago
alfred gedeon 1c99d9f200
Prevent optimization in reset handler for QEMU MPS2 (#484) 4 years ago
Cobus van Eeden 28548e06fe
Update Readme.md 4 years ago
Alfred Gedeon 1f9389c7c4 Fix: Qemu MPS2 Demo build failure 4 years ago
alfred gedeon 208b260f98
Add Full Demo to Qemu mps2 (#481)
* Add Full Demo to Qemu with MPS2

* Increase full demo heap memory

* Add Full Demo to Qemu MPS2

* Fix headers

* Fix header FreeRTOS version

* Remove commented line

* Remove commented line

* Fix header checker version, and corresponding files

* Fix checker version number requirements
4 years ago
Joseph Julicher da9b9a800d [AUTO][RELEASE]: Bump file header version to "202012.00" 4 years ago
Joseph Julicher 45ba920ad0 [AUTO][RELEASE]: Bump submodules per manifest.yml for V202012.00 4 years ago
Joseph Julicher 2e2ba99a74 [AUTO][RELEASE]: Bump file header version to "202012.00" 4 years ago
Joseph Julicher 66b75ba527
History and manifest updates (#480) 4 years ago
Carl Lundin b035e0321f
Re-add missing license files caused by PR #471 and fix patches (#477)
* Re-add missing license files caused by PR #471.
* Fix proof patch.
4 years ago
Cobus van Eeden 1caa60d382
Move kernel submodule to latest (#474) 4 years ago
Carl Lundin cf39a90d6d
Fix CBMC patches. (#471)
* Fix CBMC patches.
4 years ago
Gaurav-Aggarwal-AWS adbc27f11d
Fix build failure in STM32 Discovery MPU Projects (#449)
* Fix build failure in STM32 Discovery MPU Projects

Privileged data region size needs to be increased because heap is now
placed in this region.

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
4 years ago
alfred gedeon 41237e01d0
Split networking from posix and qemu mps2 demos (#455)
Split networking from posix and qemu mps2 demos
4 years ago
RichardBarry a503a3a7a0
Add links to the MQTT agent in the non-agent mqtt demos (#470)
Add URL file links to the MQTT agent documentation page.
Add comment blocks into each demo that also point toward the MQTT agent documentation to ensure users are aware the agent method exists.
4 years ago
Ming Yue 639c08ce2a
Remove uIP TCP/IP stack and related demos (#467)
* Remove uIP TCP/IP stack.

* Remove demos that uses uIP.

* Update Demo ReadMe.txt files.
4 years ago
Pascal d264c1f153
Moved definition of ucBufferStorage out of if macro. (#459)
* Moved definition of ucBufferStorage out of if macro. If ucBufferStorage is only defined when configSUPPORT_STATIC_ALLOCATION ist set to 1, compilation will fail in cases where it is set to 0 or not defined (because it defaults to 0, as described in the documenation).
4 years ago
Ming Yue 9d937aa0ab
Remove duplicate WinBase.h and Windows.h. (#458) 4 years ago
Cobus van Eeden c6f4284b76
Update kernel submodule pointer to version 47338393f (#456)
* Update kernel submodule pointer to version 47338393f

* Fix patches.

Co-authored-by: Carl Lundin <lundinc@amazon.com>
4 years ago
alfred gedeon 0698f83c3b
Update Kernel head (#444) 4 years ago
alfred gedeon b7b9ccb099
Qemu mps2 networking (#439)
* Demo: Add Support for netwroking in Qemu for MPS2 AN385
* Add tcp echo client
* Add steps to Readme
4 years ago
Katsuhiro Suzuki f06330768f
Add Makefile project for RISC-V QEMU virtpc (#266)
* Add Makefile project for RISC-V QEMU virtpc

This patch adds simple demo directory for QEMU virtpc machine.
A demo just prints Tx/Rx message of queue to serial port, use no
other hardware and use only primary core (currently hart0).
Other cores are simply going to wfi state and execute nothing else.

Example command is:
  qemu-system-riscv32 -nographic -machine virt -net none \
    -chardev stdio,id=con,mux=on -serial chardev:con \
    -mon chardev=con,mode=readline -bios none \
    -kernel demo.elf -smp cpus=2 -s

* Fix copyright and URLS of FreeRTOS

* Fix Makefile

* Add Readme.md

* Separate blinky demo from main code

Co-authored-by: alfred gedeon <alfred2g@hotmail.com>
Co-authored-by: Cobus van Eeden <35851496+cobusve@users.noreply.github.com>
Co-authored-by: Carl Lundin <53273776+lundinc2@users.noreply.github.com>
4 years ago
David Chalco de26f7f2f4 [AUTO][RELEASE]: Bump kernel pointer "V10.4.2" 4 years ago
David Chalco 07f3cbafee [AUTO][RELEASE]: Bump file header version to "202011.00" 4 years ago
David Chalco 9939374379
Update History.txt for 202011.00 (#388) 4 years ago
Carl Lundin 21bbf3ea46
Move kernel submodule forward. (#377)
Co-authored-by: Cobus van Eeden <35851496+cobusve@users.noreply.github.com>
4 years ago
filipgeorge ca9dcdad7f
Changed project AVR_Dx_IAR to use 'heap_1.c'. (#365)
* Changed project AVR_Dx_IAR to use 'heap_1.c'.
* AVR_Dx_IAR project cleanup.
* AVR_ATMega4809_IAR project cleanup.
* Added newline at end of .gitignore file for AVR_Dx_IAR and AVR_ATMega0_IAR projects.
4 years ago
Abhishek Srivastava ac1578d871
Updated README in FreeRTOS/FreeRTOS (#317) 4 years ago
TakayukiMatsuo c44794cd11
Update wolfSSL to the latest version(v.4.5.0) (#303)
* deleted old version wolfSSL before updating

* updated wolfSSL to the latest version(v4.4.0)

* updated wolfSSL to the latest version(v4.4.0)

* added macros for timing resistance

* Add wolfSSL-FIPS-Ready to Demo and Source

* Add wolfSSL-FIPS-Ready to Demo and Source

* Update README_wolfSSL_FIPS_Ready.md

* Remove unused files

* Update to wolfSSL-4.5.0-FIPS-Ready

* Increase FIPS version number for the default

* Update wolfSSL to the latest version(v.4.5.0)

* Fix version number

* Fix comments from github

Co-authored-by: RichardBarry <3073890+RichardBarry@users.noreply.github.com>
Co-authored-by: Ming Yue <mingyue86010@gmail.com>
Co-authored-by: Aniruddha Kanhere <60444055+AniruddhaKanhere@users.noreply.github.com>
Co-authored-by: Cobus van Eeden <35851496+cobusve@users.noreply.github.com>
Co-authored-by: Alfred Gedeon <alfred2g@hotmail.com>
4 years ago
alfred gedeon 8ca9f072fa
Blinky Demo for Cortex M3 MPS2 on Qemu (#345) 4 years ago
Oscar Michael Abrina 10842c9189
Relocate logging sources under FreeRTOS-Plus/Source/Logging (#354)
As suggested, because logging_stack.h and logging_levels.h are used not only by demos but also by platform-specific transport code, it would make sense to move FreeRTOS-Plus/Demos/Common/Logging to FreeRTOS-Plus/Source/Logging. The same is done for demo_logging.c and demo_logging.h, which are duplicated by several demos. Win32.vcxproj project files are also updated to follow suite.
4 years ago
RichardBarry 56d44da270
Exercise xTaskDelayUntil() in demos and tests (#335)
* Update AbortDelay.c so it uses both vTaskDelayUntil() and xTaskDelayUntil().
Update TaskNotifyArray.c to prevent false positive test failures that appear to be caused by unwarranted integer promotion.
Add use of xTaskDelayUntil() to blocktim.c
4 years ago
RichardBarry e07d681cc0
Add tests for the length caps within xStreamBufferSend(). (#319) 4 years ago
Moe Ghasemi 2f51006020
Fix issue in CORTEX_LM3S811_GCC Demo linkerscipt (#102)
The .text section is listed as *(.text) and results in build
error because there are some .text* sections that are automatically put
into flash later by linker and their LMA overlaps
with .data

Co-authored-by: Ming Yue <mingyue86010@gmail.com>
4 years ago
Gaurav-Aggarwal-AWS e8fefe0ac9
Fix build failure in CORTEX_MPU_LPC54018_MCUXpresso project (#328)
Add missing power libraries. Also increase the size of the privileged
data section as heap is now placed in the privileged data section.

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
4 years ago
Nathan Chong bc54c6bc10
Syntactic proof changes to track 10.4.1 changes (#322)
All changes restricted to comments/formatting.
4 years ago
Aniruddha Kanhere 8979b3817b
Remove CBMC proofs of TCP source code (#325)
* Add CMock back for the integration tests.

* Removed the CBMC proofs for TCP

* Add the windows files to allow the CBMC proofs to run
4 years ago
RichardBarry b8993fbd69
Update ParTest.c
Add not to change the LED output number from 10 to 47 when running the Zynq demo on the MicroZed hardware.
5 years ago
stbnrivas 7c3c168cd4
fix demo picmz-mplab (#89)
Co-authored-by: Cobus van Eeden <35851496+cobusve@users.noreply.github.com>
Co-authored-by: Aniruddha Kanhere <60444055+AniruddhaKanhere@users.noreply.github.com>
5 years ago
Spruce ab70c1ce33
Add 20Mhz support by overwriting MCLKCTRLB default register value 0x11 by 0 (#295) 5 years ago
David Chalco 7bcc5b48b1
Move ./scripts --> FreeRTOS/Test/CMock/scripts (#298) 5 years ago
David Chalco 190c9e780d
Inititial stub for cmock tests (#297) 5 years ago
Gaurav-Aggarwal-AWS de502afcb2
Fix rendezvous test failure in EventGroupsDemo (#294)
The rendezvous test in EventGroupsDemo assumed that one tick is not
enough for rendezvous to complete. Turns out that it is not true on a
system with 1ms tick and rendezvous does get complete within one tick.
This commit removes the test with one tick assumption.

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
5 years ago
NoMaY (a user of Japan.RenesasRulz.com) dea347fb9a
Add Renesas RX72N Envision Kit RTOS Demo using Renesas RXv3 port layer (#167)
* Add Renesas RX72N Envision Kit RTOS Demo using Renesas RXv3 port layer

* Refactor the workaround which makes CC-RX linker optimization working better

To be robust for future updates of Renesas RX SmartConfigurator until the cause of the problem is fixed by Renesas.

* Fix vApplicationMallocFailedHook()'s argument type generated by e2 studio.

No changes are caused in the MOT and SREC files which are built.

* Merge update of submodule (submodule's commit id)

Changes are caused in the MOT and SREC files which are built for Renesas RX72N Envision Kit RTOS Demo.
Theses RTOS Demo programs work after changes.

* Fix: Add checking DPFPU register in RegTest inline asm functions in main_full.c

* Fix and sync kernel pointer (submodule's commit id) to the same as 'upstream/master'

* Revert "Fix and sync kernel pointer (submodule's commit id) to the same as 'upstream/master'"

This reverts commit d684f749bc.

* Revert "Merge remote-tracking branch 'upstream/master' into rx700v3dpfpu"

This reverts commit 3a44473b4e, reversing
changes made to 0f4f024fe2.

* Merge remote-tracking branch 'upstream/master' into rx700v3dpfpu

* Fix and sync kernel pointer (submodule's commit id) to the same as 'upstream/master'

* Test: Fix unnecessary update of SiFive_HiFive1_RTOS_demo.url.

* Fix? unnecessary update of SiFive_HiFive1_RTOS_demo.url.

* Fix unnecessary update of SiFive_HiFive1_RTOS_demo.url.
5 years ago
Gaurav-Aggarwal-AWS 5cc6512986
Fix warnings in CORTEX_M4F_STM32F407ZG-SK project (#287)
The existing startup code was generating some warnings of the form
"Label 'xxxxx' is defined pubweak in a section implicitly declared
root". This change replaces the startup file with the one generated from
latest STM32CubeMX to fix the above warnings.

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
5 years ago
NoMaY (a user of Japan.RenesasRulz.com) 80e23dde57
Upgrade GCC project files for e2 studio v7.8.0 in Demo/RX600_RX64M_RSK_GCC_e2studio folder (#263)
Co-authored-by: Ming Yue <mingyue86010@gmail.com>
5 years ago
NoMaY (a user of Japan.RenesasRulz.com) 886e29e2bd
Upgrade GCC project files for e2 studio v7.8.0 in Demo/RX100_RX113-RSK_GCC_e2studio_IAR folder (#258)
Co-authored-by: Ming Yue <mingyue86010@gmail.com>
5 years ago
NoMaY (a user of Japan.RenesasRulz.com) 723dd35cad
Upgrade_GCC_project_for_e2v780_in_RX700_RX71M_RSK_GCC_e2studio_IAR (#257)
Co-authored-by: Ming Yue <mingyue86010@gmail.com>
5 years ago
NoMaY (a user of Japan.RenesasRulz.com) cfc6672336
Upgrade GCC project files for e2 studio v7.8.0 in Demo/RX200_RX231-RSK_GCC_e2studio_IAR folder (#255)
Co-authored-by: Ming Yue <mingyue86010@gmail.com>
5 years ago
NoMaY (a user of Japan.RenesasRulz.com) ec7694384f
Maintenance: Make Demo/RX600_RX64M_RSK_Renesas_e2studio RTOS demo project better (#231)
Co-authored-by: Ming Yue <mingyue86010@gmail.com>
5 years ago
David Chalco 080f975c7b
version string update to 10.4.1 -- irrespective of file extension (#284)
Update the remaining files that have reference to the version number in them.
5 years ago
David Chalco 0573fea3ee
Update (.s, .S) kernel version numbers to 10.4.1 (#283)
* version bump to 10.4.1
* update .s file version numbers
* Update FreeRTOS/History.txt
5 years ago
Cobus van Eeden d5862dbe01
Sync back V10.4.1 (#282)
* Move Kernel submodule pointer to 10.4.1
* Update version number to V10.4.1 (#281)
5 years ago
NoMaY (a user of Japan.RenesasRulz.com) 4ca66b336a
Fix: Demo/RX200_RX231-RSK_GCC_e2studio_IAR RTOS demo project IAR build error (#239)
Co-authored-by: Ming Yue <mingyue86010@gmail.com>
5 years ago
NoMaY (a user of Japan.RenesasRulz.com) fb7881cfeb
Build: Fix Demo/RX100-RSK_Renesas_e2studio RTOS demo project build error (#228)
* Fix: Demo/RX100-RSK_Renesas_e2studio RTOS demo project build error

* Update project files for e2 studio v4.0.2.008 (the same as Demo/RX100_RX113-RSK_Renesas_e2studio RTOS demo project)

Co-authored-by: Ming Yue <mingyue86010@gmail.com>
5 years ago
Carl Lundin 616b2d22d2
Sync kernel history.txt to this repo. (#275) 5 years ago
Cobus van Eeden d977f21940 Update kernel pointer 5 years ago
Cobus van Eeden 3747710159
Move released kernel pointer to the one where ASM files have the updated version number (#270) 5 years ago
Cobus van Eeden 20842a58fa Update submodule pointer for Kernel to 10.4.0 version 5 years ago
David Chalco 89d475e9b1
Update Version number to 10.4.0 (#237) 5 years ago
Cobus van Eeden 759fe85853
Tracelyzer version updates (#261)
* Update Tracelyzer version numbers
5 years ago
Cobus van Eeden 989924f6cb
Adding some url files and moving the kernel pointer along (#260)
* Added some URL files and move submodule pointer along
* Add SiFive_HiFive1_RTOS_demo.url
5 years ago
alfred gedeon 0f5e3aa88a
Fix: Typo in posix networking demo (#259)
Co-authored-by: Alfred Gedeon <gedeonag@amazon.com>
5 years ago
RichardBarry 1a55c8779f
Update main.c
Remove unused variable from the MingW demo's main.c file.
5 years ago
Cobus van Eeden d0cff20709
Added some URL files and move submodule pointer along (#254) 5 years ago
yngki 1d2e0ebee2
Update History.txt (#253) 5 years ago
Cobus van Eeden 4c6c4d2e84 Update kernel pointer to include Synopsis PR #110 5 years ago
Cobus van Eeden f78ee3536a Reset error message on next check and update interval to 10s 5 years ago
Cobus van Eeden 04cf45fdbc Increase tracelyzer parameters to accomodate full demo scope 5 years ago
Cobus van Eeden 34d9175ce0 Sync main_full demo to match the Windows Simulator test list 5 years ago
Cobus van Eeden 0d571fb2f1 Implement dumping the Tracelyzer trace when pressing enter (#252)
* Test: Press Enter to Trace dump on posix demo
* Test: allow tracedump multiple times
* Fix: main full demo
5 years ago
Cobus van Eeden 9b8258504c Added -D_WINDOWS_ which expands the timing margin on the Linux port full demo, and turned optimization off for better debugging 5 years ago
Cobus van Eeden c0df730de7 Various small formatting and wording changes in Linux demo 5 years ago
Ming Yue 8ada8156e0
Fix the Posix port demo libpcap lib linking order issue in staic linking for WSL. (#251) 5 years ago
Cobus van Eeden 27d341e5ab Fixed spelling in main.c 5 years ago
alfred gedeon 939daef2f2
Fix: Make demo selector more user friendly (#249)
Co-authored-by: Alfred Gedeon <gedeonag@amazon.com>
5 years ago
Cobus van Eeden 21644934d7 Removed reference to kbhit() which is no longer in the code 5 years ago
Cobus van Eeden bcc41c97fd Fix references to Linux instead of Windows 5 years ago
Cobus van Eeden 013b3d4b23 Move Kernel source pointer forward to latest 5 years ago
RichardBarry 00891e0c88
Remove unused variable from TaskNotifyArray.c that was causing a compiler warning. (#233) 5 years ago
alfred gedeon 6b502b5dd3
Build: replace scons with makefile (#235)
* Build: transform scons into Makefile
* Build: add Makefile dependencies
* Build: remove some tabs from Makefile
* Build: Make builds out of source, move wait for event to kernel port
* Test: update the full test to print status messages
* Build: replace lpthread with pthread

Co-authored-by: Alfred Gedeon <gedeonag@amazon.com>
5 years ago
NoMaY (a user of Japan.RenesasRulz.com) 6c86457bb7
Fix: Demo/RX100_RX113-RSK_Renesas_e2studio RTOS demo project build error (#224)
Co-authored-by: Cobus van Eeden <35851496+cobusve@users.noreply.github.com>
5 years ago
Ming Yue a72f040861
Fix the path and command in demo projects to make it compatiable to Linux and MacOS (#220)
* Update the the path in .launch file to make it compatiable with MacOS/Linux.

* Remove .exe from command and use slash in file path

Co-authored-by: Cobus van Eeden <35851496+cobusve@users.noreply.github.com>
5 years ago
Ravishankar Bhagavandas 584517d467
cbmc: Add patch to remove overflow assert (#232) 5 years ago
Nathan Chong 669084ee8f
List proofs and signoff (#194) 5 years ago
alfred gedeon 638262fab1
Fix Posix demo build and remove src directory (#213)
* Fix: build errors, remove src directory and bring all files up
* Fix: Remove not needed header
* Doc: fix main comments
* Doc: fix comment

Co-authored-by: Alfred Gedeon <gedeonag@amazon.com>
5 years ago
RichardBarry a9680a54cf
Fix warnings after moving callback prototypes (#208)
* Recently the prototypes for the application hook functions were
moved out of the kernel .c files and into the .h files.  That
changes results in compile time warnings for projects that provide
hook functions with a slightly different prototype - in particular
where signed char * is used in place of just char * as an older
FreeRTOS coding convention required chars to be explicitly qualified
as signed or unsigned.

This checkin fixes the warnings by ensuring the signature of
implemented hook functions matches the signature of the prototypes.
5 years ago
Cobus van Eeden 4a026fd703
Move forward Kernel submodule pointer (#218)
* Move forward Kernel submodule pointer
* Fixing patches for CBMC proofs
* Update proofs to assume cTxLock != 127
* Update proofs to assume cRxLock != 127
5 years ago
Cobus van Eeden a691c6199e
Updating queue.c patches for CBMC proofs (#216) 5 years ago
David Chalco 1ae6eda77a
RSK64M Demo - Fix build errors (#195)
* Fix linking errors. Define task notification array size
5 years ago
RichardBarry 0e0edd96e8
Use new QEMU test project to improve stream/message buffer tests (#168)
* Add Eclipse/GCC project that targets the LM3S8962 QEMU model.

* Get the Cortex-M QEMU project working.

* Continue working on making stream buffer demo more robust and QEMU project.

* Rename directory CORTEX_LM3S8986_QEMU to CORTEX_LM3S6965_QEMU.
Work on making the Stream Buffer tests more robust.
Check in before adding in the trace recorder.

* Rename CORTEX_LM3S6969_QEMU to CORTEX_LM3S6969_GCC_QEMU.

* Make the StreamBufferDemo.c common demo file (test file) more robust to other test tasks running at an equally high priority.

* Work in progress checkin only - comments in main.c are incorrect.

* Correct comments at the top of FreeRTOS/Demo/CORTEX_LM3S6965_GCC_QEMU/main.c
Make the message buffer tests more robust in the case the a message buffer becomes full when prvSenderTask() has a higher priority than the reader task.

* Disable trace recorder in the LM3S6965 QEMU demo.

* I'm dropping FreeRTOS-Kernel reference update, since this seems to break the CMBC CI.

Co-authored-by: Yuhui Zheng <10982575+yuhui-zheng@users.noreply.github.com>
5 years ago
Gaurav-Aggarwal-AWS 157a7fc39f
Use chacheable RAM in IAR project for MPU_M7_NUCLEO_H743ZI2 project (#193)
This change updates the IAR project for Nucleo H743ZI2 to use the
cacheable DTC RAM and enables L1 cache. In order to ensure the correct
functioning of cache, the project sets configTEX_S_C_B_SRAM in
FreeRTOSConfig.h to not mark the RAM as shareable.

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
5 years ago
Gaurav-Aggarwal-AWS f3e43556f9
Add MPU demo projects for NUCLEO-H743ZI2 board (#155)
* Add MPU demo projects for NUCLEO-H743ZI2 board

It contains projects for Keil uVision, STM32CubeIDE and IAR EW. This
demo shows the use of newly added support for 16 MPU regions.

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>

* Delete not needed CMSIS files

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
5 years ago
RichardBarry 68518f5866
Removed a 16MByte flash image file that was checked in by mistake (several years ago). (#173)
Remove the copies of lwIP that are no longer reference from demo projects.

Co-authored-by: Carl Lundin <53273776+lundinc2@users.noreply.github.com>
5 years ago
m17336 d4bf09480a
Update previous AVR ATmega0 and AVR Dx projecs + addition of equivalent projects in MPLAB.X and IAR (#180)
* Updated indentation in AVR_ATMega4809_Atmel_Studio and AVR_Dx_Atmel_Studio projects, plus small fixes in their readme files.

* Added AVR_ATMega4809_IAR, AVR_ATMega4809_MPLAB.X, AVR_Dx_IAR and AVR_Dx_MPLAB.X demo projects.

* Removed build artefacts and added .gitignore files in AVR_ATMega4809_MPLAB.X and AVR_Dx_MPLAB.X projects.

Co-authored-by: Yuhui Zheng <10982575+yuhui-zheng@users.noreply.github.com>
5 years ago
Aniruddha Kanhere f32a0647c8
Remove CBMC patch which is not used anymore (#187)
* Delete 0002-Change-FreeRTOS_IP_Private.h-union-to-struct.patch

* Delete 0002-Change-FreeRTOS_IP_Private.h-union-to-struct.patch
5 years ago
Aniruddha Kanhere 08af68ef90
Remove dependency of CBMC on Patches (#181)
* Changes to DHCP

* CBMC DNS changes

* Changes for TCP_IP

* Changes to TCP_WIN

* Define away static to nothing

* Remove patches

* Changes after Mark's comments v1

* Update MakefileCommon.json

* Correction!
5 years ago
Aniruddha Kanhere f2611cc5e5
MISRA compliance changes in FreeRTOS_Sockets{.c/.h} (#161)
* MISRA changes Sockets

* add other changes

* Update FreeRTOSIPConfig.h

* Update FreeRTOSIPConfig.h

* Update FreeRTOSIPConfig.h

* Update FreeRTOSIPConfig.h

* correction

* Add 'U'

* Update FreeRTOS_Sockets.h

* Update FreeRTOS_Sockets.h

* Update FreeRTOS_Sockets.c

* Update FreeRTOS_Sockets.h

* Update after Gary's comments

* Correction reverted
5 years ago
Carl Lundin a457f43c66
Add missing error state assignment. (#166) 5 years ago
Yuhui Zheng 915af50524
Add Atmel Studio projects for ATMega4809 and AVR128DA48 (#159)
* Added explicit cast to allow roll over and avoid integer promotion during cycles counters comparison in recmutex.c.

* Fixed type mismatch between declaration and definition of function xAreSemaphoreTasksStillRunning( void ).

* Added Atmel Studio demo projects for ATMega4809 and AVR128DA48.

* Per https://www.freertos.org/upgrading-to-FreeRTOS-V8.html, I'm updating portBASE_TYPE to BaseType_t.

Signed-off-by: Yuhui Zheng <10982575+yuhui-zheng@users.noreply.github.com>

* Update register test for ATmega4809
- to cover r28, r29, r31.
- call public API taskYIELD() instead of portYIELD().

* Update ATmega4809 readme.md to include info for serial port setup, and minor wording fix.

Co-authored-by: Alexandru Niculae - M17336 <alexandru.niculae@microchip.com>
5 years ago
Nathan Chong 8e36bee30e
Prove buffer lemmas (#124)
* Prove buffer lemmas

* Update queue proofs to latest kernel source

All changes were syntactic due to uncrustify code-formatting

* Strengthen prvCopyDataToQueue proof

* Add extract script for diff comparison

Co-authored-by: Yuhui Zheng <10982575+yuhui-zheng@users.noreply.github.com>
5 years ago
Gaurav-Aggarwal-AWS d7667a0034
Remove unnecessary semicolon from the linker file (#121)
This was creating problem with the onboard LPCLink debug probe.

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
5 years ago
Nathan Chong 529c481c39
Add VeriFast kernel queue proofs (#117) 5 years ago
S.Burch 072a173c9d
Fixed Imports for Infineon XMC1100 Board (#88)
Co-authored-by: RichardBarry <3073890+RichardBarry@users.noreply.github.com>
5 years ago
RichardBarry 2df5eeef57
Feature/multiple direct to task notifications (#73)
* Add TaskNotifyArray.c with the single task tests updated to use the task notification array up to the point where the timer is created.

* Continue working on TaskNotifyArray.c to test the new task notification indexes.  Next TaskNotifyArray.c will be refactored to break the tests up a bit.

* Refactor and update the comments in TaskNotifyArray.c - no functional changes.

* Change from the task notify "array" to task notification "indexed" nomenclature in the new task notification API functions that work on one particular task notification with the array of task notifications.

* Update the implementation of the taskNOTIFY_TAKE() and taskNOTIFY_WAIT() trace macros to take the array index of the task notification they are acting on.
Rename configNUMBER_OF_TASK_NOTIFICATIONS to configTASK_NOTIFICATION_ARRAY_ENTRIES.
Add FreeRTOS/Demo/Common/Minimal/TaskNotifyArray.c to the Visual Studio project - the file implements tests specific to the behaviour of the indexed task notification functions and should be used in addition to the tests already provided in FreeRTOS/Demo/Common/Minimal/TaskNotify.c.
5 years ago
Aniruddha Kanhere f11bcc8acc
Fix a Bug and corresponding CBMC patch (#84)
* Update remove-static-in-freertos-tcp-ip.patch

* Update FreeRTOS_TCP_IP.c

* Update remove-static-in-freertos-tcp-ip.patch

* Update remove-static-in-freertos-tcp-ip.patch

Co-authored-by: Yuhui Zheng <10982575+yuhui-zheng@users.noreply.github.com>
5 years ago
Yuhui Zheng bb9f92f771
Submodule FreeRTOS/Source 10bbbcf0b..6199b72fb (#82) 5 years ago
Yuhui Zheng 0eb5909fb0
readme.md for ATmega328PB Xplained Mini. (#76)
readme.md to get users jump started.
5 years ago
Aniruddha Kanhere cb7edd2323
Sync with a:FR (#75)
* AFR sync

* AFR sync: CBMC

* AFR sync: CBMC: remove .bak files

* AFR sync: CBMC: more cleanup

* Corrected CBMC proofs

* Corrected CBMC patches

* Corrected CBMC patches-1

* Corrected CBMC patches-2

* remove .bak files (3)

Co-authored-by: Yuhui Zheng <10982575+yuhui-zheng@users.noreply.github.com>
5 years ago
alfred gedeon 6557291e54
Test: Add Linux Networking support with demo application (#71)
* Test: Add Linux Networking support with demo application

* Test: revert files affected by uncrustify

* Test: revert files affected by uncrustify

Co-authored-by: Alfred Gedeon <gedeonag@amazon.com>
Co-authored-by: Yuhui Zheng <10982575+yuhui-zheng@users.noreply.github.com>
5 years ago
Yuhui Zheng 8b079bc394
ATmega328PB Xplained Mini -- demo project for ATmega port. (#70)
* Bootstrap a demo from START. No driver is added in this commit.

* Add FreeRTOS source code to project. Remove unnecessary folder nesting.

Heap_4 is used here.

* Copy over main.c, FreeRTOSConfig.h, and regtest.{c, h}.

This commit compiles, but will need some work on timer used.

* This port has 2KB RAM. We are using 1KB for heap.

Further decreasing minimum stack size, and also use stack overflow check 1 to save some stack space.

* Preserve EEPROM set to false.

* End of the line.

* Reduce register test stack size.

32 8-bit register + 10 bytes for stack frame cost. Round up to 50.

* Adding Queue test in Integer test.

- g3 to easy debugging.
- mainCHECK_PERIOD is set to 1000 ticks. Note that this port for now use WDT as tick timer, and period is set to 15ms.
- vErrorChecks, is of highest priority. So if this task gets run before other tasks, the very first check will fail.

* Avoid false alarm.

Since we don't know in which order the tasks are scheduled, clearing any error for the first entry of vErrorChecks.

Signed-off-by: Yuhui Zheng <10982575+yuhui-zheng@users.noreply.github.com>

* ParTest.c to init, set, toggle onboard user LED at PB5.

* Added a task to blink onboard user LED.

Need a magic number for stack size.

Signed-off-by: Yuhui Zheng <10982575+yuhui-zheng@users.noreply.github.com>

* Explicitly setting timing slicing to 0.
This is to avoid unecessary context switch when multiple tasks are of the same priority.


Signed-off-by: Yuhui Zheng <10982575+yuhui-zheng@users.noreply.github.com>

* Add taskYIELD() at the end of the loop in each register test task.

This is to give other tasks of the same priority a chance to run, regardless of scheduling algorithm.

Signed-off-by: Yuhui Zheng <10982575+yuhui-zheng@users.noreply.github.com>

* minor, update comment in main.c.
5 years ago
AniruddhaKanhere d95624c5d6
Move CBMC proofs to FreeRTOS+ directory (#64)
* move CBMC proofs to FreeRTOS+ directory

* Failing proofs corrected

* ParseDNSReply proof added back

* removed queue_init.h from -Plus/Test

Co-authored-by: Yuhui Zheng <10982575+yuhui-zheng@users.noreply.github.com>
5 years ago
markrtuttle 95ae7c6575
Change cbmc-viewer invocation in CBMC makefile (#63)
* Exclude FreeRTOS/Demo from CBMC proof reports.

The script cbmc-viewer generates the CBMC proof reports.  The script
searches source files for symbol definitions and annotates source
files with coverage information.  This patch causes cbmc-viewer to
ignore the directory FreeRTOS/Demo containing 348M of data.  The
script now terminates in a few seconds.

* Make report default target for CBMC Makefile.

Modify the Makefile for CBMC proofs to generate the report by default
(and not just property checking) and modify property checking to
ignore failures (due to property assertions failing) and terminating
report generation.

Co-authored-by: Mark R. Tuttle <mrtuttle@amazon.com>
5 years ago
Yuhui Zheng d421ccc89f
Reword readme.md under ./Test. (#61) 5 years ago
Carl Lundin 3841286598
Removed a:FR reference. (#60) 5 years ago
AniruddhaKanhere 4db195c916
Adding FreeRTOS+TCP CBMC proofs to FreeRTOS/FreeRTOS (#56)
ParseDNSReply is to be added in the next PR.
5 years ago
Yuhui Zheng fa74f7dccf Removing writes to read-only PLIC interrupt pending registers.
Signed-off-by: Yuhui Zheng <10982575+yuhui-zheng@users.noreply.github.com>
5 years ago
Yuhui Zheng 5b9777e11e A readme file to introduce what ./Test directory is about. 5 years ago
Yuhui Zheng 211bb4cbd9 Ignore whitespace when working with patches. 5 years ago
Yuhui Zheng 8156f64d1c Copying CBMC proofs from aws/amazon-freertos repo ./tools/cbmc to this repo ./FreeRTOS/Test/CBMC as is.
The commit ID in aws/amazon-freertos is 0c8e0217f2a43bdeb364b58ae01c6c259e03ef1b.
5 years ago
David Vrabel 9f316c246b Demo/Posix_GCC: add demo application for Posix port using GCC
This is largely a copy of the Windows demo application with a few key
changes:

- heap_3 (use malloc()/free()) so tools like valgrind "just work".

- printf() wrapped in a mutex to prevent deadlocks on the internal
  pthread mutexes inside printf().

SCons (https://scons.org/) is used as the build system.

This will be built as a 64-bit application, but note that the memory
allocation trace points only record the lower 32-bits of the address.
5 years ago