Commit Graph

375 Commits

Author SHA1 Message Date
Florian Pose 7555b87512 Added ecrt_master_sdo_download_complete() for ad-hoc downloading SDOs (also
via the command-line tool).
2011-10-24 10:49:27 +02:00
Florian Pose a4adf60027 Removed allow_config flag and obsolete request to OP. 2011-09-16 14:10:23 +02:00
Florian Pose 197fe386b9 Don not copy frame data to datagram memory, if datagram type is write-only. 2011-09-16 12:44:54 +02:00
Florian Pose bbe96b3246 Implemented ecrt_master_sdo_upload() and ecrt_master_sdo_download() also for
kernel space.
2011-09-15 16:33:13 +02:00
Florian Pose af63d2c39a Fixed bug in ec_master_queue_datagram() introduced in c9d32805d984. 2011-07-21 18:25:38 +02:00
Florian Pose 41db169cc3 Improved ecrt_master_queue_datagram(); detect skipped datagrams also when
already sent.
2011-07-08 14:26:25 +02:00
Florian Pose 6929f2f718 Added ecrt_master_reset() method. 2010-11-30 15:24:21 +01:00
Florian Pose 190cdce964 Added drive_no parameter to SoE layer. 2010-07-20 10:52:31 +02:00
Florian Pose 324b9758a2 Implemented ecrt_master_read_idn() and ecrt_master_write_idn() in kernel space. 2010-07-06 15:09:57 +02:00
Florian Pose 8b6d5f8af3 Fixed bug that caused the configuration not to be cleared when reserved but
not activated and then releasing.
2010-06-02 22:54:08 +02:00
Florian Pose d9f27a2597 Made send_interval variable an unsigned int; fixed format specifiers for
size_t variables.
2010-05-20 12:35:36 +02:00
Florian Pose 9c91630351 Write DC system time offsets right after slave scan / config change. Wait for DC clock discipline. 2010-05-06 11:42:52 +02:00
Florian Pose 62b722ab33 Improved syslog macros. 2010-05-03 18:07:57 +02:00
Florian Pose 02b27f9fbc Fixed possible bug in EoE code: Only restart EoE process, when it was running
before (not while scanning).
2010-04-27 13:40:44 +02:00
Florian Pose 6373e38ca3 Introduced effective_alias variable to separate reg12 alias from SII alias. 2010-04-23 16:42:27 +02:00
Florian Pose 351e1a681a Renamed sdo_injecton_timeout to ext_injection_timeout. 2010-04-19 21:54:54 +02:00
Florian Pose bf2bffdcf5 Added missing queue_external_datagram(); removed tabs. 2010-03-19 10:48:16 +01:00
Florian Pose 79e2df1245 Fixed clearing frame statistics on link down. 2010-03-09 09:59:32 +01:00
Florian Pose 1cea08c920 Removed unused variable frames_timed_out. 2010-03-07 21:20:40 +01:00
Florian Pose 3850763eca Implemented reading Sercos-over-EtherCAT services. To be continued... 2010-03-01 18:33:42 +01:00
Florian Pose a144042657 Removed tabulators. 2010-02-05 10:29:47 +01:00
Florian Pose 1753d24369 Fixed name of byte transmission time define; changed coding style. 2010-01-19 17:57:46 +01:00
Florian Pose 4f347b6da8 Disable use of hrtimer for scheduling by default. Does not work on some PPC targets. 2010-01-19 15:15:57 +01:00
Florian Pose 91e5c0d860 Merged Komax changes. 2010-01-08 11:26:07 +01:00
Florian Pose a163d3f1bd Implemented ecrt_master() and ecrt_master_get_slave() in kernel space. 2010-01-07 17:26:39 +01:00
Martin Troxler 5d6ce8b992 Merged 2009-12-27 16:58:19 +01:00
Martin Troxler 49fc79081f merged 2009-12-18 11:09:07 +01:00
Matthias Luescher df099a1998 fix build for recent kernel versions (tested with 2.6.31) 2009-12-17 17:21:03 +01:00
Martin Troxler 8d4a5ed16a removed busy loop in idle thread 2009-12-17 10:54:59 +01:00
Martin Troxler 94fec37d0f use given send interval to limit SDO/FOE traffic 2009-12-15 10:55:36 +01:00
Florian Pose 344ec90545 Merged changes by Martin Troxler. 2009-12-14 13:25:50 +01:00
Florian Pose 699b184f6f Merged changes from Martin Troxler. 2009-12-14 13:11:36 +01:00
Martin Troxler d823576945 Moved FOE request queue and fsm into slaves 2009-12-01 16:00:22 +01:00
Martin Troxler abb3588747 Moved sdo request queue to slaves 2009-12-01 14:24:57 +01:00
Martin Troxler cb33213076 ecrt_master_set_max_cycle_size: limit SDO traffic 2009-11-30 12:26:56 +01:00
Martin Troxler 0d17968348 Each slave got its own SDO state machine (faster handling of external SDO requests) 2009-11-26 15:33:48 +01:00
Martin Troxler bf63d965d8 Merge 2009-11-19 14:44:57 +01:00
Martin Troxler dfeb99b1cb applied komax patch to version r1822
- adapted to 2.6.31 (-rt): init_MUTEX -> sema_init, net_device_ops (Matthias Lüscher)
- 8139too eth driver for 2.6.31 (Matthias Lüscher)
- scan_busy queryable in user mode (ec_master_info_t) (Martin Troxler)
- read alias from register 0x0012 (TODO: reread alias after sii write) (Martin Troxler)
- cancel external SDO/FOE,Reg&SII requests (Martin Troxler)
2009-11-19 14:39:10 +01:00
Florian Pose 21dacadf01 Merge x86_64 fixes. 2009-10-19 13:13:55 +02:00
Florian Pose 7ac08b531f Avoid warnings on x86_64 platform. Thanks to Thomas Elste. 2009-10-19 13:12:40 +02:00
Florian Pose e3b459e060 Fixed clearing slaves: Also clear external requests before. Thanks to Martin
Troxler.
2009-10-06 13:50:30 +02:00
Florian Pose 700226ac83 DC synchrony monitoring methods. 2009-08-21 12:15:16 +02:00
Florian Pose 103eb7139c Added ecrt_master_deactivate() to remove the bus configuration. 2009-08-20 14:27:35 +02:00
Florian Pose 694838c9f6 Fixed compiler error on --disable-eoe. 2009-08-04 07:54:16 +00:00
Florian Pose f411a51ca6 Re-added callback data pointer, because it is necessary for some applications. 2009-07-29 09:19:53 +00:00
Florian Pose 735f1efbc1 Removed unwanted tabulators. 2009-07-27 10:37:47 +00:00
Florian Pose a3c32e8b67 Improved the callback mechanism. 2009-07-13 15:18:28 +00:00
Florian Pose f7e14d2915 EoE processing with kthread. 2009-06-30 11:11:56 +00:00
Florian Pose 1baa06d05b ethercat eoe command. 2009-06-26 09:46:57 +00:00
Florian Pose 2a7052264b Minor: vendor/product with 8 hex digits. 2009-06-26 07:44:50 +00:00
Florian Pose ceec75bf50 Always set DC reference clock to OP. 2009-05-06 15:06:46 +00:00
Florian Pose 6935cbb247 Use application start time as a common reference for cyclic generation
start times.
2009-05-04 12:11:00 +00:00
Florian Pose a34809e18d Separated application time from synchronizing reference clock. 2009-05-04 10:05:55 +00:00
Florian Pose f057a0f968 Transition->Transmission. 2009-04-30 14:37:02 +00:00
Florian Pose 29eb2d7d06 Transition delay calculation. TBC... 2009-04-30 14:12:47 +00:00
Florian Pose f4b6807cc9 Bus topology calculation. 2009-04-29 09:43:04 +00:00
Florian Pose 69da9e5524 Determine type of DC implementation (full or delay meas. only); update scan FSM graph. 2009-04-27 11:38:03 +00:00
Florian Pose d3303e0fa4 Replaced timeval by 64-bit EtherCAT time. 2009-04-24 10:24:53 +00:00
Florian Pose 40bb1edaec Output reference clock and application time in 'ethercat Master'. 2009-04-24 08:39:20 +00:00
Florian Pose fe56cc111c Separated sync_reference_clock() and sync_slave_clocks(). 2009-04-23 12:02:26 +00:00
Florian Pose 5e79dc8c06 Find DC reference clock. 2009-04-20 14:33:47 +00:00
Florian Pose 4694cde027 Added debug_level module parameter. debug_level is now unsigned int. 2009-04-17 12:03:12 +00:00
Florian Pose 0dd5ec3567 DC sync reference clock to application time. TBC... 2009-04-09 18:21:18 +00:00
Florian Pose de1a332eee Introduced ecrt_master_sync() for synchronizing slave clocks to reference clock. 2009-04-09 10:21:47 +00:00
Florian Pose 7f97ba66a2 Renamed phy_ commands to reg_. 2009-04-08 12:48:59 +00:00
Florian Pose a5752e0123 Preparations to compile against 2.6.27. 2009-03-09 09:08:09 +00:00
Florian Pose 12c12b1bab Improved and added license headers. 2009-02-24 12:51:39 +00:00
Florian Pose 7a703ecb05 merge -c1616 branches/1.4-foe: Included FoE patch from Olav Zarges. 2009-01-26 13:01:58 +00:00
Florian Pose 723a9d66f4 merge -c1610 branches/stable-1.4: Added missing doxygen docs. 2009-01-26 11:58:35 +00:00
Florian Pose 121cfd7098 merge -c1606 branches/stable-1.4: Output vendor Id in hex. 2009-01-26 11:46:38 +00:00
Florian Pose 826ae37b26 merge -c1604 branches/stable-1.4: Fixed spelling of EtherCAT terms. 2009-01-26 11:45:30 +00:00
Florian Pose 5ca3d24337 merge -c1603 branches/stable-1.4: Changed licence headers to avoid conflicts with the GPL; restricted licence to GPLv2 only. 2009-01-26 11:16:10 +00:00
Florian Pose 8d46a283f6 Improved error case return codes of many functions. 2008-11-17 17:18:02 +00:00
Florian Pose bdbaf5d078 Created backend versions of all API functions returing a pointer; using
the PTR_ERR()... macros.
2008-11-17 15:04:28 +00:00
Florian Pose 7fca697c8d Output corrupted frame reasons. 2008-11-05 09:59:20 +00:00
Florian Pose f8bff8668f merge -c1522 branches/stable-1.4: Fixed jace in jiffies timeout calculation. 2008-10-17 13:36:43 +00:00
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 2484105d5a Minor change. 2008-10-02 10:44:43 +00:00
Florian Pose 488bf0a640 Moved threads to kthread interface. 2008-10-01 14:37:34 +00:00
Florian Pose 426b0ab2d7 Avoided using #ifdef inside a macro. 2008-10-01 08:44:44 +00:00
Florian Pose 12d30c487a Added VoE handler. 2008-09-01 14:17:18 +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 908624d4d8 Fixed missing up(). 2008-08-08 13:42:46 +00:00
Florian Pose 1cf5448e88 Added debugging for configuration function of the application interface. 2008-08-01 09:24:26 +00:00
Florian Pose 09a6ddc5a4 Fixed reconfiguration: Force config when application detaches. 2008-08-01 07:23:09 +00:00
Florian Pose c0b7fca9b6 Improved source code doc. 2008-07-04 12:06:10 +00:00
Florian Pose d871e4fd08 Renamed ecrt_slave_config_sync_managers() to ecrt_slave_config_pdos();
Added EC_MAX_SYNC_MANAGERS to ecrt.h.
2008-07-02 14:06:10 +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 a81228a587 Store sync manager configurations in ec_slave_config_t instead of Pdo
lists for each direction; changed realtime interface to allow sync
manager configuration.
2008-06-26 13:16:15 +00:00
Florian Pose a6b7657daf Fixed alias bug. 2008-06-20 13:38:35 +00:00
Florian Pose c233259931 Removed state machine cycle time measuring. 2008-06-19 10:22:24 +00:00
Florian Pose cdd45226aa Disable use of CPU timestamp counter by default. 2008-06-19 10:18:58 +00:00
Florian Pose f03af4c38b Removed 'end' and 'error' states from master state machine. 2008-06-18 13:53:31 +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