diff --git a/lib/master.c b/lib/master.c index ee6e5719..e0cf558f 100644 --- a/lib/master.c +++ b/lib/master.c @@ -715,11 +715,16 @@ int ecrt_master_reference_clock_time(ec_master_t *master, uint32_t *time) ret = ioctl(master->fd, EC_IOCTL_REF_CLOCK_TIME, time); if (EC_IOCTL_IS_ERROR(ret)) { - fprintf(stderr, "Failed to get reference clock time: %s\n", - strerror(EC_IOCTL_ERRNO(ret))); + ret = EC_IOCTL_ERRNO(ret); + if (ret != EIO && ret != ENXIO) { + // do not log if no refclk or no refclk time yet + fprintf(stderr, "Failed to get reference clock time: %s\n", + strerror(ret)); + } + return -ret; } - return ret; + return 0; } /****************************************************************************/