Commit Graph

2906 Commits

Author SHA1 Message Date
Florian Pose
354f1493cc Switched from hrtimer_init() to hrtimer_setup() with Linux 6.15. 2025-06-10 12:08:09 +02:00
Florian Pose
240080f110 Implemented new timer interface for mini example since kernel 6.15. 2025-06-10 11:53:59 +02:00
Florian Pose
013c44ad0d Replaced remaining AC_HELP_STRING with AS_HELP_STRING. 2025-06-10 11:46:38 +02:00
Florian Pose
703b611728 Bump version to 1.6.4. 1.6.4 2025-04-17 14:00:06 +02:00
Florian Pose
ba42da8f14 Merge branch 'fix_igc_rx' into 'stable-1.6'
Fix RX descriptor writeback threshold to 1

See merge request etherlab.org/ethercat!168
2025-04-04 11:10:50 +02:00
Bjarne von Horn
a9e9489f97 Fix RX descriptor writeback threshold to 1
If the igc adapter is not used for EtherCAT, the threshold is left to the original default, 4.

Superseeds !147
2025-04-04 10:10:22 +02:00
Florian Pose
9f1ff71b43 Merge branch 'rescan-statements' into 'stable-1.6'
Avoid rescan on non-responding slave

See merge request etherlab.org/ethercat!167
2025-04-03 16:25:43 +02:00
Florian Pose
527c8b52cf Avoid rescan on non-responding slave. 2025-04-03 16:19:07 +02:00
Florian Pose
f40c89c150 Merge branch 'rescan-statements' into 'stable-1.6'
Added some debug statements concering re-scanning

See merge request etherlab.org/ethercat!166
2025-04-02 19:24:00 +02:00
Florian Pose
1a6af314d8 Added some debug statements concering re-scanning. 2025-04-02 19:16:30 +02:00
Florian Pose
7843101ed3 Merge branch '167-warning-no-previous-prototype-for-ec_master_nanosleep-wmissing-prototypes-when-i-try-sudo-make' into 'stable-1.6'
Resolve "warning: no previous prototype for 'ec_master_nanosleep' [-Wmissing-prototypes] when i try 'sudo make modules'"

Closes #167

See merge request etherlab.org/ethercat!165
2025-03-26 09:06:08 +01:00
Florian Pose
0116094a7c Avoid missing prototype warning. 2025-03-25 09:24:25 +01:00
Florian Pose
7deaae5c4a Merge branch 'disable_eoe_op' into 'stable-1.6'
Backport "Do not touch AL state of EoE slaves." to stable-1.6

See merge request etherlab.org/ethercat!164
2025-03-21 09:32:23 +01:00
Florian Pose
0e2dd2ff56 Do not touch AL state of EoE slaves. 2025-03-21 09:25:47 +01:00
Florian Pose
319d7f8cd4 Merge branch '156-hint-for-user-regarding-fake_ec_name' into 'stable-1.6'
Resolve "Hint for user regarding: FAKE_EC_NAME"

Closes #156

See merge request etherlab.org/ethercat!163
2025-03-18 11:44:01 +01:00
Florian Pose
a460324d94 Warning if FAKE_EC_NAME is not set. 2025-03-18 11:33:19 +01:00
Florian Pose
91f140e994 Wrapped long lines. 2025-03-18 11:23:26 +01:00
Florian Pose
b9b493336c Merge branch 'disable-initd' into 'stable-1.6'
Support to initd optional

See merge request etherlab.org/ethercat!159
2025-03-13 09:18:54 +01:00
Florian Pose
eeee887bcf Merge branch 'fix_fake_ethercat' into 'stable-1.6'
Add EtherCAT Master id to rtipc directory.

See merge request etherlab.org/ethercat!161
2025-03-13 08:44:45 +01:00
Bjarne von Horn
5f75f566ce Create rtipc directories on startup 2025-03-12 14:08:26 +01:00
Bjarne von Horn
7036da66f4 Add EtherCAT Master id to rtipc directory.
Currently, having multiple rtipc instances with the same
cache directory in one application does not work.
So we use one directory per master instance.
2025-03-12 11:54:50 +01:00
Bjarne von Horn
5bbf53a376 Fix FakeEtherCAT Domain activation. 2025-03-11 19:07:01 +01:00
Nicola Fontana
d31fe6db68 doc: fix references to init scripts
init.d support has been updated but the TeX files still reference some
old contents.

Fix all the `../script` folder references, avoid pointing to generated
files (that, depending on the configure options, may or may not exist)
and, while at it, refresh a bit the systemd/init.d documentations.
2025-02-17 12:45:41 +01:00
Nicola Fontana
4dc942d789 Update init.d support 2025-02-17 12:45:39 +01:00
Florian Pose
4ce0c74d35 Merge branch 'UPDOWN_INTERFACES' into 'stable-1.6'
Add UPDOWN_INTERFACES option to ethercat.conf

See merge request etherlab.org/ethercat!157
2025-02-17 09:12:05 +00:00
Florian Pose
4831aefbb5 Merge branch 'autotools' into 'stable-1.6'
Improvements to the build system

Closes #16

See merge request etherlab.org/ethercat!158
2025-02-17 09:07:37 +00:00
Florian Pose
45e2a23ea1 Merge branch 'docs' into 'stable-1.6'
Documentation improvements

Closes #31

See merge request etherlab.org/ethercat!156
2025-02-17 09:05:05 +00:00
Nicola Fontana
bfd84c8f3e Add UPDOWN_INTERFACES option to ethercat.conf 2025-02-14 17:04:05 +01:00
Nicola Fontana
9d9839a092 Fix obsolete warnings on bootstrap
Use AS_HELP_STRING instead of the obsolete AC_HELP_STRING and call
LT_INIT instead of AC_PROG_LIBTOOL (if available).
2025-02-14 17:02:39 +01:00
Nicola Fontana
0ca438ccb5 Fix #16: explicitely check for pkg-config macros
Without this patch, `./bootstrap` fails with the following error if
pkgconf/pkg-config is not installed:

    lib/Makefile.am:76: error: 'pkgconfig_DATA' is used but 'pkgconfigdir' is undefined

This can be triggered by disinstalling `pkgconf/pkg-config`. The problem
here is that the check for `pkg-config` is done at configure level but
`automake` fails at bootstrap level because of the above error.

This basically "fixes" the issue by changing the way in which
`./bootstrap` fails.
2025-02-14 17:02:27 +01:00
Nicola Fontana
a402594fe8 Add automatic TOC to README.md
Manually maintaining the table of contents relies on how HTML fragments
are generated, it is prone to errors (infact it is already out of sync)
and just plain boring.

Unfortunately there is no common agreement on all markdown flavours on
how the table of contents must be implemented. Here the `[[_TOC_]]` tag
has been used because it is supported by both GitLab and GitHub:

    https://gitlab.com/gitlab-org/gitlab/-/issues/21901
2025-02-14 16:59:34 +01:00
Nicola Fontana
7fef7573e6 Fix #31: typos in documentation 2025-02-14 16:59:31 +01:00
Florian Pose
805e407f6f Merge branch 'version-1.6.3' into 'stable-1.6'
Version bump to 1.6.3.

See merge request etherlab.org/ethercat!154
1.6.3
2025-02-06 08:37:29 +00:00
Florian Pose
11504f3a0f Version bump to 1.6.3. 2025-02-06 09:36:40 +01:00
Florian Pose
e2129f7794 Merge branch 'genet-6.12' into 'stable-1.6'
[FEAT] add genet device driver for kernel 6.12

See merge request etherlab.org/ethercat!152
2025-02-06 08:28:00 +00:00
Florian Pose
5b3663e15b Merge branch 'fake_without_domain' into 'stable-1.6'
Remove domain information from  RtIPC path.

See merge request etherlab.org/ethercat!149
2025-02-06 08:27:18 +00:00
Florian Pose
d15936b8b5 Merge branch 'fix_ccat_aarch64' into 'stable-1.6'
Fix ccat for aarch64 >= 6.11.0

See merge request etherlab.org/ethercat!151
2025-02-06 08:26:12 +00:00
Florian Pose
dab517b9ca Merge branch 'tty-module-fixes' into 'stable-1.6'
Fix build issues with tty/module.c

See merge request etherlab.org/ethercat!150
2025-02-06 08:25:41 +00:00
Florian Pose
fa7c40b63e Merge branch 'fix_warnings' into 'stable-1.6'
Fix some warnings

See merge request etherlab.org/ethercat!153
2025-02-06 08:24:22 +00:00
Bjarne von Horn
d06a18f934 Fix -Wold-style-declaration. 2025-02-05 12:58:56 +01:00
Bjarne von Horn
60dd4f94ec Fix -Wmissing-prototypes 2025-02-05 12:58:56 +01:00
Arnd Begemann
c2cbfa5b93 [FEAT] add genet device driver for kernel 6.12 2025-01-10 14:43:36 +01:00
Bjarne von Horn
de9efb7770 Fix ccat for aarch64 >= 6.11.0
return type of platform_driver::remove was changed to void
2025-01-06 14:47:09 +01:00
Thomas Petazzoni
2824232792 tty/module.c: fix ec_tty_send_xchar() prototype for Linux >= 6.8
In upstream Linux kernel commit:
  3a00da027946cd08db1c1be2de4620950bbdf074 ("tty: make tty_operations::send_xchar accept u8 char")

The prototype of tty_operations->send_xchar() was changed from:

  void (*send_xchar)(struct tty_struct *tty, char ch);

to:

  void (*send_xchar)(struct tty_struct *tty, u8 ch);

This commit was merged in Linux 6.8, and therefore the
ec_tty_send_xchar() implementation needs to be changed to avoid the
following build failure:

/home/autobuild/autobuild/instance-7/output-1/build/igh-ethercat-1.6.2/./tty/module.c:751:19: error: initialization of "void (*)(struct tty_struct *, u8)" {aka "void (*)(struct tty_struct *, unsigned char)"} from incompatible pointer type "void (*)(struct tty_struct *, char)" [-Werror=incompatible-pointer-types]
  751 |     .send_xchar = ec_tty_send_xchar,
      |                   ^~~~~~~~~~~~~~~~~

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2024-12-31 10:42:49 +01:00
Thomas Petazzoni
27175946c4 tty/module.c: fix ec_tty_write() prototype for Linux >= 6.6
In upstream Linux kernel commits:
 95713967ba52389f7cea75704d0cf048080ec218 ("tty: make tty_operations::write()'s count size_t")
 69851e4ab8feeb369119a44ddca430c0ee15f0d8 ("tty: propagate u8 data to tty_operations::write()")

The prototype of tty_operations->write() was changed from:

       int  (*write)(struct tty_struct * tty,
                     const unsigned char *buf, int count);

to:

       ssize_t (*write)(struct tty_struct *tty, const u8 *buf, size_t count);

Both of those commits were merged in Linux 6.6, and this needs an
update in tty/module.c to avoid the following build failure:

/home/autobuild/autobuild/instance-7/output-1/build/igh-ethercat-1.6.2/./tty/module.c:740:14: error: initialization of "ssize_t (*)(struct tty_struct *, const u8 *, size_t)" {aka "long int (*)(struct tty_struct *, const unsigned char *, long unsigned int)"} from incompatible pointer type "int (*)(struct tty_struct *, const unsigned char *, int)" [-Werror=incompatible-pointer-types]
  740 |     .write = ec_tty_write,
      |              ^~~~~~~~~~~~

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2024-12-31 10:42:49 +01:00
Thomas Petazzoni
aed3ba0acb tty/module.c: mark internal functions as static
Fixes:

/home/autobuild/autobuild/instance-7/output-1/build/igh-ethercat-1.6.2/./tty/module.c:128:12: warning: no previous prototype for ‘ec_tty_init_module’ [-Wmissing-prototypes]
  128 | int __init ec_tty_init_module(void)
      |            ^~~~~~~~~~~~~~~~~~
/home/autobuild/autobuild/instance-7/output-1/build/igh-ethercat-1.6.2/./tty/module.c:189:13: warning: no previous prototype for ‘ec_tty_cleanup_module’ [-Wmissing-prototypes]
  189 | void __exit ec_tty_cleanup_module(void)
      |             ^~~~~~~~~~~~~~~~~~~~~
/home/autobuild/autobuild/instance-7/output-1/build/igh-ethercat-1.6.2/./tty/module.c:216:5: warning: no previous prototype for ‘ec_tty_init’ [-Wmissing-prototypes]
  216 | int ec_tty_init(ec_tty_t *t, int minor,
      |     ^~~~~~~~~~~
/home/autobuild/autobuild/instance-7/output-1/build/igh-ethercat-1.6.2/./tty/module.c:293:6: warning: no previous prototype for ‘ec_tty_clear’ [-Wmissing-prototypes]
  293 | void ec_tty_clear(ec_tty_t *tty)
      |      ^~~~~~~~~~~~
/home/autobuild/autobuild/instance-7/output-1/build/igh-ethercat-1.6.2/./tty/module.c:301:14: warning: no previous prototype for ‘ec_tty_tx_size’ [-Wmissing-prototypes]
  301 | unsigned int ec_tty_tx_size(ec_tty_t *tty)
      |              ^~~~~~~~~~~~~~
/home/autobuild/autobuild/instance-7/output-1/build/igh-ethercat-1.6.2/./tty/module.c:316:14: warning: no previous prototype for ‘ec_tty_tx_space’ [-Wmissing-prototypes]
  316 | unsigned int ec_tty_tx_space(ec_tty_t *tty)
      |              ^~~~~~~~~~~~~~~
/home/autobuild/autobuild/instance-7/output-1/build/igh-ethercat-1.6.2/./tty/module.c:323:14: warning: no previous prototype for ‘ec_tty_rx_size’ [-Wmissing-prototypes]
  323 | unsigned int ec_tty_rx_size(ec_tty_t *tty)
      |              ^~~~~~~~~~~~~~
/home/autobuild/autobuild/instance-7/output-1/build/igh-ethercat-1.6.2/./tty/module.c:338:14: warning: no previous prototype for ‘ec_tty_rx_space’ [-Wmissing-prototypes]
  338 | unsigned int ec_tty_rx_space(ec_tty_t *tty)
      |              ^~~~~~~~~~~~~~~
/home/autobuild/autobuild/instance-7/output-1/build/igh-ethercat-1.6.2/./tty/module.c:345:5: warning: no previous prototype for ‘ec_tty_get_serial_info’ [-Wmissing-prototypes]
  345 | int ec_tty_get_serial_info(ec_tty_t *tty, struct serial_struct *data)
      |     ^~~~~~~~~~~~~~~~~~~~~~

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2024-12-31 10:42:49 +01:00
Florian Pose
c117849d02 Removed FAKE_EC_DOMAIN_PERMUTATION. 2024-12-16 15:49:33 +01:00
Florian Pose
5ae7662893 Removed domain permutation from documentation; fixed some typos. 2024-12-16 15:45:55 +01:00
Florian Pose
2e9101da99 Remove domain information from RtIPC path. 2024-11-29 14:06:02 +01:00
Florian Pose
ca66cd6ae9 Merge branch 'remove-inline-statement' into 'stable-1.6'
Remove unnecessary inline statement causing build -O0 problems

Closes #147

See merge request etherlab.org/ethercat!148
2024-11-18 12:27:14 +00:00