FreeRTOS-Kernel/portable/ThirdParty
Paul Hollinsky f9f0208daa POSIX Port: Round up stack sizes correctly on macOS
On macOS, pthread_attr_setstacksize requires the stack size to be a multiple of
the system page size.

The previous changes here assumed the use of pthread_attr_setstack, however
the transition to pthread_attr_setstacksize means we can avoid rounding the
pxEndOfStack pointer.

This is additionally positive because pxEndOfStack was actually being rounded
in the wrong direction -- it ought to have been rounded down (_trunc) instead of
up due to the stack growth direction. In my case this actually caused pxEndOfStack
to end up after pxTopOfStack, which underflowed and created a huge stack size
request + EXC_BAD_ACCESS in pthread_create.

Signed-off-by: Paul Hollinsky <paulhollinsky@gmail.com>
2024-10-20 10:21:10 -07:00
..
CDK/T-HEAD_CK802 fix typos in comments: interace -> interface, swtich -> switch (#1022) 2024-04-08 17:50:55 -07:00
Community-Supported-Ports@9c5bad7b2f Update submodule pointer (#1040) 2024-04-19 12:39:36 +08:00
GCC POSIX Port: Round up stack sizes correctly on macOS 2024-10-20 10:21:10 -07:00
Partner-Supported-Ports@abc22103e1 Xtensa support updated and moved to Partner-Supported submodules (#1156) 2024-10-15 09:02:11 -07:00
XCC/Xtensa Xtensa support updated and moved to Partner-Supported submodules (#1156) 2024-10-15 09:02:11 -07:00
xClang/XCOREAI Update XMOS xcore.ai port to be compatible with v11.x (#1096) 2024-06-27 15:49:53 -07:00
KnownIssues.md Add a Known Issues file in the Third Party folder (#434) 2022-01-03 14:26:43 -07:00
README.md Update portable/ThirdParty/README.md (#474) 2022-03-10 19:41:45 -08:00

FreeRTOS Third Party Ports

FreeRTOS third party ports can be supported by the FreeRTOS team, a FreeRTOS partner or FreeRTOS community members. Depending on who supports it, the support provided will differ as follows:

FreeRTOS Team Supported Third Party FreeRTOS Ports

Location: https://github.com/FreeRTOS/FreeRTOS-Kernel/tree/main/portable/ThirdParty

These third party FreeRTOS ports are supported by the FreeRTOS team. For a FreeRTOS team supported third party FreeRTOS port:

  • The code has been reviewed by the FreeRTOS team.
  • FreeRTOS team has access to the hardware and the test results have been verified by the FreeRTOS team.
  • Customer queries as well as bugs are addressed by the FreeRTOS team.
  • The code can be included in Long Term Support (LTS) releases.

A new FreeRTOS port cannot be directly contributed to this location. Instead, the FreeRTOS team will decide to take ownership of a partner supported or a community supported FreeRTOS port based on the community interest.

Partner Supported FreeRTOS Ports

Location: https://github.com/FreeRTOS/FreeRTOS-Kernel-Partner-Supported-Ports/tree/main

These FreeRTOS ports are supported by a FreeRTOS partner. For a partner supported FreeRTOS port:

  • The code has not been reviewed by the FreeRTOS team.
  • FreeRTOS team has not verified the tests results but tests exist and are reported to be successful by the partner.
  • Customer queries as well as bugs are addressed by the partner.

A new FreeRTOS port can be directly contributed by a partner. The process to contribute a FreeRTOS port is documented here.

Community Supported FreeRTOS Ports

Location: https://github.com/FreeRTOS/FreeRTOS-Kernel-Community-Supported-Ports/tree/main

These FreeRTOS ports are supported by the FreeRTOS community members. For a community supported FreeRTOS port:

  • The code has not been reviewed by the FreeRTOS team.
  • Tests may or may not exist for the FreeRTOS port.
  • Customer queries as well as bugs are addressed by the community.

A new FreeRTOS port can be directly contributed by anyone. The process to contribute a FreeRTOS port is documented here.