Knud Baastrup
ba27819221
Applied base-0024-Sdo-directory-now-only-fetched-on-request
...
Sdo directory now only fetched on request.
The time-consuming SDO directory fetch during slave scan can now be
skipped by setting the EC_SKIP_SDO_DICT in globals.h. The directory
will now instead be fethed the first time an ethercat sdos command
is executed with the ethercat tool.
2023-08-29 14:38:54 +02:00
Esben Haabendal
81758004fd
Improve synchronization of master->domains list
...
Introduce a new lock for synchronization of the master->domains list, and use
that instead of the big master_sem lock, improving real-time performance of
fx. ecrt_domain_process() when EoE thread is being shut down (or other
use-cases where master_sem is held for extended periods).
The following locking order is used:
* master->master_sem
* master->domains_lock
* master->io_sem
* domain->datagram_pairs_lock
Meaning that it is allowed to take domains_lock while holding master_sem, and
it is allowed to hold domains_lock while locking io_sem and
datagram_pairs_lock.
[RV: For now, the lockdep_assert_held() annotations are commented out,
since they don't compile with CONFIG_PROVE_LOCKING and (the default)
--disable-rtmutex.]
2022-09-01 15:38:01 +02:00
Esben Haabendal
e243c6b7db
Clarify purpose of master->io_sem
...
In order to ensure proper use of locking, the purpose of each mutex/semaphore
must be clear and documented.
This is my best guess. The master->io_sem has a simple purpose, synchronizing
access to the master->datagram_queue list structure.
2022-09-01 15:37:50 +02:00
Florian Pose
9955855f7e
Applied 0016-If-enable-rtmutex-use-rtmutexes-instead-of-semaphore.patch
2022-06-23 11:21:51 +02:00
Florian Pose
225af9f787
Applied 0008-read-reference-slave-clock-64bit-time.patch
2022-06-23 10:45:16 +02:00
Florian Pose
17eddce68d
Applied 0002-Distributed-Clock-fixes-from-Jun-Yuan.patch
2022-06-23 10:12:12 +02:00
Florian Pose
9d733cb1a9
Renamed app_start_time to dc_ref_time; output via command-line tool.
2021-08-24 16:48:07 +02:00
Gavin Lambert
1d35113c85
Abort requests started for slave_configs that don't have any actual slaves.
2015-04-14 09:35:15 -04:00
Florian Pose
99418519bd
Reverted default branch to stable-1.5.
2014-11-03 15:20:05 +01:00
Florian Pose
4c0e5279e1
Removed allow_config flag and obsolete request to OP.
2011-09-16 14:10:23 +02:00
Florian Pose
c57242219f
Minor: Fixed line wraps and spacing.
2011-08-01 17:02:45 +02: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
85822a6242
Optionally compile with trace_printk support
2011-01-12 14:56:53 +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
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
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
fedec244d8
replaced injection_seq mechanism with fsm datagram queue
2010-12-16 09:49:17 +01:00
Martin Troxler
efa248364d
renamed dc_cycles_app_time -> dc_cycles_app_start_time & dc_jiffies_app_time -> dc_jiffies_app_start_time
2010-11-22 09:53:43 +01:00
Martin Troxler
a55d77d7ed
merged
2010-10-18 10:45:07 +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
Martin Troxler
d135711521
merged
2010-05-11 13:57:58 +02:00
Martin Troxler
ef375c0935
Improved distributed clock offset calculation to speed-up initial drift compensation
2010-05-07 15:25:55 +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
d24bede41c
Added missing code documentation.
2010-04-19 21:56:16 +02:00
Florian Pose
1cea08c920
Removed unused variable frames_timed_out.
2010-03-07 21:20:40 +01:00
Florian Pose
a144042657
Removed tabulators.
2010-02-05 10:29:47 +01:00
Martin Troxler
94fec37d0f
use given send interval to limit SDO/FOE traffic
2009-12-15 10:55: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
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
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
6935cbb247
Use application start time as a common reference for cyclic generation
...
start times.
2009-05-04 12:11:00 +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
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