Source: linux
Severity: minor

Hi,
I've been taking an interest in GPS/GNSS lately and improving the user 
experience in particular, so I'm glad to see that the kernel's GNSS subsystem 
is enabled. However, it looks like a couple modules adding support for 
additional hardware is not yet enabled and in the absence of a reason otherwise 
I'd like to see them built as well:
$ unxz < /usr/src/linux-config-6.14/config.arm64_none_arm64.xz | grep -F GNSS
CONFIG_GNSS=m
CONFIG_GNSS_SERIAL=m
# CONFIG_GNSS_MTK_SERIAL is not set
CONFIG_GNSS_SIRF_SERIAL=m
CONFIG_GNSS_UBX_SERIAL=m
# CONFIG_GNSS_USB is not set

This configuration is nothing new; the Trixie/amd64 kernel is the same and it's 
probably been this way for a while.

Here "MTK_SERIAL" refers to MediaTek's GNSS modules which are pretty popular 
with DIY-ers and are used, for example, in Adafruit's Ultimate GPS modules. 
Enabling that module and presumably CONFIG_GNSS_USB as well will help with 
device enumeration which is currently a hot mess. Because these are serial 
devices probing for hardware isn't very practical, and in particular there is 
no USB device class for these types of devices, so they only clearly identify 
themselves as serial converters.
Nevertheless, this subsystem allows for device identification and management to 
be better handled by udev, Devicetree, and the like. This will certainly help 
embedded systems and automotive electronics right away; my interest was ignited 
by wanting a navigation system for cycling. Dealing with baud rate changes and 
such tweaks is very tricky at the moment; MediaTek's modules support increasing 
the baud rate of the GNSS receiver, and when 'stty' or termios(3) is used to 
adjust the speed of your host's serial interface in lockstep, this works great 
for getting more frequent data. However terminal device attributes can change 
underneath you after the last file descriptor to the device is closed, but on 
the MediaTek receiver's side of the link it'll still be happily using the 
custom speed for transmission. This creates a nasty surprise when the device is 
opened again; opening the device is often done only when necessary to save 
power and give the GNSS receiver a break.

Admittedly I haven't gotten to try out the GNSS subsystem yet or make these 
changes, but Debian is very well-suited for those navigation devices that could 
benefit the most, so enabling these modules to be built on all architectures 
would be nice.

Thanks

Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to