[PATCH] dt-bindings: gnss: u-blox: use open-drain reset and safeboot in example

Johan Hovold posted 1 patch 2 months, 3 weeks ago
There is a newer version of this series
Documentation/devicetree/bindings/gnss/u-blox,neo-6m.yaml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
[PATCH] dt-bindings: gnss: u-blox: use open-drain reset and safeboot in example
Posted by Johan Hovold 2 months, 3 weeks ago
The RESET_N and SAFEBOOT_N pins should typically be left open and only
be connected to ground in rare cases where a device is misbehaving.

Switch to using GPIO_OPEN_DRAIN in the example as this is what should
generally be used.

Note that the current Linux driver implementation depends on these pins
being declared open-drain so that they are not driven while the main
supply is off.

Signed-off-by: Johan Hovold <johan@kernel.org>
---
 Documentation/devicetree/bindings/gnss/u-blox,neo-6m.yaml | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/Documentation/devicetree/bindings/gnss/u-blox,neo-6m.yaml b/Documentation/devicetree/bindings/gnss/u-blox,neo-6m.yaml
index 9f14cfe7efd1..e8b696986bb7 100644
--- a/Documentation/devicetree/bindings/gnss/u-blox,neo-6m.yaml
+++ b/Documentation/devicetree/bindings/gnss/u-blox,neo-6m.yaml
@@ -67,7 +67,7 @@ examples:
             compatible = "u-blox,neo-8";
             v-bckp-supply = <&gnss_v_bckp_reg>;
             vcc-supply = <&gnss_vcc_reg>;
-            reset-gpios = <&gpio 1 GPIO_ACTIVE_LOW>;
-            safeboot-gpios = <&gpio 2 GPIO_ACTIVE_LOW>;
+            reset-gpios = <&gpio 1 GPIO_OPEN_DRAIN>;
+            safeboot-gpios = <&gpio 2 GPIO_OPEN_DRAIN>;
         };
     };
-- 
2.51.0
Re: [PATCH] dt-bindings: gnss: u-blox: use open-drain reset and safeboot in example
Posted by Johan Hovold 2 months, 3 weeks ago
On Fri, Nov 14, 2025 at 04:03:35PM +0100, Johan Hovold wrote:
> The RESET_N and SAFEBOOT_N pins should typically be left open and only
> be connected to ground in rare cases where a device is misbehaving.
> 
> Switch to using GPIO_OPEN_DRAIN in the example as this is what should
> generally be used.
>
> Note that the current Linux driver implementation depends on these pins
> being declared open-drain so that they are not driven while the main
> supply is off.
> 
> Signed-off-by: Johan Hovold <johan@kernel.org>
> ---
>  Documentation/devicetree/bindings/gnss/u-blox,neo-6m.yaml | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/Documentation/devicetree/bindings/gnss/u-blox,neo-6m.yaml b/Documentation/devicetree/bindings/gnss/u-blox,neo-6m.yaml
> index 9f14cfe7efd1..e8b696986bb7 100644
> --- a/Documentation/devicetree/bindings/gnss/u-blox,neo-6m.yaml
> +++ b/Documentation/devicetree/bindings/gnss/u-blox,neo-6m.yaml
> @@ -67,7 +67,7 @@ examples:
>              compatible = "u-blox,neo-8";
>              v-bckp-supply = <&gnss_v_bckp_reg>;
>              vcc-supply = <&gnss_vcc_reg>;
> -            reset-gpios = <&gpio 1 GPIO_ACTIVE_LOW>;
> -            safeboot-gpios = <&gpio 2 GPIO_ACTIVE_LOW>;
> +            reset-gpios = <&gpio 1 GPIO_OPEN_DRAIN>;
> +            safeboot-gpios = <&gpio 2 GPIO_OPEN_DRAIN>;

Bah, I forgot about the ABI breakage introduced a few years ago which
means that we now need to specify both open-drain and active-low:

	https://lore.kernel.org/all/20170719131640.GA2533@localhost/

Will fix in a v2.

Johan