master/ioctl.h
changeset 1851 a56bd34e20a1
parent 1837 32136215c1fa
child 1857 ed8b490b5bc3
equal deleted inserted replaced
1850:fa112b8a371b 1851:a56bd34e20a1
    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 3
    59 #define EC_IOCTL_VERSION_MAGIC 4
    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)
   161         uint8_t address[6];
   161         uint8_t address[6];
   162         uint8_t attached;
   162         uint8_t attached;
   163         uint8_t link_state;
   163         uint8_t link_state;
   164         uint32_t tx_count;
   164         uint32_t tx_count;
   165         uint32_t rx_count;
   165         uint32_t rx_count;
       
   166         uint32_t tx_rates[EC_RATE_COUNT];
       
   167         int32_t loss_rates[EC_RATE_COUNT];
   166     } devices[2];
   168     } devices[2];
   167     uint64_t app_time;
   169     uint64_t app_time;
   168     uint16_t ref_clock;
   170     uint16_t ref_clock;
   169 } ec_ioctl_master_t;
   171 } ec_ioctl_master_t;
   170 
   172