Received: by 2002:a05:6a10:6d10:0:0:0:0 with SMTP id gq16csp1532145pxb; Sat, 23 Apr 2022 09:10:57 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyFfDLTgUcaZRnfjOELUynHJyfFjU5keqmpCP+s0n+vUSn1Xfr9tzNgg0j7mXoXWtgwRPBT X-Received: by 2002:a17:907:6d1d:b0:6f0:1fd5:fd56 with SMTP id sa29-20020a1709076d1d00b006f01fd5fd56mr9161661ejc.41.1650730257661; Sat, 23 Apr 2022 09:10:57 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1650730257; cv=none; d=google.com; s=arc-20160816; b=EJQofuM7L7K4eubrdeOHIWm6SnvdDi5roILe7Qk24a8k8FXK0t0PCLXGpGOZo5YOzz MOUonjRFv+bHGk/vaIwg4rcArhWC/huanHyIyvLOWbssT5xHzU7G2b3NxKuqjShUNtAB hULAYxRf3jO1lLhiUy7RpeG0nyI1Pz7n3fRSOfFGtk87EYBUTozSsOpcF2xQp84/NEml glCoa4Fo6bYsEA2Y/01lw+WELz/efrb0/oNgrbq34EMMbheouUtd5ds6GSJP68qLihVS zBfwLK+DmsQF4wea3LGDv5MwfKNQ7j9Dji1/TYI1VpKg0j3b4d1cprp1/7Qxi0d1GwFy urEA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:in-reply-to:from :references:cc:to:content-language:subject:user-agent:mime-version :date:message-id:dkim-signature; bh=50URjIHbGG3EYEMF5yxbhKc5kS8RP86chQ7JlavU6iY=; b=I53CCjMFIYKqOgtdCSPngUPDcQgN3xfJ6todzQ6xtuRiT9O+Y2za8vu+FOdZwOSnOr UlIe0OWlHy4gs/AKvm/V6+0zyFwvLYZIzPqQhGals8f+yKfix7FKkYskbS2JdsrYG6IK ABn+VOp4xStsRpfbGVNf+RgKqFkoyKA8/iJhFlSiRFDbce7OLhm3IsqF5h8K8jKI7w1E 58ZNF8Jq/ZYfdhYJVEQJe81IfoLfXxTtHneaTM0d4ImlSrUP8jQ71cZHsZ0KbNcmxCRv VWJoJ/lz8DCCvKGCzJJeui5YlmEIA0pBBtpA7D/wwncIqUAj3PDuA+fTnjXkXSJ0OmU8 NBWQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@collabora.com header.s=mail header.b=I7hNx8xP; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=collabora.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id j15-20020a05640211cf00b0041d54d7dc95si10625594edw.451.2022.04.23.09.10.33; Sat, 23 Apr 2022 09:10:57 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@collabora.com header.s=mail header.b=I7hNx8xP; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=collabora.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S235955AbiDWOP3 (ORCPT + 99 others); Sat, 23 Apr 2022 10:15:29 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:43304 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234689AbiDWOP1 (ORCPT ); Sat, 23 Apr 2022 10:15:27 -0400 Received: from bhuna.collabora.co.uk (bhuna.collabora.co.uk [IPv6:2a00:1098:0:82:1000:25:2eeb:e3e3]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 0B93710BF; Sat, 23 Apr 2022 07:12:29 -0700 (PDT) Received: from [127.0.0.1] (localhost [127.0.0.1]) (Authenticated sender: dmitry.osipenko) with ESMTPSA id 99BC11F468EE DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1650723148; bh=BWx5mSvodMtkWlhuz51Cu0E0Psrafg88NNLUjQ4EV70=; h=Date:Subject:To:Cc:References:From:In-Reply-To:From; b=I7hNx8xPopottQnaSXAf3ZPnGpLjzm3RrsH7R9L/DWaM5w6iQc7Q3I9J/zHRhTjQu EUy0zVQQQQVoMOSn2frcrCu8NvNhbQ3jjDxJhzV54BkK6S0HtQ3rojwRGQ4hqDFZKl OJK4mnxtQVfqpgdoT91Psg7zSbZ0CyadE79vXONe0JAKsiIMWjmjpbwVkz5pTGDQT/ r6kU75BRr0O8uxVn6Q+jar1ttDRwlJlIatcJPU09XOvxYH8yS3x7EudHo1YgKCxc73 xE6soZzvYvVyL98FJUGJIdehHdY4F5+eMs5jd7MPJfVMQijdYxomcf2Ps5tzr2PhHf 59xEJoaYXol9Q== Message-ID: Date: Sat, 23 Apr 2022 17:12:24 +0300 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.7.0 Subject: Re: [PATCH] dt-bindings: gnss: Add Broacom BCM4751 family bindings Content-Language: en-US To: Linus Walleij Cc: Johan Hovold , Rob Herring , David Heidelberg , Svyatoslav Ryhel , linux-kernel@vger.kernel.org, devicetree@vger.kernel.org References: <20220414214337.311880-1-linus.walleij@linaro.org> From: Dmitry Osipenko In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=-4.0 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,NICE_REPLY_A,SPF_HELO_PASS, SPF_PASS,UNPARSEABLE_RELAY,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 4/23/22 00:50, Linus Walleij wrote: > On Mon, Apr 18, 2022 at 1:19 PM Dmitry Osipenko > 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 :)