IgH EtherCAT Master
1.6.2
|
EtherCAT master. More...
Data Fields | |
unsigned int | index |
Index. More... | |
unsigned int | reserved |
True, if the master is in use. More... | |
ec_cdev_t | cdev |
Master character device. More... | |
struct device * | class_device |
Master class device. More... | |
struct semaphore | master_sem |
Master semaphore. More... | |
ec_device_t | devices [EC_MAX_NUM_DEVICES] |
EtherCAT devices. More... | |
const uint8_t * | macs [EC_MAX_NUM_DEVICES] |
Device MAC addresses. More... | |
unsigned int | num_devices |
Number of devices. More... | |
struct semaphore | device_sem |
Device semaphore. More... | |
ec_device_stats_t | device_stats |
Device statistics. More... | |
ec_fsm_master_t | fsm |
Master state machine. More... | |
ec_datagram_t | fsm_datagram |
Datagram used for state machines. More... | |
ec_master_phase_t | phase |
Master phase. More... | |
unsigned int | active |
Master has been activated. More... | |
unsigned int | config_changed |
The configuration changed. More... | |
unsigned int | injection_seq_fsm |
Datagram injection sequence number for the FSM side. More... | |
unsigned int | injection_seq_rt |
Datagram injection sequence number for the realtime side. More... | |
ec_slave_t * | slaves |
Array of slaves on the bus. More... | |
unsigned int | slave_count |
Number of slaves on the bus. More... | |
struct list_head | configs |
List of slave configurations. More... | |
struct list_head | domains |
List of domains. More... | |
u64 | app_time |
Time of the last ecrt_master_sync() call. More... | |
u64 | dc_ref_time |
Common reference timestamp for DC start times. More... | |
ec_datagram_t | ref_sync_datagram |
Datagram used for synchronizing the reference clock to the master clock. More... | |
ec_datagram_t | sync_datagram |
Datagram used for DC drift compensation. More... | |
ec_datagram_t | sync_mon_datagram |
Datagram used for DC synchronisation monitoring. More... | |
ec_slave_config_t * | dc_ref_config |
Application-selected DC reference clock slave config. More... | |
ec_slave_t * | dc_ref_clock |
DC reference clock slave. More... | |
unsigned int | scan_busy |
Current scan state. More... | |
unsigned int | scan_index |
Index of slave currently scanned. More... | |
unsigned int | allow_scan |
True, if slave scanning is allowed. More... | |
struct semaphore | scan_sem |
Semaphore protecting the scan_busy variable and the allow_scan flag. More... | |
wait_queue_head_t | scan_queue |
Queue for processes that wait for slave scanning. More... | |
unsigned int | config_busy |
State of slave configuration. More... | |
struct semaphore | config_sem |
Semaphore protecting the config_busy variable and the allow_config flag. More... | |
wait_queue_head_t | config_queue |
Queue for processes that wait for slave configuration. More... | |
struct list_head | datagram_queue |
Datagram queue. More... | |
uint8_t | datagram_index |
Current datagram index. More... | |
struct list_head | ext_datagram_queue |
Queue for non-application datagrams. More... | |
struct semaphore | ext_queue_sem |
Semaphore protecting the ext_datagram_queue. More... | |
ec_datagram_t | ext_datagram_ring [EC_EXT_RING_SIZE] |
External datagram ring. More... | |
unsigned int | ext_ring_idx_rt |
Index in external datagram ring for RT side. More... | |
unsigned int | ext_ring_idx_fsm |
Index in external datagram ring for FSM side. More... | |
unsigned int | send_interval |
Interval between two calls to ecrt_master_send(). More... | |
size_t | max_queue_size |
Maximum size of datagram queue. | |
ec_slave_t * | fsm_slave |
Slave that is queried next for FSM exec. More... | |
struct list_head | fsm_exec_list |
Slave FSM execution list. More... | |
unsigned int | fsm_exec_count |
Number of entries in execution list. More... | |
unsigned int | debug_level |
Master debug level. More... | |
unsigned int | run_on_cpu |
bind kernel threads to this cpu | |
ec_stats_t | stats |
Cyclic statistics. More... | |
struct task_struct * | thread |
Master thread. More... | |
struct task_struct * | eoe_thread |
EoE thread. More... | |
struct list_head | eoe_handlers |
Ethernet over EtherCAT handlers. More... | |
struct rt_mutex | io_mutex |
Mutex used in IDLE and OP phase. More... | |
void(* | send_cb )(void *) |
Current send datagrams callback. More... | |
void(* | receive_cb )(void *) |
Current receive datagrams callback. More... | |
void * | cb_data |
Current callback data. More... | |
void(* | app_send_cb )(void *) |
Application's send datagrams callback. More... | |
void(* | app_receive_cb )(void *) |
Application's receive datagrams callback. More... | |
void * | app_cb_data |
Application callback data. More... | |
struct list_head | sii_requests |
SII write requests. More... | |
struct list_head | emerg_reg_requests |
Emergency register access requests. More... | |
wait_queue_head_t | request_queue |
Wait queue for external requests from user space. More... | |
struct work_struct | sc_reset_work |
Task to reset slave configuration. More... | |
struct irq_work | sc_reset_work_kicker |
NMI-Safe kicker to trigger reset task above. More... | |
unsigned int ec_master::reserved |
struct device* ec_master::class_device |
ec_device_t ec_master::devices[EC_MAX_NUM_DEVICES] |
const uint8_t* ec_master::macs[EC_MAX_NUM_DEVICES] |
unsigned int ec_master::num_devices |
Number of devices.
Access this always via ec_master_num_devices(), because it may be optimized!
ec_device_stats_t ec_master::device_stats |
ec_fsm_master_t ec_master::fsm |
ec_datagram_t ec_master::fsm_datagram |
ec_master_phase_t ec_master::phase |
unsigned int ec_master::config_changed |
unsigned int ec_master::injection_seq_fsm |
unsigned int ec_master::injection_seq_rt |
ec_slave_t* ec_master::slaves |
unsigned int ec_master::slave_count |
struct list_head ec_master::configs |
u64 ec_master::app_time |
u64 ec_master::dc_ref_time |
ec_datagram_t ec_master::ref_sync_datagram |
ec_datagram_t ec_master::sync_datagram |
ec_datagram_t ec_master::sync_mon_datagram |
ec_slave_config_t* ec_master::dc_ref_config |
ec_slave_t* ec_master::dc_ref_clock |
unsigned int ec_master::scan_index |
unsigned int ec_master::allow_scan |
struct semaphore ec_master::scan_sem |
wait_queue_head_t ec_master::scan_queue |
unsigned int ec_master::config_busy |
struct semaphore ec_master::config_sem |
wait_queue_head_t ec_master::config_queue |
struct list_head ec_master::ext_datagram_queue |
struct semaphore ec_master::ext_queue_sem |
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 |
Interval between two calls to ecrt_master_send().
ec_slave_t* ec_master::fsm_slave |
struct list_head ec_master::fsm_exec_list |
unsigned int ec_master::fsm_exec_count |
ec_stats_t ec_master::stats |
struct list_head ec_master::eoe_handlers |
struct rt_mutex ec_master::io_mutex |
void(* ec_master::send_cb) (void *) |
void(* ec_master::receive_cb) (void *) |
void(* ec_master::app_send_cb) (void *) |
void(* ec_master::app_receive_cb) (void *) |
struct list_head ec_master::sii_requests |
struct list_head ec_master::emerg_reg_requests |
wait_queue_head_t ec_master::request_queue |
struct work_struct ec_master::sc_reset_work |