Commit graph

1290 commits

Author SHA1 Message Date
Rahul Kar
012e618b6d
Update MPU Demos for Kernel V10.6.2 (#1124)
Update MPU Demos for Kernel V10.6.2
2023-12-11 23:24:53 +05:30
chinglee-iot
0857bd7b72
Update submodule for kernel and community demos (#1134) 2023-12-11 16:18:50 +08:00
chinglee-iot
76c0f8788c
Fix SMP unit test for switch hook (#1133)
* Fix SMP unit test for switch hook
2023-12-11 15:04:20 +08:00
chinglee-iot
0945a8ac50
Update FreeRTOS.h for portSWITCH_TASK_HOOK in unit test (#1131)
* Update FreeRTOS.h for portTASK_SWITCH_HOOK

---------

Co-authored-by: GitHub Action <action@github.com>
2023-12-11 13:29:32 +08:00
chinglee-iot
831035a00f
Update kernel submodule pointer for get idle task handle (#1129) 2023-12-05 15:10:12 +08:00
chinglee-iot
30fadd8d38
Add unit test for xTaskGetIdleTaskHandleForCore (#1119)
* Add unit test for xTaskGetIdleTaskHandleForCore()

---------

Co-authored-by: Rahul Kar <118818625+kar-rahul-aws@users.noreply.github.com>
2023-12-05 13:37:50 +08:00
Soren Ptak
f6d2b62ec6
Remove 64 Bit Visual Studio Configurations (#1120) 2023-12-01 06:00:16 -05:00
Moral-Hao
fd352fd185 Fix misusage of CMock in dir tasks.
1. Change CMock policy of pointer from smart to compare_ptr;
2. Fix errors in test cases found by CMock.
2023-11-27 12:51:35 -08:00
chinglee-iot
eccc2545d8
Add back mtCOVERAGE_TEST_MARKER in stream_buffer unit test (#1110)
* Add back mtCOVERAGE_TEST_MARKER in stream_buffer unit test
2023-11-16 12:19:24 +08:00
chinglee-iot
24eed82bee
Update kernel submodule (#1117) 2023-11-16 12:05:32 +08:00
chinglee-iot
0a62d564c1
Fix unit test for passive idle task (#1116)
* Fix comilation problem with unit test for passive idle task memory
2023-11-16 08:54:39 +08:00
chinglee-iot
174b4562f4
Add test cases to cover prvCreateIdleTasks for SMP (#1114)
* Add test cases to cover vApplicationGetIdleTaskMemory and 
  vApplicationGetPassiveIdleTaskMemory for prvCreateIdleTasks
2023-11-15 15:39:50 +08:00
Moral-Hao
ae39f8e245
Fix one typical misusage of CMock. (#1112)
* Fix one typical misusage of CMock.

CMock has three policies when dealing with pointer:
1. compare_ptr : compare the pointer itself;
2. compare_data : compare the data which is pointed by pointer;
3. smart : compare the pointer itself, or compare the data;
By default, CMock use compare_data policy.

Most test cases in FreeRTOS need to compare the pointer itself,
and we haven't use CMock properly.
For example, one test case of vTaskResume is wrong, because current
CMock compares the data pointed by pointer, so the error didn't exposed.

There are so many misusage need to fix, it will take a lot of work.
I'm here to fix one typical misusage first.

* Try to fix formatting syntax.
2023-11-13 15:44:59 -08:00
Moral-Hao
55d07daf0a
Add CMock test case for vTaskResume (#1111)
* Add Cmock test case for updates in vTaskResume API introduced in Kernel PR#865.

* Update Kernel submodule pointer

---------

Co-authored-by: Rahul Kar <karahulx@amazon.com>
2023-11-07 16:09:28 +05:30
Monika Singh
f60dd88609
Remove deprecated ipconfigRAND32 (#1108)
* Remove deprecated ipconfigRAND32

* Uncrustify: triggered by comment.

* Update

* Check for return value

* Uncrustify: triggered by comment.

* Update

---------

Co-authored-by: GitHub Action <action@github.com>
2023-11-01 12:33:25 +05:30
chinglee-iot
e7d39763db
Add unit test for FreeRTOS SMP (#1047)
* Add unit test for FreeRTOS SMP to verify SMP scheduler logic in tasks.c which is enclosed by `configNUMBER_OF_CORES > 1`.

---------

Co-authored-by: Joshua Zarr <joshzarr@amazon.com>
Co-authored-by: Anubhav Rawal <rawalexe@amazon.com>
Co-authored-by: Alfred Gedeon <alfred2g@hotmail.com>
Co-authored-by: Adam Scislowicz <adamds@amazon.com>
Co-authored-by: jannusi <121577776+jannusi@users.noreply.github.com>
Co-authored-by: Krishna Vamsi Tallapaneni <124737189+vamsitas@users.noreply.github.com>
Co-authored-by: Kody Stribrny <kstribrn@amazon.com>
Co-authored-by: kar-rahul-aws <118818625+kar-rahul-aws@users.noreply.github.com>
2023-10-31 08:34:59 +08:00
chinglee-iot
1114e8f39b
Add kernel base priority get unit test (#1099)
* Add uxTaskBasePriorityGet and uxTaskBasePriorityGetFromISR unit test
2023-10-18 15:03:39 +08:00
Rahul Kar
03926888d8
Fix Unit test for APIs ulTaskNotifyTake and xTaskNotifyWait (#1102) 2023-10-17 09:54:06 +05:30
Anubhav Rawal
ddb6e58d0a
Updates FreeRTOS-Plus-Trace to a submodule pointer (#1082)
This PR updates FreeRTOS-Plus-Trace to a submodule pointer and
updates the relevant project files.  Percepio recommends to use
streaming to ring buffer on a 64-bit system instead of snapshot
and therefore, POSIX demo is updated to use streaming to ring
buffer.
2023-10-13 11:04:55 +05:30
chinglee-iot
d3575643b8
Update for kernel idle task unit test (#1096)
* Update unit test to cover idle task name longer than configMAX_TASK_NAME_LEN
* Update community supported demo submodule pointer
* Update kernel submodule pointer
* Update CBMC test

---------

Co-authored-by: Soren Ptak <ptaksoren@gmail.com>
2023-10-12 12:53:52 +08:00
kar-rahul-aws
d1d78528a2
Remove CORTEX_M3_MPS2_QEMU_GCC demo (#1089)
* Remove CORTEX_M3_MPS2_QEMU_GCC demo
2023-09-20 10:59:36 +05:30
kar-rahul-aws
58765d6b4c
Fix duration of TimerMode Task in WIN32-MingW Demo (#1084)
* Reduce duration of prvDemonstrateChangingTimerReloadMode  Task

* Apply same change in WIN32-MingW Demo

* Add changes to Posix_GCC Demo
2023-09-18 11:14:05 +05:30
wuliyong
8104777681
RISC-V-Qemu-virt_GCC: correct configCPU_CLOCK_HZ define (#1086)
* RISC-V-Qemu-virt_GCC: correct configCPU_CLOCK_HZ define

fix configCPU_CLOCK_HZ define for correct freeRTOS tick:
Qemu simulator runs at 10MHZ, defined by
RISCV_ACLINT_DEFAULT_TIMEBASE_FREQ at
https://github.com/qemu/qemu/blob/master/include/hw/intc/riscv_aclint.h

* Fix CI 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>
2023-09-12 21:27:42 +05:30
Gaurav-Aggarwal-AWS
99f5b80ae4
Install FreeRTOS trap handler (#1087)
Install FreeRTOS trap handler

The application is supposed to program mtvec correctly depending on
whether they want to use vectored interrupt or not.

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
2023-09-11 23:17:46 +05:30
Soren Ptak
3a2f6646f0
Use CI-CD-Github-Actions for spelling and formatting, add in the bot formatting action, update the CI-CD workflow files. Fix incorrect spelling and formatting on files. (#1083)
* Use new version of CI-CD Actions,  checkout@v3 instead of checkout@v2 on all jobs
* Use cSpell spell check, and use ubuntu-20.04 for formatting check
* Add in bot formatting action
* Update freertos_demo.yml and freertos_plus_demo.yml files to increase github log readability
* Add in a Qemu demo onto the workflows.
2023-09-06 12:35:37 -07:00
kar-rahul-aws
4e2a02323b
Fix ATMega port demos (#1060)
* Fix ATMEGA port demos

* Remove GCC folder from proj file
2023-08-24 00:00:58 +05:30
ActoryOu
20b6c13c07
Apply compile option change on RP2040 (#1064)
* Update kernel and community-supported-demos submodule pointer to apply compile option change on RP2040

* Update manifest

* Update +TCP submodule pointer

* Revert "Update +TCP submodule pointer"

This reverts commit d090230eef40f26a2a2c9b5f3d2d1b7a043a7521.

---------

Co-authored-by: kar-rahul-aws <118818625+kar-rahul-aws@users.noreply.github.com>
Co-authored-by: chinglee-iot <61685396+chinglee-iot@users.noreply.github.com>
2023-08-22 17:56:00 +08:00
Gaurav-Aggarwal-AWS
38a57333ed
Fix unit test for Kernel PR #760 (#1075)
* Fix unit test for Kernel PR #760
* Update kernel submodule pointer
---------

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
2023-08-18 11:42:14 -07:00
kar-rahul-aws
80db00d98b
Add uxQueueGetQueueLength API in queue unit tests (#1074)
* Add uxQueueGetQueueLength API in queue unit tests
for code coverage

* Update Submodule pointer for Kernel V10.6.1

Signed-off-by: kar-rahul-aws <karahulx@amazon.com>
2023-08-18 16:13:50 +05:30
kar-rahul-aws
21f7947ab1
Make unit tests backward compatible (#1073)
Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
Co-authored-by: Gaurav Aggarwal <aggarg@amazon.com>
2023-08-17 16:51:18 +05:30
chinglee-iot
ed2717767a
Posix demo use heap_3 in cmake (#1068) 2023-08-16 15:58:56 +08:00
Gaurav-Aggarwal-AWS
405b518f61
Update submodule pointers for demos (#1051)
Update submodule pointers for demos

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
2023-08-03 17:33:57 +05:30
kar-rahul-aws
5861ac4d7a
Update MPU Demos for Kernel V10.6.0 (#1057)
Update MPU Demos for Kernel V10.6.0
2023-08-03 14:28:25 +05:30
Gaurav-Aggarwal-AWS
1cf219a80b
Enable Werror for Posix Demo Coverage Test target (#1059)
Enable Werror for Posix Demo Coverage Test target

Werror cannot be enabled for the non coverage test because tracelyzer
code generates warnings in that target.

Also add "Build Posix_GCC Demo for Coverage Test" in the PR checks to
catch warnings from kernel code in PR checks.

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
2023-08-02 15:39:38 +05:30
chinglee-iot
f776f5ee4a
Move demos in Community-Supported to Community-Supported-Demos (#1053)
* Move demos in Community-Supported to Community-Supported-Demos
* Update RP2040 CI workflow path
2023-07-27 14:50:38 +08:00
chinglee-iot
6eb8fc5f51
Merge SMP demos from FreeRTOS-SMP-Demos (#1046)
* Merge RP2040 and XMOS AICORE SMP demos to main branch from FreeRTOS-SMP-Demos
* Update the common test for SMP demos
* Update the kernel submodule
2023-07-24 21:17:17 +08:00
chinglee-iot
7adb08eff5
Update single core CMBC and unit test (#1045)
This PR fixes CBMC and unit test for single core FreeRTOS in the FreeRTOS-Kernel PR - https://github.com/FreeRTOS/FreeRTOS-Kernel/pull/716.

- xYieldPendings and xIdleTaskHandles are now an array. Update in FreeRTOS unit test.
-  Update CBMC patches.
2023-07-24 15:42:20 +05:30
kar-rahul-aws
278e6c4b49
Update ReadMe (#1044)
Co-authored-by: Gaurav-Aggarwal-AWS <33462878+aggarg@users.noreply.github.com>
2023-07-24 14:20:29 +05:30
kar-rahul-aws
8b98d08bcc
Update queue Unit Tests to add uxQueueItemSize (#1040)
Co-authored-by: Gaurav-Aggarwal-AWS <33462878+aggarg@users.noreply.github.com>
2023-07-18 15:12:00 +05:30
kar-rahul-aws
6682dbbc5b
Update submodule pointer for Kernel V10.6.0 (#1037)
* Update submodule pointer for Kernel V10.6.0

* Update commit hash

* Fix failed CBMC proofs

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

* Update manifest.yml

* Update hash commit to match submodule

---------

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
Co-authored-by: Gaurav Aggarwal <aggarg@amazon.com>
2023-07-18 09:28:02 +05:30
kar-rahul-aws
5d94b20aa8
Make changes required for MPU enhancements (#1034)
1. Add macro configUSE_MPU_WRAPPERS_V1 to allow Demo compatibility with
the old mpu wrapper .

2. Add Dummy xMPU_SETTINGS in portmacro.h file for Unit Tests .

Signed-off-by: kar-rahul-aws <karahulx@amazon.com>
2023-07-13 16:32:05 +05:30
chinglee-iot
8f3233e0a0
Adding CMakeList.txt in posix GCC demos (#1020)
* Add cmake for posix GCC demo

---------

Co-authored-by: Gaurav-Aggarwal-AWS <33462878+aggarg@users.noreply.github.com>
2023-06-16 15:20:52 +08:00
Aniruddha Kanhere
1277ba1661
Revert "Remove coroutines (#874)" (#1019)
* Revert "Remove coroutines (#874)"

This reverts commit 569c78fd8c.

* Update freertos Kernel submodule to latest head

* Remove temporary files

* Fix MingW demos and spell check

* Fix manifest version; fix headers

* Add ignore files and paths to core-checker.py

* Fix copyright in remaining files

* Fix PR check build failure

1. Remove defining `inline` in Makefile. This was causing build
   warnings.
2. Ensure that the linker removed unused functions from various
   compilation units.
3. Update the linker script so that all the functions are correctly
   placed in FLASH section.

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

---------

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
Co-authored-by: Gaurav Aggarwal <aggarg@amazon.com>
2023-06-09 15:25:48 -07:00
Xiaodong Li
9ccae851e7
Create GitHub Workflows that execute the p3 FreeRTOS Kernel Demos (#1018)
* test full demo

* Revert "test full demo"

This reverts commit 09efa00ec0a3f021f190112fa11bc0f4c6c058bb.

revert back to origin

* pre-define user demo to blinky demo

* pre-define user demo to blinky demo with -j

* test run win32-msvc demo

* test run win32-msvc demo

* test run win32-msvc demo

* update git workflow to run WIN32-MSVC demo

* update git workflow to run WIN32-MSVC demo

* update git workflow to run WIN32-MSVC demo

* update git workflow to run WIN32-MSVC demo

* update git workflow to run WIN32-MSVC demo

* update git workflow to run WIN32-MSVC demo

* update git workflow to run WIN32-MSVC demo

* update trigger action

* build and run WIN32-MSVC blinky demo

* build and run WIN32-MSVC blinky demo

* build and run WIN32-MSVC blinky demo

* update WIN32-MSVC workflow

* update WIN32-MSVC Demo main.c file to remove buffer

* Update main.c files to remove buffer when running executable_monitor file for Git Action

* update formatting for WIN32-MSVC demos

* update formatting for Posix demo

* update comment for setvbuf function used in main.c

* add git build and run action for WIN32-MingW Full and Blinky demos; update main.c file to set buffer size as 0

* add git build and run action for WIN32-MingW Full and Blinky demos; update main.c file to set buffer size as 0

* remove whitespace for freertos_demos.yml file

* add function to Force stdout to write immediately by setting the buffer size for it to 0 in demo main.c file when running git Run Action; Correct formatting error for WIN32-MingW main.c file

* add function to Force stdout to write immediately by setting the buffer size for it to 0 in demo main.c file when running git Run Action

* update git run action commands for Posix_GCC demo

* update git run action commands for Posix_GCC demo

* update git run action commands for Posix_GCC demo

* reduce timeout and correct formatting issue

* reduce timeout

---------

Co-authored-by: Xiaodong Li <xiaodonn@amazon.com>
2023-06-09 10:01:35 -07:00
e14002270
d60b34c8e2
risc-v: Fix build flags and linker scripts (#906)
1. miss debug info in assembly code
RISC-V-spike-htif_GCC
        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'
        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

2. binutils 2.39 ld warn 'has a LOAD segment with RWX permissions'
RISC-V-Qemu-virt_GCC
RISC-V-spike-htif_GCC
RISC-V_RV32_QEMU_VIRT_GCC

3. fix build fail
RISC-V_RV32_QEMU_VIRT_GCC

Signed-off-by: Eric Chan <e14002270@gmail.com>
2023-05-31 11:48:13 -07:00
Paul Bartell
11ebab0488 Update FreeRTOS-Kernel Source submodule 2023-05-26 16:43:56 -07:00
Gaurav-Aggarwal-AWS
2f5b186ea2
Add unit tests for kernel PR #679 (#1015)
Also, fix the broken tests by that PR.

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
2023-05-25 16:24:35 +05:30
Gaurav-Aggarwal-AWS
9e1c6e1ab1
Fix file path in the project file (#1013)
Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
2023-05-15 23:33:10 +05:30
Devaraj Ranganna
201472a578
Update FreeRTOSconfig.h for M2351 (#1005)
The number of implemented priority bits for Armv8-M baseline
implementation is defined by the architecture as 2. Therefore the
config option `configPRIO_BITS` is updated to 2.

In addition, in Armv8-M baseline implementation BASEPRI is RES0.
Therefore, `configMAX_SYSCALL_INTERRUPT_PRIORITY` is not supported. Hence
this config option is removed.

Signed-off-by: Devaraj Ranganna <devaraj.ranganna@arm.com>
Co-authored-by: Gaurav-Aggarwal-AWS <33462878+aggarg@users.noreply.github.com>
2023-05-15 16:04:27 +05:30
kar-rahul-aws
03db1e8e49
Set configMAX_SYSCALL_INTERRUPT_PRIORITY to 4 for QEMU demos (#986)
* Update FreeRTOSConfig.h

* Update FreeRTOSConfig.h

* Update FreeRTOSConfig.h
2023-04-28 18:18:38 +05:30