Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

dt-bindings: soundwire: add slave bindings

This patch adds bindings for Soundwire Slave devices that includes how
SoundWire enumeration address and Link ID are used to represented in
SoundWire slave device tree nodes.

Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Reviewed-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20190829163514.11221-2-srinivas.kandagatla@linaro.org
Signed-off-by: Vinod Koul <vkoul@kernel.org>

authored by

Srinivas Kandagatla and committed by
Vinod Koul
dd4689e2 f1fac63a

+82
+82
Documentation/devicetree/bindings/soundwire/soundwire-controller.yaml
··· 1 + # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2 + %YAML 1.2 3 + --- 4 + $id: http://devicetree.org/schemas/soundwire/soundwire-controller.yaml# 5 + $schema: http://devicetree.org/meta-schemas/core.yaml# 6 + 7 + title: SoundWire Controller Generic Binding 8 + 9 + maintainers: 10 + - Srinivas Kandagatla <srinivas.kandagatla@linaro.org> 11 + - Vinod Koul <vkoul@kernel.org> 12 + 13 + description: | 14 + SoundWire busses can be described with a node for the SoundWire controller 15 + device and a set of child nodes for each SoundWire slave on the bus. 16 + 17 + properties: 18 + $nodename: 19 + pattern: "^soundwire(@.*)?$" 20 + 21 + "#address-cells": 22 + const: 2 23 + 24 + "#size-cells": 25 + const: 0 26 + 27 + patternProperties: 28 + "^.*@[0-9a-f],[0-9a-f]$": 29 + type: object 30 + 31 + properties: 32 + compatible: 33 + pattern: "^sdw[0-9a-f]{1}[0-9a-f]{4}[0-9a-f]{4}[0-9a-f]{2}$" 34 + description: Is the textual representation of SoundWire Enumeration 35 + address. compatible string should contain SoundWire Version ID, 36 + Manufacturer ID, Part ID and Class ID in order and shall be in 37 + lower-case hexadecimal with leading zeroes. 38 + Valid sizes of these fields are 39 + Version ID is 1 nibble, number '0x1' represents SoundWire 1.0 40 + and '0x2' represents SoundWire 1.1 and so on. 41 + MFD is 4 nibbles 42 + PID is 4 nibbles 43 + CID is 2 nibbles 44 + More Information on detail of encoding of these fields can be 45 + found in MIPI Alliance DisCo & SoundWire 1.0 Specifications. 46 + 47 + reg: 48 + maxItems: 1 49 + description: 50 + Link ID followed by Instance ID of SoundWire Device Address. 51 + 52 + required: 53 + - compatible 54 + - reg 55 + 56 + required: 57 + - "#address-cells" 58 + - "#size-cells" 59 + 60 + examples: 61 + - | 62 + soundwire@c2d0000 { 63 + #address-cells = <2>; 64 + #size-cells = <0>; 65 + reg = <0x0c2d0000 0x2000>; 66 + 67 + speaker@0,1 { 68 + compatible = "sdw10217201000"; 69 + reg = <0 1>; 70 + powerdown-gpios = <&wcdpinctrl 2 0>; 71 + #thermal-sensor-cells = <0>; 72 + }; 73 + 74 + speaker@0,2 { 75 + compatible = "sdw10217201000"; 76 + reg = <0 2>; 77 + powerdown-gpios = <&wcdpinctrl 2 0>; 78 + #thermal-sensor-cells = <0>; 79 + }; 80 + }; 81 + 82 + ...