Commit graph

3102 commits

Author SHA1 Message Date
Carl Lundin
4a7a48790d
Add Uncrustify file used for Kernel. (#163) 2020-07-23 10:22:33 -07:00
Aniruddha Kanhere
e0d62163b0
Sync with +TCP amazon-FreeRTOS (#158)
* DNS.c commit

* IP.c commit

* Add various source & header files
2020-07-22 18:06:23 -07:00
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>
2020-07-21 09:51:20 -07:00
Hein Tibosch
c720c18ada
FreeRTOS+TCP Adding the combined driver for SAM4E and SAME70 v2 (#78)
* Adding a combined +TCP driver for SAM4E and SAME70

* Changes after review from Aniruddha

Co-authored-by: Hein Tibosch <hein@htibosch.net>
Co-authored-by: Aniruddha Kanhere <60444055+AniruddhaKanhere@users.noreply.github.com>
2020-07-13 14:35:44 -07:00
Aniruddha Kanhere
4237049b12
Add changes from 2225-2227 amazon-FreeRTOS (#134) 2020-07-13 12:07:56 -07:00
Aniruddha Kanhere
7caa328634
Add Full TCP test suite - not using secure sockets (#131)
* Add Full-TCP suite

* delete unnecessary files

* Change after Joshua's comments
2020-07-10 23:32:30 -07:00
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>
2020-07-03 15:45:44 -07:00
Nathan Chong
529c481c39
Add VeriFast kernel queue proofs (#117) 2020-07-02 12:55:20 -07:00
Aniruddha Kanhere
d5fedeaa96
Add checks in FreeRTOS_Socket.c (#104)
* Add fail-safes to FreeRTOS_Socket.c

* Use all 'pd' errors

* Correction after Hein's comments

* Correction after Hein's comments v2

* Changes after Hein's comments

* Update after Gary's comments
2020-07-01 13:56:27 -07:00
Aniruddha Kanhere
a9b2aac4e9
Folder structure change + Fix broken Projects (#103)
* Update folder structure

* Correct project files

* Move test folder

* Some changes after Yuki's comments
2020-06-26 12:09:36 -07:00
Hein Tibosch
98bfc38bf3
FreeRTOS+TCP : add memory statistics and dump packets, v3 (#83)
* FreeRTOS+TCP : add memory statistics and dump packets, v3

* Two changes as requested by Aniruddha

Co-authored-by: Hein Tibosch <hein@htibosch.net>
Co-authored-by: Aniruddha Kanhere <60444055+AniruddhaKanhere@users.noreply.github.com>
2020-06-24 22:01:45 -07:00
S.Burch
072a173c9d
Fixed Imports for Infineon XMC1100 Board (#88)
Co-authored-by: RichardBarry <3073890+RichardBarry@users.noreply.github.com>
2020-06-22 14:39:26 -07:00
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.
2020-06-08 14:22:46 -07:00
Aniruddha Kanhere
b9e4ecfaf7
Remove Empty and Un-referenced folder from Demo (#86) 2020-06-05 11:10:58 -07:00
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>
2020-06-03 16:52:31 -07:00
Yuhui Zheng
bb9f92f771
Submodule FreeRTOS/Source 10bbbcf0b..6199b72fb (#82) 2020-06-03 10:46:55 -07:00
Aniruddha Kanhere
6efc39f44b
Add Project for running integration tests v2 (#80)
* Project for integration tests

* relative paths in project files

* relative paths in project files-1

* relative paths in project files-2

* addressed comments

* addressed comments v2

Co-authored-by: Yuhui Zheng <10982575+yuhui-zheng@users.noreply.github.com>
2020-06-02 15:09:25 -07:00
Yuhui Zheng
0eb5909fb0
readme.md for ATmega328PB Xplained Mini. (#76)
readme.md to get users jump started.
2020-05-28 17:05:24 -07:00
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>
2020-05-28 10:11:58 -07:00
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>
2020-05-27 14:44:33 -07:00
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.
2020-05-27 10:44:03 -07:00
Aniruddha Kanhere
95a3a02f95
FreeRTOS-Plus: Unit testing Infrastructure and examples (#72)
* Added CMock as submodule

* Makefile added

* Removed TEMP from Makefile

* Added configuration files and header files

* Update Makefile

* Test runner working

* make clean

* Example added with README

* Update README.md

* Restored +TCP files

* Cleared +TCP changes

* removed comments from Makefile

* Update README.md

* Update README.md

* Update README.md

* Updated Test/Unit-test/readme.md
2020-05-22 16:26:59 -07:00
Hein Tibosch
5003d17fed
FreeRTOS+TCP : renewing DHCP lease while network is down (#53)
Co-authored-by: Hein Tibosch <hein@htibosch.net>
Co-authored-by: Gary Wicker <14828980+gkwicker@users.noreply.github.com>
2020-05-06 11:16:56 -07:00
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>
2020-05-05 09:57:18 -07:00
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>
2020-04-28 21:27:45 -07:00
Yuhui Zheng
d421ccc89f
Reword readme.md under ./Test. (#61) 2020-04-25 16:57:35 -07:00
Carl Lundin
3841286598
Removed a:FR reference. (#60) 2020-04-25 16:56:54 -07:00
AniruddhaKanhere
4db195c916
Adding FreeRTOS+TCP CBMC proofs to FreeRTOS/FreeRTOS (#56)
ParseDNSReply is to be added in the next PR.
2020-04-21 15:40:08 -07:00
AniruddhaKanhere
40a31b6d35 'uL' -> 'UL' 2020-04-13 14:08:51 -07:00
AniruddhaKanhere
5b3a289b69 Changes after Gary's comments 2020-04-13 14:08:51 -07:00
AniruddhaKanhere
edf68637dd Update FreeRTOS_ARP.c 2020-04-13 14:08:51 -07:00
AniruddhaKanhere
35f3ac32a8 correct debug output 2020-04-13 14:08:51 -07:00
AniruddhaKanhere
5e12a70db4 Debugging flag check added 2020-04-13 14:08:51 -07:00
AniruddhaKanhere
4e8ac8de25 Comment style consistency and Yuhui's suggestions 2020-04-13 14:08:51 -07:00
AniruddhaKanhere
e43f7cd086 Cleanup 2020-04-13 14:08:51 -07:00
AniruddhaKanhere
ab3b51c7a0 Update after Gary's comments 2020-04-13 14:08:51 -07:00
AniruddhaKanhere
97f7009699 Update after richard's comments 2020-04-13 14:08:51 -07:00
AniruddhaKanhere
a9fcafc074 Corrected the formatting
- visual studio had messed up the formatting
2020-04-13 14:08:51 -07:00
AniruddhaKanhere
c381861014 commit 2 after gary's comments 2020-04-13 14:08:51 -07:00
AniruddhaKanhere
75677a8d85 Commit after Gary's comments 2020-04-13 14:08:51 -07:00
AniruddhaKanhere
666c0da366 Update after Yuhui's comments
- removed (void) from before memcpy, memset etc.
- corrected memcpy style as suggested by Yuhui
- Added logging for xNetworkInterfaceOutput. No need to configASSERT
2020-04-13 14:08:51 -07:00
AniruddhaKanhere
4a1148d15b Coverity + MISRA compliance
Modified code to conform to the MISRA directives more closely.
2020-04-13 14:08:51 -07:00
Yuhui Zheng
fa74f7dccf Removing writes to read-only PLIC interrupt pending registers.
Signed-off-by: Yuhui Zheng <10982575+yuhui-zheng@users.noreply.github.com>
2020-04-07 10:09:20 -07:00
Yuhui Zheng
5b9777e11e A readme file to introduce what ./Test directory is about. 2020-03-31 14:21:53 -07:00
Yuhui Zheng
211bb4cbd9 Ignore whitespace when working with patches. 2020-03-31 14:21:53 -07:00
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.
2020-03-31 14:21:53 -07:00
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.
2020-03-24 13:46:18 -07:00
Markus Rinne
f78f919b3e Fix function comments 2020-03-22 20:26:43 -07:00
David Chalco
1cd2d38d96 unix separators for path and remove .exe suffix from risc compiler (works on windows/mac) 2020-03-22 20:23:03 -07:00
Yuhui Zheng
938b19419e Removing ./FreeRTOS-Labs directory, since:
- IoT libraries are now in LTS branch.
- FAT/POSIX/Light-weight MQTT are in https://github.com/FreeRTOS/FreeRTOS-Labs.
2020-03-19 18:32:04 -07:00