master/fsm_master.h
changeset 872 d4e0380d63b3
parent 858 69122084d066
child 883 4963e22a267a
equal deleted inserted replaced
871:5a8959f77854 872:d4e0380d63b3
    50 #include "fsm_slave_scan.h"
    50 #include "fsm_slave_scan.h"
    51 #include "fsm_coe_map.h"
    51 #include "fsm_coe_map.h"
    52 
    52 
    53 /*****************************************************************************/
    53 /*****************************************************************************/
    54 
    54 
    55 /** EEPROM write request.
    55 /** SII write request.
    56  */
    56  */
    57 typedef struct {
    57 typedef struct {
    58     struct list_head list; /**< list head */
    58     struct list_head list; /**< list head */
    59     ec_slave_t *slave; /**< EtherCAT slave */
    59     ec_slave_t *slave; /**< EtherCAT slave */
    60     off_t word_offset; /**< SII address in words */
    60     off_t word_offset; /**< SII address in words */
    61     size_t word_size; /**< data size in words */
    61     size_t word_size; /**< data size in words */
    62     const uint8_t *data; /**< pointer to the data */
    62     const uint8_t *data; /**< pointer to the data */
    63     ec_request_state_t state; /**< state of the request */
    63     ec_request_state_t state; /**< state of the request */
    64 } ec_eeprom_write_request_t;
    64 } ec_sii_write_request_t;
    65 
    65 
    66 /*****************************************************************************/
    66 /*****************************************************************************/
    67 
    67 
    68 /** Slave/Sdo request record for master's Sdo request list.
    68 /** Slave/Sdo request record for master's Sdo request list.
    69  */
    69  */
    93     unsigned int validate; /**< non-zero, if validation to do */
    93     unsigned int validate; /**< non-zero, if validation to do */
    94     unsigned int tainted; /**< non-zero, if the current bus topology does
    94     unsigned int tainted; /**< non-zero, if the current bus topology does
    95                             not meet the initial conditions */
    95                             not meet the initial conditions */
    96     unsigned int config_error; /**< error during slave configuration */
    96     unsigned int config_error; /**< error during slave configuration */
    97     ec_slave_t *slave; /**< current slave */
    97     ec_slave_t *slave; /**< current slave */
    98     ec_eeprom_write_request_t *eeprom_request; /**< EEPROM write request */
    98     ec_sii_write_request_t *sii_request; /**< SII write request */
    99     off_t eeprom_index; /**< index to EEPROM write request data */
    99     off_t sii_index; /**< index to SII write request data */
   100     ec_sdo_request_t *sdo_request; /**< Sdo request to process. */
   100     ec_sdo_request_t *sdo_request; /**< Sdo request to process. */
   101 
   101 
   102     ec_fsm_slave_config_t fsm_slave_config; /**< slave state machine */
   102     ec_fsm_slave_config_t fsm_slave_config; /**< slave state machine */
   103     ec_fsm_slave_scan_t fsm_slave_scan; /**< slave state machine */
   103     ec_fsm_slave_scan_t fsm_slave_scan; /**< slave state machine */
   104     ec_fsm_sii_t fsm_sii; /**< SII state machine */
   104     ec_fsm_sii_t fsm_sii; /**< SII state machine */