Commit Graph

118 Commits

Author SHA1 Message Date
Matthias Schoepfer
e6d842cc8f master: added 'run_on_cpu' module parameter to bind kthreads to a cpu
When you use isolcpus to isolate a cpu for the realtime task, as well
as assiging all relevant interrupts to this cpu, it makes sense to
also bind the EtherCAT-OP / EtherCAT-IDLE task to this cpu to reduce
the cache misses and avoid data migration between cores. Therefore
a parameter 'run_on_cpu' is added, that takes the cpu number (same as
in isolcpus, not a smp_affinity mask). If unset, will bind to any cpu
and will be migratable.

The reason to put this into the kernel module is, that the thread is
created during runtime, i.e. when the userspace program is starting
the ethercat master. It would be rather hacky, to find the pid of the
EtherCAT-xx thread and migrate it at this point.

Signed-off-by: Matthias Schoepfer <m.schoepfer@rethinkrobotics.com>
2021-09-27 14:56:01 +02:00
Florian Pose
eba73fc292 Strictly using KERN_CONT for continued printk() calls to avoid newlines. 2021-09-01 11:00:49 +02:00
Florian Pose
f6f5460485 Updated Doxygen documentation. 2013-02-12 15:46:43 +01:00
Florian Pose
3cb0b12899 Added configure option for redundancy (--with-devices). 2012-11-30 20:15:31 +01:00
Florian Pose
1c8790c483 Merged redundancy branch to stable-1.5. 2012-09-06 18:28:57 +02:00
Florian Pose
d2c2e3a5a9 Removed whitespace. 2012-07-09 10:05:32 +02:00
Florian Pose
4c3c5c2778 Slave scanning and configuration on all links. 2012-04-06 23:35:05 +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
62b722ab33 Improved syslog macros. 2010-05-03 18:07:57 +02:00
Florian Pose
6d932e88d5 Devices as array; lock all device modules with module_get(). 2012-01-12 12:14:33 +01:00
Florian Pose
162ba28f35 Renamed main device to ecmX. 2011-11-09 17:06:04 +01:00
Florian Pose
ec84b03034 Master accepting two devices. 2011-11-09 12:05:44 +01:00
Florian Pose
9b3fdfb06e Improved comments. 2011-10-28 10:54:39 +02:00
Florian Pose
f41dadb84f Multi-master support for command-line tool. The --master option supports
ranges like '1-3,6,7-9'. The ioctl() interface version is checked.
2010-02-24 16:27:11 +01:00
Florian Pose
b16ac3ff7a Increased default number of masters to 32. 2010-02-16 18:19:17 +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
a864fc8396 ec_print_data: show only the first 128 and the last 128 bytes of a data block 2009-11-30 12:26:24 +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
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
ed57943fd4 Using snprintf for interface name. 2009-10-28 13:17:08 +01:00
Florian Pose
acd5a56616 Improved newlines in debug data output. 2009-06-15 15:29:24 +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
12c12b1bab Improved and added license headers. 2009-02-24 12:51:39 +00:00
Florian Pose
5d4b915317 merge -c1619 branches/1.4-foe: Implemented going to bootstrap state BOOT. 2009-01-26 13:22:05 +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
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
f8bff8668f merge -c1522 branches/stable-1.4: Fixed jace in jiffies timeout calculation. 2008-10-17 13:36:43 +00:00
Florian Pose
96d794582e Used ERR_PTR() macro for return value of ecrt_request_master(). 2008-10-01 10:06:51 +00:00
Florian Pose
12d30c487a Added VoE handler. 2008-09-01 14:17:18 +00:00
Florian Pose
6db63d096d Use down_interruptible() wherever possible. 2008-08-01 12:46:26 +00:00
Florian Pose
0ef150c812 Renamed master 'mode' to 'phase'. 2008-06-18 13:33:50 +00:00
Florian Pose
dac0f3b575 Replaced include sysfs->device. 2008-06-17 13:02:56 +00:00
Florian Pose
25ffc9f638 Create class device with device_number information in sysfs. 2008-06-17 12:49:06 +00:00
Florian Pose
1553af9375 Create device class. Preparation for device numbers in sysfs. 2008-06-17 12:19:17 +00:00
Florian Pose
06f499078d Improved ecdev_offer(). 2008-06-17 10:19:52 +00:00
Florian Pose
e2c03b9e77 Removed kobject from master and module. Sysfs is gone! 2008-06-12 08:12:02 +00:00
Florian Pose
4eaaf49f14 Removed static from device. 2008-06-05 12:38:07 +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
0b464bbdb8 Removed xmldev. 2008-05-29 08:28:22 +00:00
Florian Pose
267a4ddaa2 Added documentation. 2008-02-28 14:18:18 +00:00
Florian Pose
0921c356a1 Fixed typo SAVEOP -> SAFEOP. 2008-02-22 11:33:49 +00:00
Florian Pose
8e6efae673 Renamed master module parameters, re-formatted code documentation. 2008-02-21 09:24:56 +00:00
Florian Pose
3a50cd0ff1 Allow bus configuration when link is down. 2008-02-19 09:58:48 +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
ce972fd4fc Broadcast MAC address accepts first device. 2007-08-10 15:04:06 +00:00
Florian Pose
8b1ad52b23 Fixed missing semaphore initialization. 2007-03-12 16:40:23 +00:00