master/ioctl.h
changeset 1952 7d9fb723fc4b
parent 1945 f9204699e799
child 1963 6aaf77798445
equal deleted inserted replaced
1951:a1a6d7719f97 1952:7d9fb723fc4b
    54 
    54 
    55 /** EtherCAT master ioctl() version magic.
    55 /** EtherCAT master ioctl() version magic.
    56  *
    56  *
    57  * Increment this when changing the ioctl interface!
    57  * Increment this when changing the ioctl interface!
    58  */
    58  */
    59 #define EC_IOCTL_VERSION_MAGIC 6
    59 #define EC_IOCTL_VERSION_MAGIC 7
    60 
    60 
    61 // Command-line tool
    61 // Command-line tool
    62 #define EC_IOCTL_MODULE                EC_IOR(0x00, ec_ioctl_module_t)
    62 #define EC_IOCTL_MODULE                EC_IOR(0x00, ec_ioctl_module_t)
    63 #define EC_IOCTL_MASTER                EC_IOR(0x01, ec_ioctl_master_t)
    63 #define EC_IOCTL_MASTER                EC_IOR(0x01, ec_ioctl_master_t)
    64 #define EC_IOCTL_SLAVE                EC_IOWR(0x02, ec_ioctl_slave_t)
    64 #define EC_IOCTL_SLAVE                EC_IOWR(0x02, ec_ioctl_slave_t)
   411 /*****************************************************************************/
   411 /*****************************************************************************/
   412 
   412 
   413 typedef struct {
   413 typedef struct {
   414     // inputs
   414     // inputs
   415     uint16_t slave_position;
   415     uint16_t slave_position;
       
   416     uint8_t drive_no;
   416     uint16_t idn;
   417     uint16_t idn;
   417     uint32_t mem_size;
   418     uint32_t mem_size;
   418     uint8_t *data;
   419     uint8_t *data;
   419 
   420 
   420     // outputs
   421     // outputs
   425 /*****************************************************************************/
   426 /*****************************************************************************/
   426 
   427 
   427 typedef struct {
   428 typedef struct {
   428     // inputs
   429     // inputs
   429     uint16_t slave_position;
   430     uint16_t slave_position;
       
   431     uint8_t drive_no;
   430     uint16_t idn;
   432     uint16_t idn;
   431     uint32_t data_size;
   433     uint32_t data_size;
   432     uint8_t *data;
   434     uint8_t *data;
   433 
   435 
   434     // outputs
   436     // outputs
   580 /*****************************************************************************/
   582 /*****************************************************************************/
   581 
   583 
   582 typedef struct {
   584 typedef struct {
   583     // inputs
   585     // inputs
   584     uint32_t config_index;
   586     uint32_t config_index;
       
   587     uint8_t drive_no;
   585     uint16_t idn;
   588     uint16_t idn;
   586     ec_al_state_t al_state;
   589     ec_al_state_t al_state;
   587     const uint8_t *data;
   590     const uint8_t *data;
   588     size_t size;
   591     size_t size;
   589 } ec_ioctl_sc_idn_t;
   592 } ec_ioctl_sc_idn_t;