Here is some version information on the Meinberg Driver Package for Linux.
Important Note:
Driver packages 4.2.12 and later provide a fix for a potential Makefile
issue
with some kernels 5.8.x (and maybe newer) shipped by some distros.
so you should not try to install earlier versions of the driver package on systems with Linux kernels 5.8 or later.
In kernel 5.8, the kernel build system was changed in a way that a specific test ran by the
make install
command from earlier driver packages can corrupt the installed kernel sources.
Specifically, the file autoconf.h
could be deleted, so that no
external kernel module could be built afterwards. The resulting error looks like:
ERROR: Kernel configuration is invalid. include/generated/autoconf.h or include/config/auto.conf are missing. Run 'make oldconfig && make prepare' on kernel src to fix it.
If this has happens, you should only run the commands shown in the error message above
if you have compiled the running kernel by yourself.
If the kernel is installed from a Linux distribution as usual, you should reinstall the associated kernel source / kernel headers / kernel devel packages from your distro to fix this.
TFOM
flag was incorrectly always checked against the timecode format configured for the timecode output, so setting the flag for the input happened to be accepted, or not.RECEIVER_INFO
of those versions claims to provide serial ports with configurable string types, though the firmware doesn't support the API. The probe routine of the kernel driver now adjusts the RECEIVER_INFO
to fix this, if required.RECEIVER_INFO
now returns the potentially modified instance stored in the kernel driver, instead of reading the structure directly from the device.clear ucap buffer
feature with some new devices.XMR status
info, so the string possibly displayed by mbgstatus
is not truncated.mbgsvcd
doesn't enter holdover mode anymore if device has no valid time.
PTP_SYNC_STATUS
word is supported.mbgstatus
:-F
forces this even if XMR is not enabled. Use with care!mbgsvcd
:-u
which lets the SHM unit be updated even if the NTP leap bits are 0x03.mbgdevio
functions mbg_chk_dev_has_xmr, mbg_chk_dev_has_ptp_unicast, and mbg_chk_dev_has_gpio.
MODULE_SUPPORTED_DEVICE
had actually never been used by the kernel, and was removed in Kernel 5.12. So a reference to that macro was removed from the kernel driver source to avoid an “Unresolved symbol” error at compile time. mbgstatus
. Now the time immediately after the leap second is displayed because it may no be clear whether a leap second has been inserted, or deleted, but in any case this is the time when the latest change in the GPS/UTC offset comes into effect.-Q
(query only) to mbgsvcd
, so it can be run in the foreground without updating the SHM segments.
udevadm
from the distro returns an unusual version string.udevadm –version
used to return something like 239
but at least in CentOS 8 this has changed,239 (239-40.el8)
, so in the Makefile we have to extract the first word only-C
to mbghrtime
and mbgfasttstamp
.mbghrtime
: don't print a time difference after the first access.
struct file_operations
had fields unlocked_ioctl
and compat_ioctl
mbgsvcd
with -s
option.make -j
.
Makefile
issue with some 5.8.x kernels shipped by some distros. See above.
mbgstatus
displays UTC parameters / leap second information, and status of buffered variables from GPS in an enhanced way.mbggpscap
.
mbgtools-lx-dev-dev-2018-01-02
and newer4.2.0
up to 4.2.2
mbgstatus
now also prints raw GPS time (week numbers and seconds of week) in verbose mode.
mbgstatus
now also prints a memory mapped timestamp in verbose mode, if supported by the device.
mbgsvcd
daemon in order to query the current system time and device time. The returned data can be corrupted if another process tries to access the same device at the same time. Fortunately this is detected by mbgsvcd
in most cases, and affected timestamp pairs are discarded unless this happens very often, which is unlikely. The bug was introduced when we started using a DMA-capable, common buffer to meet USB requirements in Linux kernels 4.9+.mbgtools-lx-dev-dev-2018-01-02
and newer4.2.0
and 4.2.1
mbgstatus
now also prints the device's EPLD version ID in verbose mode.
mbgcmptime
and mbgtcrcal
.mbgctrl
now supports new parameter COLDBOOT
.mbgtools-lx-4.2.0
where some symbols were missing from shared object files, causing unresolved symbols linker errors when building 3rd party applications.
GNS181PEX
.
mbgigigcfg
.