Commit graph

1206 commits

Author SHA1 Message Date
Kody Stribrny
2f3e5235aa
Expand RV32E demo support, prevent 'ebreak' looping (#883)
* Expand RV32E demo support, prevent 'ebreak' looping

The RegTest tests are modified in the Qemu and HiFive demos
to support RV32E and its limited set of registers.

'ebreak' call looping is removed in RegTest. This produces
a lot of noise when debugging.

* Correct whitespace

* Remove 'ebreak' instruction calls

The ebreak instruction sets and exception
which leads to jumping around the binary. This
can make debugging difficult.

* Fix whitespace formatting
2023-02-06 21:00:09 -08:00
Kareem Khazem
c7b3124565
Use CBMC XML output to enable VSCode debugger (#912)
Prior to this commit, CBMC would emit logging information in plain text
format, which does not contain information required for the CBMC VSCode
debugger. This commit makes CBMC use XML instead of plain text.

Co-authored-by: Mark Tuttle <tuttle@acm.org>
2023-01-13 13:03:06 -08:00
chinglee-iot
2ec3cb5a0f
Update kernel submodule pointer for equal priority test cases (#909) 2023-01-09 18:05:20 +08:00
chinglee-iot
77712c6e53
Update unit test for equal priority task (#903)
Update the unit test for the following functions to verify that equal priority task won't be preempted
* vTaskResume
* xTaskResumeFromISR
* vTaskPrioritySet
* xTaskResumeAll

4 test cases are added to verify this scenario
* test_xTaskResumeAll_success_2_tasks_eq_prio_running_no_yield
* test_vTaskPrioritySet_success_eq_curr_prio_curr_tcb
* test_vTaskResume_success_eq_curr_prio_not_yield
* test_xTaskResumeFromISR_success_eq_curr_prio_suspended_task

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

Co-authored-by: Gaurav-Aggarwal-AWS <33462878+aggarg@users.noreply.github.com>
2023-01-06 10:32:36 +08:00
Paul Bartell
61fed35107 CI: add win32-mingw demo to GithubActions workflow 2022-12-21 13:09:02 -08:00
Paul Bartell
32a3f4e8a1 msp430_GCC: Update makefile for most recent mspgcc 2022-12-21 13:09:02 -08:00
Kody Stribrny
e28f953025
Update AVR_Dx Atmel Demo (#902)
Updates the demo .cproj file to account for new
paths since 3P restructure. Also enables the xTaskGetCurrentTaskHandle
include which is needed for building.

Inspired by - https://forums.freertos.org/t/avr-gcc-warning-extra-tokens-at-end-of-undef-in-porthardware-h/16365/3
2022-12-20 09:03:25 -08:00
Gaurav-Aggarwal-AWS
1e8d541ed4
Fix stack smashing in POSIX Demo (#901)
The tracelyzer code was declaring a local stack variable of type
`uint32_t` and passing it as output parameter to a function which
expected `uint64_t` on a 64-bit platform. This resulted in 4 byte memory
corruption. The problem was that the function signature uses
`TraceUnsignedBaseType_t` type for the output parameter which gets
defined to `uint32_t` on a 32-bit platform and to `uint64_t` on a 64-bit
platform, while the local stack variable was declared as `uint32_t`.
This commit changes the type of local stack variable to
`TraceUnsignedBaseType_t` to match the function parameter type.

Tracelyzer creates a task internally stack size of which is controlled
using TRC_CFG_CTRL_TASK_STACK_SIZE. It was earlier defined to 1024.
The POSIX port requires the stack size to be minimum PTHREAD_STACK_MIN.
The commit updates the TRC_CFG_CTRL_TASK_STACK_SIZE to
PTHREAD_STACK_MIN.

The demo directory contained one extra trcConfig.h and
trcKernelPortConfig.h. This commit deletes those files.

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

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
2022-12-15 19:21:55 +05:30
jasonpcarroll
6f7f9fd9ed [AUTO][RELEASE]: Bump file header version to "202212.00" 2022-12-10 01:17:30 +00:00
jasonpcarroll
a545cb2aee
Fix MingW RTOS demo. (#897)
* Fix MingW RTOS demo.

* Remove unnused variable.

* Fix header check.

* Remove tabs from source files.

* Fix spelling.

* Remove unneeded call to vTraceStop.

* Fix function.

* Fix code coverage project.

* Add Makefile to MinGW demo.

Co-authored-by: Jason Carroll <czjaso@amazon.com>
2022-12-09 15:49:42 -08:00
jasonpcarroll
c8ac06424f
WIN32-MSVC Demo Re-work interrupt handling. (#899)
* Updated Cellular Interface to mainline.

* Re-work keyboard interrupt handling, cleanup deprecated calls to trace library.

* Update lexicon.txt

Co-authored-by: Jason Carroll <czjaso@amazon.com>
2022-12-09 11:25:26 -08:00
Soren Ptak
1fc1e01fb6
FreeRTOS Trace Fixes (#888)
* Updating the FreeRTOS/Demo/Posix_GCC Demo's Trace.dump file Creation
* Updating the FreeRTOS-Plus/Demo/FreeRTOS_Plus_TCP_Echo_Posix Demo's Trace.dump file Creation

Co-authored-by: Soren Ptak <skptak@amazon.com>
2022-12-07 16:01:29 -08:00
jasonpcarroll
228f76cbe3
Fix and improve WIN32-MSVC demo in FreeRTOS/Demo. (#891)
* Fix WIN32-MSVC demo in FreeRTOS/Demo.

* Add comments.

* Fix corechecks

* Re-work trace and keyboard input.

* Remove unneeded line from trcConfig.h

* Fix formatting in trcConfig.h

* Fix heap issues, add FreeRTOS task to simulate keyboard interrupts.

* Update comment on main_blinky.

* Fix spelling.

* Make keyboard input thread block on input.

* Set thread affinity of keyboard input thread to not run on the same core as FreeRTOS.

* Adjust heap regions and total heap size.

* Fix spelling.

Co-authored-by: Jason Carroll <czjaso@amazon.com>
2022-12-07 10:29:12 -08:00
alfred gedeon
db1ac5f63f
Fix IAR GCC buid not to use trace (#895)
* Fix IAR GCC build for Qemu MPS2

* Add removed file

* set trace facility to none
2022-12-06 10:37:23 -08:00
alfred gedeon
101c263371
Fix: Build enable trace facility (#890)
* Fix IAR GCC build for Qemu MPS2

* Add removed file

* Add timer function for runtime stats

* Add lexicon entry
2022-12-05 16:58:26 -08:00
jasonpcarroll
b9f2248c5b [AUTO][RELEASE]: Bump file header version to "202211.00" 2022-12-01 00:34:31 +00:00
Soren Ptak
8424589ed1
FreeRTOS Windows Simulator Build Changes and LTS 2.0 Update (#872)
* Update mbedtls to version v3.2.1

* Adjust include paths for github workflow

* Update FreeRTOS+TCP to v3.1.0

* Add initial VS project files for Kernel, +TCP, and mbedtls

* winpcap: Consolidate to a single copy of WinPcap

* Downgrade library projects to VS 2019. Add heap_4 to kernel.

* Remove *.vcxproj.user files and add to gitignore

* Disable unwanted kernel config options

* Update FreeRTOS+TCP and Kernel include paths

* Update FreeRTOS+TCP Windows Minimal sln

* Remove .suo and .vcxproj.user files

* Update mbedtls transport implementations for mbedtls v3.2.1

* Fix typo in mbedtls_freertos_port.c

* Update vcxproj files for +TCP, Kernel, Mbedtls

* Fix typo in name WindowSimulator -> WindowsSimulator

* Add wpcap lib to FreeRTOS+TCP.vcxproj

* Update FreeRTOS+TCP Minimal Demo for Windows Simulator

* Mask MSVC string function warnings

Aad _CRT_SECURE_NO_WARNINGS preprocessor definition.

* Move projects to their own directories to make VisualStudio happy

* mbedtls_freertos_port.c: Fix formatting?

* Add coreHTTP, Logging libs. Adjust dependencies

* Disable FreeRTOS Kernel malloc failed hook

* Update coreHTTP Plaintext demo

* Rename / relocate transport interface implementations

* Remove old VS project files

* Remove extra core_http_config.h files

* Remove extra FreeRTOSConfig.h files

* Remove extra FreeRTOSIPConfig.h files

* Remove old mbedtls_config.h files

* Remove old FreeRTOSConfig and core_http_config files

* Update HTTP Mutual Auth Demo build files

* Fix transport_plaintext.h include name

* Update HTTP_Plaintext demo build files

* Update CoreHTTP_S3_Download VS project files

* Update HTTP_S3_Upload demo build files

* Update CoreHTTP_S3_Download_Multithreaded demo build files

* Add GithubActions builds for FreeRTOS+ CoreHTTP Demos

* Update S3DownloadHTTPExample.c to be compatible with mbedtls 3.x

* Update GithubActions FreeRTOS+ config file

* Combine core_pkcs11_config.h files into a single one

* Add corePKCS11 VS project file

* Update corePKCS11 WinSim demo project and build files

* Update corePKCS11 library to version 3.5.0

* Modifiying demos to build using static libraries

* Adding a header file

* Two more demos

* Update corePKCS11 demo code and auto-format

* Downgrade corePKCS11 library build file to v142 / VS 2019

* Speed up CI builds with selective submodule initialization

* Separate corePKCS11 demo into it's own job.

* Remove WIN32.vcxproj and WIN32.vcxproj.filters files

* Remove old configuration header files

Partially reverts 73829ced6061e4584e521185178a61b4a437c5e0

* Revert unwanted coreHTTP demo changes

* Changing include paths for demos

* Adding an include

* MQTT WoflSSL Demo update

* wolfSSL Demo changes

* Config changes for MQTT Demos

* Initial Device Defender demo update.

* Initial Device Shadow demo update.

* Update mbedtls_transport_pkcs11 for Mbedtls 3.x

* Update corePKCS11 MQTT Mutual Auth demo

* Add a default definition of SdkLog

* Update CorePKCS11 + MQTT Mutual Auth demo sln name

* Build all configs of coreHTTP demos

* Update coreSNTP Demo build files.

* Update coreSNTP Demo sln name

* Update FreeRTOS+TCP Posix demo

* Update FreeRTOS+TCP Qemu ARM MPS2 AN385 Demo

* Update FreeRTOS+TCP Demo Github Actions builds

* Update Fleet Provisioning WinSim Demo build files

* Remove mbedtls_pk_info_t references from mbedtls_pk_pkcs11.h

* Restore / update the FreeRTOS+TCP Minimal WinSim demo

* Initial Jobs demo update.

* Fix jobs demo build.

* Initial OTA over HTTP demo update.

* Initial OTA over MQTT demo update.

* Ota_Over_Mqtt_Demo build fix.

* OTA over MQTT demo fix.

* Update HTTP demo solution file name for CI.

* Update Github actions workflow to old HTTP demo names.

* Update coreSTNP demo to old solution name.

* Fix defender demo / fix mbedtls config to use threading alt.

* Add MBEDTLS_CONFIG_FILE definition to each config

* Fix config file name.

* MQTT Mutual auth fixes.

* Fix job demo.

* Device shadow demo fixes.

* Fix coreSNTP demo not setting alt threading functions for mbedtls.

* Enable Static allocation, Add default hooks for FreeRTOS Kernel and +TCP

* Add xPlatformIsNetworkUp platform function to FreeRTOS+TCP hooks

* Enable runtime statistics in the Windows Simualator Kernel config

* Revert "Fix coreSNTP demo not setting alt threading functions for mbedtls."

This reverts commit 9069707519561ca8136d58c0f18fb176c9050a1d.

* Revert mbedtls threading related config changes

* Add xPlatformIsNetworkUp function prototype

* Remove boileplate FreeRTOS kernel and +tcp hooks

* Refactor device defender demo for clarity

* Add wait loop calling xPlatformIsNetworkUp

* Add missing vPlatformInitLogging function

* Add vPlatformInitLogging and vLoggingPrintf defitions to logging headers

* Updating the FreeRTOS_Plus_CLI_with_Trace_Windows_Simulator

* Updating the FreeRTOS_Plus_Reliance_Edge_and_CLI_Windows_Simulator demo

* Updates to the FreeRTOS_Plus_WolfSSL_Windows_Simulator demo

* Fixing wrong include path

* Upating FreeRTOS_Plus_WolfSSL_FIPS_Ready_Windows_Simulator demo

* Update coreMQTT WinSim demos to print start and end condition.

* Modifiying repos updated as part of the CLI demo GitHub workflow

* Removing duplicate functions from the FreeRTOS_Plus_TCP_Minimal_Windows_Simulator demo

* Updated FreeRTOS_Plus_TCP_UDP_Mode_CLI_Windows_Simulator demo

* Updating corePKCS11_MQTT_Mutual_Auth_Windows_Simulator Demo to call the static function that creates task

* Fix log message using unitialized string in MQTT Multitask demo.

* Fixing a broken extern function

* Fixing a typo extern function name

* Added a reference to coreHTTP

* Fixing a pre-processor issue in the OTA_Over_Http_Demo

* Updating the MQTT_Mutual_Auth_Demo_with_BG96 demo

* Updating the MQTT_Mutual_Auth_Demo_with_HL7802 demo

* Changes to the MQTT_Mutual_Auth_Demo_with_SARA_R4 demo

* Fix demos for CI.

* Adding the source path to the CBMC proofs for FreeRTOS+TCP

* Spell check fixes, adding words to lexicons

* Fixing a typo

* Add arg to skip prompt in setup script.

* Update paths of script to be relative to the file.

* Changing manifest.yml file to point to corePKCS11 3.5.0

* Added CI markers to cellular demos.

* Fix cellular demo flow.

* Fix celullar demos.

* Initial TCP sockets wrapper rework - will break things.

* First cellular demo fix for new sockets wrapper.

* Minor fix to cellular sockets wrapper.

* Fix mbedtls bio using FreeRTOS Plus TCP call.

* Clean up BG96 demo project files.

* Update HL7802 demo.

* Fix SARA R4 demo for new sockets wrapper.

* Fix Device Defender, Device Shadow, and Fleet PRovisioning.

* Fix Jobs demo.

* Fix OTA over HTTP demo.

* Fix OTA over MQTT demo.

* Fix HTTP mutual auth demo.

* Fix OTA over MQTT demo endianness.

* Fix OTA over HTTP demo endianness.

* Fix HTTP Plaintext demo.

* Fix HTTP S3 download demo.

* Fix plaintext transport

* Fix OTA demos.

* Fix OTA demos.

* Fix OTA HTTP demo.

* Fix HTTP S3 Download multithreaded demo.

* Fix HTTP S3 Upload demo

* Fix corePKCS11 Mutual Auth demo.

* Updating MQTT_Mutual_Auth

* Update pkcs11 setup script.

* Updating the MQTT_Basic_TLS Demo

* Organize PKCS11 demos project.

* Updating MQTT_Keep_Alive demo

* Clean up SNTP demo.

* Updated MQTT_Multitask demo

* Updated MQTT_Plain_Text

* Updating the MQTT_Serializer Demo

* Updating corePKCS11_MQTT_Mutual_Auth_Windows_Simulator

* Updating coreSNTP_Windows_Simulator

* Clean up demo projects.

* Add markers to PKCS11 mutual auth demo.

* Fix Fleet Provisioning demo script.

* Fix SNTP demo solution.

* Fix coreSNTP project files.

* Fix Fleet Provisiong script.

* Fix fleet provisioning script.

* Fix demo config template.

* Fleet provisioning demo markers.

* Updating MQTT_Mutual_Auth_wolfSSL demo and the transport_wolfSSL file

* Fixing FreeRTOS_Plus_TCP_Echo_POSIX

* Fixing CLI and Trace Demos

* Fixing TCP_ECHO_POSIX demo

* Adding a word to the lexicon

* Remove unneeded files.

* Update github workflows to use Ubuntu 20.04.

* Change OTA demo target names to RTOSDemo for OTAE2E tests.

* Fixing Headers

* Updating headers

* Two more headers

* Adding words to the lexicon

* Whitepsace

* Ignore mbedtls config file for header check.

* Removing FreeRTOS Header from the mbedtls_config_v3.2.1.h file

* Fix bug in lPKCS11PkMbedtlsCloseSessionAndFree. Add doxygen api docs.

* Update lexicon.txt

* Fix spelling

* Apply suggestions from code review

Co-authored-by: jasonpcarroll <23126711+jasonpcarroll@users.noreply.github.com>

* Add return code comment for p11_ecdsa_ctx_init

* Rename WindowsSimulator folder to VisualStudio_StaticProjects.

* Remove references to coroutines

* Fix mbedtls_pk_pkcs11.c

* Update to LTS 2.0 submodule pointers (#880)

* Update submodule pointers to LTS 2.0

* Initial coreMQTT 2.1.1 update.

* Update AWS demos for coreMQTT 2.1.1

* Fix deprecated macro for coreMQTT demos.

* Fix keep alive demo.

* Fix plaintext demo.

* Fix MQTT wolfSSL demo.

* Fix MQTT PKCS11 demo.

* Remove duplicate functions.

* Fix Mutual auth demos for Cellular.

* Fix OTA demos.

* Fix header of plaintext demo config.

* Set writev to NULL for OTA demos.

* Fix mbedlts config for OTA demos.

* Fix spelling.

Co-authored-by: Jason Carroll <czjaso@amazon.com>

* Removing blank line

* Fix jobs demo race condition.

* Fix race condition from WinPCap network interface.

* Update lexicon.

Co-authored-by: Paul Bartell <pbartell@amazon.com>
Co-authored-by: Jason Carroll <czjaso@amazon.com>
Co-authored-by: Paul Bartell <paul.bartell@gmail.com>
Co-authored-by: jasonpcarroll <23126711+jasonpcarroll@users.noreply.github.com>
2022-11-29 14:21:09 -08:00
Paul Bartell
569c78fd8c
Remove coroutines (#874)
* Remove co-routine centric CORTEX_LM3S102_Rowley demos.

Remove CORTEX_LM3S102_Rowley Demo2 and Demo3.
Update Demo1 to no longer use coroutines.

* Remove co-routines from MB91460_Softune demo

* FreeRTOS_96348hs_SK16FX100PMC: Remove co-routine usage.

Remove co-routine usage from FreeRTOS_96348hs_SK16FX100PMC demo.

* MB96350_Softune_Dice_Kit: Remove co-routine usage

Remove co-routines usage from MB96350_Softune_Dice_Kit demo

* AVR_Dx_IAR: Remove co-routine usage

* AVR_Dx_Atmel_Studio: Remove co-routine usage

* PIC24_MPLAB: Remove autogenerated files and add to .gitignore

* PIC24_MPLAB: Remove co-routine usage from demo

* AVR_ATMega323_IAR: Remove co-routine usage

* ColdFire_MCF52221_CodeWarrior: Remove coroutine usage

* AVR_ATMega4809_MPLAB.X: Remove co-routine usage

* AVR_ATMega4809_IAR: Remove co-routine usage

* AVR_ATMega4809_Atmel_Studio: Remove coroutine usage

* AVR_ATMega323_WinAVR: Remove coroutine usage

* AVR_Dx_MPLAB.X: Remove coroutine usage

* dsPIC_MPLAB: Remove coroutine usage

* CORTEX_LM3S102_GCC: Remove coroutines and coroutine centric demos

* CORTEX_LM3S102_GCC: Update makefile to discard unused symbols

Allows fitting in the limited ram/flash for this part.

* CORTEX_LM3S316_IAR: Remove coroutines

* Demos: Remove references to crflash.c, crhook.c, crflash.h, crhook.h

* Remove coroutine options from FreeRTOSConfig.h files

* Xilinx: Remove backup file generated by revup utility

* Demos: Remove Coroutine related config items and references

* Format CBMC FreeRTOSConfig.h

* Update URL from aws.amazon.com/freertos to github.com/FreeRTOS

* Fix copyright year and license text

* Fix license text in demo files

* Update header check excluded path list

* Add configBENCHMARK to lexicon
2022-11-22 10:29:53 +05:30
Paul Bartell
eb7fd55a49
Remove binary and generated files from Kernel Demos (#876)
* T-HEAD_CB2201_CDK: Remove temporary IDE files

* Remove Ateml Studio temporary / user files

* Remove visual studio .vcxproj.user and .suo files

* Remove png file (from atmel libraries)

* Convert .doc files to .md

* Remove .exe files

* Remove CodeWarrior temporary files

* CORTEX_MB9XXXX_IAR_Keil: Remove .out binary files

* Renesas: Remove autogenerated .nav files

* NiosII_CycloneIII_DBC3C40_GCC: Remove generated hex file

* Update gitignore to exclude unwanted binary or auto-generated files

* Xilinx: Remove temporary / generated files

* PIC32MEC14xx_MPLAB: remove disassembly file
2022-11-19 13:12:38 +05:30
Kody Stribrny
d266eba137
Update RISC-V Qemu Virt GCC Readme + Makefile (#873)
Update Readme instructions  and add troubleshooting
tips for issues seen on Ubuntu and include a description
of where to find various crosstools-ng flags.
2022-11-17 16:55:58 -08:00
Andrea
dc2c031c45
added correct interrupt handler initialization in RISC-V-Qemu-virt_GCC (#864)
* added correct trap_handler initialization in main.c

Co-authored-by: Joseph Julicher <jjulicher@mac.com>
Co-authored-by: Kody Stribrny <kstribrn@amazon.com>
Co-authored-by: Aniruddha Kanhere <60444055+AniruddhaKanhere@users.noreply.github.com>
2022-11-11 14:57:56 +05:30
Kody Stribrny
54d4eeaa26
Add Vectored Interrupt Support To SiFive RISC-V Demo (#871)
Update SiFive IAR demo to support vectored interrupts. This is a near copy of https://github.com/FreeRTOS/FreeRTOS/pull/797.

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
Co-authored-by: Gaurav Aggarwal <aggarg@amazon.com>
2022-11-09 10:34:04 -08:00
OccupyMars2025
1fc8a8ee42
modify a typo (#869) 2022-11-04 12:02:26 -07:00
Erik Tamlin
c568ba8c44
Percepio Trace Recorder v4.6.0 (#789)
* * Percepio Trace Recorder v4.6.0

* Add space between inclusion of header and comment

* Fix broken posix build - part 1

* Add percepio timer implementation

* Remove delted trace recorder header file

* Fix Networking demo  build

* Fix CLI demo

* Fix visual studio version number

* Fix core header check

* Fix more core checks

* Fix last of core checks

Co-authored-by: Aniruddha Kanhere <60444055+AniruddhaKanhere@users.noreply.github.com>
Co-authored-by: Alfred Gedeon <alfred2g@hotmail.com>
2022-11-03 13:58:38 -07:00
Gaurav-Aggarwal-AWS
aa316fc1b4
Add a unit test for tasks.c (#867)
* Add a unit test for tasks.c

This test simulates the scenario when a task with priority higher than
the currently executing task is unblocked as a result of the
xTaskIncrementTick call.

This is needed to fix the coverage drop in PR https://github.com/FreeRTOS/FreeRTOS-Kernel/pull/568.

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

* Add description for the test

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

* Add doc for another test

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

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
2022-11-03 11:48:53 -07:00
Nathan Chong
4f87f485d5
Update VeriFast proofs (#836)
* Undo syntax changes preventing VeriFast parsing

* Update proofs inline with source changes

Outstanding:
  - xQueueGenericReset return code
  - Not using prvIncrementQueueTxLock or prvIncrementQueueRxLock macros

* Remove git hash check

* Document new changes between proven code and implementation

* Update copyright header

* VeriFast proofs: turn off uncrustify checks

Uncrustify requires formatting of comments that is at odds with VeriFast's
proof annotations, which are contained within comments.

* Update ci.yml

Co-authored-by: Joseph Julicher <jjulicher@mac.com>
Co-authored-by: Aniruddha Kanhere <60444055+AniruddhaKanhere@users.noreply.github.com>
2022-10-27 14:54:38 -07:00
alfred gedeon
4e0fecaadd
Arm gcc build qemu mps2 Coretex M3 (#861)
* Arm gcc build qemu mps2 Coretex M3

* Fix Path

* Insert compilation error for testing

* Build full dem

* Build MPU M3

* Build check IAR qemu mps2 gcc

* Fix path

* Fix typo
2022-10-20 15:37:52 -07:00
Paul Bartell
07a8701d1b demo: GCC Posix: Clarify toolchain installation steps 2022-10-17 13:28:54 -07:00
arshi016
58e55e2588
Updated configMINIMAL_STACK_SIZE for POSIX demo (#856) 2022-10-10 14:35:45 -07:00
Gaurav-Aggarwal-AWS
3893cbdb12
Fix test failure in FreeRTOS-Kernel PR #568 (#852)
The test simulates the scenario when a task with priority equal to the
currently executing task is unblocked as a result of the
xTaskIncrementTick call.

Related PR - https://github.com/FreeRTOS/FreeRTOS-Kernel/pull/568

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

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
2022-09-29 12:03:36 +05:30
akshayutture
856d0e8363
Created a generic portmacro.h file in the CBMC include folder (#847)
* Created a generic portmacro.h file in the CBMC include folder instead of using the default MSVC-MingW one. This allows each proof to define the portmacro constants it needs and cover all code in the Task Scheduler

* Removed the license text from the portmacro file

* Fix CI checks

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

* Fix spell check

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

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
Co-authored-by: Gaurav Aggarwal <aggarg@amazon.com>
Co-authored-by: Gaurav-Aggarwal-AWS <33462878+aggarg@users.noreply.github.com>
2022-09-26 14:43:54 -07:00
Jeff Tenney
2e772110e3
Add test late timer start (retry #557) (#591)
* Add test for timer start delayed past expiration

This reverts commit 53af0ec62e, which
itself reverted 9c91199016.

* Add warning about vTimerDemoIncludeBacklogTests()

* uncrustify for CI check

* Remove unintentional changes to spacing in comments
2022-08-18 13:54:14 -07:00
RichardBarry
2808e48079
Fix compiler warning in MessageBufferDemo.c (#842)
* prvReceiverTask() in MessageBufferDemo.c declared a variable as a "MessageBufferHandle_t *" instead of just a "MessageBuffer_t".  This came to light when updating the kernel submodule pointer as the underlying datatype changed in the kernel from a void *.

* Remove additional line that was preventing automated uncrustify tests from passing.

Co-authored-by: none <>
2022-08-18 10:41:39 +05:30
alfred gedeon
1ac492d6aa
Kernel timers.c tasks.c Unit Test (#539)
* Test: add multi config ability to build system

* Remove Tests that are not implemented yet from the makefile

* Fix header check

* Test: Unit Test tasks.c

* UnitTest: tasks.c Save progress

* saving some work 70% coverage

* coverage 77%

* tasks.c coverage 90%

* tasks.c coverage 95%

* Cleanup and common header

* Cover some extra branches, no_mutex +stack growth

* Fix Makefile not to use modified version of c-preprocessor

* Remove c-preprocessor errros

* Rebase and add some tests

* Fortify_source=1 and O0 are mutually exclusive

* Style: Uncrustify code

* Style: Fix indent

* Fix Header checks

* Add prototypes

* Build: use unifdef instead of the c-preprocessor to generate different configurations

* Build: fix makefile cflags

* Fix UT after upgrading kernel version

* Resolve conflicts and test failures

* Comment fix version number

* Fix build error

* Update FreeRTOS/Test/CMock/Makefile

Co-authored-by: Aniruddha Kanhere <60444055+AniruddhaKanhere@users.noreply.github.com>

Co-authored-by: Aniruddha Kanhere <60444055+AniruddhaKanhere@users.noreply.github.com>
2022-08-16 14:38:26 -07:00
Ravishankar Bhagavandas
c00078e729
Upgrade kernel submodule version (#840) 2022-08-10 15:40:46 -07:00
e14002270
cee9d5c560
Fix qemu riscv build error and miss debug info in assembly code (#838)
1. add INCLUDE_xTaskGetCurrentTaskHandle for stream_buffer use
2. LDFLAGS add arch and abi info for linker
        for riscv64-unknown-elf multilib, if there is no arch and abi
        info, will link to default lib and have below error
        target emulation `elf32-littleriscv' does not match `elf64-littleriscv'
3. use CFLAGS to replace ASFLAGS when compile assembly code
        because DEBUG flag is added in CFLAGS, if we use ASFLAGS to compile
        assembly code, there is no debug info in assembly code objfile

Signed-off-by: Eric Chan <e14002270@gmail.com>
2022-08-10 15:04:36 +05:30
Paul Bartell
55d0ab4bfe Fix queue/static config for upstream changes 2022-08-09 15:47:46 -07:00
Gaurav-Aggarwal-AWS
5890286b30
Fix incorrect relative paths in Cmake files (#837)
This was reported here - https://github.com/FreeRTOS/FreeRTOS/issues/812

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
2022-08-08 21:22:35 +05:30
Ravishankar Bhagavandas
9058c39aed
Add unit tests for stream buffer callback overrides (#832)
* Add tests for streambuffer callback

* Add concurrent readers writers test

* Update manifest
2022-07-29 13:16:52 -07:00
Angelo Nakos
8e881fe73c
Remove litani submodule and update README to include a section on CBMC (#829)
* Remove Litani submodule

* Update README to include section on CBMC

* Update litani references in Python run script
2022-07-25 13:52:10 -07:00
alfred gedeon
cfb32b4f62
Demo: CORTEX M3 MPU MPS2 with QEMU (#813)
* Demo: CORTEX M3 MPU MPS2 with QEMU

* Fix headers

* Update Makefile

Update makefile to point to current directory

* Update Makefile

* Update mps2_m3.ld

* Fix PR comments

* Fix PR Comments

* Fix config value
2022-06-23 11:04:51 -07:00
Gaurav-Aggarwal-AWS
c472c08d3d
Define INCLUDE_xTaskGetCurrentTaskHandle in FreeRTOSConfig.h (#822)
* Define INCLUDE_xTaskGetCurrentTaskHandle in FreeRTOSConfig.h

This is needed to fix build issues in https://github.com/FreeRTOS/FreeRTOS-Kernel/pull/507

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

* Fix header check

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
2022-06-21 22:45:26 +05:30
gilbefan
3a5a8e14fc
VSCode launch configurations (#820)
* CORTEX_MPS2_QEMU_IAR_GCC now has VSCode tasks and launch configurations to build, run, and debug in one button. This should work on all platforms (Linux, MacOS, Windows).

* Posix_GCC Demo now has VSCode task and launch configs to build, run, debug in one button for Linux/MacOS ("lldb Launch").

It also has configuration for Windows through Ubuntu ("gdb launch"), and this will also work for Linux if the user wants to use gdb instead of lldb.

* Integrated terminal settings for Ubuntu and MSYS2 ways to run Posix Demo on Windows.

This allows Posix port demo to be built on either WSL/Ubuntu or MSYS2 on Windows.

These are absolute paths so if the user has installed Ubuntu or MSYS2 elsewhere they will need to change them.

* Improved pattern matching in Run QEMU task. Replaced usage of deprecated ${workspaceRoot} with ${workspaceFolder}.

* Split MSYS2 and Ubuntu WSL configurations

MSYS2 works better with external console, and Ubuntu WSL works with internal console. This is reflected by having two different configurations.

* Delete RTOSDemo.map

Cleanup. (This is file is built but never deleted when make-ing)

* Delete null.d

* Cleanup extranneous vscode workspace

* Documentation for VSCode launch configs

Documentation for how to run this demo on VSCode using launch configs.

* Added documentation for VSCode launch configs

Added documentation for running demo through VSCode using launch configurations.

* Removed unneeded .log files and c_cpp_properties.json in CORTEX_MPS2_QEMU_IAR_GCC/.vscode/

* Deleted unnecessary .log files from POSIX_GCC/.vscode

* Set build task problem matcher to "gcc", deault problem matcher from VSCode.

* Removed unneeded "sh -c -l" command from the default build task in CORTEX_MPS2_QEMU_IAR_GCC.

* "Build QEMU" task problem matcher finds the correct paths to problem files.

* Moved steps to "Prerequisites" section.

* Update Readme.md

Fixed markdown typo.

* Moved items to prerequisites for Posix_GCC demo.

Co-authored-by: Fan <gilbefan@f84d899204e1.ant.amazon.com>
2022-06-07 21:21:52 -07:00
Gaurav-Aggarwal-AWS
f62d4ecd69
Fix build failures in Nuvoton M2351 projects (#818)
* Fix build failures in Nuvoton M2351 projects

These are needed because of recent changes in the port

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
2022-06-02 22:32:59 +05:30
Gaurav-Aggarwal-AWS
ad88de61d0
Add a demo project for NUCLEO-L010RB board (#808)
* Add a demo project for NUCLEO-L010RB board

The board contains a Cortex-M0+ core.

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

* Fix header check

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

* Fix header check

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
2022-04-08 11:14:17 -07:00
RichardBarry
da3a1371db
Fix mpu simulator demo (#805)
* All for the Demo/Cortex_MPU_Simulator_Keil_GCC GCC demo:
+ Update the linker script so the project builds now the heap is part of the privileged data.
+ Add simulator.ini to setup the simulator memory map when the debugger starts to prevent invalid access errors.
+ Set configENFORCE_SYSTEM_CALLS_FROM_KERNEL_ONLY to 1 in FreeRTOSConfig.h, then fix up resultant build errors.
+ Set configALLOW_UNPRIVILEGED_CRITICAL_SECTIONS to 0 in FreeRTOSConfig.h, then fix up resultant build errors.

* Fix compiler warning in Arm startup file.

* Update comments in the file headers to pass the git checkin tests.

* Update header comments to pass git checkin tests.

* Second attempt to get file header comments correct for the check-in tests.

* Third attempt to get the header comments correct.

* Fix spelling.

* Fix manifest check

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

Co-authored-by: none <>
Co-authored-by: Gaurav Aggarwal <aggarg@amazon.com>
2022-04-05 10:09:56 +05:30
Felipe Torrezan
fc9396f576
Migrated RL78/IAR port to EWRL78v3+ (#799) 2022-03-24 09:59:45 -07:00
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.
2022-03-21 15:21:59 -07:00
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>
2022-03-18 10:31:59 -07:00
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>
2022-03-11 16:26:31 -08:00