Skip to content

Commit 95d1172

Browse files
cfriedtaescolar
authored andcommitted
doc: posix: options: explicitly note kconfig options
Note which Kconfig options activate which POSIX Options and Option Groups. Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
1 parent 3ec76e8 commit 95d1172

File tree

1 file changed

+81
-5
lines changed
  • doc/services/portability/posix/option_groups

1 file changed

+81
-5
lines changed

doc/services/portability/posix/option_groups/index.rst

Lines changed: 81 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,8 @@ POSIX Option Groups
1111
POSIX_BARRIERS
1212
++++++++++++++
1313

14+
Enable this option group with :kconfig:option:`CONFIG_POSIX_BARRIERS`.
15+
1416
.. csv-table:: POSIX_BARRIERS
1517
:header: API, Supported
1618
:widths: 50,10
@@ -75,6 +77,8 @@ to :ref:`details<language_support>`.
7577
POSIX_C_LIB_EXT
7678
+++++++++++++++
7779

80+
Enable this option group with :kconfig:option:`CONFIG_POSIX_C_LIB_EXT`.
81+
7882
.. csv-table:: POSIX_C_LIB_EXT
7983
:header: API, Supported
8084
:widths: 50,10
@@ -100,6 +104,8 @@ POSIX_C_LIB_EXT
100104
POSIX_CLOCK_SELECTION
101105
+++++++++++++++++++++
102106

107+
Enable this option group with :kconfig:option:`CONFIG_POSIX_CLOCK_SELECTION`.
108+
103109
.. csv-table:: POSIX_CLOCK_SELECTION
104110
:header: API, Supported
105111
:widths: 50,10
@@ -113,6 +119,8 @@ POSIX_CLOCK_SELECTION
113119
POSIX_DEVICE_IO
114120
+++++++++++++++
115121

122+
Enable this option group with :kconfig:option:`CONFIG_POSIX_DEVICE_IO`.
123+
116124
.. csv-table:: POSIX_DEVICE_IO
117125
:header: API, Supported
118126
:widths: 50,10
@@ -172,7 +180,7 @@ POSIX_DEVICE_IO
172180
POSIX_FD_MGMT
173181
+++++++++++++
174182

175-
This table lists service support status in Zephyr for `POSIX_FD_MGMT`:
183+
Enable this option group with :kconfig:option:`CONFIG_POSIX_FD_MGMT`.
176184

177185
.. csv-table:: POSIX_FD_MGMT
178186
:header: API, Supported
@@ -196,8 +204,6 @@ This table lists service support status in Zephyr for `POSIX_FD_MGMT`:
196204
POSIX_FILE_LOCKING
197205
++++++++++++++++++
198206

199-
This table lists service support status in Zephyr for `POSIX_FD_MGMT`:
200-
201207
.. csv-table:: POSIX_FILE_LOCKING
202208
:header: API, Supported
203209
:widths: 50,10
@@ -215,6 +221,8 @@ This table lists service support status in Zephyr for `POSIX_FD_MGMT`:
215221
POSIX_FILE_SYSTEM
216222
+++++++++++++++++
217223

224+
Enable this option group with :kconfig:option:`CONFIG_POSIX_FILE_SYSTEM`.
225+
218226
.. csv-table:: POSIX_FILE_SYSTEM
219227
:header: API, Supported
220228
:widths: 50,10
@@ -251,6 +259,8 @@ POSIX_FILE_SYSTEM
251259
POSIX_MAPPED_FILES
252260
++++++++++++++++++
253261

262+
Enable this option group with :kconfig:option:`CONFIG_POSIX_MAPPED_FILES`.
263+
254264
.. csv-table:: POSIX_MAPPED_FILES
255265
:header: API, Supported
256266
:widths: 50,10
@@ -264,6 +274,8 @@ POSIX_MAPPED_FILES
264274
POSIX_MEMORY_PROTECTION
265275
+++++++++++++++++++++++
266276

277+
Enable this option group with :kconfig:option:`CONFIG_POSIX_MEMORY_PROTECTION`.
278+
267279
.. csv-table:: POSIX_MEMORY_PROTECTION
268280
:header: API, Supported
269281
:widths: 50,10
@@ -275,6 +287,8 @@ POSIX_MEMORY_PROTECTION
275287
POSIX_MULTI_PROCESS
276288
+++++++++++++++++++
277289

290+
Enable this option group with :kconfig:option:`CONFIG_POSIX_MULTI_PROCESS`.
291+
278292
.. csv-table:: POSIX_MULTI_PROCESS
279293
:header: API, Supported
280294
:widths: 50,10
@@ -312,6 +326,8 @@ POSIX_NETWORKING
312326
The function ``sockatmark()`` is not yet supported and is expected to fail setting ``errno``
313327
to ``ENOSYS`` :ref:`†<posix_undefined_behaviour>`.
314328

329+
Enable this option group with :kconfig:option:`CONFIG_POSIX_NETWORKING`.
330+
315331
.. csv-table:: POSIX_NETWORKING
316332
:header: API, Supported
317333
:widths: 50,10
@@ -386,6 +402,8 @@ POSIX_PIPE
386402
POSIX_REALTIME_SIGNALS
387403
++++++++++++++++++++++
388404

405+
Enable this option group with :kconfig:option:`CONFIG_POSIX_REALTIME_SIGNALS`.
406+
389407
.. csv-table:: POSIX_REALTIME_SIGNALS
390408
:header: API, Supported
391409
:widths: 50,10
@@ -399,6 +417,8 @@ POSIX_REALTIME_SIGNALS
399417
POSIX_SEMAPHORES
400418
++++++++++++++++
401419

420+
Enable this option group with :kconfig:option:`CONFIG_POSIX_SEMAPHORES`.
421+
402422
.. csv-table:: POSIX_SEMAPHORES
403423
:header: API, Supported
404424
:widths: 50,10
@@ -433,6 +453,8 @@ POSIX_SIGNALS
433453
Signal services are a basic mechanism within POSIX-based systems and are
434454
required for error and event handling.
435455

456+
Enable this option group with :kconfig:option:`CONFIG_POSIX_SIGNALS`.
457+
436458
.. csv-table:: POSIX_SIGNALS
437459
:header: API, Supported
438460
:widths: 50,10
@@ -463,6 +485,8 @@ POSIX_SINGLE_PROCESS
463485
The POSIX_SINGLE_PROCESS option group contains services for single
464486
process applications.
465487

488+
Enable this option group with :kconfig:option:`CONFIG_POSIX_SINGLE_PROCESS`.
489+
466490
.. csv-table:: POSIX_SINGLE_PROCESS
467491
:header: API, Supported
468492
:widths: 50,10
@@ -481,6 +505,8 @@ process applications.
481505
POSIX_SPIN_LOCKS
482506
++++++++++++++++
483507

508+
Enable this option group with :kconfig:option:`CONFIG_POSIX_SPIN_LOCKS`.
509+
484510
.. csv-table:: POSIX_SPIN_LOCKS
485511
:header: API, Supported
486512
:widths: 50,10
@@ -501,6 +527,8 @@ consists of a single (implicit) process with multiple threads. Therefore, the
501527
standard requires all basic thread services, except those related to
502528
multiple processes.
503529

530+
Enable this option group with :kconfig:option:`CONFIG_POSIX_THREADS`.
531+
504532
.. csv-table:: POSIX_THREADS_BASE
505533
:header: API, Supported
506534
:widths: 50,10
@@ -559,7 +587,7 @@ multiple processes.
559587
POSIX_THREADS_EXT
560588
+++++++++++++++++
561589

562-
This table lists service support status in Zephyr:
590+
Enable this option group with :kconfig:option:`CONFIG_POSIX_THREADS_EXT`.
563591

564592
.. csv-table:: POSIX_THREADS_EXT
565593
:header: API, Supported
@@ -575,6 +603,8 @@ This table lists service support status in Zephyr:
575603
POSIX_TIMERS
576604
++++++++++++
577605

606+
Enable this option group with :kconfig:option:`CONFIG_POSIX_TIMERS`.
607+
578608
.. csv-table:: POSIX_TIMERS
579609
:header: API, Supported
580610
:widths: 50,10
@@ -594,6 +624,8 @@ POSIX_TIMERS
594624
XSI_SYSTEM_LOGGING
595625
++++++++++++++++++
596626

627+
Enable this option group with :kconfig:option:`CONFIG_XSI_SYSTEM_LOGGING`.
628+
597629
.. csv-table:: XSI_SYSTEM_LOGGING
598630
:header: API, Supported
599631
:widths: 50,10
@@ -612,7 +644,7 @@ The XSI_THREADS_EXT option group is required because it provides
612644
functions to control a thread's stack. This is considered useful for any
613645
real-time application.
614646

615-
This table lists service support status in Zephyr:
647+
Enable this option group with :kconfig:option:`CONFIG_XSI_THREADS_EXT`.
616648

617649
.. csv-table:: XSI_THREADS_EXT
618650
:header: API, Supported
@@ -637,6 +669,8 @@ Functions part of the ``_POSIX_ASYNCHRONOUS_IO`` Option are not implemented in Z
637669
provided so that conformant applications can still link. These functions will fail, setting
638670
``errno`` to ``ENOSYS``:ref:`†<posix_undefined_behaviour>`.
639671

672+
Enable this option with :kconfig:option:`CONFIG_POSIX_ASYNCHRONOUS_IO`.
673+
640674
.. csv-table:: _POSIX_ASYNCHRONOUS_IO
641675
:header: API, Supported
642676
:widths: 50,10
@@ -655,6 +689,8 @@ provided so that conformant applications can still link. These functions will fa
655689
_POSIX_CPUTIME
656690
++++++++++++++
657691

692+
Enable this option with :kconfig:option:`CONFIG_POSIX_CPUTIME`.
693+
658694
.. csv-table:: _POSIX_CPUTIME
659695
:header: API, Supported
660696
:widths: 50,10
@@ -666,6 +702,8 @@ _POSIX_CPUTIME
666702
_POSIX_FSYNC
667703
++++++++++++
668704

705+
Enable this option with :kconfig:option:`CONFIG_POSIX_FSYNC`.
706+
669707
.. csv-table:: _POSIX_FSYNC
670708
:header: API, Supported
671709
:widths: 50,10
@@ -681,6 +719,8 @@ Internet Protocol Version 6 is supported.
681719

682720
For more information, please refer to :ref:`Networking <networking>`.
683721

722+
Enable this option with :kconfig:option:`CONFIG_POSIX_IPV6`.
723+
684724
.. _posix_option_memlock:
685725

686726
_POSIX_MEMLOCK
@@ -690,6 +730,8 @@ Zephyr's :ref:`Demand Paging API <memory_management_api_demand_paging>` does not
690730
pinning or unpinning all virtual memory regions. The functions below are expected to fail and
691731
set ``errno`` to ``ENOSYS`` :ref:`†<posix_undefined_behaviour>`.
692732

733+
Enable this option with :kconfig:option:`CONFIG_POSIX_MEMLOCK`.
734+
693735
.. csv-table:: _POSIX_MEMLOCK
694736
:header: API, Supported
695737
:widths: 50,10
@@ -702,6 +744,8 @@ set ``errno`` to ``ENOSYS`` :ref:`†<posix_undefined_behaviour>`.
702744
_POSIX_MEMLOCK_RANGE
703745
++++++++++++++++++++
704746

747+
Enable this option with :kconfig:option:`CONFIG_POSIX_MEMLOCK_RANGE`.
748+
705749
.. csv-table:: _POSIX_MEMLOCK_RANGE
706750
:header: API, Supported
707751
:widths: 50,10
@@ -714,6 +758,8 @@ _POSIX_MEMLOCK_RANGE
714758
_POSIX_MESSAGE_PASSING
715759
++++++++++++++++++++++
716760

761+
Enable this option with :kconfig:option:`CONFIG_POSIX_MESSAGE_PASSING`.
762+
717763
.. csv-table:: _POSIX_MESSAGE_PASSING
718764
:header: API, Supported
719765
:widths: 50,10
@@ -732,6 +778,8 @@ _POSIX_MESSAGE_PASSING
732778
_POSIX_MONOTONIC_CLOCK
733779
++++++++++++++++++++++
734780

781+
Enable this option with :kconfig:option:`CONFIG_POSIX_MONOTONIC_CLOCK`.
782+
735783
.. csv-table:: _POSIX_MONOTONIC_CLOCK
736784
:header: API, Supported
737785
:widths: 50,10
@@ -747,6 +795,8 @@ As processes are not yet supported in Zephyr, the functions ``sched_rr_get_inter
747795
``sched_setparam()``, and ``sched_setscheduler()`` are expected to fail setting ``errno``
748796
to ``ENOSYS``:ref:`†<posix_undefined_behaviour>`.
749797

798+
Enable this option with :kconfig:option:`CONFIG_POSIX_PRIORITY_SCHEDULING`.
799+
750800
.. csv-table:: _POSIX_PRIORITY_SCHEDULING
751801
:header: API, Supported
752802
:widths: 50,10
@@ -769,11 +819,15 @@ Raw sockets are supported.
769819

770820
For more information, please refer to :kconfig:option:`CONFIG_NET_SOCKETS_PACKET`.
771821

822+
Enable this option with :kconfig:option:`CONFIG_POSIX_RAW_SOCKETS`.
823+
772824
.. _posix_option_reader_writer_locks:
773825

774826
_POSIX_READER_WRITER_LOCKS
775827
++++++++++++++++++++++++++
776828

829+
Enable this option with :kconfig:option:`CONFIG_POSIX_READER_WRITER_LOCKS`.
830+
777831
.. csv-table:: _POSIX_READER_WRITER_LOCKS
778832
:header: API, Supported
779833
:widths: 50,10
@@ -795,6 +849,8 @@ _POSIX_READER_WRITER_LOCKS
795849
_POSIX_SHARED_MEMORY_OBJECTS
796850
++++++++++++++++++++++++++++
797851

852+
Enable this option with :kconfig:option:`CONFIG_POSIX_SHARED_MEMORY_OBJECTS`.
853+
798854
.. csv-table:: _POSIX_SHARED_MEMORY_OBJECTS
799855
:header: API, Supported
800856
:widths: 50,10
@@ -809,6 +865,8 @@ _POSIX_SHARED_MEMORY_OBJECTS
809865
_POSIX_SYNCHRONIZED_IO
810866
++++++++++++++++++++++
811867

868+
Enable this option with :kconfig:option:`CONFIG_POSIX_SYNCHRONIZED_IO`.
869+
812870
.. csv-table:: _POSIX_SYNCHRONIZED_IO
813871
:header: API, Supported
814872
:widths: 50,10
@@ -822,6 +880,8 @@ _POSIX_SYNCHRONIZED_IO
822880
_POSIX_THREAD_ATTR_STACKADDR
823881
++++++++++++++++++++++++++++
824882

883+
Enable this option with :kconfig:option:`CONFIG_POSIX_THREAD_ATTR_STACKADDR`.
884+
825885
.. csv-table:: _POSIX_THREAD_ATTR_STACKADDR
826886
:header: API, Supported
827887
:widths: 50,10
@@ -834,6 +894,8 @@ _POSIX_THREAD_ATTR_STACKADDR
834894
_POSIX_THREAD_ATTR_STACKSIZE
835895
++++++++++++++++++++++++++++
836896

897+
Enable this option with :kconfig:option:`CONFIG_POSIX_THREAD_ATTR_STACKSIZE`.
898+
837899
.. csv-table:: _POSIX_THREAD_ATTR_STACKSIZE
838900
:header: API, Supported
839901
:widths: 50,10
@@ -846,6 +908,8 @@ _POSIX_THREAD_ATTR_STACKSIZE
846908
_POSIX_THREAD_CPUTIME
847909
+++++++++++++++++++++
848910

911+
Enable this option with :kconfig:option:`CONFIG_POSIX_THREAD_CPUTIME`.
912+
849913
.. csv-table:: _POSIX_THREAD_CPUTIME
850914
:header: API, Supported
851915
:widths: 50,10
@@ -858,6 +922,8 @@ _POSIX_THREAD_CPUTIME
858922
_POSIX_THREAD_PRIO_INHERIT
859923
++++++++++++++++++++++++++
860924

925+
Enable this option with :kconfig:option:`CONFIG_POSIX_THREAD_PRIO_INHERIT`.
926+
861927
.. csv-table:: _POSIX_THREAD_PRIO_INHERIT
862928
:header: API, Supported
863929
:widths: 50,10
@@ -870,6 +936,8 @@ _POSIX_THREAD_PRIO_INHERIT
870936
_POSIX_THREAD_PRIO_PROTECT
871937
++++++++++++++++++++++++++
872938

939+
Enable this option with :kconfig:option:`CONFIG_POSIX_THREAD_PRIO_PROTECT`.
940+
873941
.. csv-table:: _POSIX_THREAD_PRIO_PROTECT
874942
:header: API, Supported
875943
:widths: 50,10
@@ -886,6 +954,8 @@ _POSIX_THREAD_PRIO_PROTECT
886954
_POSIX_THREAD_PRIORITY_SCHEDULING
887955
+++++++++++++++++++++++++++++++++
888956

957+
Enable this option with :kconfig:option:`CONFIG_POSIX_THREAD_PRIORITY_SCHEDULING`.
958+
889959
.. csv-table:: _POSIX_THREAD_PRIORITY_SCHEDULING
890960
:header: API, Supported
891961
:widths: 50,10
@@ -905,6 +975,8 @@ _POSIX_THREAD_PRIORITY_SCHEDULING
905975
_POSIX_THREAD_SAFE_FUNCTIONS
906976
++++++++++++++++++++++++++++
907977

978+
Enable this option with :kconfig:option:`CONFIG_POSIX_THREAD_SAFE_FUNCTIONS`.
979+
908980
.. csv-table:: _POSIX_THREAD_SAFE_FUNCTIONS
909981
:header: API, Supported
910982
:widths: 50,10
@@ -934,6 +1006,8 @@ _POSIX_THREAD_SAFE_FUNCTIONS
9341006
_POSIX_TIMEOUTS
9351007
+++++++++++++++
9361008

1009+
Enable this option with :kconfig:option:`CONFIG_POSIX_TIMEOUTS`.
1010+
9371011
.. csv-table:: _POSIX_TIMEOUTS
9381012
:header: API, Supported
9391013
:widths: 50,10
@@ -956,6 +1030,8 @@ implemented in Zephyr but are provided so that conformant applications can still
9561030
Unimplemented functions in this option group will fail, setting ``errno`` to ``ENOSYS``
9571031
:ref:`†<posix_undefined_behaviour>`.
9581032

1033+
Enable this option with :kconfig:option:`CONFIG_XOPEN_STREAMS`.
1034+
9591035
.. csv-table:: _XOPEN_STREAMS
9601036
:header: API, Supported
9611037
:widths: 50,10

0 commit comments

Comments
 (0)