[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <951C95FD-35DD-4EC5-A62C-31378B85EF14@holtmann.org>
Date: Thu, 18 Aug 2016 13:49:45 +0200
From: Marcel Holtmann <marcel@...tmann.org>
To: "H. Nikolaus Schaller" <hns@...delico.com>
Cc: Pavel Machek <pavel@....cz>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Rob Herring <robh@...nel.org>, Jiri Slaby <jslaby@...e.com>,
Sebastian Reichel <sre@...nel.org>,
Peter Hurley <peter@...leysoftware.com>,
NeilBrown <neil@...wn.name>, Arnd Bergmann <arnd@...db.de>,
Linus Walleij <linus.walleij@...aro.org>,
linux-bluetooth@...r.kernel.org, linux-serial@...r.kernel.org,
linux-kernel@...r.kernel.org, herkne@....de
Subject: Re: [RFC PATCH 0/3] UART slave device bus
Hi Nikolaus,
>>>> I am actually not convinced that GPS should be represented as
>>>> /dev/ttyS0 or similar TTY. It think they deserve their own driver
>>>> exposing them as simple character devices. That way we can have a
>>>> proper DEVTYPE and userspace can find them correctly. We can also
>>>> annotate them if needed for special settings.
>>>
>>> I would _love_ to see that happen, but what about the GPS line
>>> discipline that we have today? How would that match up with a char
>>> device driver?
>>
>> ./drivers/usb/serial/garmin_gps.c ?
>>
>> Hmm, some cleanups would be welcome there... plus it would be good to
>> know what is its interface to userland... it is not easily apparent
>> from the code.
>>
>> Actually, having some kind of common support for GPSes in the kernel
>> would be nice. (Chardev that spits NMEA data?
>
> Yes and no. How do you apply tcsetattr to such a device? More or less
> by implementing another tty stack?
>
>> ) For example N900 GPS is
>> connected over network (phonet) interface, with userland driver
>> translating custom protocol into NMEA. Not very nice from "kernel
>> should provide hardware abstraction" point of view.
>
> Indeed. In such a case the translation should be done in the kernel.
> But it is not necessary for devices that already provide NEMA over UART.
> Still user-space should be able to tcsetattr how it wants to see the records
> (mainly CR/LF translations).
I disagree here. NMEA is a standard and the kernel should just enforce framing of NMEA sentences. It makes no difference what the CR/LF is. Userspace gets full sentences.
Regards
Marcel
Powered by blists - more mailing lists