TODO
author Florian Pose <fp@igh-essen.com>
Tue, 12 Feb 2008 15:18:29 +0000
changeset 789 beca96e44f9f
parent 787 efa24cde53a7
child 792 3778920f61e4
permissions -rw-r--r--
Appiled patches from 2.6.20 to 2.6.22 to e1000 driver.
-------------------------------------------------------------------------------

EtherCAT master TODO

$Id$

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

Version 1.4.0:

* Realtime interface changes:
    - PDO configuration.
    - SDO access.
    - Replace process data pointers with offset.
    - External memory for domains.
    - Separate slave configuration from slave structure.
* Mailbox handler
* Read PDO mapping via CoE during bus scan.
* SDO write access in sysfs.
* 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.
* Update documentation.

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.
* Distributed clocks.
* Redundancy with 2 network adapters.
* Support slaves, that don't support the LRW datagram, only LRD/LWR.
* PDO reading in IDLE mode.
* Interface/buffers for asynchronous domain IO.

Smaller issues:

* Datagram debugging flag.
* Clear sync managers in INIT.
* Simplify FSMs with <state>_enter() functions.
* Read out CRC counters.
* Calculate expected working counter for domains.
* Optimize alignment of process data.
* Evaluate EEPROM contents after writing.
* Configure slave ports to automatically open on link detection.
* Calculate cycle time of operation state machine.
* Locking for serveral slave variables for sysfs access.
* 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:

* Implement all EtherCAT datagram types.
* File access over EtherCAT (FoE).
* Allow VLAN tagging.
* Determine number of frames, the NIC can handle.

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