Commit Graph

1210 Commits

Author SHA1 Message Date
Florian Pose 762bb01ff9 Merge branch 'devel-1.6' into ethercat-backport_setip 2024-02-01 12:41:38 +01: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 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 3eda5173c6 Use fixed-size setip request 2023-09-20 12:46:52 +02:00
Bjarne von Horn 01c72a8865 EoE for Set IP in master 2023-09-20 12:30:24 +02:00
Florian Pose 7b2084e270 Fixed endianess of EoE parameters. 2023-09-15 13:41:01 +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 0e25f6d80f Removed obsolete mailbox type name and clarified documentation. 2023-09-13 10:02:31 +02:00
Florian Pose 5a255fce3d Removed obsolete FoE type name. 2023-09-13 10:02:31 +02:00
Florian Pose 41bc600cef Removed obsolete SoE type name. 2023-09-13 10:02:31 +02:00
Florian Pose d1df6520ba Cleaned up EoE frame type definitions. 2023-09-13 10:02:31 +02:00
Florian Pose 60ebe661a6 EoE frame types. 2023-09-13 10:02:31 +02:00
Bjarne von Horn 758b4adc99 reserve extra headroom in tx buffer for genet 2023-09-11 21:31:57 +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
Florian Pose e3d9056cbc Added export for ecrt_slave_config_reg_pdo_entry_pos(). Fixes #11. 2021-08-10 14:48:07 +02:00
Florian Pose 441b7e470e First feature flag: AssignToPdi. 2021-07-23 16:16:18 +02:00
Florian Pose 443a7ad3e3 Find flag method with const char * parameter; added method to header. 2021-07-23 16:15:05 +02:00
Florian Pose a178c9e452 Added feature flags to API. 2021-07-23 15:53:11 +02:00
Florian Pose cd0d17d6a5 Also changed license of gloabl headers to LGPL.
Moved definition of EC_SDO_INJECTION_TIMEOUT to master.c.
2021-07-23 13:33:54 +02:00
Florian Pose edd473c36b Corrected license text of master/ioctl.h, because it is included in the userspace library. 2021-07-22 16:38:53 +02:00
Nicola Fontana 82399a9239 Revive 'make distcheck' 2021-06-22 14:43:07 +00:00