TODO
author Florian Pose <fp@igh-essen.com>
Mon, 17 Mar 2008 09:05:13 +0000
changeset 870 fbd5924690ee
parent 866 88464a0850f7
child 899 e82e2e4cdc9b
permissions -rw-r--r--
Allow multiple sync manager categories.
-------------------------------------------------------------------------------

EtherCAT master TODO

$Id$

-------------------------------------------------------------------------------

Version 1.4.0:

* Slave config allow flag and completion object.
* Mailbox state machine using toggle bits.
* Mailbox protocol handlers.
* 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:

* Evaluate SII Size field (0x003E) to determine maximum SII memory size.
* Unite fsm_pdo_mapping, fsm_pdo_config and fsm_coe_map.
* Clear sync managers in INIT.
* Simplify FSMs with <state>_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.

-------------------------------------------------------------------------------