Zero mailbox datagram before sending.
-------------------------------------------------------------------------------
EtherCAT master TODO
$Id$
vim700: spelllang=en spell
-------------------------------------------------------------------------------
Version 1.5.0:
* Distributed clocks:
- Check 32/64 bit operations.
- Use vendor correction factors when calculating transmission delays.
- Skip setting system time offset when application detached.
- How to use the SYNC1 shift time?
- Do not output graph, if topology calculation failed.
- Set the "Cyclic Generation Start Time" based on the slave's
"System Time" register instead of using the application time.
- Check if register 0x0980 is working, to avoid clearing it when
configuring.
- Create an interface to query the System Time Difference registers.
* EoE:
- Only execute one EoE handler per cycle.
- Replace locking callbacks.
- Allow EoE with userspace application.
* Implement 'ethercat foe_read --output-file ...'.
* Fix unloading problem of ec_e100 driver.
* Use ec_datagram_zero() where possible.
* Fix arguments of reg_read.
* Sign/Abs type for reg_ commands?
* Number layout for reg_read.
* Show Record / Array / List type of SDOs.
* Limit bandwidth of state machine datagram.
* Read alias from register 0x0012 instead of SII.
* Finish library implementation.
* Rescan command.
* Override sync manager size?
* Remove ecrt_domain_state()?
* Check force_config flag before error.
* Remove allow_scanning flag.
* Implement ecrt_master_slave() in kernel space.
* Check for ioctl() interface version.
* Improve application-triggered SDO transfers by moving the state machine into
the SDO handlers.
* Apply watchdog patches from J. Mohre.
* Move device driver files in subdirectories.
* Document ec_fsm_foe members.
* Test KBUILD_EXTRA_SYMBOLS.
Future issues:
* Segmented SDO downloads.
* External memory for SDO transfers.
* Bus information via userspace library (slaves, sync managers, PDOs, entries).
* C++ implementation of the library.
* Bus simulator interface.
* Move master threads, slave handlers and state machines into a user
space daemon.
* Allow master requesting when in ORPHANED phase
* Mailbox protocol handlers.
* Mailbox state machine using toggle bits.
* Mailbox gateway.
* Separate CoE debugging.
* Evaluate EEPROM contents after writing.
* Optimize alignment of process data.
* Redundancy with 2 network adapters.
* Interface/buffers for asynchronous domain IO.
* Make scanning and configuration run parallel (each).
* ethercat tool:
- Data type abbreviations.
- Add a -n (numeric) switch.
- Check for unwanted options.
* Simplify master fsm by introducing a common request state to handle external
requests (replace write_sii, sdo_request, etc).
Smaller issues:
* Stop master thread at ecrt_master_request() to get rid of allow_* flags?
* Clear sync managers in INIT.
* Read out CRC counters.
* Configure slave ports to automatically open on link detection.
* Fix datagram errors on application loading/unloading.
Less important issues:
* Allow VLAN tagging.
* Determine number of frames, the NIC can handle.
-------------------------------------------------------------------------------