------------------------------------------------------------------------------- EtherCAT master TODO $Id$ ------------------------------------------------------------------------------- Version 1.4.0: * Slave config allow flag and completion object. * Mailbox handler * READMEs for examples. * Remove get_cycles() calls and references to cpu_khz to increase portability. * Remove ecdb.h and let lsec output PDO information 'cut-and-pastable' for applications. * SDO write access in sysfs. * Distributed clocks. * Update documentation. * Do not configure in ecrt_master_activate(), but later in the state machine. * Remove master_state_t. * Scanning of Sdo dictionary / writing EEPROM in OPERATION state. * Adapt remaining examples. * Separate Pdo and Pdo entry classes. * Attach Pdo names. * Make all define underscores the same. * Remove bus validation; make bus scanning possible at any time. * Re-design slave configuration FSM, avoid unnecessary process data interruptions. * Wait for bus scanning, even when link is not up at ecrt_request_master(). * Implement ecrt_slave_config_state(). Future issues: * Move slave handlers and state machines, etc. into a user space daemon. - Step 1: Replace Sysfs interface with cdev and a user space program to replace lsec. - Step 2: Move kernel threads to user space daemon with a TCP interface replacing the cdev. * Mailbox gateway. * Slave-to-slave communication. * Redundancy with 2 network adapters. * Interface/buffers for asynchronous domain IO. Smaller issues: * Unite fsm_pdo_mapping, fsm_pdo_config and fsm_coe_map. * Clear sync managers in INIT. * Simplify FSMs with _enter() functions. * Read out CRC counters. * Optimize alignment of process data. * Evaluate EEPROM contents after writing. * Configure slave ports to automatically open on link detection. * Interrupt master state machines state scan for other jobs. * Master state machine, slave configuration: Do not check every slave on a cycle. * Only execute one EoE handler per EoE cycle. Less important issues: * File access over EtherCAT (FoE). * Allow VLAN tagging. * Determine number of frames, the NIC can handle. -------------------------------------------------------------------------------