On 11-06-19, 11:40, Srinivas Kandagatla wrote:
This patch adds bindings for Soundwire Slave devices which includes how SoundWire enumeration address is represented in SoundWire slave device tree nodes.
Signed-off-by: Srinivas Kandagatla srinivas.kandagatla@linaro.org
.../devicetree/bindings/soundwire/bus.txt | 48 +++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 Documentation/devicetree/bindings/soundwire/bus.txt
diff --git a/Documentation/devicetree/bindings/soundwire/bus.txt b/Documentation/devicetree/bindings/soundwire/bus.txt new file mode 100644 index 000000000000..19a672b0d528 --- /dev/null +++ b/Documentation/devicetree/bindings/soundwire/bus.txt
The bindings are for slave right and the file is bus.txt?
@@ -0,0 +1,48 @@ +SoundWire bus bindings.
+SoundWire is a 2-pin multi-drop interface with data and clock line. +It facilitates development of low cost, efficient, high performance systems.
+SoundWire controller bindings are very much specific to vendor.
+Child nodes(SLAVE devices): +Every SoundWire controller node can contain zero or more child nodes +representing slave devices on the bus. Every SoundWire slave device is +uniquely determined by the enumeration address containing 5 fields: +SoundWire Version, Instance ID, Manufacturer ID, Part ID and Class ID +for a device. Addition to below required properties, child nodes can +have device specific bindings.
+Required property for SoundWire child node if it is present: +- compatible: "sdwVER,MFD,PID,CID". The textual representation of
SoundWire Enumeration address comprising SoundWire
Version, Manufacturer ID, Part ID and Class ID,
shall be in lower-case hexadecimal with leading
zeroes suppressed.
Version number '0x10' represents SoundWire 1.0
Version number '0x11' represents SoundWire 1.1
ex: "sdw10,0217,2010,0"
any reason why we want to code version number and not say sdw,1.0,... and so on?
+- sdw-instance-id: Should be ('Instance ID') from SoundWire
Enumeration Address. Instance ID is for the cases
where multiple Devices of the same type or Class
are attached to the bus.
instance id is part of the 48bit device id, so wont it make sense to add that to compatible as well?
+SoundWire example for Qualcomm's SoundWire controller:
+soundwire@c2d0000 {
- compatible = "qcom,soundwire-v1.5.0"
- reg = <0x0c2d0000 0x2000>;
- spkr_left:wsa8810-left{
compatible = "sdw10,0217,2010,0";
sdw-instance-id = <1>;
...
- };
- spkr_right:wsa8810-right{
compatible = "sdw10,0217,2010,0";
sdw-instance-id = <2>;
...
- };
+};
2.21.0