Commit Graph

64 Commits

Author SHA1 Message Date
Bjarne von Horn 614a309bcc use `int` as return type for ecrt_reg_request_*
See #101
2024-04-03 10:34:17 +02:00
Bjarne von Horn e78237ed31 use `int` as return type for ecrt_voe_handler_*
See #101
2024-04-03 10:34:17 +02:00
Bjarne von Horn 8c30331e6e use `int` as return type for ecrt_soe_request_*
See #101
2024-04-03 10:34:17 +02:00
Bjarne von Horn 885b8717e1 use `int` as return type for ecrt_sdo_request_*
See #101
2024-04-03 10:34:17 +02:00
Bjarne von Horn 5248b967d2 use `int` as return type for ecrt_slave_*
See #101
2024-04-03 10:34:17 +02:00
Bjarne von Horn 13e99008c3 use int as return type for ecrt_master_*
See #101
2024-04-03 10:34:17 +02:00
Bjarne von Horn 06b408ef1b use int as return type for ecrt_domain_*
See #101
2024-04-03 10:34:17 +02:00
Florian Pose 5f8d97edcf Assigned ioctl calls to RT, nRT or both; documented that in header. 2024-02-08 12:05:29 +01:00
Bjarne von Horn d0f4aed39b Make ecrt_master_reset available in RT context
It takes the master_sem, so calling it from RT context is not an option.
The reset is done by a workqueue now, which is triggered in a NMI-safe way.

Fixes #103
2024-02-08 08:59:29 +01:00
Florian Pose 2f4c06afc1 Moved application time ioctl for RT-only; changed some permissions. 2024-02-07 17:08:52 +01:00
Bjarne von Horn a5fc2b0f26 remove unused variables. 2024-02-07 15:03:39 +01:00
Bjarne von Horn 19b8f672c7 Disable memory allocation in {soe,sdo}_request_write
Because it's not compatible with Xenomai and other atomic contexts.
The memory is preallocated when creating the request in before.
2024-02-05 16:05:57 +01:00
Bjarne von Horn aa89735e55 do ioctl multiplexing in ioctl.c 2024-02-05 10:08:55 +01:00
Bjarne von Horn bf790debb6 Split ioctl switch statements into rt, nrt and common 2024-02-05 10:08:55 +01:00
Bjarne von Horn 385f2ba64e Use rtdm_safe_copy_{from,to}_user 2024-02-05 10:04:14 +01:00
Bjarne von Horn ca60769996 introduce ec_copy_{from,to}_user macros with ctx argument in ioctl 2024-02-05 10:02:28 +01:00
Bjarne von Horn 656526f03c remove EC_RTDM_OPS_HAS_MMAP again 2024-02-05 09:58:04 +01:00
Bjarne von Horn 1dae91d8c3 Use mmap handler in Xenomai3 2024-02-05 09:58:04 +01:00
Florian Pose 5e0d49755d Merge branch 'devel-1.6' into ethercat-backport_setip 2024-02-01 15:30:05 +01:00
Florian Pose 4f32561ce9 Merge branch 'devel-1.6' into ethercat-backport_setip 2024-02-01 15:27:17 +01:00
Florian Pose ee55c20e28 Fixed mail address; limited lines to 78 characters; removed $Id$. 2024-02-01 15:15:41 +01:00
Florian Pose 512bac72e2 Merge branch 'devel-1.6' into prepare-1.6 2024-02-01 13:26:12 +01:00
Florian Pose be41b79f3f Merge branch 'devel-1.6' into prepare-1.6 2024-02-01 13:09:45 +01:00
Florian Pose 762bb01ff9 Merge branch 'devel-1.6' into ethercat-backport_setip 2024-02-01 12:41:38 +01:00
Florian Pose 2fdea4dd53 Merge branch '79-query-scan-progress-via-api-2' into 'devel-1.6'
Resolve "Query scan progress via API"

See merge request etherlab.org/ethercat!110
2024-02-01 10:27:07 +00:00
Bjarne von Horn 2e071ad680 Remove EtherCAT copyright notice. 2024-02-01 09:18:26 +01:00
Florian Pose 91fe3eb735 Added ecrt_master_scan_progress() method. 2024-01-31 16:52:18 +01:00
Florian Pose 6c6b68c00b Merge branch 'stable-1.5' into soe-handler 2024-01-18 10:40:06 +01:00
Bjarne von Horn 13e1e469e1 Use RT Mutex instead of semaphore for RT ioctl locking. 2024-01-15 11:20:25 +01:00
Bjarne von Horn 7a7f9a041e Fix -Wcomment. 2024-01-15 11:20:25 +01:00
Bjarne von Horn c3826c7758 Remove EtherCAT copyright notice. 2024-01-15 11:20:25 +01:00
Bjarne von Horn 267ae77ea2 add 0 terminator in ioctl 2023-11-23 18:21:02 +01:00
Florian Pose f46b4ba654 Fixed wrong state assignment for IDN config. 2023-11-23 14:27:01 +01:00
Bjarne von Horn 01c72a8865 EoE for Set IP in master 2023-09-20 12:30:24 +02:00
Florian Pose 4d47f0b328 Implemented EoE Set IP parameter request via command-line tool. 2023-09-15 13:40:57 +02:00
Florian Pose d35c5a41cc Always define EoE handler count. 2023-07-19 15:56:09 +02:00
Florian Pose bdab9570f2 Implemented SoE requests in user-space library. 2023-03-14 16:48:48 +01:00
till straumann f4e3a92352 master/ioctl.c: FIX -- more points where io_sem must be locked
Experienced corruption of master->datagram_queue because ecrt_domain_queue()
(when called from ioctl) does not hold the io_sem!
2021-11-04 13:50:55 +01:00
till straumann 5437ec4ef1 ioctl.c: FIX: must take io_sem around ecrt_master_send/ecrt_master_receive 2021-10-14 10:20:52 +02:00
Florian Pose a178c9e452 Added feature flags to API. 2021-07-23 15:53:11 +02:00
Florian Pose f03f15a6fc Added ecrt_master_sync_reference_clock_to() method. 2018-11-26 17:41:27 +01:00
Florian Pose 083bd419b8 Renamed app_start_time to dc_ref_time; output via command-line tool. 2018-11-26 17:17:18 +01:00
Florian Pose 538c3d7c04 Improved buffer overflow messages. 2017-12-13 15:39:13 +01:00
Florian Pose b0eace9ef1 Implemented emergency register requests to analyze a broken bus. 2013-05-13 20:21:19 +02:00
Florian Pose f6f5460485 Updated Doxygen documentation. 2013-02-12 15:46:43 +01:00
Florian Pose ebf9c296f3 Added ecrt_slave_config_reg_so_entry_pos() to register non-unique entries. 2013-02-05 16:45:34 +01:00
Florian Pose 23c725a79c Exported ecrt_domain_size() for userspace. 2013-02-05 15:24:45 +01:00
Florian Pose 032acb3d85 Avoided io_sem locking from userspace/rtdm library. 2013-01-10 17:36:41 +01:00
Florian Pose 8a6eadb16b Fixed some warnings on 64 bit systems. 2012-12-06 18:43:56 +01:00
Florian Pose 465cfd37e3 Removed unused variable. 2012-12-06 18:13:02 +01:00