Messages in this thread | | | Subject | Re: [alsa-devel] [RESEND PATCH v4 1/4] dt-bindings: soundwire: add slave bindings | From | Srinivas Kandagatla <> | Date | Fri, 23 Aug 2019 16:57:25 +0100 |
| |
On 23/08/2019 16:41, Pierre-Louis Bossart wrote: > > > On 8/22/19 6:37 PM, Srinivas Kandagatla wrote: >> 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> >> --- >> .../soundwire/soundwire-controller.yaml | 75 +++++++++++++++++++ >> 1 file changed, 75 insertions(+) >> create mode 100644 >> Documentation/devicetree/bindings/soundwire/soundwire-controller.yaml >> >> diff --git >> a/Documentation/devicetree/bindings/soundwire/soundwire-controller.yaml b/Documentation/devicetree/bindings/soundwire/soundwire-controller.yaml >> >> new file mode 100644 >> index 000000000000..91aa6c6d6266 >> --- /dev/null >> +++ >> b/Documentation/devicetree/bindings/soundwire/soundwire-controller.yaml >> @@ -0,0 +1,75 @@ >> +# SPDX-License-Identifier: GPL-2.0 >> +%YAML 1.2 >> +--- >> +$id: http://devicetree.org/schemas/soundwire/soundwire-controller.yaml# >> +$schema: http://devicetree.org/meta-schemas/core.yaml# >> + >> +title: SoundWire Controller Generic Binding >> + >> +maintainers: >> + - Srinivas Kandagatla <srinivas.kandagatla@linaro.org> >> + >> +description: | >> + SoundWire busses can be described with a node for the SoundWire >> controller >> + device and a set of child nodes for each SoundWire slave on the bus. >> + >> +properties: >> + $nodename: >> + pattern: "^soundwire(@.*|-[0-9a-f])*$" >> + >> + "#address-cells": >> + const: 2 >> + >> + "#size-cells": >> + const: 0 >> + >> +patternProperties: >> + "^.*@[0-9a-f]+$": >> + type: object >> + >> + properties: >> + compatible: >> + pattern: "^sdw[0-9][0-9a-f]{4}[0-9a-f]{4}[0-9a-f]{2}$" > > So is this a 64-bit value, as in the MIPI spec, or is this part of the > _ADR description?
Rob did not like encoding compatible string exactly like _ADR encoding.
https://lkml.org/lkml/2019/8/22/490
> I also don't get why the first item in in base10? >
As this corresponds to Soundwire Version, and I have no visibility of version number encoding after reaching number 9 in this field.
This can be updated once we have more info on how the Version encoding will look like in future.
Idea of limiting regex to [0-9] for version is to enforce some checking!
--srini
> >> + description: >> + Is the textual representation of SoundWire Enumeration >> + address. compatible string should contain SoundWire Version ID, >> + Manufacturer ID, Part ID and Class ID in order and shall be in >> + lower-case hexadecimal with leading zeroes. >> + Valid sizes of these fields are >> + Version ID is 1 nibble, number '0x1' represents SoundWire 1.0 >> + and '0x2' represents SoundWire 1.1 and so on. >> + MFD is 4 nibbles >> + PID is 4 nibbles >> + CID is 2 nibbles >> + More Information on detail of encoding of these fields can be >> + found in MIPI Alliance DisCo & SoundWire 1.0 Specifications. >> + >> + reg: >> + maxItems: 1 >> + description: >> + Instance ID and Link ID of SoundWire Device Address. >> + >> + required: >> + - compatible >> + - reg >> + >> +examples: >> + - | >> + soundwire@c2d0000 { >> + #address-cells = <2>; >> + #size-cells = <0>; >> + compatible = "qcom,soundwire-v1.5.0"; >> + reg = <0x0c2d0000 0x2000>; >> + >> + speaker@1 { >> + compatible = "sdw10217201000"; >> + reg = <1 0>; >> + }; >> + >> + speaker@2 { >> + compatible = "sdw10217201000"; >> + reg = <2 0>; >> + }; >> + }; >> + >> +... >>
| |