------------------------------------------------------------------------------- $Id$ ------------------------------------------------------------------------------- Changes in version 1.3.0: * Added Intel PRO/1000 gigabit ethernet driver (e1000). * Added testing version of Intel PRO/100 ethernet driver (e100). * Added testing version of NVIDIA nForce ethernet driver (forcedeth). * Removed "ec_eoeif_count" master module parameter. EoE handlers are created dynamically instead. * Added "main" and "backup" parameters to master module to hand over the MAC addresses of the devices to wait for. This made the ec_device_index parameter of the ethernet drivers obsolete. * Changed format of sysconfig file and accordingly adjusted functionality of the init script to handle the above MAC address lists. * Realtime interface changes: - ecrt_master_run() became obsolete, because the master state machine is now run in process context. - Parameter changes in PDO registration functions ecrt_domain_register_pdo() and ecrt_register_pdo_range(): Replaced slave_address, vendor ID and product code arguments with a slave pointer, which has to be obtained with a prior call to ecrt_master_get_slave(). - ecrt_master_get_slave() got additional parameters to check for vendor ID and product code. - Removed addressing scheme "X:Y" for ecrt_master_get_slave(). - Added ecrt_master_get_status() to get status information about the bus. - Added functions to set up an alternative PDO mapping for a slave, i. e. ec_slave_pdo_mapping_clear(), ec_slave_pdo_mapping_add() and ec_slave_pdo_mapping(). * Device interface changes: - Replaced ecdev_register() and ecdev_unregister() with ecdev_offer() and ecdev_withdraw(), respectively. The device modules now offer all their devices to the master. The master then decides, which ones to register. * All EEPROM write operations from user space are now blocking until writing has finished. Appropriate error codes are returned. * Implemented setting of the "Secondary slave address" (alias) via sysfs. * Implemented SDO reading in operation mode via sysfs. * Removed annoying eeprom_write_enable file. EEPROM writing always enabled. * Slave configuration is now done exclusively from the master thread. Removed ec_master_sync_io(). Userspace threads are now waiting for events in the state machine. * Master state machine scheduled with timeout if idle, otherwise is executed as fast as possible (with schedule()). * Added dummy module for simulation purpuses. * Removed EtherCAT line comments from 8139too drivers. ------------------------------------------------------------------------------- Changes in version 1.2.0: * Serveral fixes of bugs and stability issues. Master should now run fine with kernels 2.6.17 to 2.6.19. * Realtime interface changes: - Re-introduced ecrt_domain_queue() to allow datagram queuing apart from datagram processing. The queuing of a domain's datagrams is not done in ecrt_domain_process() any more! - Removed ecrt_master_deactivate(). Its functionality was moved into ecrt_master_release(). - Removed ecrt_master_prepare(). Its functionality was moved into ecrt_master_activate(). - Renamed ecdev_start() and ecdev_stop() to ecdev_open() and ecdev_close(). These two functions now take a pointer to ec_device_t as their arguments. - The data_ptr parameter of ecrt_domain_register_pdo(), ecrt_domain_register_pdo_list() and ecrt_domain_register_pdo_range() may not be NULL any more. - Removed ecrt_slave_pdo_size(). This function was deprecated long before. - Introduced ECRT_VERSION_MAGIC macro and ecrt_version_magic() function. * Device interface changes: - ec_isr_t was replaced by ec_pollfunc_t, the device driver has to supply a poll function to call its ISR. This was introduced because some network drivers' interrupt functions have different arguments. * State machines now try to re-send datagrams on datagram timeout. * New option -c of the lsec script, displays slave current consumptions and remaining current. * Added frame counter in master info file. ------------------------------------------------------------------------------- Changes in version 1.1.1: * State change FSM: Clearing of sync managers before PREOP. * Added modules_install make target. * Device modules for kernel 2.6.17. * SDO configurations available in Sysfs. * FMMU configurations cleared when going to INIT. * Slave-specific logs only at debug level 1 (for large busses). * Slave flags (error, online) available in Sysfs. * Acknowledging of spontaneous state changes in master FSMs. * ecrt_master_deactivate() deprecated. * Persistent slave lists. Slave structures are only regenerated on topology change in IDLE mode. * SDO reading via Sysfs. * Added ecrt_domain_register_pdo_range() * Fetching of SDO dictionary. * Better timing behaviour when starting up under high CPU load. * Applied Autotools. * Improved output of lsec. * SDO download state machine. ------------------------------------------------------------------------------- Changes in version 1.1: * Improved realtime interface. -------------------------------------------------------------------------------