# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) %YAML 1.2 --- $id: http://devicetree.org/schemas/net/wireless/ti,wlcore.yaml# $schema: http://devicetree.org/meta-schemas/core.yaml# title: Texas Instruments Wilink 6/7/8 (wl12xx/wl18xx) Wireless LAN Controller maintainers: - Tony Lindgren <tony@atomide.com> description: The wl12xx/wl18xx chips can be connected via SPI or via SDIO. Note that the *-clock-frequency properties assume internal clocks. In case of external clocks, new bindings (for parsing the clock nodes) have to be added. properties: compatible: enum: - ti,wl1271 - ti,wl1273 - ti,wl1281 - ti,wl1283 - ti,wl1285 - ti,wl1801 - ti,wl1805 - ti,wl1807 - ti,wl1831 - ti,wl1835 - ti,wl1837 reg: maxItems: 1 description: This is required when connected via SPI, and optional when connected via SDIO. interrupts: minItems: 1 maxItems: 2 interrupt-names: items: - const: irq - const: wakeup vwlan-supply: description: Points to the node of the regulator that powers/enable the wl12xx/wl18xx chip. This is required when connected via SPI. ref-clock-frequency: $ref: /schemas/types.yaml#/definitions/uint32 description: Reference clock frequency. tcxo-clock-frequency: $ref: /schemas/types.yaml#/definitions/uint32 description: TCXO clock frequency. clock-xtal: $ref: /schemas/types.yaml#/definitions/flag description: Indicates that the clock is generated from XTAL. required: - compatible - interrupts allOf: - $ref: /schemas/spi/spi-peripheral-props.yaml# - if: properties: compatible: contains: enum: - ti,wl1271 - ti,wl1273 - ti,wl1281 - ti,wl1283 then: required: - ref-clock-frequency unevaluatedProperties: false examples: - | #include <dt-bindings/interrupt-controller/irq.h> // For wl12xx family: spi { #address-cells = <1>; #size-cells = <0>; wlcore1: wlcore@1 { compatible = "ti,wl1271"; reg = <1>; spi-max-frequency = <48000000>; interrupts = <8 IRQ_TYPE_LEVEL_HIGH>; vwlan-supply = <&vwlan_fixed>; clock-xtal; ref-clock-frequency = <38400000>; }; }; - | #include <dt-bindings/interrupt-controller/irq.h> // For wl18xx family: spi { #address-cells = <1>; #size-cells = <0>; wlcore2: wlcore@0 { compatible = "ti,wl1835"; reg = <0>; spi-max-frequency = <48000000>; interrupts = <27 IRQ_TYPE_EDGE_RISING>; vwlan-supply = <&vwlan_fixed>; }; }; - | #include <dt-bindings/interrupt-controller/irq.h> // SDIO example: mmc3 { vmmc-supply = <&wlan_en_reg>; bus-width = <4>; cap-power-off-card; keep-power-in-suspend; #address-cells = <1>; #size-cells = <0>; wlcore3: wlcore@2 { compatible = "ti,wl1835"; reg = <2>; interrupts = <19 IRQ_TYPE_LEVEL_HIGH>; }; };