lkml.org 
[lkml]   [2022]   [Apr]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    Date
    SubjectRe: [PATCH] dt-bindings: gnss: Add Broacom BCM4751 family bindings
    On Mon, Apr 18, 2022 at 1:19 PM Dmitry Osipenko
    <dmitry.osipenko@collabora.com> wrote:

    > What are the chances of seeing the kernel driver for BCM4751+?

    The kernel does not normally drive the GPS. The kernel has a small driver
    dealing with hardware power on/off of the GPS and exposing
    /dev/gnss0 to userspace.

    See Johans lecture at:
    https://events19.linuxfoundation.org/wp-content/uploads/2017/12/The-GNSS-Subsystem-Johan-Hovold-Hovold-Consulting-AB.pdf

    > There are
    > myriads of Android devices using that GPS chip. Previously the
    > proprietary firmware interface of BCM4751 was an obstacle for addition
    > of the driver to upstream kernel, did anything change?

    Actually there is nothing stopping us from anyway merging device tree
    bindings, even if no driver is on the horizon for Linux. The DT bindings
    are not a Linux kernel thing. Actually we merged bindings like that in
    the past. It makes it possible to create complete device trees, which
    is nice. A driver for Linux can be slotted in at a later point.

    Anyway, that is the boring answer.

    Many if not all GPS:es (as all Wireless chips) have proprietary firmware
    interfaces. This is normal. GPS:es are special since by tradition the
    stack using them is in userspace. There exist free software userspace
    stacks for misc GPS:es.

    gpsd is the most common userspace daemon for GPS.
    gpsd will then talk to /dev/gnss0 as any other TTY IIUC.

    Replicant has a free implementation of the "MEIF" API for this GPS,
    I think what is needed is really for someone to pick up, polish and
    contribute that to gpsd
    https://git.replicant.us/contrib/PaulK/bcm4751/

    Yours,
    Linus Walleij

    \
     
     \ /
      Last update: 2022-04-23 00:36    [W:7.067 / U:0.008 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site