Commit Graph

1164 Commits

Author SHA1 Message Date
Dave Page 2fef3fdfb1 Add DEBUG_DATAGRAM_OVERFLOW to support ec_domain_finish datagram overflow testing 2015-04-07 21:25:43 -04:00
Dave Page 8350b85879 Fix datagram overflow layout issue 2015-04-07 21:07:16 -04:00
Dave Page 039f9ac74d Remove unused variable 2015-04-06 14:58:19 -04:00
Dave Page fad06b32f1 overlapping PDO split datagram support 2015-04-06 14:39:31 -04:00
Dave Page 69b5eb3a4f overlapping PDO initial working. datagram size is not correct 2015-04-02 16:49:36 -04:00
Dave Page 7beb81207d Refactor fmmu->logical_start_address to fmmu->logical_domain_offset 2015-03-26 17:41:57 -04:00
Dave Page b8c5ff836d Integrate skeleton of allow_overlapping_pdos from af21f0bdc7c9
Overlapping PDO API added, but not active/working.
No more changes than required to build.
EC_IOCTL_VERSION_MAGIC now 30
2015-03-26 15:16:21 -04:00
Dave Page f9dfaf3f9b Reduce frequency of DC Sync debug messages 2015-03-16 14:18:55 -04:00
Dave Page 42745f4ebb Fix fsm_foe timeout regression 2014-03-05 06:36:18 +13:00
Dave Page 9ffdb2e85b Gavin Lambert FoE Patches 2014-01-22 19:02:02 +13:00
Dave Page 1d1a651502 FoE: Fix expected packet number when busy 2014-01-22 15:53:19 +13:00
Dave Page d7ad553902 [etherlab-dev] [PATCH] FoE: fix read packet number check 2014-01-22 13:01:45 +13:00
Florian Pose 4db1985fdf Undefined debugging. 2015-04-17 10:22:11 +02:00
Dave Page b4b0474762 FoE: fix state transition when busy during read. Not working. 2014-01-22 13:00:52 +13:00
Dave Page 9412326b8b Fix spurious FoE write timeout 2013-12-16 14:18:30 -05:00
Florian Pose 605d25eec9 Replaced all mangled hg keywords. 2012-09-06 14:17:21 +02:00
Florian Pose bbd210e4c8 Fixed malformed keywords. 2012-09-06 14:07:13 +02:00
Florian Pose 3fe3f0b987 Fixed AL status code lookup. 2012-08-06 14:18:05 +02:00
Florian Pose 03c932486a Added missing linux/modules.h include. 2012-07-23 16:10:45 +02:00
Florian Pose 5c48b73793 Removed whitespace. 2012-07-09 10:05:32 +02:00
Florian Pose 6ee0a18ac7 Fixed reset of allow_scanning flag if ecrt_master_activate() was not called. 2012-01-13 11:27:20 +01:00
Florian Pose a125ee70c8 Allocated ioctl data structures dynamically to avoid stack warnings. 2012-01-10 11:30:41 +01:00
Florian Pose 43bd127cfd Decreased maximum length of error message to avoid stack warning. 2012-01-10 11:30:03 +01:00
Florian Pose f698ec2aa0 Fixed semaphore header for kernels < 2.6.27. 2012-01-10 10:43:36 +01:00
Florian Pose 42b1bb1d3f Copy missing slave_info data in kernel space. 2012-01-10 10:11:20 +01:00
Florian Pose ac81b869cc Minor: Indentation. 2012-01-10 10:13:13 +01:00
Florian Pose 4aaba1c675 Avoided unused variable warnings. 2012-01-09 17:42:28 +01:00
Florian Pose 393613a47a Allow gaps between SDO subindices when fetching dictionary. 2012-01-05 16:53:08 +01:00
Florian Pose 54e2ff770e Allow CoE OD List Segments to have 6 bytes instead of 8. 2012-01-05 16:47:23 +01:00
Florian Pose e03be8a42f Removed some locks causing latency when using the library; added ioctl()
latency debugging; fixed FoE memory leaks in error case.
2011-12-20 11:12:04 +01:00
Florian Pose c7de6d8ec4 Minor: Fixed spacing. 2011-12-16 16:26:16 +01:00
Florian Pose a39fe6c97d Read AL status code before acknowledging spontaneous state change. 2011-12-16 11:42:55 +01:00
Florian Pose 4874ad087c Improved resetting number of responding slaves. 2011-12-09 10:35:23 +01:00
Florian Pose 2d0b832923 Fixed missing initialisation of allow_config flag. 2011-12-09 10:31:29 +01:00
Florian Pose 4a858fc97e Fixed compiler error in master.c; thanks to Jun Yuan. 2011-12-05 11:29:28 +01:00
Florian Pose ef4fc90c7d Added --enable-wildcards to use 0xffffffff as wildcard for vendor ID and
product code.
2011-11-04 12:21:09 +01:00
Florian Pose 0b32dd07dd 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 c84e2aa8c2 Always enable a sync manager, if there are registered PDOs conatined (and it
is not virtual)
2011-10-24 10:47:36 +02:00
Florian Pose 6086dc56a9 Fixed missing return causing slaves not going to OP. 2011-09-22 16:52:54 +02:00
Florian Pose e09499f1b9 Fixed typo. 2011-09-19 13:12:32 +02:00
Florian Pose 27584931e8 Removed unnecessary list header. 2011-09-16 16:44:13 +02:00
Florian Pose 4c0e5279e1 Removed allow_config flag and obsolete request to OP. 2011-09-16 14:10:23 +02:00
Florian Pose e3ac1ec003 Don not copy frame data to datagram memory, if datagram type is write-only. 2011-09-16 12:44:54 +02:00
Florian Pose 95abe81029 Fixed keywords. 2011-09-16 09:25:02 +02:00
Florian Pose 86fad60418 Bugfix: Reset config_changed flag when aborting state check. 2011-09-16 09:19:24 +02:00
Florian Pose f6b4789eca Fixed compiler error; added SDO debugging. 2011-09-15 16:45:58 +02:00
Florian Pose 8cf159bc08 Implemented ecrt_master_sdo_upload() and ecrt_master_sdo_download() for kernel
space.
2011-09-15 15:58:58 +02:00
Florian Pose a4e72bdd6a Minor: Fixed line breaks and spacing. 2011-09-15 15:56:49 +02:00
Florian Pose e813e8a6d3 Minor: Fixed line breaks and spacing... 2011-09-15 14:38:06 +02:00
Florian Pose 699bb79eca Fixed spacing and added some thoughts about the overlapping PDOs
implementation.
2011-08-11 20:44:18 +02:00
Florian Pose 4802bcd961 Minor: removed empty lines. 2011-08-11 20:20:12 +02:00
Florian Pose 89cbcd86bb Avoided casting-away constness in expected working counter calculation. 2011-08-11 19:43:48 +02:00
Florian Pose 0aedfdac0f Improved DC sync at startup: Abort iterating though slaves and first correct
system time offsets, then begin configuring at slave 0.
2011-08-09 22:10:45 +02:00
Florian Pose 6171cc6e3b Fixed skipped datagrams output again; added datagram information on skip. 2011-08-01 17:54:56 +02:00
Florian Pose c57242219f Minor: Fixed line wraps and spacing. 2011-08-01 17:02:45 +02:00
Florian Pose 7406f815f9 Fixed typo. 2011-08-01 16:53:21 +02:00
Florian Pose 1caeaad06c merge. 2011-07-25 10:32:46 +02:00
Florian Pose 7416eb4216 Fixed malformed comment. 2011-07-25 10:29:48 +02:00
Florian Pose e80332d61a Fixed bug in ec_master_queue_datagram() introduced in c9d32805d984. 2011-07-21 18:25:38 +02:00
Florian Pose 8e5a96aa45 merge. 2011-07-08 15:31:46 +02:00
Florian Pose 52d1750dcd Minor: removed unnecessary return. 2011-07-08 14:28:07 +02:00
Florian Pose ae060ff267 Improved ecrt_master_queue_datagram(); detect skipped datagrams also when
already sent.
2011-07-08 14:26:25 +02:00
Florian Pose e6e8063fd9 Fixed datagram statistics output (skipped datagrams). 2011-07-08 14:23:22 +02:00
Florian Pose 01de69446f merge. 2011-05-12 16:45:02 +02:00
Florian Pose 6edbee06f0 Fixed compiler error for kernel versions < 2.6.23. 2011-05-12 08:40:22 +02:00
Andreas Stewering-Bone f1e2f6d912 Merge 2011-04-13 22:06:28 +02:00
Martin Troxler 638b57420e fixed kernel oops bug in ec_fsm_coe_down_response (Blame the C Compiler) 2011-03-31 14:47:42 +02:00
Andreas Stewering-Bone 76ff88c43c First working RTDM Version,
to be reviewed,
further testing and optimation needed

Thanks to Moehwald GmbH B.Benner for Basic Code
2011-03-16 22:12:23 +01:00
Martin Troxler b65f4f7cde merged 2011-03-14 16:57:47 +01:00
Martin Troxler ae09c143c9 Reduced frame size when sending to mailbox, uses 2 datagrams. Enabled with configure option --enable-mboxframesize 2011-03-14 16:55:09 +01:00
Martin Troxler f405ebef0a fixed race condition when comparing datagram state
EC_DATAGRAM_QUEUED must be compared before EC_DATAGRAM_SENT because it might change in between
2011-03-14 16:08:25 +01:00
Martin Troxler dda18aa1f6 merged 2011-03-14 11:20:05 +01:00
Rafael Blank 144ac534f6 Fixed segmented sdo dictionary upload (only first segment contains list type) 2011-02-24 10:04:42 +01:00
Martin Troxler 7ddaa2b007 lock io_mutex when unqueueing datagrams; unqueue datagrams from send-receive queue. 2011-01-17 11:09:11 +01:00
Martin Troxler 0f18d720ec Minor changes (consistent variable naming) 2011-01-14 12:23:00 +01:00
Martin Troxler cc4f691d6c Datagram queue race fixed: insert datagrams into master-fsm_queue with fsm_queue list_head 2011-01-14 11:36:53 +01:00
Martin Troxler 85822a6242 Optionally compile with trace_printk support 2011-01-12 14:56:53 +01:00
Matthias Luescher e4722b4475 properly deactivate slaves if there is no eoe slave 2011-01-06 17:19:15 +01:00
Martin Troxler 67d28bec54 always use rt_mutex instead of semaphore for mutual exclusion on kernels >= 2.6.24 (removed --enable-mutex build option) 2011-01-06 13:11:21 +01:00
Martin Troxler 54da56e622 releasing of refcounted requests fixed: do not call EC_SLAVE_DBG without valid slave 2011-01-06 12:47:20 +01:00
Martin Troxler b3bfc21724 SoE request wait_event() deadlock fixed: use wait_event_interruptible and refcount ec_master_soe_request_t objects with kref 2011-01-05 12:46:12 +01:00
Martin Troxler 7e6b05b195 Register read/write wait_event() deadlock fixed: use wait_event_interruptible and refcount ec_reg_request_t objects with kref 2011-01-05 12:26:33 +01:00
Martin Troxler 74762f3bca Sii write wait_event() deadlock fixed: use wait_event_interruptible and refcount ec_master_sii_write_request_t objects with kref 2011-01-05 11:33:31 +01:00
Martin Troxler 273be9d362 FoE wait_event() deadlock fixed: refcount ec_master_foe_request_t objects with kref 2011-01-05 09:50:35 +01:00
Martin Troxler c059ec6f49 use rt_mutex instead of semaphore for mutual exclusion (use --enable-mutex) 2011-01-05 08:36:53 +01:00
Martin Troxler f2131608f1 SDO wait_event() deadlock fixed: refcount ec_master_sdo_request_t objects with kref 2010-12-23 09:48:56 +01:00
Martin Troxler f78a45f668 Failed FoE transfer: notify foe_queue instead of sdo_queue 2010-12-23 09:28:39 +01:00
Martin Troxler 075dce4d7e ecrt_master_callbacks: replaced send/receive callback mechanism with locking mechanism; removed ecrt_master_send_ext 2010-12-16 15:47:28 +01:00
Martin Troxler 2fcb8f9079 fixed 'ethercat eoe' command: interchanged rx/tx bytes/rates 2010-12-16 12:41:16 +01:00
Martin Troxler b6c795058b renamed ext_injection_timeout -> fsm_injection_timeout 2010-12-16 12:31:38 +01:00
Martin Troxler fc0ab2c764 removed now obsolete ext_datagram_queu 2010-12-16 11:29:23 +01:00
Martin Troxler c15f66ae48 removed eoe thread: eoe processing now done by Idle/Operation thread 2010-12-16 11:23:32 +01:00
Martin Troxler 902a3e3728 use ext_queue_sem for fsm datagram queue (instead of io_sem) 2010-12-16 09:52:17 +01:00
Martin Troxler fedec244d8 replaced injection_seq mechanism with fsm datagram queue 2010-12-16 09:49:17 +01:00
Martin Troxler 53056753da Increment injection_seq on slave state changes 2010-12-14 14:00:19 +01:00
Martin Troxler 51a014f6f9 ec_master_queue_external_datagram: fixed missing up(io_sem) 2010-12-13 17:38:24 +01:00
Martin Troxler 711764aec3 Inplace I/O bug: correct domain tx-size when tx-size of input and output fmmu is different. 2010-12-06 11:42:48 +01:00
Florian Pose 6929f2f718 Added ecrt_master_reset() method. 2010-11-30 15:24:21 +01:00
Martin Troxler 0fa074e917 fixed compiling without EC_HAVE_CYCLES (dc_jiffies_app_start_time) 2010-11-30 07:37:09 +01:00
Martin Troxler e2a3734546 Minor 64bit improvements (use %zu when formatting size_t values in printk) 2010-11-29 08:18:11 +01:00