Description: Code
#ifndef __SS7_CHI_IOCTL_H__
#define __SS7_CHI_IOCTL_H__
#ident "@(#) chi_ioctl.h,v openss7-0_9_2_G(0.9.2.8) Copyright (c) 2001-2008 OpenSS7 Corporation"
#include <linux/ioctl.h>
#define CH_IOC_MAGIC 'c'
#define CH_OBJ_TYPE_CH 1
#define CH_OBJ_TYPE_MX 2
#define CH_OBJ_TYPE_DF 3
typedef struct ch_config {
ch_ulong type;
ch_ulong encoding;
ch_ulong block_size;
ch_ulong samples;
ch_ulong sample_size;
ch_ulong rate;
ch_ulong tx_channels;
ch_ulong rx_channels;
ch_ulong opt_flags;
} ch_config_t;
#define CH_IOCGCONFIG _IOR( CH_IOC_MAGIC, 2, ch_config_t )
#define CH_IOCSCONFIG _IOWR( CH_IOC_MAGIC, 3, ch_config_t )
#define CH_IOCTCONFIG _IOWR( CH_IOC_MAGIC, 4, ch_config_t )
#define CH_IOCCCONFIG _IOR( CH_IOC_MAGIC, 5, ch_config_t )
typedef struct ch_statem {
ch_ulong state;
ch_ulong flags;
} ch_statem_t;
#define CH_IOCGSTATEM _IOR( CH_IOC_MAGIC, 6, ch_statem_t )
#define CH_IOCCMRESET _IOR( CH_IOC_MAGIC, 7, ch_statem_t )
typedef struct ch_stats {
ch_ulong header;
ch_ulong rx_octets;
ch_ulong tx_octets;
ch_ulong rx_overruns;
ch_ulong tx_underruns;
ch_ulong rx_buffer_overflows;
ch_ulong tx_buffer_overflows;
ch_ulong lead_cts_lost;
ch_ulong lead_dcd_lost;
ch_ulong carrier_lost;
} ch_stats_t;
#define CH_IOCGSTATSP _IOR( CH_IOC_MAGIC, 8, ch_stats_t )
#define CH_IOCSSTATSP _IOWR( CH_IOC_MAGIC, 9, ch_stats_t )
#define CH_IOCGSTATS _IOR( CH_IOC_MAGIC, 10, ch_stats_t )
#define CH_IOCCSTATS _IOW( CH_IOC_MAGIC, 11, ch_stats_t )
typedef struct ch_notify {
ch_ulong events;
} ch_notify_t;
#define CH_IOCGNOTIFY _IOR( CH_IOC_MAGIC, 12, ch_notify_t )
#define CH_IOCSNOTIFY _IOW( CH_IOC_MAGIC, 13, ch_notify_t )
#define CH_IOCCNOTIFY _IOW( CH_IOC_MAGIC, 14, ch_notify_t )
typedef struct ch_mgmt {
ch_ulong cmd;
} ch_mgmt_t;
#define CH_MGMT_RESET 1
#define CH_IOCCMGMT _IOW( CH_IOC_MAGIC, 15, ch_mgmt_t )
#define CH_IOC_FIRST 0
#define CH_IOC_LAST 15
#define CH_IOC_PRIVATE 32
#endif