Message ID | 20220311235119.523374-1-linus.walleij@linaro.org |
---|---|
State | Superseded |
Headers | show |
Series | [1/4] dt-bindings: gnss: Rewrite common bindings in YAML | expand |
On 12/03/2022 00:51, Linus Walleij wrote: > This modifies the existing U-Blox GNSS bindings to reference > the common GNSS YAML bindings. > > Fixed an unrelated whitespace error while at it. > > Cc: devicetree@vger.kernel.org > Signed-off-by: Linus Walleij <linus.walleij@linaro.org> > --- > .../devicetree/bindings/gnss/u-blox,neo-6m.yaml | 10 +++++----- > 1 file changed, 5 insertions(+), 5 deletions(-) > > diff --git a/Documentation/devicetree/bindings/gnss/u-blox,neo-6m.yaml b/Documentation/devicetree/bindings/gnss/u-blox,neo-6m.yaml > index 396101a223e7..5dffe722777f 100644 > --- a/Documentation/devicetree/bindings/gnss/u-blox,neo-6m.yaml > +++ b/Documentation/devicetree/bindings/gnss/u-blox,neo-6m.yaml > @@ -6,6 +6,9 @@ $schema: http://devicetree.org/meta-schemas/core.yaml# > > title: U-blox GNSS Receiver Device Tree Bindings > > +allOf: > + - $ref: gnss-common.yaml# > + > maintainers: > - Johan Hovold <johan@kernel.org> > > @@ -29,16 +32,13 @@ properties: > description: > > Main voltage regulator > > - timepulse-gpios: > - maxItems: 1 > - description: > > - Time pulse GPIO > + timepulse-gpios: true > > u-blox,extint-gpios: > maxItems: 1 > description: > > GPIO connected to the "external interrupt" input pin > - > + > v-bckp-supply: > description: > > Backup voltage regulator I propose to change additionalProperties->unevaluatedProperties and remove current-speed and timepulse-gpios. This way also new properties from gnss-common can be easily used. Best regards, Krzysztof
On Sat, Mar 12, 2022 at 12:39 PM Krzysztof Kozlowski <krzk@kernel.org> wrote: > > .../devicetree/bindings/gnss/gnss-common.yaml | 55 +++++++++++++++++++ > > .../devicetree/bindings/gnss/gnss.txt | 37 ------------- > > I see you're updating later sirfstar.txt, but you also have mediatek.txt > referencing old txt file. You're right, why leave one off. I'll just convert that binding to YAML as well and be done with it. Thanks! Linus Walleij
diff --git a/Documentation/devicetree/bindings/gnss/gnss-common.yaml b/Documentation/devicetree/bindings/gnss/gnss-common.yaml new file mode 100644 index 000000000000..963b926e30a7 --- /dev/null +++ b/Documentation/devicetree/bindings/gnss/gnss-common.yaml @@ -0,0 +1,55 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/gnss/gnss-common.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Common Properties for Global Navigation Satellite Systems (GNSS) + receiver devices + +maintainers: + - Johan Hovold <johan@kernel.org> + +description: | + This document defines device tree properties common to Global Navigation + Satellite System receivers. + +properties: + $nodename: + pattern: "^gnss(@.*)?$" + + lna-supply: + description: A separate regulator supplying power for the Low Noise + Amplifier (LNA). This is an amplifier connected between the GNSS + device and the receiver antenna. + + enable-gpios: + description: A GPIO line that will enable the GNSS receiver when + asserted. If this line is active low, the GPIO phandle should + consequently be tagged with the GPIO_ACTIVE_LOW flag so the operating + system can rely on asserting the line to enable the GNSS device. + maxItems: 1 + + timepulse-gpios: + description: When a timepulse is provided to the GNSS device using a + GPIO line, this is used. + maxItems: 1 + + current-speed: + description: The baudrate in bits per second of the device as it comes + online, current active speed. + $ref: /schemas/types.yaml#/definitions/uint32 + +additionalProperties: true + +examples: + - | + #include <dt-bindings/gpio/gpio.h> + serial { + gnss { + compatible = "u-blox,neo-8"; + vcc-supply = <&gnss_reg>; + timepulse-gpios = <&gpio0 16 GPIO_ACTIVE_HIGH>; + current-speed = <4800>; + }; + }; diff --git a/Documentation/devicetree/bindings/gnss/gnss.txt b/Documentation/devicetree/bindings/gnss/gnss.txt deleted file mode 100644 index d6dc9c0d8249..000000000000 --- a/Documentation/devicetree/bindings/gnss/gnss.txt +++ /dev/null @@ -1,37 +0,0 @@ -GNSS Receiver DT binding - -This documents the binding structure and common properties for GNSS receiver -devices. - -A GNSS receiver node is a node named "gnss" and typically resides on a serial -bus (e.g. UART, I2C or SPI). - -Please refer to the following documents for generic properties: - - Documentation/devicetree/bindings/serial/serial.yaml - Documentation/devicetree/bindings/spi/spi-bus.txt - -Required properties: - -- compatible : A string reflecting the vendor and specific device the node - represents - -Optional properties: -- lna-supply : Separate supply for an LNA -- enable-gpios : GPIO used to enable the device -- timepulse-gpios : Time pulse GPIO - -Example: - -serial@1234 { - compatible = "ns16550a"; - - gnss { - compatible = "u-blox,neo-8"; - - vcc-supply = <&gnss_reg>; - timepulse-gpios = <&gpio0 16 GPIO_ACTIVE_HIGH>; - - current-speed = <4800>; - }; -};
This rewrites the text-based GNSS common bindings to use a YAML schema. Cc: devicetree@vger.kernel.org Signed-off-by: Linus Walleij <linus.walleij@linaro.org> --- .../devicetree/bindings/gnss/gnss-common.yaml | 55 +++++++++++++++++++ .../devicetree/bindings/gnss/gnss.txt | 37 ------------- 2 files changed, 55 insertions(+), 37 deletions(-) create mode 100644 Documentation/devicetree/bindings/gnss/gnss-common.yaml delete mode 100644 Documentation/devicetree/bindings/gnss/gnss.txt