xref: /freebsd-src/sys/contrib/device-tree/Bindings/net/wireless/microchip,wilc1000.yaml (revision 8bab661a3316d8bd9b9fbd11a3b4371b91507bd2)
1c66ec88fSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2c66ec88fSEmmanuel Vadot%YAML 1.2
3c66ec88fSEmmanuel Vadot---
4c66ec88fSEmmanuel Vadot$id: http://devicetree.org/schemas/net/wireless/microchip,wilc1000.yaml#
5c66ec88fSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6c66ec88fSEmmanuel Vadot
7*8bab661aSEmmanuel Vadottitle: Microchip WILC wireless
8c66ec88fSEmmanuel Vadot
9c66ec88fSEmmanuel Vadotmaintainers:
10c66ec88fSEmmanuel Vadot  - Adham Abozaeid <adham.abozaeid@microchip.com>
11c66ec88fSEmmanuel Vadot  - Ajay Singh <ajay.kathat@microchip.com>
12c66ec88fSEmmanuel Vadot
13c66ec88fSEmmanuel Vadotdescription:
14c66ec88fSEmmanuel Vadot  The wilc1000 chips can be connected via SPI or SDIO. This document
15c66ec88fSEmmanuel Vadot  describes the binding to connect wilc devices.
16c66ec88fSEmmanuel Vadot
17c66ec88fSEmmanuel Vadotproperties:
18c66ec88fSEmmanuel Vadot  compatible:
19c66ec88fSEmmanuel Vadot    const: microchip,wilc1000
20c66ec88fSEmmanuel Vadot
216be33864SEmmanuel Vadot  reg: true
226be33864SEmmanuel Vadot
23c66ec88fSEmmanuel Vadot  interrupts:
24c66ec88fSEmmanuel Vadot    maxItems: 1
25c66ec88fSEmmanuel Vadot
26c66ec88fSEmmanuel Vadot  clocks:
27c66ec88fSEmmanuel Vadot    description: phandle to the clock connected on rtc clock line.
28c66ec88fSEmmanuel Vadot    maxItems: 1
29c66ec88fSEmmanuel Vadot
30c66ec88fSEmmanuel Vadot  clock-names:
31c66ec88fSEmmanuel Vadot    const: rtc
32c66ec88fSEmmanuel Vadot
33e67e8565SEmmanuel Vadot  enable-gpios:
34e67e8565SEmmanuel Vadot    maxItems: 1
35e67e8565SEmmanuel Vadot    description: Used by wilc1000-spi to determine the GPIO line
36e67e8565SEmmanuel Vadot      connected to the ENABLE line.  If specified, reset-gpios
37e67e8565SEmmanuel Vadot      must be specified as well as otherwise the driver cannot
38e67e8565SEmmanuel Vadot      ensure the timing required between asserting ENABLE
39e67e8565SEmmanuel Vadot      and deasserting RESET.  This should be declared as an
40e67e8565SEmmanuel Vadot      active-high signal.
41e67e8565SEmmanuel Vadot
42e67e8565SEmmanuel Vadot  reset-gpios:
43e67e8565SEmmanuel Vadot    maxItems: 1
44e67e8565SEmmanuel Vadot    description: Used by wilc1000-spi to determine the GPIO line
45e67e8565SEmmanuel Vadot      connected to the RESET line.  This should be declared as an
46e67e8565SEmmanuel Vadot      active-low signal.
47e67e8565SEmmanuel Vadot
48c66ec88fSEmmanuel Vadotrequired:
49c66ec88fSEmmanuel Vadot  - compatible
50c66ec88fSEmmanuel Vadot  - interrupts
51c66ec88fSEmmanuel Vadot
527ef62cebSEmmanuel VadotallOf:
537ef62cebSEmmanuel Vadot  - $ref: /schemas/spi/spi-peripheral-props.yaml#
547ef62cebSEmmanuel Vadot
557ef62cebSEmmanuel VadotunevaluatedProperties: false
566be33864SEmmanuel Vadot
57c66ec88fSEmmanuel Vadotexamples:
58c66ec88fSEmmanuel Vadot  - |
59e67e8565SEmmanuel Vadot    #include <dt-bindings/gpio/gpio.h>
60e67e8565SEmmanuel Vadot
61c66ec88fSEmmanuel Vadot    spi {
62c66ec88fSEmmanuel Vadot      #address-cells = <1>;
63c66ec88fSEmmanuel Vadot      #size-cells = <0>;
64c66ec88fSEmmanuel Vadot      wifi@0 {
65c66ec88fSEmmanuel Vadot        compatible = "microchip,wilc1000";
66c66ec88fSEmmanuel Vadot        spi-max-frequency = <48000000>;
67c66ec88fSEmmanuel Vadot        reg = <0>;
68c66ec88fSEmmanuel Vadot        interrupt-parent = <&pioC>;
69c66ec88fSEmmanuel Vadot        interrupts = <27 0>;
70c66ec88fSEmmanuel Vadot        clocks = <&pck1>;
71c66ec88fSEmmanuel Vadot        clock-names = "rtc";
72e67e8565SEmmanuel Vadot        enable-gpios = <&pioA 5 GPIO_ACTIVE_HIGH>;
73e67e8565SEmmanuel Vadot        reset-gpios = <&pioA 6 GPIO_ACTIVE_LOW>;
74c66ec88fSEmmanuel Vadot      };
75c66ec88fSEmmanuel Vadot    };
76c66ec88fSEmmanuel Vadot
77c66ec88fSEmmanuel Vadot  - |
78c66ec88fSEmmanuel Vadot    mmc {
79c66ec88fSEmmanuel Vadot      #address-cells = <1>;
80c66ec88fSEmmanuel Vadot      #size-cells = <0>;
81c66ec88fSEmmanuel Vadot      pinctrl-names = "default";
82c66ec88fSEmmanuel Vadot      pinctrl-0 = <&pinctrl_mmc1_clk_cmd_dat0 &pinctrl_mmc1_dat1_3>;
83c66ec88fSEmmanuel Vadot      non-removable;
84c66ec88fSEmmanuel Vadot      vmmc-supply = <&vcc_mmc1_reg>;
85c66ec88fSEmmanuel Vadot      vqmmc-supply = <&vcc_3v3_reg>;
86c66ec88fSEmmanuel Vadot      bus-width = <4>;
87c66ec88fSEmmanuel Vadot      wifi@0 {
88c66ec88fSEmmanuel Vadot        compatible = "microchip,wilc1000";
89c66ec88fSEmmanuel Vadot        reg = <0>;
90c66ec88fSEmmanuel Vadot        interrupt-parent = <&pioC>;
91c66ec88fSEmmanuel Vadot        interrupts = <27 0>;
92c66ec88fSEmmanuel Vadot        clocks = <&pck1>;
93c66ec88fSEmmanuel Vadot        clock-names = "rtc";
94c66ec88fSEmmanuel Vadot      };
95c66ec88fSEmmanuel Vadot    };
96