diff mbox series

[27/54] dt-bindings: net: wireless: Convert ESP ESP8089 binding to a schema

Message ID 20210721140424.725744-28-maxime@cerno.tech
State New
Headers show
Series None | expand

Commit Message

Maxime Ripard July 21, 2021, 2:03 p.m. UTC
The ESP8089 Wireless Chip is supported by Linux (through an out-of-tree
driver) thanks to its device tree binding.

Now that we have the DT validation in place, let's convert the device
tree bindings for that driver over to a YAML schema.

Cc: "David S. Miller" <davem@davemloft.net>
Cc: de Goede <hdegoede@redhat.com>
Cc: Jakub Kicinski <kuba@kernel.org>
Cc: Kalle Valo <kvalo@codeaurora.org>
Cc: linux-wireless@vger.kernel.org
Cc: netdev@vger.kernel.org
Signed-off-by: Maxime Ripard <maxime@cerno.tech>
---
 .../bindings/net/wireless/esp,esp8089.txt     | 30 -------------
 .../bindings/net/wireless/esp,esp8089.yaml    | 43 +++++++++++++++++++
 2 files changed, 43 insertions(+), 30 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/net/wireless/esp,esp8089.txt
 create mode 100644 Documentation/devicetree/bindings/net/wireless/esp,esp8089.yaml

Comments

Rob Herring (Arm) July 23, 2021, 9:58 p.m. UTC | #1
On Wed, 21 Jul 2021 16:03:57 +0200, Maxime Ripard wrote:
> The ESP8089 Wireless Chip is supported by Linux (through an out-of-tree
> driver) thanks to its device tree binding.
> 
> Now that we have the DT validation in place, let's convert the device
> tree bindings for that driver over to a YAML schema.
> 
> Cc: "David S. Miller" <davem@davemloft.net>
> Cc: de Goede <hdegoede@redhat.com>
> Cc: Jakub Kicinski <kuba@kernel.org>
> Cc: Kalle Valo <kvalo@codeaurora.org>
> Cc: linux-wireless@vger.kernel.org
> Cc: netdev@vger.kernel.org
> Signed-off-by: Maxime Ripard <maxime@cerno.tech>
> ---
>  .../bindings/net/wireless/esp,esp8089.txt     | 30 -------------
>  .../bindings/net/wireless/esp,esp8089.yaml    | 43 +++++++++++++++++++
>  2 files changed, 43 insertions(+), 30 deletions(-)
>  delete mode 100644 Documentation/devicetree/bindings/net/wireless/esp,esp8089.txt
>  create mode 100644 Documentation/devicetree/bindings/net/wireless/esp,esp8089.yaml
> 

Reviewed-by: Rob Herring <robh@kernel.org>
Kalle Valo Aug. 6, 2021, 8:47 a.m. UTC | #2
Maxime Ripard <maxime@cerno.tech> wrote:

> The ESP8089 Wireless Chip is supported by Linux (through an out-of-tree

> driver) thanks to its device tree binding.

> 

> Now that we have the DT validation in place, let's convert the device

> tree bindings for that driver over to a YAML schema.

> 

> Cc: "David S. Miller" <davem@davemloft.net>

> Cc: de Goede <hdegoede@redhat.com>

> Cc: Jakub Kicinski <kuba@kernel.org>

> Cc: Kalle Valo <kvalo@codeaurora.org>

> Cc: linux-wireless@vger.kernel.org

> Cc: netdev@vger.kernel.org

> Signed-off-by: Maxime Ripard <maxime@cerno.tech>

> Reviewed-by: Rob Herring <robh@kernel.org>


We support out-of-tree drivers in DT?  Via which tree is this supposed to go? I
guess not via wireless-drivers-next as this is an out-of-tree driver.

-- 
https://patchwork.kernel.org/project/linux-wireless/patch/20210721140424.725744-28-maxime@cerno.tech/

https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches
Maxime Ripard Aug. 18, 2021, 8:45 a.m. UTC | #3
Hi Kalle,

On Fri, Aug 06, 2021 at 08:47:09AM +0000, Kalle Valo wrote:
> Maxime Ripard <maxime@cerno.tech> wrote:
> 
> > The ESP8089 Wireless Chip is supported by Linux (through an out-of-tree
> > driver) thanks to its device tree binding.
> > 
> > Now that we have the DT validation in place, let's convert the device
> > tree bindings for that driver over to a YAML schema.
> > 
> > Cc: "David S. Miller" <davem@davemloft.net>
> > Cc: de Goede <hdegoede@redhat.com>
> > Cc: Jakub Kicinski <kuba@kernel.org>
> > Cc: Kalle Valo <kvalo@codeaurora.org>
> > Cc: linux-wireless@vger.kernel.org
> > Cc: netdev@vger.kernel.org
> > Signed-off-by: Maxime Ripard <maxime@cerno.tech>
> > Reviewed-by: Rob Herring <robh@kernel.org>
> 
> We support out-of-tree drivers in DT?

Yeah, as long as the binding is stable we can merge it. This controller
is one of these examples, but we supported multiple GPU that way too.

> Via which tree is this supposed to go? I guess not via
> wireless-drivers-next as this is an out-of-tree driver.

It's up to you I guess. It was already part of the dt-bindings wireless
directory, so either your tree or the DT maintainers if you'd prefer not
to.

Maxime
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/net/wireless/esp,esp8089.txt b/Documentation/devicetree/bindings/net/wireless/esp,esp8089.txt
deleted file mode 100644
index 6830c4786f8a..000000000000
--- a/Documentation/devicetree/bindings/net/wireless/esp,esp8089.txt
+++ /dev/null
@@ -1,30 +0,0 @@ 
-Espressif ESP8089 wireless SDIO devices
-
-This node provides properties for controlling the ESP8089 wireless device.
-The node is expected to be specified as a child node to the SDIO controller
-that connects the device to the system.
-
-Required properties:
-
- - compatible : Should be "esp,esp8089".
-
-Optional properties:
- - esp,crystal-26M-en: Integer value for the crystal_26M_en firmware parameter
-
-Example:
-
-&mmc1 {
-	#address-cells = <1>;
-	#size-cells = <0>;
-
-	vmmc-supply = <&reg_dldo1>;
-	mmc-pwrseq = <&wifi_pwrseq>;
-	bus-width = <4>;
-	non-removable;
-
-	esp8089: sdio_wifi@1 {
-		compatible = "esp,esp8089";
-		reg = <1>;
-		esp,crystal-26M-en = <2>;
-	};
-};
diff --git a/Documentation/devicetree/bindings/net/wireless/esp,esp8089.yaml b/Documentation/devicetree/bindings/net/wireless/esp,esp8089.yaml
new file mode 100644
index 000000000000..284ef45add99
--- /dev/null
+++ b/Documentation/devicetree/bindings/net/wireless/esp,esp8089.yaml
@@ -0,0 +1,43 @@ 
+# SPDX-License-Identifier: GPL-2.0
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/net/wireless/esp,esp8089.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Espressif ESP8089 Device Tree Bindings
+
+maintainers:
+  - Hans de Goede <hdegoede@redhat.com>
+
+properties:
+  compatible:
+    const: esp,esp8089
+
+  reg:
+    maxItems: 1
+
+  esp,crystal-26M-en:
+    $ref: /schemas/types.yaml#/definitions/uint32
+    description: >
+      Value for the crystal_26M_en firmware parameter
+
+required:
+  - compatible
+  - reg
+
+additionalProperties: false
+
+examples:
+  - |
+      mmc {
+          #address-cells = <1>;
+          #size-cells = <0>;
+
+          wifi@1 {
+              compatible = "esp,esp8089";
+              reg = <1>;
+              esp,crystal-26M-en = <2>;
+          };
+      };
+
+...