Commit Graph

1217 Commits

Author SHA1 Message Date
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 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
Bjarne von Horn 9a2abde36c Remove 2.6 conditionals in master 2024-02-01 09:12:55 +01:00
Florian Pose 91fe3eb735 Added ecrt_master_scan_progress() method. 2024-01-31 16:52:18 +01:00
Florian Pose 21b0b13703 Merge branch 'kbuild_out_of_tree' into 'devel-1.6'
support out-of-tree build

See merge request etherlab.org/ethercat!79
2024-01-31 14:52:23 +00:00
Florian Pose 6c6b68c00b Merge branch 'stable-1.5' into soe-handler 2024-01-18 10:40:06 +01:00
Florian Pose 5c6e19981b Incremented ioctl version magic to 33. 2024-01-18 10:37:27 +01:00
Bjarne von Horn dc13d7c511 Add lockdep assertion for EoE xmit callback 2024-01-15 11:43:59 +01:00
Bjarne von Horn eb44f82a91 Reuse netif_tx_lock for EoE TX synchronization
ndo_start_xmit callback is protected by __netif_tx_lock by the network stack,
so we no not need our own locks.
2024-01-15 11:20:25 +01:00
Bjarne von Horn a54fac3090 Make locking of ext_datagram_queue more selective 2024-01-15 11:20:25 +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 543dc87d88 Remove 2.6 conditionals in master 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 97ee76462b Introduced feature flag WaitBeforeSAFEOPms. 2023-11-23 14:38:29 +01:00
Florian Pose f46b4ba654 Fixed wrong state assignment for IDN config. 2023-11-23 14:27:01 +01:00
Bjarne von Horn 758b4adc99 reserve extra headroom in tx buffer for genet 2023-09-11 21:31:57 +02:00
Bjarne von Horn d967426204 add missing EXTRA_DIST 2023-09-11 11:43:39 +02:00
Bjarne von Horn 73e6ea9ce6 support out-of-tree build
by replacing `src` variable in Kbuild files.
2023-09-11 11:43:39 +02:00
Bjarne von Horn d08e41f913 Add page ref to device drivers page.
It's now always in doxygen-output/html/devicedrivers.html
2023-09-06 10:19:49 +02:00
Florian Pose d35c5a41cc Always define EoE handler count. 2023-07-19 15:56:09 +02:00
Nicola Fontana 5d8c8990de Fix class_create on kernel 6.4
Commit 1aaba11da9aa7d7d6b52a74d45b31cac118295a1 in kernel code removed
`module *` argument from `class_create`.
2023-07-05 12:13:32 +02:00
Andreas Stewering-Bone 04f202a39c Merge branch 'fix_vm_set_flag' into 'stable-1.5'
Fix setting flag in vm_area_struct for Kernel 6.3

See merge request etherlab.org/ethercat!67
2023-06-01 05:53:32 +00:00
Bjarne von Horn 27db882dab Fix setting flag in vm_area_struct for Kernel 6.3
The error was:
```
[  150s]   gcc -Wp,-MMD,/home/abuild/rpmbuild/BUILD/build-default/devices/ccat/.netdev.o.d -nostdinc -I/usr/src/linux-6.3.1-1/arch/x86/include -I./arch/x86/include/generated -I/usr/src/linux-6.3.1-1/include -I./include -I/usr/src/linux-6.3.1-1/arch/x86/include/uapi -I./arch/x86/include/generated/uapi -I/usr/src/linux-6.3.1-1/include/uapi -I./include/generated/uapi -include /usr/src/linux-6.3.1-1/include/linux/compiler-version.h -include /usr/src/linux-6.3.1-1/include/linux/kconfig.h -include /usr/src/linux-6.3.1-1/include/linux/compiler_types.h -D__KERNEL__ -fmacro-prefix-map=/usr/src/linux-6.3.1-1/= -Wall -Wundef -Werror=strict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -fshort-wchar -fno-PIE -Werror=implicit-function-declaration -Werror=implicit-int -Werror=return-type -Wno-format-security -funsigned-char -std=gnu11 -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -mno-avx -fcf-protection=none -m64 -falign-jumps=1 -falign-loops=1 -mno-80387 -mno-fp-ret-in-387 -mpreferred-stack-boundary=3 -mskip-rax-setup -mtune=generic -mno-red-zone -mcmodel=kernel -Wno-sign-compare -fno-asynchronous-unwind-tables -mindirect-branch=thunk-extern -mindirect-branch-register -mindirect-branch-cs-prefix -mfunction-return=thunk-extern -fno-jump-tables -mharden-sls=all -fpatchable-function-entry=16,16 -fno-delete-null-pointer-checks -Wno-frame-address -Wno-format-truncation -Wno-format-overflow -Wno-address-of-packed-member -O2 -fno-allow-store-data-races -Wframe-larger-than=2048 -fstack-protector-strong -Wno-main -Wno-unused-but-set-variable -Wno-unused-const-variable -Wno-dangling-pointer -fno-stack-clash-protection -pg -mrecord-mcount -mfentry -DCC_USING_FENTRY -falign-functions=16 -Wdeclaration-after-statement -Wvla -Wno-pointer-sign -Wcast-function-type -Wno-stringop-truncation -Wno-stringop-overflow -Wno-restrict -Wno-maybe-uninitialized -Wno-array-bounds -Wno-alloc-size-larger-than -Wimplicit-fallthrough=5 -fno-strict-overflow -fno-stack-check -fconserve-stack -Werror=date-time -Werror=incompatible-pointer-types -Werror=designated-init -Wno-packed-not-aligned -g -gdwarf-5  -DMODULE  -DKBUILD_BASENAME='"netdev"' -DKBUILD_MODNAME='"ec_ccat"' -D__KBUILD_MODNAME=kmod_ec_ccat -c -o /home/abuild/rpmbuild/BUILD/build-default/devices/ccat/netdev.o /home/abuild/rpmbuild/BUILD/build-default/devices/ccat/netdev.c   ; ./tools/objtool/objtool --hacks=jump_label --hacks=noinstr --hacks=skylake --orc --retpoline --rethunk --sls --static-call --uaccess --prefix=16   --module /home/abuild/rpmbuild/BUILD/build-default/devices/ccat/netdev.o
[  151s] /home/abuild/rpmbuild/BUILD/build-default/master/cdev.c: In function 'eccdev_mmap':
[  151s] /home/abuild/rpmbuild/BUILD/build-default/master/cdev.c:246:19: error: assignment of read-only member 'vm_flags'
[  151s]   246 |     vma->vm_flags |= VM_DONTDUMP; /* Pages will not be swapped out */
[  151s]       |                   ^~
[  151s] make[3]: *** [/usr/src/linux-6.3.1-1/scripts/Makefile.build:253: /home/abuild/rpmbuild/BUILD/build-default/master/cdev.o] Error 1
```
2023-05-09 14:28:11 +02:00
Bjarne von Horn b97af7523a igb for 5.15 2023-05-02 12:17:37 +00:00
Florian Pose 47cf84f406 Merge branch 'allow-empty-sdos' into 'stable-1.5'
Allow zero-sized SDO responses

See merge request etherlab.org/ethercat!61
2023-05-02 08:43:17 +00:00
Florian Pose 1726abf0c3 Allow zero-sized SDO responses 2023-05-02 08:43:16 +00:00
Florian Pose c022ddbcf2 Merge branch 'stable-1.5' into 'stable-1.5'
fix version compatibility of alloc_netdev when debug if is enabled

See merge request etherlab.org/ethercat!62
2023-03-14 15:59:31 +00:00
Florian Pose bdab9570f2 Implemented SoE requests in user-space library. 2023-03-14 16:48:48 +01:00
Florian Pose 56c4556173 New SoE request API; implemented API in kernel. 2023-03-14 16:12:45 +01:00
Florian Pose eac4e340eb Init missing fields. 2023-03-14 16:07:29 +01:00
Florian Pose c1fb080b55 Removed Id keywords. 2023-03-14 16:05:15 +01:00
Florian Pose 57adee4c7b Changed email and postal address. 2023-01-09 09:59:08 +01:00
raim.delgado 7bdaca925c fix version compatibility of alloc_netdev when debug if is enabled 2022-11-29 09:59:02 +09:00
Florian Pose 9aa5935d08 Merge branch 'fix_eoe_usermode_lock' into 'stable-1.5'
ioctl.c: FIX: must take io_sem around ecrt_master_send/ecrt_master_receive

See merge request etherlab.org/ethercat!36
2022-09-05 09:11:37 +00:00
Florian Pose 26e5b9f553 Minor: Fixed indent. 2022-05-17 14:10:51 +02:00
Bjarne von Horn d301cbb992 Fix setting mac_address
eoe->dev->dev_addr is read_only in 5.17.0
using eth_hw_addr_set instead
2022-05-17 12:17:28 +02:00
Florian Pose 49135bfaff Centrally defined mailbox types. 2022-03-04 10:00:47 +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
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 09d1096623 Avoided warning about unreasonable use of strncpy(). 2021-08-25 12:00:01 +02:00
Florian Pose 4e11a50670 Define set_normal_priority() inside #ifdef EC_EOE. Fixes #12. 2021-08-25 09:47:26 +02:00
Florian Pose a750e08884 Merge branch 'feature-flags' into 'stable-1.5'
Feature Flags / AssignToPdi

See merge request etherlab.org/ethercat!30
2021-08-24 10:15:10 +00:00
Florian Pose 9ec0eb6295 Merge remote-tracking branch 'gitlab/stable-1.5' into stable-1.5 2021-08-10 14:49:56 +02:00