Data Fields | |
| unsigned int | index |
| Index. | |
| unsigned int | reserved |
| True, if the master is in use. | |
| ec_cdev_t | cdev |
| Master character device. | |
| struct device * | class_device |
| Master class device. | |
| struct semaphore | master_sem |
| Master semaphore. | |
| ec_device_t | devices [EC_MAX_NUM_DEVICES] |
| EtherCAT devices. | |
| const uint8_t * | macs [EC_MAX_NUM_DEVICES] |
| Device MAC addresses. | |
| struct semaphore | device_sem |
| Device semaphore. | |
| ec_device_stats_t | device_stats |
| Device statistics. | |
| ec_fsm_master_t | fsm |
| Master state machine. | |
| ec_datagram_t | fsm_datagram |
| Datagram used for state machines. | |
| ec_master_phase_t | phase |
| Master phase. | |
| unsigned int | active |
| Master has been activated. | |
| unsigned int | config_changed |
| The configuration changed. | |
| unsigned int | injection_seq_fsm |
| Datagram injection sequence number for the FSM side. | |
| unsigned int | injection_seq_rt |
| Datagram injection sequence number for the realtime side. | |
| ec_slave_t * | slaves |
| Array of slaves on the bus. | |
| unsigned int | slave_count |
| Number of slaves on the bus. | |
| struct list_head | configs |
| List of slave configurations. | |
| struct list_head | domains |
| List of domains. | |
| u64 | app_time |
| Time of the last ecrt_master_sync() call. | |
| u64 | app_start_time |
| Application start time. | |
| u8 | has_app_time |
| Application time is valid. | |
| ec_datagram_t | ref_sync_datagram |
| Datagram used for synchronizing the reference clock to the master clock. | |
| ec_datagram_t | sync_datagram |
| Datagram used for DC drift compensation. | |
| ec_datagram_t | sync_mon_datagram |
| Datagram used for DC synchronisation monitoring. | |
| ec_slave_config_t * | dc_ref_config |
| Application-selected DC reference clock slave config. | |
| ec_slave_t * | dc_ref_clock |
| DC reference clock slave. | |
| unsigned int | scan_busy |
| Current scan state. | |
| unsigned int | allow_scan |
| True, if slave scanning is allowed. | |
| struct semaphore | scan_sem |
| Semaphore protecting the scan_busy variable and the allow_scan flag. | |
| wait_queue_head_t | scan_queue |
| Queue for processes that wait for slave scanning. | |
| unsigned int | config_busy |
| State of slave configuration. | |
| struct semaphore | config_sem |
| Semaphore protecting the config_busy variable and the allow_config flag. | |
| wait_queue_head_t | config_queue |
| Queue for processes that wait for slave configuration. | |
| struct list_head | datagram_queue |
| Datagram queue. | |
| uint8_t | datagram_index |
| Current datagram index. | |
| struct list_head | ext_datagram_queue |
| Queue for non-application datagrams. | |
| struct semaphore | ext_queue_sem |
| Semaphore protecting the ext_datagram_queue. | |
| ec_datagram_t | ext_datagram_ring [EC_EXT_RING_SIZE] |
| External datagram ring. | |
| unsigned int | ext_ring_idx_rt |
| Index in external datagram ring for RT side. | |
| unsigned int | ext_ring_idx_fsm |
| Index in external datagram ring for FSM side. | |
| unsigned int | send_interval |
| Interval between two calls to ecrt_master_send(). | |
| size_t | max_queue_size |
| Maximum size of datagram queue. | |
| ec_slave_t * | fsm_slave |
| Slave that is queried next for FSM exec. | |
| struct list_head | fsm_exec_list |
| Slave FSM execution list. | |
| unsigned int | fsm_exec_count |
| Number of entries in execution list. | |
| unsigned int | debug_level |
| Master debug level. | |
| ec_stats_t | stats |
| Cyclic statistics. | |
| struct task_struct * | thread |
| Master thread. | |
| struct task_struct * | eoe_thread |
| EoE thread. | |
| struct list_head | eoe_handlers |
| Ethernet over EtherCAT handlers. | |
| struct semaphore | io_sem |
| Semaphore used in IDLE phase. | |
| void(* | send_cb )(void *) |
| Current send datagrams callback. | |
| void(* | receive_cb )(void *) |
| Current receive datagrams callback. | |
| void * | cb_data |
| Current callback data. | |
| void(* | app_send_cb )(void *) |
| Application's send datagrams callback. | |
| void(* | app_receive_cb )(void *) |
| Application's receive datagrams callback. | |
| void * | app_cb_data |
| Application callback data. | |
| struct list_head | sii_requests |
| SII write requests. | |
| struct list_head | emerg_reg_requests |
| Emergency register access requests. | |
| wait_queue_head_t | request_queue |
| Wait queue for external requests from user space. | |
Manages slaves, domains and IO.
Definition at line 194 of file master.h.
| unsigned int ec_master::index |
| unsigned int ec_master::reserved |
struct device* ec_master::class_device [read] |
struct semaphore ec_master::master_sem [read] |
| ec_device_t ec_master::devices[EC_MAX_NUM_DEVICES] |
| const uint8_t* ec_master::macs[EC_MAX_NUM_DEVICES] |
struct semaphore ec_master::device_sem [read] |
| unsigned int ec_master::active |
| unsigned int ec_master::config_changed |
| unsigned int ec_master::injection_seq_fsm |
| unsigned int ec_master::injection_seq_rt |
| unsigned int ec_master::slave_count |
struct list_head ec_master::configs [read] |
struct list_head ec_master::domains [read] |
| unsigned int ec_master::scan_busy |
| unsigned int ec_master::allow_scan |
struct semaphore ec_master::scan_sem [read] |
| wait_queue_head_t ec_master::scan_queue |
| unsigned int ec_master::config_busy |
struct semaphore ec_master::config_sem [read] |
| wait_queue_head_t ec_master::config_queue |
struct list_head ec_master::datagram_queue [read] |
| uint8_t ec_master::datagram_index |
struct list_head ec_master::ext_datagram_queue [read] |
struct semaphore ec_master::ext_queue_sem [read] |
| ec_datagram_t ec_master::ext_datagram_ring[EC_EXT_RING_SIZE] |
| unsigned int ec_master::ext_ring_idx_rt |
| unsigned int ec_master::ext_ring_idx_fsm |
| unsigned int ec_master::send_interval |
struct list_head ec_master::fsm_exec_list [read] |
| unsigned int ec_master::fsm_exec_count |
| unsigned int ec_master::debug_level |
struct task_struct* ec_master::thread [read] |
struct task_struct* ec_master::eoe_thread [read] |
struct list_head ec_master::eoe_handlers [read] |
struct semaphore ec_master::io_sem [read] |
| void(* ec_master::send_cb)(void *) |
Current send datagrams callback.
| void(* ec_master::receive_cb)(void *) |
Current receive datagrams callback.
| void* ec_master::cb_data |
| void(* ec_master::app_send_cb)(void *) |
Application's send datagrams callback.
| void(* ec_master::app_receive_cb)(void *) |
Application's receive datagrams callback.
| void* ec_master::app_cb_data |
struct list_head ec_master::sii_requests [read] |
struct list_head ec_master::emerg_reg_requests [read] |
| wait_queue_head_t ec_master::request_queue |
1.5.6