Commit Graph

65 Commits

Author SHA1 Message Date
Gaetan Perrot 97f8745eec doc: posix: mark set and get inheritsched as supported
`pthread_attr_getinheritsched()` and
`pthread_attr_setinheritsched()` are now implemented,
mark it so.

signed-off-by: Gaetan Perrot <gaetanperrotpro@gmail.com>
2024-04-01 11:04:35 +01:00
Jukka Rissanen 9dad97ae95 doc: net: Remove the mention of NET_SOCKETS_POSIX_NAMES
The option is deprecated so remove it from documentation.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2024-03-27 13:40:13 -05:00
Chris Friedt 0bcf71e28a doc: posix: add POSIX_NETWORKING Option Group and mark supported
Mark the POSIX_NETWORKING Option Group as supported. The
POSIX_NETWORKING Option Group is required for PSE53 Conformance.

Signed-off-by: Chris Friedt <chrisfriedt@gmail.com>
2024-03-27 07:36:18 -04:00
Chris Friedt b5a15c980f doc: posix: remove unneeded notes about XSI_THREADS_EXT
Previously, XSI_THREADS_EXT included a note about
undefined behaviour. However, the required functions
pthread_attr_getstack(), pthread_attr_setstack(),
pthread_getconcurrency(), and pthread_setconcurrency()
are all conformant.

Remove the unneeded note (all of them)

Signed-off-by: Chris Friedt <chrisfriedt@gmail.com>
2024-03-26 06:54:27 -04:00
Christopher Friedt 8de8bcc99c doc: posix: mark pthread_rwlockattr_setpshared as supported
Mark pthread_rwlockattr_setpshared() and
pthread_rwlockattr_getpshared() as supported in the POSIX
Options documentation.

Signed-off-by: Christopher Friedt <cfriedt@meta.com>
2024-03-22 16:19:57 -04:00
Christopher Friedt 457e44073b doc: posix: mark clock_getres() as supported
Mark clock_getres() as supported in the POSIX_TIMERS Option
Group.

Signed-off-by: Christopher Friedt <cfriedt@meta.com>
2024-03-22 16:19:27 -04:00
Christopher Friedt 98a121da0c doc: posix: aep: mark POSIX_SINGLE_PROCESS as supported
Mark the POSIX_SINGLE_PROCESS Option Group as supported
in PSE51, PSE52, and PSE53 Application Environment
Profiles.

Signed-off-by: Christopher Friedt <cfriedt@meta.com>
2024-03-22 08:57:44 +01:00
Christopher Friedt 601c0bed33 doc: posix: mark confstr() as supported
Mark confstr() as supported in POSIX Option Groups.

Signed-off-by: Christopher Friedt <cfriedt@meta.com>
2024-03-22 08:57:44 +01:00
Christopher Friedt cb9384e597 doc: posix: mark _POSIX_CPUTIME as supported
The `_POSIX_CPUTIME` interface requires
`CLOCK_PROCESS_CPUTIME_ID` and `clock_getcpuclockid()` to be
present. Both of those are now available and therefore we can
mark `_POSIX_CPUTIME` as supported for PSE53.

Signed-off-by: Christopher Friedt <cfriedt@meta.com>
2024-03-22 08:54:17 +01:00
Christopher Friedt b31b6f9feb doc: posix: correct note of XSI_THREADS_EXT
Previously, XSI_THREADS_EXT included a note about
undefined behaviour. However, the required functions
pthread_attr_getstack(), pthread_attr_setstack(),
pthread_getconcurrency(), and pthread_setconcurrency()
are all conformant.

Remove the unneeded note.

Signed-off-by: Christopher Friedt <cfriedt@meta.com>
2024-03-22 08:53:57 +01:00
Gaetan Perrot 990ebd5c94 doc: posix: mark set and get scope APIs for pthread attr as supported
`pthread_attr_setscope()` and `pthread_attr_getscope()`
are now implemented, mark it so.

signed-off-by: Gaetan Perrot <gaetanperrotpro@gmail.com>
2024-03-18 10:15:53 +01:00
Gaetan Perrot b519041948 doc: posix: sched functions will fail with ENOSYS
Mark `sched_setparam()` , `sched_setscheduler()`
and `sched_rr_get_interval()`
have implemented but will fail with ``ENOSYS``
Were missing on the documentation before.

signed-off-by: Gaetan Perrot <gaetanperrotpro@gmail.com>
2024-03-16 18:19:21 +09:00
Gaetan Perrot f913af8a4d doc: posix: mark putmsg as supported
Mark `putmsg()` as implemented but will fail with ``ENOSYS``
Was missing on the documentation before.

signed-off-by: Gaetan Perrot <gaetanperrotpro@gmail.com>
2024-03-16 18:19:21 +09:00
Gaetan Perrot dfefac8208 doc: posix: mark getmsg and getpmsg as supported
`getmsg()` and `getpmsg()`  are now implemented, mark it so.
There are place holder so will fail with ENOSYS.

signed-off-by: Gaetan Perrot <gaetanperrotpro@gmail.com>
2024-03-11 14:25:26 +01:00
Christopher Friedt 284cecd4cc doc: posix: add environ, getenv, setenv, and unsetenv
Mark environ, getenv(), setevn(), and unsetenv as supported.

Signed-off-by: Christopher Friedt <cfriedt@meta.com>
2024-03-08 04:28:47 -05:00
Gaetan Perrot 6a5af7b5e1 doc: posix: mark fdetach and fattach as supported
`fdetach()` and `fattach()` are now implemented, mark it so.

signed-off-by: Gaetan Perrot <gaetanperrotpro@gmail.com>
2024-02-26 11:36:04 +00:00
Gaetan Perrot 3409d0ab27 doc: posix: mark sched_getscheduler and getparam as supported
`sched_getscheduler()` and `sched_getparam()`
is now implemented, mark it so.
Was missing on the documentation before.

signed-off-by: Gaetan Perrot <gaetanperrotpro@gmail.com>
2024-02-02 17:07:08 -05:00
Gaetan Perrot 3ded1c3c03 doc: posix: mark sched_rr_get_interval as supported
`sched_rr_get_interval()` is now implemented,mark it so.

signed-off-by: Gaetan Perrot <gaetanperrotpro@gmail.com>
2024-02-02 12:42:50 +01:00
Gaetan Perrot fe5806aff0 doc: posix: mark pthread_testcancel as supported
`pthread_testcancel()` is now implemented, mark it so.

signed-off-by: Gaetan Perrot <gaetanperrotpro@gmail.com>
2024-02-01 15:14:28 +01:00
Christopher Friedt e8b178411c posix: remove unneeded option to link with posix subsys
The CONFIG_APP_LINK_WITH_POSIX_SUBSYS option was originally
present so that internal POSIX implementation headers would be
on the include path.

There is no implicit need for any app or library to include
private POSIX headers. Instead, the standard POSIX API should
be used.

Signed-off-by: Christopher Friedt <cfriedt@meta.com>
2024-02-01 05:26:24 -05:00
Gaetan Perrot 19700040af doc: posix: mark sched_setparam & sched_setscheduler as supported
`sched_setparam()` and `sched_setscheduler()` is now implemented,
mark it so.

signed-off-by: Gaetan Perrot <gaetanperrotpro@gmail.com>
2024-01-31 11:16:26 +01:00
Adam Wojasinski 9b30b7405e doc: posix: Update POSIX supported API documentation with sysconf()
Updates in documentation support for `sysconf` API
in the `POSIX_SINGLE_PROCESS` group option.

Signed-off-by: Adam Wojasinski <awojasinski@baylibre.com>
2024-01-30 18:01:18 +01:00
Adam Wojasinski dc90d6ccff doc: posix: Add missing entries in POSIX supported API doc
`mq_timedsend()` and `mq_timedreceive()` are implemented but
the information is missing in the documentation.

Signed-off-by: Adam Wojasinski <awojasinski@baylibre.com>
2024-01-26 22:27:07 +00:00
Adam Wojasinski 2e7a1f9702 doc: posix: Update POSIX supported API documentation
Updates in documentation support for `mq_notify` API
in `_POSIX_MESSAGE_PASSING` group option.

Signed-off-by: Adam Wojasinski <awojasinski@baylibre.com>
2024-01-25 19:47:37 +01:00
Doug Foster 6a1f48bd4e doc: posix: Update services/portability/posix doc
Update index.rst located in doc/services/portability/posix/overview
to include link to POSIX samples.

Signed-off-by: Doug Foster <dougwfost@gmail.com>
2024-01-19 10:32:23 +01:00
Dmitrii Golovanov b6e48d04f6 doc: posix: Fix internal links
Fix several links to other Zephyr doc sections as internal.

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-01-19 09:32:29 +01:00
Dmitrii Golovanov b184fc3a62 posix: sched: Add CONFIG_POSIX_PRIORITY_SCHEDULING
Add `CONFIG_POSIX_PRIORITY_SCHEDULING` Kconfig option to select
APIs from PSE53 `_POSIX_PRIORITY_SCHEDULING` option group.

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-01-15 09:57:44 +01:00
Yong Cong Sin 768ed26010 doc: posix: signal: fix `sigsuspend` typo
The `sigsuspend` is currently `igsuspend`, fix that.

Signed-off-by: Yong Cong Sin <ycsin@meta.com>
2024-01-11 07:49:26 -05:00
Yong Cong Sin f82b64504c doc: posix: signal: mark `sigprocmask` as supported
`sigprocmask()` is now implemented, mark it so.

Signed-off-by: Yong Cong Sin <ycsin@meta.com>
2024-01-11 07:49:26 -05:00
Christopher Friedt b85b7a3490 doc: posix: overview: clarification on conformant implementations
Any C library with conformant implementations of POSIX features,
options, or option groups can be used in place of the versions
provided with Zephyr's POSIX implementation as long as there is
no source licensing compatibility or linking clause violation.

Implementations of such features, options, or option groups can
be used in whole or in part, as long as there is no conflict
with the rest of Zephyr or the application.

Signed-off-by: Christopher Friedt <cfriedt@meta.com>
2024-01-10 18:17:10 +00:00
Christopher Friedt 5bbec7a45d docs: posix: option groups: add _POSIX_THREAD_SAFE_FUNCTIONS
The _POSIX_THREAD_SAFE_FUNCTIONS option was mentioned in
aep/index.rst but not expanded.

Signed-off-by: Christopher Friedt <cfriedt@meta.com>
2024-01-10 18:17:10 +00:00
Christopher Friedt ce42bf3820 doc: posix: option groups: add C_LANG_JUMP and C_LANG_MATH
Add POSIX_C_LANG_JUMP and POSIX_C_LANG_MATH option groups
with links to specification details on opengroup.org .

Signed-off-by: Christopher Friedt <cfriedt@meta.com>
2024-01-10 18:17:10 +00:00
Christopher Friedt 283d813c88 doc: posix: option groups: abbreviate POSIX_C_LANG_SUPPORT
In order to reduce verbosity on the primary Option Groups page,
simply add a note that the POSIX_C_LANG_SUPPORT is considered
supported with newlib, picolibc, or any other libc conforming to
the ISO C standard.

Add a link to the language support page that details C, C++, ..

Signed-off-by: Christopher Friedt <cfriedt@meta.com>
2024-01-10 18:17:10 +00:00
Yong Cong Sin 9016cec150 doc: posix: mark `sem_open`, `sem_close` & `sem_unlink` as supported
The `sem_open()`, `sem_close()` & `sem_unlink()` functions are
now implemented, so mark them as supported.

Signed-off-by: Yong Cong Sin <ycsin@meta.com>
2024-01-10 07:18:19 -05:00
Christopher Friedt e8ba19e0ee docs: posix: aep: correct some typos
* use _POSIX_AEP_REALTIME_DEDICATED instead of CONTROLLER
* use _POSIX_AEP_REALTIME_DEDICATED instead of MINIMAL in
  comment

Signed-off-by: Christopher Friedt <cfriedt@meta.com>
2023-12-28 12:19:26 +00:00
Christopher Friedt dbd4b82f1c doc: posix: support pthread_getguardsize pthread_setguardsize
Mark pthread_getguardsize() and pthread_getguardsize() as
supported.

Signed-off-by: Christopher Friedt <cfriedt@meta.com>
2023-12-20 14:20:58 +00:00
Christopher Friedt 25ad028376 doc: posix: denote pthread_sigmask() as implemented
Mark pthread_sigmask() as implemented in POSIX_THREADS_BASE.

Signed-off-by: Christopher Friedt <cfriedt@meta.com>
2023-12-04 20:49:35 -05:00
Christopher Friedt e260201204 doc: posix: mark pthread_cleanup_push() and pop() as supported
Update docs to reflect additional support of
pthread_cleanup_push() and pthread_cleanup_pop().

Signed-off-by: Christopher Friedt <cfriedt@meta.com>
2023-11-29 10:08:44 +01:00
Christopher Friedt 5bfed9ef6b doc: posix; mark pthread_getconcurrency() supported
Mark pthread_getconcurrency() and pthread_setconcurrency()
as supported in documentation.

Signed-off-by: Christopher Friedt <cfriedt@meta.com>
2023-11-27 08:26:31 -05:00
Christopher Friedt 5da13ea30a docs: posix: correct spelling of XSI_THREADS_EXT
The option group includes a trailing S

Signed-off-by: Christopher Friedt <cfriedt@meta.com>
2023-11-26 19:58:54 -05:00
Christopher Friedt 4d8442d3a5 docs: posix: update the XSI_THREADS_EXT option group
Previously pthread_attr_getguardsize() and
pthread_attr_setguardsize() were part of the
XSI_THREADS_EXT option group. That is no longer the case.

In IEEE 1003.1-2017 they are part of the POSIX_THREADS_EXT
option group.

Signed-off-by: Christopher Friedt <cfriedt@meta.com>
2023-11-26 19:58:54 -05:00
Christopher Friedt ecd2961160 doc: services: portability: posix: add pthread_setcanceltype()
The function pthread_setcanceltype() is supported and mandatory
for conforming implementations.

Mark it as supported since the preceding commit.

Signed-off-by: Christopher Friedt <cfriedt@meta.com>
2023-11-26 05:55:08 -05:00
Christopher Friedt 1d501a76af doc: services: portability: posix: pthread_atfork() supported
Mark pthread_atfork() as supported in the documentation.

This option is a mandatory requirement (i.e. it must be present)
even when calling it produces undefined behaviour. That is the
case here, and documentation sbould be updated to reflect that.

Signed-off-by: Christopher Friedt <cfriedt@meta.com>
2023-11-23 00:59:32 -05:00
Christopher Friedt 3b45235887 doc: posix: structural reorganization of posix docs
Revise the structure of the POSIX API docs. This separates
related items out to dedicated pages. Further improvements
could yet be made - e.g. using the 'collapse' feature to
expand and collapse large sections of text or tables.

Signed-off-by: Christopher Friedt <cfriedt@meta.com>
2023-11-22 22:47:26 -05:00
Christopher Friedt b0a3736eff doc: posix: add posix timers and clock selection
Update the POSIX API documentation with details on
POSIX_TIMERS and POSIX_CLOCK_SELECTION.

Signed-off-by: Christopher Friedt <cfriedt@meta.com>
2023-10-09 06:08:17 -04:00
Jai Arora 7daaad454a docs: update posix docs with pthread_equal
add pthread_equal to supported api list

Signed-off-by: Jai Arora <infolinesoni@gmail.com>
2023-07-20 16:24:16 +02:00
Yong Cong Sin 335acf817d posix: signal: implement strsignal
Implementation and ztest for strsignal.

Signed-off-by: Yong Cong Sin <ycsin@meta.com>
2023-07-18 15:35:42 -04:00
Yong Cong Sin ff4b81e5e5 posix: signal: implement sigismember
Implementation and ztest for sigismember.

Signed-off-by: Yong Cong Sin <ycsin@meta.com>
2023-07-18 15:35:42 -04:00
Yong Cong Sin 88cd494430 posix: signal: implement sigdelset
Implementation and ztest for sigdelset.

Signed-off-by: Yong Cong Sin <ycsin@meta.com>
2023-07-18 15:35:42 -04:00
Yong Cong Sin 8011449542 posix: signal: implement sigaddset
Implementation and ztest for sigaddset.

Signed-off-by: Yong Cong Sin <ycsin@meta.com>
2023-07-18 15:35:42 -04:00