Commit Graph

163 Commits

Author SHA1 Message Date
Florian Pose 7765e989c4 Added ec_master_get_config(). 2008-10-09 09:48:59 +00:00
Florian Pose 4104c786ac Applied patch by Mario Witkowski to support the new class/device
interface from kernel 2.6.26.
2008-10-09 09:00:48 +00:00
Florian Pose 488bf0a640 Moved threads to kthread interface. 2008-10-01 14:37:34 +00:00
Florian Pose d975aafa18 Added phy commands. 2008-08-13 13:23:52 +00:00
Florian Pose 17352d9e3b Fixed race concerning thread signaling when master thread had no
opportunity to run, but shall be killed immediately.
2008-08-08 13:47:23 +00:00
Florian Pose 8265fb115f Improved locking between ioctl()s and master state machine; separate
functions for ioctls(); removed master's sii_sem and sdo_sem.
2008-07-02 11:26:51 +00:00
Florian Pose 20911256c3 Added ec_master_find_domain_const(). 2008-07-02 09:22:55 +00:00
Florian Pose f10cc06840 Added ec_master_find_slave_const(). 2008-07-02 08:14:47 +00:00
Florian Pose d942e87cef Implemented master semaphore to secure concurrent access from ioctls, state machine and realtime interface. 2008-07-01 15:38:20 +00:00
Florian Pose c233259931 Removed state machine cycle time measuring. 2008-06-19 10:22:24 +00:00
Florian Pose 0ef150c812 Renamed master 'mode' to 'phase'. 2008-06-18 13:33:50 +00:00
Florian Pose d91aa97487 Removed configs_attached flag; changed return value of
ec_master_attach_slave_configs() to void.
2008-06-18 12:49:11 +00:00
Florian Pose 25ffc9f638 Create class device with device_number information in sysfs. 2008-06-17 12:49:06 +00:00
Florian Pose e4c9a82a56 Store slaves in an array instead of a list. 2008-06-12 09:32:25 +00:00
Florian Pose e2c03b9e77 Removed kobject from master and module. Sysfs is gone! 2008-06-12 08:12:02 +00:00
Florian Pose 22fe4a1841 Removed kobjects from sdo and slave. 2008-06-12 07:15:54 +00:00
Florian Pose 1132577dd9 Bus configuration via 'ethercat config'. 2008-06-11 15:29:47 +00:00
Florian Pose 7194a43da1 Implemented 'ethercat debug' command. 2008-06-05 14:33:36 +00:00
Florian Pose e5f7d6f400 Introduced ec_master_domain_count() and ec_master_find_domain(). 2008-06-04 10:10:05 +00:00
Florian Pose 8b8b470eaa Introduced ec_master_find_slave(). 2008-05-30 10:46:14 +00:00
Florian Pose 3b4cae9626 Added the new ethercat comman-line tool with lsec functionality. 2008-05-29 15:11:26 +00:00
Florian Pose 80c1bf823d Removed bus validation; slave configuration during realtime operation;
improved scan/config busy flags.
2008-04-25 12:04:23 +00:00
Florian Pose 1d70bd0145 Equalized defines against duplicated header inclusion. 2008-04-03 15:49:24 +00:00
Florian Pose f69b21af02 Renamed EEPROM to SII. 2008-03-17 09:38:48 +00:00
Florian Pose 0b5b3b9e9b Removed slave pointer from ec_sdo_request_t class. 2008-02-29 16:20:12 +00:00
Florian Pose 350c159a9d Renamed [PS]DO to [PS]do. 2008-02-22 12:29:30 +00:00
Florian Pose 6189092aed Implemented most realtime interface changes for version 1.4, improved
ec_pdo_t and ec_pdo_entry_t classes, added fmmu_config_t, adjusted
minimal example, etc...
2008-02-19 08:22:20 +00:00
Florian Pose c5b3ade0c0 Updated Doxygen documentation. 2007-09-24 12:12:11 +00:00
Florian Pose 7597e2795e Store skipped information in datagrams; name datagrams for statistics
output.
2007-09-12 14:06:35 +00:00
Florian Pose c4b87f7317 Added --enable-eoe conditional. 2007-09-12 13:10:15 +00:00
Florian Pose c9c595f94e Introduced frames_timed_out flag to notice bus failure when link down is
not detected.
2007-05-03 14:29:21 +00:00
Florian Pose 9466d51185 Dynamic creation of EoE handlers. 2007-03-16 14:00:12 +00:00
Florian Pose f5a7e78786 Slave configuration exclusively from master thread; removed
ec_master_sync_io(); introduced events in the master state machine;
locking of slave scanning and slave configuration through allow_scan
and allow_config flags.
2007-03-12 18:21:42 +00:00
Florian Pose 6ef75e4d45 Replaced master variable 'atomic_t available' by integer and used
semaphore in module.c instead.
2007-03-12 08:42:02 +00:00
Florian Pose 2907aebfdf Implemented SDO reading with wait queues. 2007-03-09 15:11:29 +00:00
Florian Pose b0c1fbaeb0 Removed X:Y addressing scheme, ec_slave_is_coupler(),
ec_master_calc_addressing(), coupler_index and coupler_subindex variables.
Adapted lsec script and examples.
2007-03-09 13:24:15 +00:00
Florian Pose 8ac6516b4e Allow only MAC addresses as device identifiers; replaced master list by
master array; hand ober MAC addresses with array module parameters.
2007-03-08 18:15:25 +00:00
Florian Pose 37baf012fb Removed ecrt_master_run(), removed datagram queueing from state
machines, added datagram injection, two different master thread
functions.
2007-03-08 13:02:42 +00:00
Florian Pose b4bfda2e62 Introduced master status, ecrt_master_get_status(), tainted flag,
pdos_registered flags and pdo_slaves_offline counter.
2007-03-05 10:35:50 +00:00
Florian Pose 2ec4d25fce Introduced EEPROM write requests: EEPROM write operations from user
space are now queued and block until completion. Also, appropriate error
codes are returned.
2007-03-01 21:34:10 +00:00
Florian Pose 9afbed92d2 Removed eeprom_write_enable file. 2007-03-01 14:50:53 +00:00
Florian Pose 6c08745e55 Made master devices persistent; added ec_device_attach() and ec_device_detach(). 2007-02-20 17:15:43 +00:00
Florian Pose b1a770729c Removed ktype for module kobject; added backup device for master; device
connection information and IDs in master info file.
2007-02-20 13:42:44 +00:00
Florian Pose 27f9a4af2d New module file /sys/ethercat, masters moved to /sys/ethercat/masterX. 2007-02-20 11:28:15 +00:00
Florian Pose 383a1f7631 Layed out device ID functionality in own files. 2007-02-20 09:43:23 +00:00
Florian Pose 0f53f8fa3e Introduced device IDs; removed comment lines from 8139too; removed
ec_eoeif_count parameter.
2007-02-16 17:13:39 +00:00
Florian Pose 2cbddbb9d1 Removed XML device from master structure. 2007-02-16 13:23:57 +00:00
Florian Pose e643409867 Made ec_sync_config() and ec_fmmu_config() to methods of ec_slave_t. 2007-02-13 11:48:46 +00:00
Florian Pose df1cc1d939 Layed out slave state machines in own files fsm_slave.[ch]; renamed fsm.[ch] to fsm_master.[ch] 2007-01-10 16:32:06 +00:00
Florian Pose ea7e0ca982 Master workqueue replaced with kernel thread. 2007-01-10 10:45:57 +00:00
Florian Pose c0f6188104 Interface changes for version 1.2, see NEWS file. 2006-11-24 11:02:35 +00:00
Florian Pose bae7fb4e90 Introduced "starved" datagrams. 2006-11-21 15:13:48 +00:00
Florian Pose 131589f534 FIX: Introduced destroy() functions for kobject-derived classes and thus fixed memory leak. 2006-10-27 09:19:58 +00:00
Florian Pose b6e88ad403 Persistent slave lists. 2006-10-26 16:29:26 +00:00
Florian Pose 5ae68fa1db SDO uploading via Sysfs without master FSM calling wake_up(). 2006-10-24 15:14:25 +00:00
Florian Pose 93658f687b Implemented SDO reading via Sysfs. 2006-10-20 13:05:48 +00:00
Florian Pose 9c7dd75ed9 Removed clear functions from headers of kobject-classes. 2006-10-17 14:19:59 +00:00
Florian Pose 302b826fe1 Fixed race on duplicate device registering or device unregistering while requesting master. 2006-09-28 12:58:06 +00:00
Florian Pose 541ae381cb Replaced master's reserved flag by atomic_t available. 2006-09-26 16:34:24 +00:00
Florian Pose e63c611a0f Changes in ecrt_request_master(); minor output changes. 2006-09-26 16:16:13 +00:00
Florian Pose e594f09d72 Introduced per-master character devices for XML descriptions. 2006-09-19 13:28:40 +00:00
Florian Pose ac6458d2c9 Removed delayed datagram statistics. 2006-08-15 09:22:22 +00:00
Florian Pose dfc4089c4c Replaced longer cycle timestamps with jiffies. 2006-08-15 08:09:18 +00:00
Florian Pose 577de08992 Better EoE and Idle timing measurement. 2006-08-04 13:49:22 +00:00
Florian Pose 93dcf1c86d Master information, timing. 2006-08-04 09:53:14 +00:00
Florian Pose eed6f1d855 New statistic outputs to avoid blasting the logs. 2006-08-03 20:11:20 +00:00
Florian Pose 4e9ef991e3 Renamed ec_master_receive() to ec_master_receive_datagrams(). 2006-08-03 19:47:29 +00:00
Florian Pose 25ddd08802 Measure bus time. 2006-08-03 19:17:08 +00:00
Florian Pose cd98fe51c1 Fixed bug with ec_master_eoe_start() does new coupling all the time. 2006-08-03 16:14:26 +00:00
Florian Pose 258b4d998d VERSION 1.1: New realtime interface, only state machines. 2006-08-03 12:51:17 +00:00
Florian Pose af1e1bf033 Renamed FREERUN mode to IDLE mode. 2006-07-19 13:15:02 +00:00
Florian Pose 14fe2a8557 Renamed IDLE mode to ORPHANED mode. 2006-07-19 13:08:21 +00:00
Florian Pose 0d76e9719b Prefer EEPROM sync manager information for config. 2006-07-17 13:01:38 +00:00
Florian Pose 6fdf205382 Renamed command structure to datagram. 2006-07-06 08:23:24 +00:00
Florian Pose 92a035f82b Added missing documentation. 2006-06-26 16:05:30 +00:00
Florian Pose 85bd5d131d Variable-sized data fields, BK1120. 2006-06-20 14:40:04 +00:00
Florian Pose 67c2858334 EEPROM write enable SysFS entry. 2006-06-02 12:01:47 +00:00
Florian Pose 4ea2816432 EoE in Free-Run mode; Finished slave configuration state machine. 2006-05-19 13:23:11 +00:00
Florian Pose 2916e10b50 Changed license headers and added EtherCAT license notice. 2006-05-18 12:35:47 +00:00
Florian Pose 59364271ce Minor changes in master.h 2006-05-17 09:22:31 +00:00
Florian Pose f36dd15ccc Removed EoE workqueue option. 2006-05-16 13:03:09 +00:00
Florian Pose 13c2904e0b Added finite state machine (FSM) processing. 2006-05-16 11:57:06 +00:00
Florian Pose df6f48c98a Started freerun state machine development. 2006-05-12 14:48:24 +00:00
Florian Pose abb3ab22fd EoE processing with kernel timer again. 2006-05-11 09:23:45 +00:00
Florian Pose c5a63ad548 EoE with workqueue; bugfix in ec_master_init() 2006-05-10 11:51:05 +00:00
Florian Pose 7df9388fed EoE frame queuing, receiving of fragmented frames; no TCP possible yet. 2006-05-05 07:20:10 +00:00
Florian Pose 9821b7ca87 command timeout, EoE processing with kernel timer. 2006-04-26 10:15:02 +00:00
Florian Pose 1f345f7df6 Prepared EoE processing with workqueue. 2006-04-25 13:43:13 +00:00
Florian Pose c7020c319d Locking callback interface. 2006-04-25 12:04:04 +00:00
Florian Pose 42fca68ae7 Doxygen added interface modules and file documentation. 2006-04-24 10:10:02 +00:00
Florian Pose b3389cee9f GPLv2 License and enhanced Doxygen output. 2006-04-21 12:35:17 +00:00
Florian Pose 91c739da77 Translated all comments and documentation to english language. 2006-04-20 13:31:31 +00:00
Florian Pose 7818664587 Prepared Free-Run mode 2006-04-12 10:40:32 +00:00
Florian Pose 849e02da7c Slaves stored in list, slaves in SysFS 2006-04-11 09:12:00 +00:00
Florian Pose d876fe7731 Sourced SysFS attribute show method prototypes out of headers. 2006-04-10 15:00:03 +00:00
Florian Pose 4d3e4f5625 MERGE branches/sysfs -> trunk (whole SysFS implementation) 2006-04-10 14:25:02 +00:00
Florian Pose 2fa964880b Plugfest: master_open()/close() ausgelagert. 2006-04-05 07:55:51 +00:00
Florian Pose 4b4092fd7e Mailbox-Interface ausgelagert, erster EOE-Ansatz. 2006-04-03 14:12:45 +00:00
Florian Pose 8306f3e3c1 Dynamischer Kommandospeicher, Domain-Kommandos als Liste. 2006-04-03 10:03:34 +00:00
Florian Pose 5722b4bc9a SDO-Schnittstelle verbessert. 2006-03-29 10:30:13 +00:00