LCOV - code coverage report
Current view: top level - zephyr/posix - posix_types.h Hit Total Coverage
Test: new.info Lines: 0 39 0.0 %
Date: 2024-12-22 00:14:23

          Line data    Source code
       1           0 : /*
       2             :  * Copyright (c) 2018 Intel Corporation
       3             :  *
       4             :  * SPDX-License-Identifier: Apache-2.0
       5             :  */
       6             : 
       7             : #ifndef ZEPHYR_INCLUDE_POSIX_TYPES_H_
       8             : #define ZEPHYR_INCLUDE_POSIX_TYPES_H_
       9             : 
      10             : #if !(defined(CONFIG_ARCH_POSIX) && defined(CONFIG_EXTERNAL_LIBC))
      11             : #include <sys/types.h>
      12             : #endif
      13             : 
      14             : #if !defined(_CLOCK_T_DECLARED) && !defined(__clock_t_defined)
      15           0 : typedef unsigned long clock_t;
      16             : #define _CLOCK_T_DECLARED
      17             : #define __clock_t_defined
      18             : #endif
      19             : 
      20             : #if !defined(_CLOCKID_T_DECLARED) && !defined(__clockid_t_defined)
      21           0 : typedef unsigned long clockid_t;
      22             : #define _CLOCKID_T_DECLARED
      23             : #define __clockid_t_defined
      24             : #endif
      25             : 
      26             : #ifdef CONFIG_NEWLIB_LIBC
      27             : #include <sys/_pthreadtypes.h>
      28             : #endif
      29             : 
      30             : #include <zephyr/kernel.h>
      31             : 
      32             : #ifdef __cplusplus
      33             : extern "C" {
      34             : #endif
      35             : 
      36             : #if !defined(_DEV_T_DECLARED) && !defined(__dev_t_defined)
      37           0 : typedef int dev_t;
      38             : #define _DEV_T_DECLARED
      39             : #define __dev_t_defined
      40             : #endif
      41             : 
      42             : #if !defined(_INO_T_DECLARED) && !defined(__ino_t_defined)
      43           0 : typedef int ino_t;
      44             : #define _INO_T_DECLARED
      45             : #define __ino_t_defined
      46             : #endif
      47             : 
      48             : #if !defined(_NLINK_T_DECLARED) && !defined(__nlink_t_defined)
      49           0 : typedef unsigned short nlink_t;
      50             : #define _NLINK_T_DECLARED
      51             : #define __nlink_t_defined
      52             : #endif
      53             : 
      54             : #if !defined(_UID_T_DECLARED) && !defined(__uid_t_defined)
      55           0 : typedef unsigned short uid_t;
      56             : #define _UID_T_DECLARED
      57             : #define __uid_t_defined
      58             : #endif
      59             : 
      60             : #if !defined(_GID_T_DECLARED) && !defined(__gid_t_defined)
      61           0 : typedef unsigned short gid_t;
      62             : #define _GID_T_DECLARED
      63             : #define __gid_t_defined
      64             : #endif
      65             : 
      66             : #if !defined(_BLKSIZE_T_DECLARED) && !defined(__blksize_t_defined)
      67           0 : typedef unsigned long blksize_t;
      68             : #define _BLKSIZE_T_DECLARED
      69             : #define __blksize_t_defined
      70             : #endif
      71             : 
      72             : #if !defined(_BLKCNT_T_DECLARED) && !defined(__blkcnt_t_defined)
      73           0 : typedef unsigned long blkcnt_t;
      74             : #define _BLKCNT_T_DECLARED
      75             : #define __blkcnt_t_defined
      76             : #endif
      77             : 
      78             : #if !defined(CONFIG_ARCMWDT_LIBC)
      79           0 : typedef int pid_t;
      80             : #endif
      81             : 
      82             : #ifndef __useconds_t_defined
      83           0 : typedef unsigned long useconds_t;
      84             : #endif
      85             : 
      86             : /* time related attributes */
      87             : #if !defined(__timer_t_defined) && !defined(_TIMER_T_DECLARED)
      88           0 : typedef unsigned long timer_t;
      89             : #endif
      90             : 
      91             : /* Thread attributes */
      92           0 : struct pthread_attr {
      93           0 :         void *stack;
      94           0 :         uint32_t details[2];
      95             : };
      96             : 
      97             : #if !defined(CONFIG_NEWLIB_LIBC)
      98           0 : typedef struct pthread_attr pthread_attr_t;
      99             : BUILD_ASSERT(sizeof(pthread_attr_t) >= sizeof(struct pthread_attr));
     100             : #endif
     101             : 
     102           0 : typedef uint32_t pthread_t;
     103           0 : typedef uint32_t pthread_spinlock_t;
     104             : 
     105             : /* Semaphore */
     106           0 : typedef struct k_sem sem_t;
     107             : 
     108             : /* Mutex */
     109           0 : typedef uint32_t pthread_mutex_t;
     110             : 
     111           0 : struct pthread_mutexattr {
     112           0 :         unsigned char type: 2;
     113           0 :         bool initialized: 1;
     114             : };
     115             : #if !defined(CONFIG_NEWLIB_LIBC)
     116           0 : typedef struct pthread_mutexattr pthread_mutexattr_t;
     117             : BUILD_ASSERT(sizeof(pthread_mutexattr_t) >= sizeof(struct pthread_mutexattr));
     118             : #endif
     119             : 
     120             : /* Condition variables */
     121           0 : typedef uint32_t pthread_cond_t;
     122             : 
     123           0 : struct pthread_condattr {
     124           0 :         clockid_t clock;
     125             : };
     126             : 
     127             : #if !defined(CONFIG_NEWLIB_LIBC)
     128           0 : typedef struct pthread_condattr pthread_condattr_t;
     129             : BUILD_ASSERT(sizeof(pthread_condattr_t) >= sizeof(struct pthread_condattr));
     130             : #endif
     131             : 
     132             : /* Barrier */
     133           0 : typedef uint32_t pthread_barrier_t;
     134             : 
     135           0 : typedef struct pthread_barrierattr {
     136           0 :         int pshared;
     137           0 : } pthread_barrierattr_t;
     138             : 
     139           0 : typedef uint32_t pthread_rwlockattr_t;
     140             : 
     141           0 : typedef uint32_t pthread_rwlock_t;
     142             : 
     143           0 : struct pthread_once {
     144           0 :         bool flag;
     145             : };
     146             : 
     147             : #if !defined(CONFIG_NEWLIB_LIBC)
     148           0 : typedef uint32_t pthread_key_t;
     149           0 : typedef struct pthread_once pthread_once_t;
     150             : /* Newlib typedefs pthread_once_t as a struct with two ints */
     151             : BUILD_ASSERT(sizeof(pthread_once_t) >= sizeof(struct pthread_once));
     152             : #endif
     153             : 
     154             : #ifdef __cplusplus
     155             : }
     156             : #endif
     157             : 
     158             : #endif  /* ZEPHYR_INCLUDE_POSIX_TYPES_H_ */

Generated by: LCOV version 1.14