Xenomai  3.1
RTDM

The Real-Time Driver Model (RTDM) provides a unified interface to both users and developers of real-time device drivers. More...

Collaboration diagram for RTDM:

Modules

 RTDM User API
 Application interface to RTDM services.
 
 Driver programming interface
 RTDM driver programming interface.
 
 Device Profiles
 Pre-defined classes of real-time devices.
 

Typedefs

typedef uint64_t nanosecs_abs_t
 RTDM type for representing absolute dates. More...
 
typedef int64_t nanosecs_rel_t
 RTDM type for representing relative intervals. More...
 

API Versioning

#define RTDM_API_VER   9
 Common user and driver API version.
 
#define RTDM_API_MIN_COMPAT_VER   9
 Minimum API revision compatible with the current release.
 

RTDM_TIMEOUT_xxx

Special timeout values

#define RTDM_TIMEOUT_INFINITE   0
 Block forever. More...
 
#define RTDM_TIMEOUT_NONE   (-1)
 Any negative timeout means non-blocking. More...
 

Detailed Description

The Real-Time Driver Model (RTDM) provides a unified interface to both users and developers of real-time device drivers.

Specifically, it addresses the constraints of mixed RT/non-RT systems like Xenomai. RTDM conforms to POSIX semantics (IEEE Std 1003.1) where available and applicable.

API Revision: 8

Macro Definition Documentation

◆ RTDM_TIMEOUT_INFINITE

#define RTDM_TIMEOUT_INFINITE   0

Block forever.

◆ RTDM_TIMEOUT_NONE

#define RTDM_TIMEOUT_NONE   (-1)

Any negative timeout means non-blocking.

Typedef Documentation

◆ nanosecs_abs_t

typedef uint64_t nanosecs_abs_t

RTDM type for representing absolute dates.

Its base type is a 64 bit unsigned integer. The unit is 1 nanosecond.

Examples:
rtcanrecv.c.

◆ nanosecs_rel_t

typedef int64_t nanosecs_rel_t

RTDM type for representing relative intervals.

Its base type is a 64 bit signed integer. The unit is 1 nanosecond. Relative intervals can also encode the special timeouts "infinite" and "non-blocking", see RTDM_TIMEOUT_xxx.

Examples:
rtcanrecv.c.