Xenomai API  2.6.5
Device Profiles
Collaboration diagram for Device Profiles:

Modules

 CAN Devices
 
 Real-time IPC protocols
 Profile Revision: 1


 
 Serial Devices
 
 Testing Devices
 

Data Structures

struct  rtdm_device_info
 Device information. More...
 

Typedefs

typedef struct rtdm_device_info rtdm_device_info_t
 Device information.
 

RTDM_CLASS_xxx

Device classes

#define RTDM_CLASS_PARPORT   1
 
#define RTDM_CLASS_SERIAL   2
 
#define RTDM_CLASS_CAN   3
 
#define RTDM_CLASS_NETWORK   4
 
#define RTDM_CLASS_RTMAC   5
 
#define RTDM_CLASS_TESTING   6
 
#define RTDM_CLASS_RTIPC   7
 
#define RTDM_CLASS_EXPERIMENTAL   224
 
#define RTDM_CLASS_MAX   255
 

Device Naming

Maximum length of device names (excluding the final null character)

#define RTDM_MAX_DEVNAME_LEN   31
 

RTDM_PURGE_xxx_BUFFER

Flags selecting buffers to be purged

#define RTDM_PURGE_RX_BUFFER   0x0001
 
#define RTDM_PURGE_TX_BUFFER   0x0002
 

Common IOCTLs

The following IOCTLs are common to all device profiles.

#define RTIOC_DEVICE_INFO   _IOR(RTIOC_TYPE_COMMON, 0x00, struct rtdm_device_info)
 Retrieve information about a device or socket. More...
 
#define RTIOC_PURGE   _IOW(RTIOC_TYPE_COMMON, 0x10, int)
 Purge internal device or socket buffers. More...
 

Detailed Description

Device profiles define which operation handlers a driver of a certain class has to implement, which name or protocol it has to register, which IOCTLs it has to provide, and further details. Sub-classes can be defined in order to extend a device profile with more hardware-specific functions.

Macro Definition Documentation

#define RTIOC_DEVICE_INFO   _IOR(RTIOC_TYPE_COMMON, 0x00, struct rtdm_device_info)

Retrieve information about a device or socket.

Parameters
[out]argPointer to information buffer (struct rtdm_device_info)
#define RTIOC_PURGE   _IOW(RTIOC_TYPE_COMMON, 0x10, int)

Purge internal device or socket buffers.

Parameters
[in]argPurge mask, see RTDM_PURGE_xxx_BUFFER