Commit Graph

191 Commits

Author SHA1 Message Date
Florian Pose c5b3ade0c0 Updated Doxygen documentation. 2007-09-24 12:12:11 +00:00
Florian Pose 1c829731ed Improved EoE handling: Avoided skipping of datagrams and release lock
while processing.
2007-09-12 14:48:53 +00:00
Florian Pose 7369f5a5a2 Removed measure_bus_time(). 2007-09-12 14:07:28 +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 0a99c21c72 Show bus status and PDO slaves status in master info file. 2007-09-12 12:30:48 +00:00
Florian Pose 9590fc6e37 Fixed EtherCAT addressing problem on big-endian systems. The slaves
address is now a four-byte-array, that is filled with little-endian
(EtherCAT) values on datagram creation.
2007-09-06 09:28:38 +00:00
Florian Pose 808ad3e2f1 Added ecrt_master_get_slave_by_pos(). 2007-08-10 13:46:34 +00:00
Florian Pose 68e6dfc108 Implemented debug frame ring to output the last n frames for debugging
reasons.
2007-08-09 15:01:14 +00:00
Florian Pose f76d31ec92 Included datagram queuing in critical section in idle task; added some
debugging and comments.
2007-08-09 14:47:37 +00:00
Florian Pose cc0cee6757 Re-ordered criteria for datagram matching. 2007-08-09 14:40:29 +00:00
Florian Pose 20daa81763 Minor change. 2007-08-09 14:28:54 +00:00
Florian Pose 480d12021b Added debugging output for unmatched frames and those that timed out. 2007-08-07 13:33:57 +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 f5d3ec538a Completely lock master while an EoE cycle is executing. 2007-03-16 14:42:04 +00:00
Florian Pose 9466d51185 Dynamic creation of EoE handlers. 2007-03-16 14:00:12 +00:00
Florian Pose 2a1920caaa Removed unecessary clearing of EoE handlers in master init function;
fixed possible bug on failing to initialize or add master kobject.
2007-03-16 11:23:08 +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 b09000d770 Fixed skipped datagrams when not in FSM idle phase. 2007-03-12 13:59:06 +00:00
Florian Pose 571917dd1a Introduced idle flag in master state machine. 2007-03-12 12:11:43 +00:00
Florian Pose 594c3bb715 Made waiting for device semaphore uninterruptible. 2007-03-12 08:47:56 +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 70482be0ac Added parameters for vendor ID and product code to ecrt_get_slave(); PDO
registration functions now take a slave pointer as argument; changed
values for ec_bus_status_t.
2007-03-09 10:24:50 +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 b0285d88a9 Introduced ec_slave_online_state_t, ec_slave_set_online_state(), renamed
slave->online to ec_online_state and introduced
ec_slave_set_app_state().
2007-03-05 09:55:39 +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 7b59f69823 Destroy slaves when leaving idle mode. 2007-02-21 13:43:47 +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 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 9a9e5d719c Fixed bug causing unloading of realtime module being very slow after topology change. 2007-02-12 11:15:23 +00:00
Florian Pose 6d74555dad schedule() other processes while waiting in ec_master_sync_io(). 2007-02-12 11:12:00 +00:00
Florian Pose 3b4c23a436 Ignore queued datagrams while waiting in ec_master_sync_io(). 2007-02-12 10:39:52 +00:00
Florian Pose 5f7ac3aa85 Minor changes in master thread messages. 2007-02-09 10:04:05 +00:00
Florian Pose 291d63856b Replaced ec_isr_t by ec_pollfunc_t; added poll function s in network drivers. 2007-01-12 14:28:33 +00:00
Florian Pose 413fdbb006 Minor fix on master.c (name of master thread). 2007-01-10 16:34:42 +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 ba97994717 Added some documentation. 2007-01-10 10:58:49 +00:00
Florian Pose ea7e0ca982 Master workqueue replaced with kernel thread. 2007-01-10 10:45:57 +00:00
Florian Pose 81acf0c368 Fixed blocking of EoE processing while entering or leaving operational mode. 2007-01-09 14:51:00 +00:00
Florian Pose 4dc453ef55 Fixed race: Stop EoE processing when entering or leaving operation mode. 2007-01-09 12:56:03 +00:00
Florian Pose 8f51b59d3e Minor fix in master.c 2007-01-08 15:15:17 +00:00