Commit Graph

3643 Commits (c304913b640c0ad603348a2fb0b52595d2a42944)
 

Author SHA1 Message Date
Monika Singh c304913b64
Remove redundant TCP includes in FreeRTOS CBMC proofs (#1254)
* Remove unnecessary TCP includes

* Update comment
5 months ago
chinglee-iot 9febcedd91
Add async core yield test for SMP (#1247)
Add async core yield test for SMP

Add async core yield test for SMP to verify set core affinity
  implementation
5 months ago
Rahul Kar 1a82df09df
Update ReadMe to add UserMode Networking (#1216)
Update ReadMe to add UserMode Networking
5 months ago
chinglee-iot 4b039b82e9
Remove no new core added coverage test for coreAffinitySet (#1248)
* Remove this unit test due to implementation change
5 months ago
chinglee-iot 520fc225eb
Add SMP task delete on target test (#1176)
Add SMP task delete on target test
6 months ago
chinglee-iot 6ed67f54bb
Add SMP one task enter critical on target test (#1180)
Add SMP one task enter critical on target test
6 months ago
chinglee-iot 98c2b04bbc
Add SMP interrupt wait critical secton on target test (#1181)
Add SMP interrupt wait critical secton on target test
6 months ago
Rahul Kar a004a21b13
Remove ipLOCAL_MAC_ADDRESS from demo files (#1244)
* Remove ipLOCAL_MAC_ADDRESS from demo files

* Add return variable for IP_Init fucntions
6 months ago
Rahul Kar 8582188293
ARMv7-R No_GIC Port Demo (#1236)
Add ARM_CRx_No_GIC_Demo
6 months ago
Rahul Kar d3d6893489
Update README to fix broken links (#1240) 6 months ago
Gaurav-Aggarwal-AWS 5f52d71cee
Update kernel submodule pointer (#1239)
* Update kernel submodule pointer

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

* Update manifest

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

---------

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
6 months ago
Gaurav-Aggarwal-AWS a57ee50f67
Unit test updates for kernel PR #1111 (#1238)
* Unit test updates for kernel PR #1111

https://github.com/FreeRTOS/FreeRTOS-Kernel/pull/1111

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

* Fix doxygen check

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

---------

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
6 months ago
Michael Tautschnig c1d2ba94c0
Use CBMC version 5.95.1 (#1226)
The upcoming CBMC version 6 release includes changes that may affect
existing proofs. This PR will make sure that FreeRTOS PRs are not
negatively impacted by this release. After releasing CBMC version 6 we
will issue a follow-up PR that will return FreeRTOS to using CBMC's
latest release, and will include any changes to proofs that may be
necessary to support the new version.

Co-authored-by: Rahul Kar <118818625+kar-rahul-aws@users.noreply.github.com>
Co-authored-by: Nikhil Kamath <110539926+amazonKamath@users.noreply.github.com>
6 months ago
Niklas 36b803e358
fix AbortDelay.c Test (#1237)
* fix AbortDelay.c Test

* Uncrustify: triggered by comment.

* Update comment

* Fix formatting

---------

Co-authored-by: Niklas Jenner <niklas.jenner@ifta.com>
Co-authored-by: GitHub Action <action@github.com>
Co-authored-by: Monika Singh <moninom@amazon.com>
6 months ago
Florian La Roche 82099c32a0
CORTEX_MPU_M3_MPS2_QEMU_GCC: remove unused defines (#1233)
From CORTEX_MPU_M3_MPS2_QEMU_GCC remove unused configNUM_TX_DESCRIPTORS
define and remove HEAP3 from as heap_4.c is used.

Signed-off-by: Florian La Roche <Florian.LaRoche@gmail.com>
Co-authored-by: Rahul Kar <118818625+kar-rahul-aws@users.noreply.github.com>
7 months ago
Florian La Roche 29d3e527ec
Posix_GCC: use complete function declaration (#1234)
complete function declaration for Posix_GCC

Signed-off-by: Florian La Roche <Florian.LaRoche@gmail.com>
7 months ago
Rahul Kar ba4f37f3bb
Fix compilation issue in WinSim Demo (#1232)
* Fix compilation issue

* Fix formatting

* Uncrustify: triggered by comment.

* Remove commented line

---------

Co-authored-by: GitHub Action <action@github.com>
7 months ago
Florian La Roche a33d259b0c
FreeRTOS_Plus_TCP_Echo_Qemu_mps2: remove unused defines/functions (#1229)
For FreeRTOS_Plus_TCP_Echo_Qemu_mps2:
- remove unused defines
- disable unused functions
- typo: ipconfigUSE_DNS -> ipconfigUSE_DHCP

Signed-off-by: Florian La Roche <Florian.LaRoche@gmail.com>
Co-authored-by: Anubhav Rawal <113639451+rawalexe@users.noreply.github.com>
Co-authored-by: Rahul Kar <118818625+kar-rahul-aws@users.noreply.github.com>
7 months ago
chinglee-iot b2b177aa59
Remove the configASSERT unit test for prvCheckForRunStateChange (#1231) 8 months ago
Gaurav-Aggarwal-AWS bf046c15f7
Fix unit test for kernel PR #1082 (#1228)
Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
8 months ago
Florian La Roche 5f85f43c39
Posix_GCC: update compiler options (#1227)
Posix_GCC: update compiler options

1. Add to CFLAGS
   - add -O0 optimization for debug builds.
   - add -O3 optimization for release builds. 
2. Update signal handler `handle_sigint()` to use
  `_exit()` instead of `exit()`. Normal exit() is not allowed
  within a signal handler.

Signed-off-by: Florian La Roche <Florian.LaRoche@gmail.com>
8 months ago
Florian La Roche 995a030a92
MPS2_AN385 improvements (#1225)
* MPS2_AN385 improvements

Sync various MPS2_AN385 CORTEX-M3 QEMU targets and improve their
Makefiles and cleanup gcc support:
- FreeRTOS-Plus/Demo/FreeRTOS_Plus_TCP_Echo_Qemu_mps2:
  - Makefile
    - output image size after linking
    - move -nostartfiles from compiler to linker flags
    - modernize compiler warning flags
    - add --gc-sections to linker flags
  - TCPEchoClient_SingleTasks.c: fix compiler warnings
  - main.c: fix compiler warnings (remove unused code)
  - main_networking.c
    - remove ipLOCAL_MAC_ADDRESS (unknown)
    - fix compiler warnings about unused params
  - startup.c: main(void), remove unused includes,
    silence  unused params
  - syscalls.c: remove unused defines, silence unused params,
    more compact _sbrk()
- FreeRTOS/Demo/CORTEX_MPS2_QEMU_IAR_GCC/build/gcc:
  - Makefile
    - CFLAGS/LDFLAGS in more readable lines
    - move -nostartfiles to linker flags
    - comment out -specs=rdimon.specs as it is not needed
  - startup_gcc.c: fix typo in comment, remove unused uart code
- FreeRTOS/Demo/CORTEX_MPU_M3_MPS2_QEMU_GCC
  - Makefile
    - after compilation output size of image
    - remove -DQEMU_SOC_MPS2, not needed
    - update many CFLAGS/LDFLAGS settings to more modern gcc/source
    - -ffunction-sections -fdata-sections is moved to CFLAGS
  - startup.c: sync with other ports
  - syscall.c: _write(): param buf is not unused, silence unused params

Signed-off-by: Florian La Roche <Florian.LaRoche@gmail.com>

* remove ipLOCAL_MAC_ADDRESS completely and fix formatting errors

remove ipLOCAL_MAC_ADDRESS completely and fix formatting errors

Signed-off-by: Florian La Roche <Florian.LaRoche@gmail.com>
8 months ago
Florian La Roche 49bbe71166
Demo/CORTEX_MPS2_QEMU_IAR_GCC add path to IMAGE and remove mapfile (#1223)
For Demo/CORTEX_MPS2_QEMU_IAR_GCC gcc Makefile:
- simplify IMAGE var to already include full path
- clean target also removes mapfile

Signed-off-by: Florian La Roche <Florian.LaRoche@gmail.com>
Co-authored-by: Gaurav-Aggarwal-AWS <33462878+aggarg@users.noreply.github.com>
8 months ago
Florian La Roche 8e54579341
Demo/CORTEX_MPU_M3_MPS2_QEMU_GCC/syscall.c: remove unused g_ulBase (#1224)
In FreeRTOS/Demo/CORTEX_MPU_M3_MPS2_QEMU_GCC/syscall.c the
extern definition of g_ulBase ist not used, so remove it.
Also move _heap_bottom and _heap_top to where they are used
in syscall.c.

Signed-off-by: Florian La Roche <Florian.LaRoche@gmail.com>
8 months ago
chinglee-iot 6518cb153d
Update cellular comm interface to generate interrupt from windows thread (#1221)
* Make use of vPortGenerateSimulatedInterruptFromWindowsThread to generate interrupt from windows thread
9 months ago
Tony Josi a3f42a78e7
Fleet provisioning winsim demo - fix warnings and reduce demo path length (#1222)
* Rename .\FreeRTOS-Plus\Demo\AWS\Fleet_Provisioning_Windows_Simulator\Fleet_Provisioning_With_CSR_Demo\ to .\FreeRTOS-Plus\Demo\AWS\Fleet_Provisioning_Windows_Simulator\CSR_Demo\ to reduce path length limit on Windows (260)

* Fix warnings in fleet provisioning demo

* Update path in CI actions script

* Fix formatting
9 months ago
chinglee-iot 680a1255e2
Fix coreHTTP demo compile warning (#1219)
Co-authored-by: Rahul Kar <118818625+kar-rahul-aws@users.noreply.github.com>
9 months ago
Rahul Kar 6cda0cf7fc
Update coreSNTP demo file to fix warnings (#1218)
* Update demo file to fix warnings

* Remove extra overflow check in sntpClient_GetTime function

* Add assert checking for UTC rollover

* Fix configASSERT condition

---------

Co-authored-by: GitHub Action <action@github.com>
Co-authored-by: Ching-Hsin,Lee <chinglee@amazon.com>
9 months ago
Tony Josi 8f3277f7eb
Fix MQTT wolfssl demo, add wolfssl config WOLFSSL_ALT_CERT_CHAINS (#1217) 9 months ago
Tony Josi 97b800e339
Update MQTT broker setup steps (#1215)
* Update MQTT broker setup in FreeRTOS-Plus/Demo/coreMQTT_Windows_Simulator/MQTT_Multitask/mqtt_broker_setup.txt

* Minor fix

---------

Co-authored-by: Gaurav-Aggarwal-AWS <33462878+aggarg@users.noreply.github.com>
9 months ago
Tony Josi 24ad46b7f8
Fix MQTT multitask demo build (#1214)
* Fix MQTT multitask demo build

* Fix formatting

* Update FreeRTOS-Plus/Demo/Common/coreMQTT_Agent_Interface/freertos_command_pool.c

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

---------

Co-authored-by: Gaurav-Aggarwal-AWS <33462878+aggarg@users.noreply.github.com>
9 months ago
Florian La Roche 140ce29320
Demo/CORTEX_MPS2_QEMU_IAR_GCC cleanup (#1213)
Some small changes for Demo/CORTEX_MPS2_QEMU_IAR_GCC:
- FreeRTOSConfig.h: define configENABLE_BACKWARD_COMPATIBILITY to 0
- build/gcc/Makefile: remove unused SUB_MAKEFILE_DIR
- build/gcc/Makefile: no trailing slash(/) for FREERTOS_ROOT
- build/gcc/Makefile: commented out, but prepared:
   - CFLAGS += -Wpedantic -Wshadow -fanalyzer
   - CFLAGS += -flto
- build/gcc/startup_gcc.c:
   - "__attribute__( ( naked ) )" for Reset_Handler
   - "__attribute__( ( used ) )" for isr_vector and prvGetRegistersFromStack

Signed-off-by: Florian La Roche <Florian.LaRoche@gmail.com>
Co-authored-by: Rahul Kar <118818625+kar-rahul-aws@users.noreply.github.com>
9 months ago
Florian La Roche 022447b855
Demo/CORTEX_MPU_M3_MPS2_QEMU_GCC: optimize _sbrk() (#1211)
Optimize _sbrk() from runtime to compiletime initialization.
Fix compiler warnings by adjusting (void *) and (char *) types.

Complete function declarations for uart_init() and _getpid().

Signed-off-by: Florian La Roche <Florian.LaRoche@gmail.com>
Co-authored-by: Rahul Kar <118818625+kar-rahul-aws@users.noreply.github.com>
10 months ago
Florian La Roche 17eeb79698
Demo/Posix_GCC cleanup (#1212)
Demo/Posix_GCC cleanup

- Guard prvSaveTraceFile() function definition.
- Remove "cid" as it is unused.
- handle_sigint(): quiet compiler warning about unused param.
- main_full.c: prvCheckTask(): Remove unused var "xHeapStats".

Signed-off-by: Florian La Roche <Florian.LaRoche@gmail.com>
10 months ago
xuelix 2023ac6404
Fix the erroneous check (#1210)
This is to address this issue: https://github.com/FreeRTOS/FreeRTOS/issues/1206
10 months ago
Tony Josi 469b8ad175
Fix MQTT keep alive and winsim logging warnings (#1209)
* Fix MQTT keep alive and winsim logging warnigs

* Fix winsim logging warnings

* Fix winsim logging warnings
10 months ago
wat 2b499ab780
[WIN32-MingW Demo] Modify project setting files to resolve compiler errors on Eclipse (#1203)
* Exclude unnecessary directories from build.
1. "FreeRTOS/Source/example"
2. "FreeRTOS+Trace Recorder/extras"
3. "FreeRTOS+Trace Recorder/kernelports/BareMetal"
4. "FreeRTOS+Trace Recorder/kernelports/ESP-IDF_FreeRTOS"
5. "FreeRTOS+Trace Recorder/kernelports/ThreadX"
6. "FreeRTOS+Trace Recorder/kernelports/Zephyr"

1 is applied to both of "Debug" configuration and "Debug_CodeCoverage" configuration.
Others are applied to only "Debug" configuration because those directories are already excluded from build on "Debug_Coverage" configuration.

* Include path setting is modified.
1.Directory name is modified.("Include" -> "include")
2.New path is added.(FreeRTOS+Trace Recorder/kernelports/FreeRTOS/include)
These modifications are needed to build "Debug" configuration. They are not needed for "Debug_CodeCoverage" configuration because these paths are not used. But these modifications are applied to both of "Debug" configuration and "Debug_CodeCoverage" configuration because of future potential risk.

* [WIN32-MingW Demo] Replace "Exclude from Build" by "Resource Filter".

"Resource Filter" is better than "Exclude from Build" because "Resource Filter" makes excluded directories invisible on Eclipse GUI. But some directories are still "Exclude from Build" because they should be excluded only on "Debug_CodeCoverage" configuration. "Resource Filter" cannot be specified to each configuration separately.

* Code review suggestions

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

---------

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
Co-authored-by: Rahul Kar <118818625+kar-rahul-aws@users.noreply.github.com>
Co-authored-by: Gaurav Aggarwal <aggarg@amazon.com>
10 months ago
chinglee-iot 66b0b0a5a0
Update corePKCS11 submodule pointer (#1208)
* Update corePKCS11 submodule pointer
* Fix corePKCS11 MQTT mutual authenticated demo
* Sync with other demo to wait for network up.
* Fix compiler warning.
10 months ago
chinglee-iot e6b4e8288f
Fix corePKCS11 demo logging message (#1205)
* Flush demo log before demo exit in corePKCS11 demo
* Fix logging line break problem
* Flush log when there is assertion
10 months ago
chinglee-iot dd4789cdba
Update kernel submodule for vTaskSuspendAll change (#1207)
* Update kernel submodule pointer for vTaskSuspendAll change
10 months ago
chinglee-iot 28177788d0
Fix vTaskSuspendAll assertion unit test (#1204)
* Update kernel submodule to address vTaskDelete and vTaskSuspend change
10 months ago
Keith Packard eb97c5d325
Make a couple of demos build using picolibc (#1202)
* [RISC-V-Qemu-virt_GCC Demo] Add picolibc support

Add minimal picolibc support:

 * Use --specs=picolibc.specs to direct gcc at picolibc
 * Use -DPICOLIBC_INTEGER_PRINTF_SCANF to enable smaller printf implementation
 * Enable configUSE_PICOLIBC_TLS for thread local storage
 * Add TLS section to linker script

Signed-off-by: Keith Packard <keithpac@amazon.com>

* [CORTEX_MPU_M3_MPS2_QEMU_GCC Demo] Add picolibc support

Add minimal picolibc support to this demo

 * Use --specs=picolibc.specs to direct gcc at picolibc
 * Use -DPICOLIBC_INTEGER_PRINTF_SCANF to enable smaller printf implementation
 * Enable configUSE_PICOLIBC_TLS for thread local storage
 * Add TLS section to linker script
 * Replace newlib syscall hooks with picolibc ones

Signed-off-by: Keith Packard <keithpac@amazon.com>

---------

Signed-off-by: Keith Packard <keithpac@amazon.com>
Co-authored-by: Keith Packard <keithpac@amazon.com>
10 months ago
wat 7514cd3d54
[WIN32-MSVC Demo] Define TickType_t width based on the target platform(32bit/64bit). (#1201)
* [WIN32-MSVC Demo] Add tick type width definition based on the target platform.(32bit/64bit)
32bit TickType_t is used on Win32 target. 64bit TickType_t is used on x64 target.

Reason of change: Before this change, 32bit TickType_t is always used in MSVC demo. It is inefficient  for 64bit target. In addition, compiler reported warnings for the cast operation between TickType_t and (void *) pointer if the target is x64 because of different width. 64bit TickType_t should be used instead of 32bit if target is 64bit.

* [WIN32-MSVC Demo] Change type of some variables from uint32_t to UBaseType_t.

Reason of change: These variables are cast to/from pointer type in existing codes. x64 compiler reports warnings for the cast operations between uint32_t and pointer type. UBaseType_t solves those warnings because it has same width as pointer type on both of Win32 platform and x64 platform.

* [WIN32-MSVC Demo]Correct prefix of variables and indent to follow coding style guide.

* [WIN32-MSVC Demo]Correct type of the argument in vApplicationGetIdleTaskMemory() prototype declaration.
It is corrected to match original declaration described in task.h.

* [WIN32-MSVC] Add cast operation to solve compiler warnings on x64 platform.
Before this change, compiler claimed that the cast operation to wider type should be applied before other arithmetic operations because of overflow risk. There is no overflow risk here but it is modified to solve compiler warnings.
10 months ago
Soren Ptak 4592acca4c
Update Cortex R4F and Cortex R5F MPU Demos (#1200)
* Set configUSE_EVENT_GROUPS to 0 in the CORTEX_MPU_R4/5F Demos.
* Update the FreeRTOS-Kernel submodule to use the latest FreeRTOS-Kernel.
10 months ago
wat 076430b2ab
[WIN32-MingW Demo] TickType_t width is defined based on compiler type.(32bit/64bit) (#1199)
* [WIN32-MingW Demo] Add tick type width definition based on compiler type.(32bit/64bit)
32bit TickType_t is used if compiler is MinGW32. 64bit TickType_t is used if compiler is MinGW64.

Reason of change: Before this change, 32bit TickType_t is always used in MinGW demo. It is inefficient  for 64bit compiler. In addition, MinGW64 reported warnings for the cast operation between TickType_t and (void *) pointer because of different width. 64bit TickType_t should be used instead of 32bit if compiler is 64bit.

* [WIN32-MingW Demo] Change printf() format specifiers from %u to %llu.

Reason of change: %u specifier corrupts 64bit tick count because it supports only 32bit value. %llu can be used for both of 64bit value and 32bit value.(After casting to 64bit)

* [WIN32-MingW Demo] Change type of some variables from uint32_t to UBaseType_t.

Reason of change: These variables are cast to/from pointer type in existing codes. 64bit compiler(MinGW64) reports warnings for the cast operations between uint32_t and pointer type. UBaseType_t solves those warnings because it has same width as pointer type on both of MinGW32 and MinGW64.

* [WIN32-MingW Demo] Change type of some variables from uint32_t to UBaseType_t.

Same change as previous commit is applied to source codes which are built only on Debug configuration.

* [WIN32-MingW Demo] Add brackets to the condition in #if statement. Behavior is not changed. Reason of change is to follow coding style guide of FreeRTOS.

* Update "FreeRTOS/Source" submodule(FreeRTOS-kernel) to #1008.

* [WIN32-MingW Demo] Change type of one more variable from uint32_t to UBaseType_t.

Additional modification for solving compiler warnings for the cast operation on MinGW64.

* Update FreeRTOS-kernel submodule version in manifest.yml.

* Modify prefix of variables to follow coding style guide.

* Code review suggestions

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

---------

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
Co-authored-by: ActoryOu <ousc@amazon.com>
Co-authored-by: Gaurav-Aggarwal-AWS <33462878+aggarg@users.noreply.github.com>
Co-authored-by: Gaurav Aggarwal <aggarg@amazon.com>
10 months ago
Soren Ptak 273fb94328
ARMv7-R MPU Port Demos (#1149)
* Add in a Cortex R5F MPU demo for the Hercules RM57 Development Kit.
* Add in a Cortex R4F MPU demo for the Hercules RM46 Development Kit.
* Provide a Code Composer Studio (CCS) project for running these demos.
* Provide a CMakeLists.txt file to allow for compilation of the demos without use of an IDE.
* Add a CI-CD build of these demos using CMake with Fetch-Content.
* Include necessary README to explain the new demos.
---------
10 months ago
chinglee-iot 8517050490
Fix HTTP_S3_Download compile warning (#1195)
* Fix xPlatformIsNetworkUp() is undeclared warning
* Fix cast const type warning

Co-authored-by: Soren Ptak <ptaksoren@gmail.com>
Co-authored-by: Rahul Kar <118818625+kar-rahul-aws@users.noreply.github.com>
10 months ago
Rahul Kar 857962d638
Add support to build Posix Demo with Dynamic Allocation (#1198)
Add support for dynamic allocation in posix demo
10 months ago
chinglee-iot bc5587ce5f
Fix FreeRTOS-Plus device defender, shadow and job demo warnings (#1193)
* Fix FreeRTOS-Plus device defender, shadow and job demo warnings
* Cast to void * for vPortFree
10 months ago
ActoryOu c5c41ef3af
Update result section in README under CBMC folder. (#1196)
* Update result section in README under CBMC folder

* Code review suggestions

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

* Update proofs result path

---------

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>
11 months ago