Re: [PATCH v9 1/4] drm/i2c: tda998x: Add DT support for audio

From: Philipp Zabel
Date: Wed Jan 14 2015 - 05:47:18 EST


Hi Russell,

thanks for the clarification.

Am Dienstag, den 13.01.2015, 19:54 +0000 schrieb Russell King - ARM
Linux:
[...]
> To represent that in DT, I would imagine we'd need something like this:
>
> #address-cells = <1>;
> #size-cells = <0>;
> ...
> port@1 { /* AP1,2 = I2S */
> #address-cells = <1>;
> #size-cells = <0>;
> port-type = "i2s";
> reg = <0x01>; /* WS */
> tda998x_i2s1: endpoint@2 {
> reg = <0x02>; /* AP1 */
> remote-endpoint = <&audio1_i2s>;
> };
> tda998x_i2s2: endpoint@4 {
> reg = <0x04>; /* AP2 */
> remote-endpoint = <&audio2_i2s>;
> };
> };
>
> where audio1_i2s is operating in master mode, and audio2_i2s is
> operating in slave mode for both WS and SCLK.
>
> If we can agree on that, then I'm happy with the proposed binding.
> (Remember that #address-cells and #size-cells are required in the
> parent where we have reg= in the child.)

So the question is mostly whether four I2S data pins with a single
shared WS/SCK input should be called "four I2S ports with shared clocks"
or "one I2S port with up to four data lanes". I'd lean towards the
latter.

How audio2_i2s is forced to synchronize its clock output to audio1_i2s
is a problem their bindings will have to handle.

regards
Philipp

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/