Commit 762133d6 authored by Geert Uytterhoeven's avatar Geert Uytterhoeven Committed by Rob Herring

dt-bindings: net: wireless: ti,wlcore: Convert to json-schema

The Texas Instruments Wilink 6/7/8 (wl12xx/wl18xx) Wireless LAN
Controllers can be connected via SPI or via SDIO.
Convert the two Device Tree binding documents to json-schema, and merge
them into a single document.

Add missing ti,wl1285 compatible value.
Add missing interrupt-names property.
Signed-off-by: default avatarGeert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/23a2fbc46255a988e5d36f6c14abb7130480d200.1634646975.git.geert+renesas@glider.beSigned-off-by: default avatarRob Herring <robh@kernel.org>
parent 33ecdd38
...@@ -13,7 +13,7 @@ and GPS over what's called "shared transport". The shared transport is ...@@ -13,7 +13,7 @@ and GPS over what's called "shared transport". The shared transport is
standard BT HCI protocol with additional channels for the other functions. standard BT HCI protocol with additional channels for the other functions.
TI WiLink devices also have a separate WiFi interface as described in TI WiLink devices also have a separate WiFi interface as described in
wireless/ti,wlcore.txt. wireless/ti,wlcore.yaml.
This bindings follows the UART slave device binding in ../serial/serial.yaml. This bindings follows the UART slave device binding in ../serial/serial.yaml.
......
* Texas Instruments wl12xx/wl18xx wireless lan controller
The wl12xx/wl18xx chips can be connected via SPI or via SDIO. This
document describes the binding for the SPI connected chip.
Required properties:
- compatible : Should be one of the following:
* "ti,wl1271"
* "ti,wl1273"
* "ti,wl1281"
* "ti,wl1283"
* "ti,wl1801"
* "ti,wl1805"
* "ti,wl1807"
* "ti,wl1831"
* "ti,wl1835"
* "ti,wl1837"
- reg : Chip select address of device
- spi-max-frequency : Maximum SPI clocking speed of device in Hz
- interrupts : Should contain parameters for 1 interrupt line.
- vwlan-supply : Point the node of the regulator that powers/enable the
wl12xx/wl18xx chip
Optional properties:
- ref-clock-frequency : Reference clock frequency (should be set for wl12xx)
- clock-xtal : boolean, clock is generated from XTAL
- Please consult Documentation/devicetree/bindings/spi/spi-bus.txt
for optional SPI connection related properties,
Examples:
For wl12xx family:
&spi1 {
wlcore: wlcore@1 {
compatible = "ti,wl1271";
reg = <1>;
spi-max-frequency = <48000000>;
interrupt-parent = <&gpio3>;
interrupts = <8 IRQ_TYPE_LEVEL_HIGH>;
vwlan-supply = <&vwlan_fixed>;
clock-xtal;
ref-clock-frequency = <38400000>;
};
};
For wl18xx family:
&spi0 {
wlcore: wlcore@0 {
compatible = "ti,wl1835";
reg = <0>;
spi-max-frequency = <48000000>;
interrupt-parent = <&gpio0>;
interrupts = <27 IRQ_TYPE_EDGE_RISING>;
vwlan-supply = <&vwlan_fixed>;
};
};
TI Wilink 6/7/8 (wl12xx/wl18xx) SDIO devices
This node provides properties for controlling the wilink 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 one of the following:
* "ti,wl1271"
* "ti,wl1273"
* "ti,wl1281"
* "ti,wl1283"
* "ti,wl1285"
* "ti,wl1801"
* "ti,wl1805"
* "ti,wl1807"
* "ti,wl1831"
* "ti,wl1835"
* "ti,wl1837"
- interrupts : specifies attributes for the out-of-band interrupt.
Optional properties:
- ref-clock-frequency : ref clock frequency in Hz
- tcxo-clock-frequency : tcxo clock frequency in Hz
Note: the *-clock-frequency properties assume internal clocks. In case of external
clock, new bindings (for parsing the clock nodes) have to be added.
Example:
&mmc3 {
vmmc-supply = <&wlan_en_reg>;
bus-width = <4>;
cap-power-off-card;
keep-power-in-suspend;
#address-cells = <1>;
#size-cells = <0>;
wlcore: wlcore@2 {
compatible = "ti,wl1835";
reg = <2>;
interrupt-parent = <&gpio0>;
interrupts = <19 IRQ_TYPE_LEVEL_HIGH>;
};
};
# 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.
spi-max-frequency: true
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:
description: Reference clock frequency.
tcxo-clock-frequency:
description: TCXO clock frequency.
clock-xtal:
$ref: /schemas/types.yaml#/definitions/flag
description: Indicates that the clock is generated from XTAL.
required:
- compatible
- interrupts
if:
properties:
compatible:
contains:
enum:
- ti,wl1271
- ti,wl1273
- ti,wl1281
- ti,wl1283
then:
required:
- ref-clock-frequency
additionalProperties: false
examples:
- |
#include <dt-bindings/interrupt-controller/irq.h>
// For wl12xx family:
spi1 {
#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>;
};
};
// For wl18xx family:
spi2 {
#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>;
};
};
// 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>;
};
};
...@@ -79,7 +79,7 @@ OMAP3_CORE1_IOPAD(0x2138, PIN_INPUT | MUX_MODE4) /* gpin114 */ ...@@ -79,7 +79,7 @@ OMAP3_CORE1_IOPAD(0x2138, PIN_INPUT | MUX_MODE4) /* gpin114 */
/* /*
* for WL183x module see * for WL183x module see
* Documentation/devicetree/bindings/net/wireless/ti,wlcore.txt * Documentation/devicetree/bindings/net/wireless/ti,wlcore.yaml
*/ */
&wifi_pwrseq { &wifi_pwrseq {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment