Re: [PATCH] dt-bindings: gnss: Add Broacom BCM4751 family bindings

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 4/23/22 00:50, Linus Walleij wrote:
> On Mon, Apr 18, 2022 at 1:19 PM Dmitry Osipenko
> <dmitry.osipenko@xxxxxxxxxxxxx> 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

IIUC, driver also should be needed for the firmware uploading, similarly
to the BCM WiFi/BT chips, isn't it?

>>  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/

My main curiosity is about whether you already have a working driver
prototype, something you could share with us all, so we could start
playing with it too :)



[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux