On 01/09/15 13:07, Russell King - ARM Linux wrote: > On Fri, Jan 09, 2015 at 01:54:01PM +0100, Jean-Francois Moine wrote: >> On Fri, 9 Jan 2015 11:45:29 +0000 >> Russell King - ARM Linux <linux@xxxxxxxxxxxxxxxx> wrote: >>> I think we need to understand exactly how the 998x map I2S inputs to the >>> HDMI channels to avoid making a mistake with the binding; remember, the >>> binding isn't something that can be easily "bug fixed" at a later date >>> as anything we come up with now has to be supported long term by the >>> kernel. >> >> The DT describes the hardware configuration. > > You're missing my point. > > How does the driver know which of the I2S pins to enable in I2S mode? [snip] > My question is: how do we know which I2S inputs to enable, or are > you suggesting that all I2S inputs should be enabled if operating in > I2S mode irrespective of whether they may be active? > Isn't it the case that for I2S: * Word Select (WS) is always required to disambiguate left/right. So WS need not be specified in any device tree configuration. * The audio inputs depend on a particular board but at least one is required. Fortunately, the TDA998x devices have all the same pin/input numbering so they /could/ be described as i2s0, i2s1, i2s2 and i2s3 as per J-F's earlier email. But tt isn't clear from my reading of the TDA19988 datasheet (for example) whether one can skip channels (so does channel 0 always have to be present?). If the channels must be enabled from 0 then one could simply specify the number of inputs. (The datasheets that I have don't indicate whether there's any channel remapping performed internally by the TDA998x). * What the driver does need to take account of is the number of inputs that are active so that the sound CODEC can be properly configured. Andrew -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html