From 6f51404469926b41feedff35de204de8e808575a Mon Sep 17 00:00:00 2001 From: Gregory Nutt Date: Thu, 21 Aug 2014 11:16:55 -0600 Subject: [PATCH] wdog.h does not contain any application interface, only internal OS interface. Further, it is non-standard. Move wdog.h from include/ to include/nuttx. For the same reason, move the description of the watchdog timer interfaces from the Users Guide to the Porting Guide. --- Documentation/NuttxPortingGuide.html | 296 +++++++++-- Documentation/NuttxUserGuide.html | 723 +++++++++------------------ 2 files changed, 503 insertions(+), 516 deletions(-) diff --git a/Documentation/NuttxPortingGuide.html b/Documentation/NuttxPortingGuide.html index 971b01f8d0..aaf1597c6d 100644 --- a/Documentation/NuttxPortingGuide.html +++ b/Documentation/NuttxPortingGuide.html @@ -12,7 +12,7 @@

NuttX RTOS Porting Guide

-

Last Updated: August 12, 2014

+

Last Updated: August 21, 2014

@@ -101,7 +101,8 @@ 4.3.1 Basic System Timer
4.3.2 Hardware
4.3.3 System Tick and Time
- 4.3.4 Tickless OS + 4.3.4 Tickless OS
+ 4.3.5 Watchdog Timer Interfaces 4.4 Address Environments

4.2.5 up_use_stack()

-

Prototype: +

Function Prototype: STATUS up_use_stack(FAR struct tcb_s *tcb, FAR void *stack, size_t stack_size);

@@ -1882,7 +1883,7 @@ The system can be re-made subsequently by just typing make.

4.2.6 up_stack_frame()

-

Prototype: FAR void *up_stack_frame(FAR struct tcb_s *tcb, size_t frame_size);

+

Function Prototype: FAR void *up_stack_frame(FAR struct tcb_s *tcb, size_t frame_size);

Description. @@ -1932,7 +1933,7 @@ The system can be re-made subsequently by just typing make.

4.2.7 up_release_stack()

-

Prototype: void up_release_stack(FAR struct tcb_s *dtcb);

+

Function Prototype: void up_release_stack(FAR struct tcb_s *dtcb);

Description. A task has been stopped. @@ -1971,7 +1972,7 @@ The system can be re-made subsequently by just typing make.

4.2.8 up_unblock_task()

-

Prototype: void up_unblock_task(FAR struct tcb_s *tcb);

+

Function Prototype: void up_unblock_task(FAR struct tcb_s *tcb);

Description. A task is currently in an inactive task list @@ -1994,7 +1995,7 @@ The system can be re-made subsequently by just typing make.

4.2.9 up_block_task()

-

Prototype: void up_block_task(FAR struct tcb_s *tcb, tstate_t task_state);

+

Function Prototype: void up_block_task(FAR struct tcb_s *tcb, tstate_t task_state);

Description. The currently executing task at the head of @@ -2020,7 +2021,7 @@ The system can be re-made subsequently by just typing make.

4.2.10 up_release_pending()

-

Prototype: void up_release_pending(void);

+

Function Prototype: void up_release_pending(void);

Description. When tasks become ready-to-run but cannot run because pre-emption @@ -2037,7 +2038,7 @@ The system can be re-made subsequently by just typing make.

4.2.11 up_reprioritize_rtr()

-

Prototype: void up_reprioritize_rtr(FAR struct tcb_s *tcb, uint8_t priority);

+

Function Prototype: void up_reprioritize_rtr(FAR struct tcb_s *tcb, uint8_t priority);

Description. Called when the priority of a running or @@ -2072,7 +2073,7 @@ The system can be re-made subsequently by just typing make.

4.2.12 _exit()

-

Prototype: void _exit(int status) noreturn_function;

+

Function Prototype: void _exit(int status) noreturn_function;

Description. This function causes the currently executing task to cease @@ -2086,7 +2087,7 @@ The system can be re-made subsequently by just typing make.

4.2.13 up_assert()

-

Prototype:
+

Function Prototype:
void up_assert(FAR const uint8_t *filename, int linenum);

@@ -2095,7 +2096,7 @@ The system can be re-made subsequently by just typing make.

4.2.14 up_schedule_sigaction()

-

Prototype: +

Function Prototype: void up_schedule_sigaction(FAR struct tcb_s *tcb, sig_deliver_t sigdeliver);

@@ -2142,7 +2143,7 @@ The system can be re-made subsequently by just typing make.

4.2.15 up_allocate_heap()

-

Prototype: void up_allocate_heap(FAR void **heap_start, size_t *heap_size);

+

Function Prototype: void up_allocate_heap(FAR void **heap_start, size_t *heap_size);

Description. This function will be called to dynamically set aside the heap region. @@ -2153,14 +2154,14 @@ The system can be re-made subsequently by just typing make.

4.2.16 up_interrupt_context()

-

Prototype: bool up_interrupt_context(void)

+

Function Prototype: bool up_interrupt_context(void)

Description. Return true if we are currently executing in the interrupt handler context.

4.2.17 up_disable_irq()

-

Prototype:

+

Function Prototype:

4.4.3 up_addrenv_select()

-

Prototype:

+

Function Prototype:

@@ -2827,7 +3043,7 @@ int up_timer_start(FAR const struct timespec *ts);

4.4.4 up_addrenv_restore()

-

Prototype:

+

Function Prototype:

@@ -2846,7 +3062,7 @@ int up_timer_start(FAR const struct timespec *ts);

4.4.5 up_addrenv_destroy()

-

Prototype:

+

Function Prototype:

@@ -2864,7 +3080,7 @@ int up_timer_start(FAR const struct timespec *ts);

4.4.6 up_addrenv_assign()

-

Prototype:

+

Function Prototype:

@@ -2883,7 +3099,7 @@ int up_timer_start(FAR const struct timespec *ts);

4.4.7 up_addrenv_share()

-

Prototype:

+

Function Prototype:

@@ -2903,7 +3119,7 @@ int up_timer_start(FAR const struct timespec *ts);

4.4.8 up_addrenv_release()

-

Prototype:

+

Function Prototype:

@@ -2939,7 +3155,7 @@ int up_timer_start(FAR const struct timespec *ts);

4.5.3 sched_process_timer()

-

Prototype: void sched_process_timer(void);

+

Function Prototype: void sched_process_timer(void);

Description. This function handles system timer events. @@ -2950,7 +3166,7 @@ int up_timer_start(FAR const struct timespec *ts);

4.5.4 sched_timer_expiration()

-

Prototype:

+

Function Prototype:

4.5.5 sched_alaram_expiration()

-

Prototype:

+

Function Prototype:

4.5.6 irq_dispatch()

-

Prototype: void irq_dispatch(int irq, FAR void *context);

+

Function Prototype: void irq_dispatch(int irq, FAR void *context);

Description. This function must be called from the architecture- diff --git a/Documentation/NuttxUserGuide.html b/Documentation/NuttxUserGuide.html index 9c8b5adb04..07246ff7e8 100644 --- a/Documentation/NuttxUserGuide.html +++ b/Documentation/NuttxUserGuide.html @@ -13,7 +13,7 @@

NuttX Operating System

User's Manual

by

Gregory Nutt

-

Last Updated: January 13, 2014

+

Last Updated: August 21, 2014

@@ -57,13 +57,12 @@
  • Paragraph 2.3 Task Control Interfaces
  • Paragraph 2.4 Named Message Queue Interfaces
  • Paragraph 2.5 Counting Semaphore Interfaces
  • -
  • Paragraph 2.6 Watchdog Timer Interfaces
  • -
  • Paragraph 2.7 Clocks and Timers
  • -
  • Paragraph 2.8 Signal Interfaces
  • -
  • Paragraph 2.9 Pthread Interfaces
  • -
  • Paragraph 2.10 Environment Variables
  • -
  • Paragraph 2.11 File System Interfaces
  • -
  • Paragraph 2.12 Network Interfaces
  • +
  • Paragraph 2.6 Clocks and Timers
  • +
  • Paragraph 2.7 Signal Interfaces
  • +
  • Paragraph 2.8 Pthread Interfaces
  • +
  • Paragraph 2.9 Environment Variables
  • +
  • Paragraph 2.10 File System Interfaces
  • +
  • Paragraph 2.11 Network Interfaces
  • @@ -3872,251 +3871,29 @@ interface of the same name. - -
    -

    2.6 Watchdog Timer Interfaces

    -
    - -

    - NuttX provides a general watchdog timer facility. - This facility allows the NuttX user to specify a watchdog timer function - that will run after a specified delay. - The watchdog timer function will run in the context of the timer interrupt handler. - Because of this, a limited number of NuttX interfaces are available to he watchdog timer function. - However, the watchdog timer function may use mq_send(), sigqueue(), - or kill() to communicate with NuttX tasks. -

    - - -

    2.6.1 wd_create

    - -

    -Function Prototype: -

    -    #include <wdog.h>
    -    WDOG_ID wd_create(void);
    -
    - -

    -Description: The wd_create function will create a watchdog -by allocating the appropriate resources for the watchdog. -

    -Input Parameters: None. -

    -Returned Value: -

    - -

    -Assumptions/Limitations: -

    - POSIX Compatibility: This is a NON-POSIX interface. -VxWorks provides the following comparable interface: -

    -    WDOG_ID wdCreate (void);
    -
    - -

    -Differences from the VxWorks interface include: -

    - -

    2.6.2 wd_delete

    - -

    -Function Prototype: -

    -    #include <wdog.h>
    -    int wd_delete(WDOG_ID wdog);
    -
    - -

    -Description: The wd_delete function will deallocate a -watchdog. The watchdog will be removed from the timer queue if -has been started. -

    -Input Parameters: -

    - -

    -Returned Value: -

    - -

    -Assumptions/Limitations: It is the responsibility of the -caller to assure that the watchdog is inactive before deleting -it. -

    -POSIX Compatibility: This is a NON-POSIX interface. -VxWorks provides the following comparable interface: -

    -    STATUS wdDelete (WDOG_ID wdog);
    -
    - -

    -Differences from the VxWorks interface include: -

    - -

    2.6.3 wd_start

    - -

    -Function Prototype: -

    -    #include <wdog.h>
    -    int wd_start(WDOG_ID wdog, int delay, wdentry_t wdentry,
    -                 int argc, ....);
    -
    - -

    -Description: This function adds a watchdog to the timer -queue. The specified watchdog function will be called from the -interrupt level after the specified number of ticks has elapsed. -Watchdog timers may be started from the interrupt level. -

    -Watchdog times execute in the context of the timer interrupt handler. -

    -Watchdog timers execute only once. -

    -To replace either the timeout delay or the function to be executed, -call wd_start again with the same wdog; only the most recent -wd_start() on a given watchdog ID has any effect. -

    -Input Parameters: -

    - -

    -Returned Value: -

    - -

    -Assumptions/Limitations: The watchdog routine runs in the -context of the timer interrupt handler and is subject to all ISR -restrictions. -

    -POSIX Compatibility: This is a NON-POSIX interface. -VxWorks provides the following comparable interface: -

    -    STATUS wdStart (WDOG_ID wdog, int delay, FUNCPTR wdentry, int parameter);
    -
    - -

    -Differences from the VxWorks interface include: -

    - -

    2.6.4 wd_cancel

    -

    -Function Prototype: -

    -    #include <wdog.h>
    -    int wd_cancel(WDOG_ID wdog);
    -
    - -

    -Description: This function cancels a currently running -watchdog timer. Watchdog timers may be canceled from the interrupt -level. -

    -Input Parameters: -

    - -

    -Returned Value: -

    - -

    -Assumptions/Limitations: -

    -POSIX Compatibility: This is a NON-POSIX interface. -VxWorks provides the following comparable interface: -

    -    STATUS wdCancel (WDOG_ID wdog);
    -
    - -

    2.6.5 wd_gettime

    -

    - Function Prototype: -

    -
    -    #include <wdog.h>
    -    Sint wd_gettime(WDOG_ID wdog);
    -
    -

    - Description: - This function returns the time remaining before the specified watchdog expires. -

    -

    - Input Parameters: -

    -

    -

    - Returned Value: - The time in system ticks remaining until the watchdog time expires. Zero - means either that wdog is not valid or that the wdog has already expired. -

    - - - -
    -

    2.7 Clocks and Timers

    +

    2.6 Clocks and Timers

    -

    2.7.1 clock_settime

    +

    2.6.1 clock_settime

    Function Prototype:

    @@ -4144,7 +3921,7 @@ VxWorks provides the following comparable interface:
  • To be provided.
  • -

    2.7.2 clock_gettime

    +

    2.6.2 clock_gettime

    Function Prototype:

    @@ -4172,7 +3949,7 @@ VxWorks provides the following comparable interface:
  • To be provided.
  • -

    2.7.3 clock_getres

    +

    2.6.3 clock_getres

    Function Prototype:

    @@ -4200,7 +3977,7 @@ VxWorks provides the following comparable interface:
  • To be provided.
  • -

    2.7.4 mktime

    +

    2.6.4 mktime

    Function Prototype:

    @@ -4228,7 +4005,7 @@ VxWorks provides the following comparable interface:
  • To be provided.
  • -

    2.7.5 gmtime

    +

    2.6.5 gmtime

    Function Prototype:

    @@ -4261,13 +4038,13 @@ VxWorks provides the following comparable interface:
  • To be provided.
  • -

    2.7.6 localtime

    +

    2.6.6 localtime

         #include <time.h>
         #define localtime(c) gmtime(c)
     
    -

    2.7.7 gmtime_r

    +

    2.6.7 gmtime_r

    Function Prototype:

    @@ -4301,13 +4078,13 @@ VxWorks provides the following comparable interface:
  • To be provided.
  • -

    2.7.8 localtime_r

    +

    2.6.8 localtime_r

         #include <time.h>
         #define localtime_r(c,r) gmtime_r(c,r)
     
    -

    2.7.9 timer_create

    +

    2.6.9 timer_create

    Function Prototype:

    @@ -4377,7 +4154,7 @@ VxWorks provides the following comparable interface:
  • Only CLOCK_REALTIME is supported for the clockid argument.
  • -

    2.7.10 timer_delete

    +

    2.6.10 timer_delete

    Function Prototype:

    @@ -4416,7 +4193,7 @@ VxWorks provides the following comparable interface: Comparable to the POSIX interface of the same name.

    -

    2.7.11 timer_settime

    +

    2.6.11 timer_settime

    Function Prototype:

    @@ -4499,7 +4276,7 @@ VxWorks provides the following comparable interface:
  • The ovalue argument is ignored.
  • -

    2.7.12 timer_gettime

    +

    2.6.12 timer_gettime

    Function Prototype:

    @@ -4546,7 +4323,7 @@ VxWorks provides the following comparable interface: Comparable to the POSIX interface of the same name.

    -

    2.7.13 timer_getoverrun

    +

    2.6.13 timer_getoverrun

    Function Prototype:

    @@ -4607,7 +4384,7 @@ VxWorks provides the following comparable interface: interface of the same name.

    -

    2.7.14 gettimeofday

    +

    2.6.14 gettimeofday

    Function Prototype:

    @@ -4637,7 +4414,7 @@ interface of the same name.
    -

    2.8 Signal Interfaces

    +

    2.7 Signal Interfaces

    @@ -4703,23 +4480,23 @@ interface of the same name. The following signal handling interfaces are provided by NuttX:

    -

    2.8.1 sigemptyset

    +

    2.7.1 sigemptyset

    Function Prototype: @@ -4749,7 +4526,7 @@ by set such that all signals are excluded. POSIX Compatibility: Comparable to the POSIX interface of the same name. -

    2.8.2 sigfillset

    +

    2.7.2 sigfillset

    Function Prototype: @@ -4779,7 +4556,7 @@ by set such that all signals are included. POSIX Compatibility: Comparable to the POSIX interface of the same name. -

    2.8.3 sigaddset

    +

    2.7.3 sigaddset

    Function Prototype: @@ -4810,7 +4587,7 @@ signo to the signal set specified by set. POSIX Compatibility: Comparable to the POSIX interface of the same name. -

    2.8.4 sigdelset

    +

    2.7.4 sigdelset

    Function Prototype: @@ -4841,7 +4618,7 @@ by signo from the signal set specified by set. POSIX Compatibility: Comparable to the POSIX interface of the same name. -

    2.8.5 sigismember

    +

    2.7.5 sigismember

    Function Prototype: @@ -4874,7 +4651,7 @@ by signo is a member of the set specified by set. POSIX Compatibility: Comparable to the POSIX interface of the same name. -

    2.8.6 sigaction

    +

    2.7.6 sigaction

    Function Prototype: @@ -4951,7 +4728,7 @@ Differences from the POSIX implementation include: -

    2.8.7 sigprocmask

    +

    2.7.7 sigprocmask

    Function Prototype: @@ -5001,7 +4778,7 @@ pointed to by the set input parameter. POSIX Compatibility: Comparable to the POSIX interface of the same name. -

    2.8.8 sigpending

    +

    2.7.8 sigpending

    Function Prototype: @@ -5039,7 +4816,7 @@ is delivered more than once." POSIX Compatibility: Comparable to the POSIX interface of the same name. -

    2.8.9 sigsuspend

    +

    2.7.9 sigsuspend

    Function Prototype: @@ -5087,7 +4864,7 @@ function or to terminate the task." Only delivery of the signal is required in the present implementation (even if the signal is ignored). -

    2.8.10 sigwaitinfo

    +

    2.7.10 sigwaitinfo

    Function Prototype: @@ -5119,7 +4896,7 @@ with a NULL timeout parameter. (see below). POSIX Compatibility: Comparable to the POSIX interface of the same name. -

    2.8.11 sigtimedwait

    +

    2.7.11 sigtimedwait

    Function Prototype: @@ -5185,7 +4962,7 @@ that the unblocked signal be caught; the task will be resumed even if the unblocked signal is ignored. -

    2.8.12 sigqueue

    +

    2.7.12 sigqueue

    Function Prototype: @@ -5242,7 +5019,7 @@ There is no null signal in the present implementation; a zero signal will be sent. -

    2.8.13 kill

    +

    2.7.13 kill

    Function Prototype: @@ -5298,7 +5075,7 @@ be sent.

  • Sending of signals to 'process groups' is not supported in NuttX.
  • -

    2.8.14 pause

    +

    2.7.14 pause

    Function Prototype: @@ -5334,7 +5111,7 @@ be sent.
    -

    2.9 Pthread Interfaces

    +

    2.8 Pthread Interfaces

    @@ -5361,27 +5138,27 @@ be sent. Interfaces that allow you to create and manage pthreads.

    Thread Specific Data. @@ -5391,64 +5168,64 @@ be sent. (2) The main task thread does not had thread-specific data.

    pthread Mutexes.

    Condition Variables.

    Barriers.

    Initialization.

    Signals.

    @@ -5505,7 +5282,7 @@ be sent.

  • pthread_testcancel. set cancelability state.
  • -

    2.9.1 pthread_attr_init

    +

    2.8.1 pthread_attr_init

    Function Prototype:

    @@ -5538,7 +5315,7 @@ returned to indicate the error: POSIX Compatibility: Comparable to the POSIX interface of the same name.

    -

    2.9.2 pthread_attr_destroy

    +

    2.8.2 pthread_attr_destroy

    Function Prototype:

    @@ -5570,7 +5347,7 @@ returned to indicate the error: POSIX Compatibility: Comparable to the POSIX interface of the same name.

    -

    2.9.3 pthread_attr_setschedpolicy

    +

    2.8.3 pthread_attr_setschedpolicy

    Function Prototype:

    @@ -5601,7 +5378,7 @@ returned to indicate the error: POSIX Compatibility: Comparable to the POSIX interface of the same name. -

    2.9.4 pthread_attr_getschedpolicy

    +

    2.8.4 pthread_attr_getschedpolicy

    Function Prototype:

    @@ -5632,7 +5409,7 @@ returned to indicate the error: POSIX Compatibility: Comparable to the POSIX interface of the same name. -

    2.9.5 pthread_attr_getschedpolicy

    +

    2.8.5 pthread_attr_getschedpolicy

    Function Prototype:

    @@ -5664,7 +5441,7 @@ returned to indicate the error: POSIX Compatibility: Comparable to the POSIX interface of the same name. -

    2.9.6 pthread_attr_getschedparam

    +

    2.8.6 pthread_attr_getschedparam

    Function Prototype:

    @@ -5696,7 +5473,7 @@ returned to indicate the error: POSIX Compatibility: Comparable to the POSIX interface of the same name. -

    2.9.7 pthread_attr_setinheritsched

    +

    2.8.7 pthread_attr_setinheritsched

    Function Prototype:

    @@ -5728,7 +5505,7 @@ returned to indicate the error: POSIX Compatibility: Comparable to the POSIX interface of the same name.

    -

    2.9.8 pthread_attr_getinheritsched

    +

    2.8.8 pthread_attr_getinheritsched

    Function Prototype:

    @@ -5760,7 +5537,7 @@ returned to indicate the error: POSIX Compatibility: Comparable to the POSIX interface of the same name. -

    2.9.9 pthread_attr_setstacksize

    +

    2.8.9 pthread_attr_setstacksize

    Function Prototype:

    @@ -5791,7 +5568,7 @@ returned to indicate the error: POSIX Compatibility: Comparable to the POSIX interface of the same name. -

    2.9.10 pthread_attr_getstacksize

    +

    2.8.10 pthread_attr_getstacksize

    Function Prototype:

    @@ -5822,7 +5599,7 @@ returned to indicate the error: POSIX Compatibility: Comparable to the POSIX interface of the same name. -

    2.9.11 pthread_create

    +

    2.8.11 pthread_create

    Function Prototype:

    @@ -5861,7 +5638,7 @@ returned to indicate the error: POSIX Compatibility: Comparable to the POSIX interface of the same name. -

    2.9.12 pthread_detach

    +

    2.8.12 pthread_detach

    Function Prototype:

    @@ -5894,7 +5671,7 @@ returned to indicate the error: POSIX Compatibility: Comparable to the POSIX interface of the same name. -

    2.9.13 pthread_exit

    +

    2.8.13 pthread_exit

    Function Prototype:

    @@ -5926,7 +5703,7 @@ returned to indicate the error: POSIX Compatibility: Comparable to the POSIX interface of the same name. -

    2.9.14 pthread_cancel

    +

    2.8.14 pthread_cancel

    Function Prototype:

    @@ -5982,7 +5759,7 @@ the time when cancellation is re-enabled.

  • Thread cancellation at cancellation points is not supported.
  • -

    2.9.15 pthread_setcancelstate

    +

    2.8.15 pthread_setcancelstate

    Function Prototype:

    @@ -6024,7 +5801,7 @@ No thread could be found corresponding to that specified by the given thread ID. POSIX Compatibility: Comparable to the POSIX interface of the same name. -

    2.9.16 pthread_testcancelstate

    +

    2.8.16 pthread_testcancelstate

    Function Prototype:

    @@ -6055,7 +5832,7 @@ returned to indicate the error: POSIX Compatibility: Comparable to the POSIX interface of the same name. -

    2.9.17 pthread_join

    +

    2.8.17 pthread_join

    Function Prototype:

    @@ -6088,7 +5865,7 @@ returned to indicate the error: POSIX Compatibility: Comparable to the POSIX interface of the same name. -

    2.9.18 pthread_yield

    +

    2.8.18 pthread_yield

    Function Prototype:

    @@ -6121,7 +5898,7 @@ returned to indicate the error: POSIX Compatibility: Comparable to the POSIX interface of the same name. -

    2.9.19 pthread_self

    +

    2.8.19 pthread_self

    Function Prototype:

    @@ -6153,7 +5930,7 @@ returned to indicate the error: POSIX Compatibility: Comparable to the POSIX interface of the same name. -

    2.9.20 pthread_getschedparam

    +

    2.8.20 pthread_getschedparam

    Function Prototype:

    @@ -6219,7 +5996,7 @@ interface of the same name. Comparable to the POSIX interface of the same name.

    -

    2.9.21 pthread_setschedparam

    +

    2.8.21 pthread_setschedparam

    Function Prototype:

    @@ -6311,7 +6088,7 @@ interface of the same name. Comparable to the POSIX interface of the same name.

    -

    2.9.22 pthread_key_create

    +

    2.8.22 pthread_key_create

    Function Prototype:

    @@ -6366,7 +6143,7 @@ interface of the same name.

  • The present implementation ignores the destructor argument. -

    2.9.23 pthread_setspecific

    +

    2.8.23 pthread_setspecific

    Function Prototype:

    @@ -6416,7 +6193,7 @@ interface of the same name. destructor function. -

    2.9.24 pthread_getspecific

    +

    2.8.24 pthread_getspecific

    Function Prototype:

    @@ -6457,7 +6234,7 @@ interface of the same name. destructor function. -

    2.9.25 pthread_key_delete

    +

    2.8.25 pthread_key_delete

    Function Prototype:

    @@ -6489,7 +6266,7 @@ this function does nothing in the present implementation. POSIX Compatibility: Comparable to the POSIX interface of the same name. -

    2.9.26 pthread_mutexattr_init

    +

    2.8.26 pthread_mutexattr_init

    Function Prototype:

    @@ -6520,7 +6297,7 @@ returned to indicate the error: POSIX Compatibility: Comparable to the POSIX interface of the same name. -

    2.9.27 pthread_mutexattr_destroy

    +

    2.8.27 pthread_mutexattr_destroy

    Function Prototype:

    @@ -6551,7 +6328,7 @@ returned to indicate the error: POSIX Compatibility: Comparable to the POSIX interface of the same name. -

    2.9.28 pthread_mutexattr_getpshared

    +

    2.8.28 pthread_mutexattr_getpshared

    Function Prototype:

    @@ -6583,7 +6360,7 @@ returned to indicate the error: POSIX Compatibility: Comparable to the POSIX interface of the same name. -

    2.9.29 pthread_mutexattr_setpshared

    +

    2.8.29 pthread_mutexattr_setpshared

    Function Prototype:

    @@ -6615,7 +6392,7 @@ returned to indicate the error: POSIX Compatibility: Comparable to the POSIX interface of the same name. -

    2.9.30 pthread_mutexattr_gettype

    +

    2.8.30 pthread_mutexattr_gettype

    Function Prototype:

    @@ -6650,7 +6427,7 @@ returned to indicate the error:

    POSIX Compatibility: Comparable to the POSIX interface of the same name. -

    2.9.31 pthread_mutexattr_settype

    +

    2.8.31 pthread_mutexattr_settype

    Function Prototype:

    @@ -6704,7 +6481,7 @@ returned to indicate the error:

    POSIX Compatibility: Comparable to the POSIX interface of the same name. -

    2.9.32 pthread_mutex_init

    +

    2.8.32 pthread_mutex_init

    Function Prototype:

    @@ -6736,7 +6513,7 @@ returned to indicate the error: POSIX Compatibility: Comparable to the POSIX interface of the same name. -

    2.9.33 pthread_mutex_destroy

    +

    2.8.33 pthread_mutex_destroy

    Function Prototype:

    @@ -6767,7 +6544,7 @@ returned to indicate the error: POSIX Compatibility: Comparable to the POSIX interface of the same name. -

    2.9.34 pthread_mutex_lock

    +

    2.8.34 pthread_mutex_lock

    Function Prototype:

    @@ -6833,7 +6610,7 @@ Otherwise, an error number will be returned to indicate the error: POSIX Compatibility: Comparable to the POSIX interface of the same name. -

    2.9.35 pthread_mutex_trylock

    +

    2.8.35 pthread_mutex_trylock

    Function Prototype:

    @@ -6873,7 +6650,7 @@ Otherwise, an error number will be returned to indicate the error: POSIX Compatibility: Comparable to the POSIX interface of the same name. -

    2.9.36 pthread_mutex_unlock

    +

    2.8.36 pthread_mutex_unlock

    Function Prototype:

    @@ -6919,7 +6696,7 @@ returned to indicate the error: POSIX Compatibility: Comparable to the POSIX interface of the same name. -

    2.9.37 pthread_condattr_init

    +

    2.8.37 pthread_condattr_init

    Function Prototype:

    @@ -6950,7 +6727,7 @@ returned to indicate the error: POSIX Compatibility: Comparable to the POSIX interface of the same name. -

    2.9.38 pthread_condattr_destroy

    +

    2.8.38 pthread_condattr_destroy

    Function Prototype:

    @@ -6981,7 +6758,7 @@ returned to indicate the error: POSIX Compatibility: Comparable to the POSIX interface of the same name. -

    2.9.39 pthread_cond_init

    +

    2.8.39 pthread_cond_init

    Function Prototype:

    @@ -7012,7 +6789,7 @@ returned to indicate the error: POSIX Compatibility: Comparable to the POSIX interface of the same name. -

    2.9.40 pthread_cond_destroy

    +

    2.8.40 pthread_cond_destroy

    Function Prototype:

    @@ -7043,7 +6820,7 @@ returned to indicate the error: POSIX Compatibility: Comparable to the POSIX interface of the same name. -

    2.9.41 pthread_cond_broadcast

    +

    2.8.41 pthread_cond_broadcast

    Function Prototype:

    @@ -7074,7 +6851,7 @@ returned to indicate the error: POSIX Compatibility: Comparable to the POSIX interface of the same name. -

    2.9.42 pthread_cond_signal

    +

    2.8.42 pthread_cond_signal

    Function Prototype:

    @@ -7105,7 +6882,7 @@ returned to indicate the error: POSIX Compatibility: Comparable to the POSIX interface of the same name. -

    2.9.43 pthread_cond_wait

    +

    2.8.43 pthread_cond_wait

    Function Prototype:

    @@ -7136,7 +6913,7 @@ returned to indicate the error: POSIX Compatibility: Comparable to the POSIX interface of the same name. -

    2.9.44 pthread_cond_timedwait

    +

    2.8.44 pthread_cond_timedwait

    Function Prototype:

    @@ -7173,7 +6950,7 @@ interface of the same name. POSIX Compatibility: Comparable to the POSIX interface of the same name.

    -

    2.9.45 pthread_barrierattr_init

    +

    2.8.45 pthread_barrierattr_init

    Function Prototype:

    @@ -7206,7 +6983,7 @@ interface of the same name. POSIX Compatibility: Comparable to the POSIX interface of the same name.

    -

    2.9.46 pthread_barrierattr_destroy

    +

    2.8.46 pthread_barrierattr_destroy

    Function Prototype:

    @@ -7238,7 +7015,7 @@ interface of the same name. POSIX Compatibility: Comparable to the POSIX interface of the same name.

    -

    2.9.47 pthread_barrierattr_setpshared

    +

    2.8.47 pthread_barrierattr_setpshared

    Function Prototype:

    @@ -7276,7 +7053,7 @@ interface of the same name. POSIX Compatibility: Comparable to the POSIX interface of the same name.

    -

    2.9.48 pthread_barrierattr_getpshared

    +

    2.8.48 pthread_barrierattr_getpshared

    Function Prototype:

    @@ -7308,7 +7085,7 @@ interface of the same name. POSIX Compatibility: Comparable to the POSIX interface of the same name.

    -

    2.9.49 pthread_barrier_init

    +

    2.8.49 pthread_barrier_init

    Function Prototype:

    @@ -7378,7 +7155,7 @@ interface of the same name. POSIX Compatibility: Comparable to the POSIX interface of the same name.

    -

    2.9.50 pthread_barrier_destroy

    +

    2.8.50 pthread_barrier_destroy

    Function Prototype:

    @@ -7422,7 +7199,7 @@ interface of the same name. POSIX Compatibility: Comparable to the POSIX interface of the same name.

    -

    2.9.51 pthread_barrier_wait

    +

    2.8.51 pthread_barrier_wait

    Function Prototype:

    @@ -7482,7 +7259,7 @@ interface of the same name.

    -

    2.9.52 pthread_once

    +

    2.8.52 pthread_once

    Function Prototype:

    @@ -7526,7 +7303,7 @@ interface of the same name. POSIX Compatibility: Comparable to the POSIX interface of the same name.

    -

    2.9.53 pthread_kill

    +

    2.8.53 pthread_kill

    Function Prototype:

    @@ -7588,7 +7365,7 @@ interface of the same name. POSIX Compatibility: Comparable to the POSIX interface of the same name.

    -

    2.9.54 pthread_sigmask

    +

    2.8.54 pthread_sigmask

    Function Prototype:

    @@ -7647,7 +7424,7 @@ interface of the same name.
    -

    2.10 Environment Variables

    +

    2.9 Environment Variables

    @@ -7679,18 +7456,18 @@ interface of the same name. described in detail in the following paragraphs.

    Disabling Environment Variable Support. All support for environment variables can be disabled by setting CONFIG_DISABLE_ENVIRON in the board configuration file.

    -

    2.10.1 getenv

    +

    2.9.1 getenv

    Function Prototype:

    @@ -7718,7 +7495,7 @@ interface of the same name. The value of the variable (read-only) or NULL on failure.

    -

    2.10.2 putenv

    +

    2.9.2 putenv

    Function Prototype:

    @@ -7749,7 +7526,7 @@ interface of the same name. Zero on success.

    -

    2.10.3 clearenv

    +

    2.9.3 clearenv

    Function Prototype:

    @@ -7771,7 +7548,7 @@ interface of the same name. Zero on success.

    -

    2.10.4 setenv

    +

    2.9.4 setenv

    Function Prototype:

    @@ -7809,7 +7586,7 @@ interface of the same name. Zero on success.

    -

    2.10.5 unsetenv

    +

    2.9.5 unsetenv

    Function Prototype:

    @@ -7839,24 +7616,24 @@ interface of the same name.
    -

    2.11 File System Interfaces

    +

    2.10 File System Interfaces

    -

    2.11.1 NuttX File System Overview

    +

    2.10.1 NuttX File System Overview

    Overview. NuttX includes an optional, scalable file system. @@ -7916,23 +7693,23 @@ interface of the same name. in a file-system-like name space.

    -

    2.11.2 Driver Operations

    +

    2.10.2 Driver Operations

    -

    2.11.2.1 fcntl.h

    +

    2.10.2.1 fcntl.h

    -

    2.11.2.2 unistd.h

    +

    2.10.2.2 unistd.h

    -

    2.11.2.3 sys/ioctl.h

    +

    2.10.2.3 sys/ioctl.h

    -

    2.11.2.4 poll.h

    +

    2.10.2.4 poll.h

    -
    2.11.2.4.1 poll
    +
    2.10.2.4.1 poll

    Function Prototype:

    @@ -8024,9 +7801,9 @@ interface of the same name.
  • ENOSYS. One or more of the drivers supporting the file descriptor does not support the poll method.
  • -

    2.11.2.5 sys/select.h

    +

    2.10.2.5 sys/select.h

    -
    2.11.2.5.1 select
    +
    2.10.2.5.1 select

    Function Prototype:

    @@ -8070,7 +7847,7 @@ int select(int nfds, FAR fd_set *readfds, FAR fd_set *writefds, see poll()). -

    2.11.3 Directory Operations

    +

    2.10.3 Directory Operations

    -

    2.11.4 UNIX Standard Operations

    +

    2.10.4 UNIX Standard Operations

    -

    2.11.5 Standard I/O

    +

    2.10.5 Standard I/O

    -

    2.11.6 Standard String Operations

    +

    2.10.6 Standard String Operations

    -

    2.11.7 Pipes and FIFOs

    +

    2.10.7 Pipes and FIFOs

    -

    2.11.7.1 pipe

    +

    2.10.7.1 pipe

    Function Prototype:

    @@ -8253,7 +8030,7 @@ int pipe(int fd[2]);

    -

    2.11.7.2 mkfifo

    +

    2.10.7.2 mkfifo

    Function Prototype:

    @@ -8300,8 +8077,8 @@ int mkfifo(FAR const char *pathname, mode_t mode);

    -

    2.11.8 FAT File System Support

    -

    2.11.8.1 mkfatfs

    +

    2.10.8 FAT File System Support

    +

    2.10.8.1 mkfatfs

    Function Prototype:

    @@ -8378,7 +8155,7 @@ struct fat_format_s

    -

    2.11.9 mmap() and eXecute In Place (XIP)

    +

    2.10.9 mmap() and eXecute In Place (XIP)

    NuttX operates in a flat open address space and is focused on MCUs that do support Memory Management Units (MMUs). Therefore, NuttX generally does not @@ -8507,7 +8284,7 @@ struct fat_format_s -

    2.11.9.1 mmap

    +

    2.10.9.1 mmap

    Function Prototype:

    @@ -8637,7 +8414,7 @@ FAR void *mmap(FAR void *start, size_t length, int prot, int flags, int fd, off_
    -

    2.12 Network Interfaces

    +

    2.11 Network Interfaces

    @@ -8650,20 +8427,20 @@ Those socket APIs are discussed in the following paragraphs.

    -

    2.12.1 socket

    +

    2.11.1 socket

    Function Prototype:

    @@ -8705,7 +8482,7 @@ int socket(int domain, int type, int protocol); The protocol type or the specified protocol is not supported within this domain. -

    2.12.2 bind

    +

    2.11.2 bind

    Function Prototype:

    @@ -8747,7 +8524,7 @@ int bind(int sockfd, const struct sockaddr *addr, socklen_t addrlen); sockfd is a descriptor for a file, not a socket. -

    2.12.3 connect

    +

    2.11.3 connect

    Function Prototype:

    @@ -8826,7 +8603,7 @@ int connect(int sockfd, const struct sockaddr *addr, socklen_t addrlen); to accept new connections. -

    2.12.4 listen

    +

    2.11.4 listen

    Function Prototype:

    @@ -8864,7 +8641,7 @@ int listen(int sockfd, int backlog);
  • EOPNOTSUPP: The socket is not of a type that supports the listen operation.
  • -

    2.12.5 accept

    +

    2.11.5 accept

    Function Prototype:

    @@ -8942,7 +8719,7 @@ int accept(int sockfd, struct sockaddr *addr, socklen_t *addrlen); Firewall rules forbid connection. -

    2.12.6 send

    +

    2.11.6 send

    Function Prototype:

    @@ -8974,7 +8751,7 @@ ssize_t send(int sockfd, const void *buf, size_t len, int flags); See sendto().

    -

    2.12.7 sendto

    +

    2.11.7 sendto

    Function Prototype:

    @@ -9047,7 +8824,7 @@ ssize_t send(int sockfd, const void *buf, size_t len, int flags); MSG_NOSIGNAL is set. -

    2.12.8 recv

    +

    2.11.8 recv

    Function Prototype:

    @@ -9077,7 +8854,7 @@ ssize_t recv(int sockfd, void *buf, size_t len, int flags); See recvfrom().

    -

    2.12.9 recvfrom

    +

    2.11.9 recvfrom

    Function Prototype:

    @@ -9140,7 +8917,7 @@ ssize_t recvfrom(int sockfd, void *buf, size_t len, int flags, The argument sockfd does not refer to a socket. -

    2.12.10 setsockopt

    +

    2.11.10 setsockopt

    Function Prototype:

    @@ -9200,7 +8977,7 @@ int setsockopt(int sockfd, int level, int option, Insufficient resources are available in the system to complete the call. -

    2.12.11 getsockopt

    +

    2.11.11 getsockopt

    Function Prototype:

    @@ -9593,10 +9370,10 @@ notify a task when a message is available on a queue.
  • pipe
  • poll
  • poll.h
  • -
  • posix_spawn
  • -
  • posix_spawn_file_actions_addclose
  • +
  • posix_spawn
  • +
  • posix_spawn_file_actions_addclose
  • posix_spawn_file_actions_adddup2
  • posix_spawn_file_actions_addopen
  • posix_spawn_file_actions_destroy
  • @@ -9677,12 +9454,12 @@ notify a task when a message is available on a queue.
  • recv
  • recvfrom
  • rename
  • + +
  • rmdir
  • rewinddir
  • ROM disk driver
  • ROMFS
  • - -
  • sched_getparam
  • sched_get_priority_max
  • sched_get_priority_min
  • @@ -9759,12 +9536,6 @@ notify a task when a message is available on a queue.
  • wait
  • waitid
  • waitpid -
  • Watchdog Timer Interfaces -
  • wd_cancel
  • -
  • wd_create
  • -
  • wd_delete
  • -
  • wd_gettime
  • -
  • wd_start
  • write
  • XIP