From 364f1d7480a20c2a2fa9cea31df34b981f3941c5 Mon Sep 17 00:00:00 2001 From: Florian Pose <fp@igh-essen.com> Date: Mon, 9 Jun 2008 10:27:56 +0000 Subject: [PATCH] Using Linux ioctl() number generation macros. --- master/ioctl.h | 39 +++++++++++++++++++++++---------------- 1 file changed, 23 insertions(+), 16 deletions(-) diff --git a/master/ioctl.h b/master/ioctl.h index 4bb61ba6..bfe44321 100644 --- a/master/ioctl.h +++ b/master/ioctl.h @@ -41,24 +41,31 @@ #ifndef __EC_IOCTL_H__ #define __EC_IOCTL_H__ +#include <linux/ioctl.h> + /*****************************************************************************/ -enum { - EC_IOCTL_MASTER, - EC_IOCTL_SLAVE, - EC_IOCTL_SYNC, - EC_IOCTL_PDO, - EC_IOCTL_PDO_ENTRY, - EC_IOCTL_DOMAIN_COUNT, - EC_IOCTL_DOMAIN, - EC_IOCTL_DOMAIN_FMMU, - EC_IOCTL_DATA, - EC_IOCTL_SET_DEBUG, - EC_IOCTL_SLAVE_STATE, - EC_IOCTL_SDO, - EC_IOCTL_SDO_ENTRY, - EC_IOCTL_SDO_UPLOAD, -}; +#define EC_IOCTL_TYPE 0xa4 + +#define EC_IO(nr) _IO(EC_IOCTL_TYPE,nr) +#define EC_IOR(nr,type) _IOR(EC_IOCTL_TYPE,nr,type) +#define EC_IOW(nr,type) _IOW(EC_IOCTL_TYPE,nr,type) +#define EC_IOWR(nr,type) _IOWR(EC_IOCTL_TYPE,nr,type) + +#define EC_IOCTL_MASTER EC_IOR(0x00, ec_ioctl_master_t) +#define EC_IOCTL_SLAVE EC_IOWR(0x01, ec_ioctl_slave_t) +#define EC_IOCTL_SYNC EC_IOWR(0x02, ec_ioctl_sync_t) +#define EC_IOCTL_PDO EC_IOWR(0x03, ec_ioctl_pdo_t) +#define EC_IOCTL_PDO_ENTRY EC_IOWR(0x04, ec_ioctl_pdo_entry_t) +#define EC_IOCTL_DOMAIN_COUNT EC_IO(0x05) +#define EC_IOCTL_DOMAIN EC_IOWR(0x06, ec_ioctl_domain_t) +#define EC_IOCTL_DOMAIN_FMMU EC_IOWR(0x07, ec_ioctl_domain_fmmu_t) +#define EC_IOCTL_DATA EC_IOWR(0x08, ec_ioctl_data_t) +#define EC_IOCTL_SET_DEBUG EC_IO(0x09) +#define EC_IOCTL_SLAVE_STATE EC_IOW(0x0a, ec_ioctl_slave_state_t) +#define EC_IOCTL_SDO EC_IOWR(0x0b, ec_ioctl_sdo_t) +#define EC_IOCTL_SDO_ENTRY EC_IOWR(0x0c, ec_ioctl_sdo_entry_t) +#define EC_IOCTL_SDO_UPLOAD EC_IOWR(0x0d, ec_ioctl_sdo_upload_t) /*****************************************************************************/ -- GitLab