Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[pull] main from FreeRTOS:main #4

Open
wants to merge 132 commits into
base: main
Choose a base branch
from
Open

[pull] main from FreeRTOS:main #4

wants to merge 132 commits into from

Conversation

pull[bot]
Copy link

@pull pull bot commented Oct 17, 2023

See Commits and Changes for more details.


Created by pull[bot]

Can you help keep this open source service alive? 💖 Please sponsor : )

@pull pull bot added the ⤵️ pull label Oct 17, 2023
chinglee-iot and others added 27 commits October 18, 2023 15:03
* Add uxTaskBasePriorityGet and uxTaskBasePriorityGetFromISR unit test
* 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>
This allows the qemu-mps2 demo to use DHCP which requires ethernet mac
functionality prior to when vApplicationIPNetworkEventHook or
vApplicationIPNetworkEventHook_Multi are called.
Co-authored-by: Joseph Julicher <jjulicher@mac.com>
Co-authored-by: Gaurav-Aggarwal-AWS <33462878+aggarg@users.noreply.github.com>
* 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>
* 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>
* 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.
* Add test cases to cover vApplicationGetIdleTaskMemory and 
  vApplicationGetPassiveIdleTaskMemory for prvCreateIdleTasks
* Fix comilation problem with unit test for passive idle task memory
* Add back mtCOVERAGE_TEST_MARKER in stream_buffer unit test
* Swap the device defender demo to Win32 instead of x86
* Swap the Jobs_Windows_Simulator Demo to have Win32 instead of x86
* Swap the Device_Shadow_Windows_Simulator Demo to have Win32 instead of x86

---------
1. Change CMock policy of pointer from smart to compare_ptr;
2. Fix errors in test cases found by CMock.
* Add unit test for xTaskGetIdleTaskHandleForCore()

---------

Co-authored-by: Rahul Kar <118818625+kar-rahul-aws@users.noreply.github.com>
* Update FreeRTOS.h for portTASK_SWITCH_HOOK

---------

Co-authored-by: GitHub Action <action@github.com>
* Fix SMP unit test for switch hook
Update MPU Demos for Kernel V10.6.2
Disable handler checking in XMC1000 demo
* Update coreHTTP S3 Download Instructions

* Revert to 85d5319

* Update comment for S3 Root CA in Upload and Download Multithreaded demos

* Wrap changes to 80 characters

* Uncrustify: triggered by comment.

* Run Github Actions.

* Fix broken section link in README

* Wrap README text on 90 characters

* Uncrustify: triggered by comment.

* Run Github Actions

---------

Co-authored-by: GitHub Action <action@github.com>
* Bump up to MBed-TLS V3.5.1, make changes to Visual Studio Projects to account for this.
* Update MBedTLS Transport files to call psa_crypto_init() if the MBEDTLS_PSA_CRYPTO_C is set.
* Add WIN32_LEAN_AND_MEAN to the corePKCS11_MQTT_Mutual_Auth_Windows_Simulator demo. Add in a check for MBEDTLS_ERR_SSL_RECEIVED_NEW_SESSION_TICKET when making a TLS handshake.
* Change transport interface files from using void * to mbedtls_pk_context * instead per changes in the MbedTLS API.
* Changes to Fleet Provisioning Demo and Demo Setup to use ECDSA keys
* Remove non-32 bit configs from various VisualStudio Projects. Enforce all projects using WIN32_LEAN_AND_MEAN as well as winsock2.h
* Update RISC-V QEMU project for GCC
* Exclude examples in FreeRTOS-Kernel from build
* Update vega and microsemi risc-v eclipse project
* Update polarfire eclipse project
laroche and others added 30 commits May 24, 2024 11:57
…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>
…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>
* 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>
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>
Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
)

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>
* Fix compilation issue

* Fix formatting

* Uncrustify: triggered by comment.

* Remove commented line

---------

Co-authored-by: GitHub Action <action@github.com>
complete function declaration for Posix_GCC

Signed-off-by: Florian La Roche <Florian.LaRoche@gmail.com>
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>
* 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>
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>
* Unit test updates for kernel PR #1111

FreeRTOS/FreeRTOS-Kernel#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>
* 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>
Add ARM_CRx_No_GIC_Demo
* Remove ipLOCAL_MAC_ADDRESS from demo files

* Add return variable for IP_Init fucntions
Add SMP interrupt wait critical secton on target test
Add SMP one task enter critical on target test
Add SMP task delete on target test
* Remove this unit test due to implementation change
Update ReadMe to add UserMode Networking
Add async core yield test for SMP

Add async core yield test for SMP to verify set core affinity
  implementation
* Remove unnecessary TCP includes

* Update comment
On Ubuntu 24.04 ARM64, PTHREAD_STACK_MIN is 0x20000 which does not fit
in unsigned short, size of which is 2 bytes. Casting PTHREAD_STACK_MIN
to unsigned short in FreeRTOSConfig.h results in
configMINIMAL_STACK_SIZE getting defined to 0 which leads to SIGSEV.

This change removes the not needed casting of PTHREAD_STACK_MIN to
unsigned short.

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
Add Cygwin option for compilation
SoftConsole failed to execute MI command to load the RTOSDebug.elf built in this project. Since the debugger couldn't find  address `0xe000ed00` defined in ARM processor. 

We need to set `$target_riscv` to 1 so that the gdb can be initialized correctly.
* Cortex M3 MPS2: fix alignment warning from assembler

Fix assembler alignment warnings for Cortex M3 MPS2:
Warning: section does not have enough alignment to ensure safe PC-relative loads

Signed-off-by: Florian La Roche <Florian.LaRoche@gmail.com>
Cortex M3 MPS2: modernize assembler syntax and also add .ltorg

Signed-off-by: Florian La Roche <Florian.LaRoche@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.