From: Russell King - ARM Linux <linux@arm.linux.org.uk>
To: Andrew Jackson <Andrew.Jackson@arm.com>
Cc: Jean-Francois Moine <moinejf@free.fr>, Jyri Sarha <jsarha@ti.com>,
Mark Brown <broonie@kernel.org>, Dave Airlie <airlied@gmail.com>,
"alsa-devel@alsa-project.org" <alsa-devel@alsa-project.org>,
"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
"dri-devel@lists.freedesktop.org"
<dri-devel@lists.freedesktop.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH v9 1/4] drm/i2c: tda998x: Add DT support for audio
Date: Fri, 9 Jan 2015 14:57:41 +0000 [thread overview]
Message-ID: <20150109145741.GP12302@n2100.arm.linux.org.uk> (raw)
In-Reply-To: <54AFDE8D.3000504@arm.com>
On Fri, Jan 09, 2015 at 01:58:37PM +0000, Andrew Jackson wrote:
> 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@arm.linux.org.uk> 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.
Yep.
> * 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).
Well, if we look at the HDMI specs, there is a field in the audio info
frame (CA bits) which identifies the speaker allocation between the
HDMI PCM channels and the physical speakers.
It describes a limited set - essentially though, channel 0 is always
front left, and channel 1 is always front right. Channel 2 is always
LFE, and channel 3 is always front centre.
Channel 0 and 1 are always allocated, but it's possible to have channels
above 2 to be allocated independently of each other (eg, you could have
7, 6, 1, 0 allocated to front right centre, front left centre, right,
left speakers - in that order.)
As you point out, we don't have documentation which tells us know how
these PCM channels map to I2S inputs.
What we do know is that there is a fixed mapping between AP pins and I2S
channels (which are not PCM channels), but as you point out, we don't
have any documentation which describes how the I2S channels (each with
their own L+R words) map to the PCM channels - and we don't know whether
the CA_I2S bits in that same register in the TDA998x have an effect on
this.
Does anyone have a TDA998x setup which has an I2S source connected to
the TDA998x I2S channel 1, and who has a HDMI sink which will accept
the LFE/FC channels? If so, producing a description of how the CA_I2S
bits and enabling I2S input pins influences the mapping would be a good
idea.
If we don't have that, I'd recommend splitting the DT property into
"audio inputs for I2S" and "audio input for SPDIF" (only one can be
active with SPDIF).
If we want to support more than one SPDIF input (which must be mutually
exclusive) I'd recommend to look at the OF graph stuff we use in DRM -
one port for each "mode" - eg, I2S, SPDIF in on AP2, SPDIF in on AP3.
Each port node can specify the AP pins which should be enabled.
--
FTTC broadband for 0.8mile line: currently at 10.5Mbps down 400kbps up
according to speedtest.net.
next prev parent reply other threads:[~2015-01-09 14:57 UTC|newest]
Thread overview: 61+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-01-07 11:06 [PATCH v9 0/4] ASoC: tda998x: add a codec to the HDMI transmitter Jean-Francois Moine
2015-01-07 9:10 ` [PATCH v9 1/4] drm/i2c: tda998x: Add DT support for audio Jean-Francois Moine
2015-01-07 14:39 ` Andrew Jackson
2015-01-07 17:08 ` Jean-Francois Moine
2015-01-07 17:18 ` Andrew Jackson
2015-01-07 17:33 ` Mark Brown
[not found] ` <0084acea5a3475a77531d6a77483f36d3469111a.1420628786.git.moinejf-GANU6spQydw@public.gmane.org>
2015-01-08 14:53 ` Jyri Sarha
[not found] ` <54AE99F5.1010404-l0cyMroinI0@public.gmane.org>
2015-01-08 16:42 ` Jean-Francois Moine
2015-01-08 20:04 ` Mark Brown
2015-01-09 9:25 ` Andrew Jackson
2015-01-09 10:13 ` Jyri Sarha
2015-01-09 11:30 ` Jean-Francois Moine
2015-01-09 11:45 ` Russell King - ARM Linux
2015-01-09 12:54 ` Jean-Francois Moine
2015-01-09 13:07 ` Russell King - ARM Linux
[not found] ` <20150109130725.GN12302-l+eeeJia6m9vn6HldHNs0ANdhmdF6hFW@public.gmane.org>
2015-01-09 13:58 ` Andrew Jackson
2015-01-09 14:57 ` Russell King - ARM Linux [this message]
2015-01-09 17:38 ` Jean-Francois Moine
2015-01-09 20:01 ` Russell King - ARM Linux
[not found] ` <20150109200127.GD12302-l+eeeJia6m9vn6HldHNs0ANdhmdF6hFW@public.gmane.org>
2015-01-10 15:47 ` [alsa-devel] " Jean-Francois Moine
2015-01-12 9:25 ` Philipp Zabel
2015-01-12 12:25 ` Russell King - ARM Linux
2015-01-12 13:59 ` Philipp Zabel
2015-01-12 14:04 ` Russell King - ARM Linux
2015-01-12 17:13 ` Jean-Francois Moine
2015-01-12 17:57 ` Russell King - ARM Linux
2015-01-12 19:14 ` Jean-Francois Moine
2015-01-13 12:21 ` Philipp Zabel
2015-01-13 12:27 ` Russell King - ARM Linux
2015-01-13 15:54 ` Jean-Francois Moine
2015-01-13 16:03 ` Russell King - ARM Linux
2015-01-13 19:02 ` Jean-Francois Moine
2015-01-13 19:26 ` Russell King - ARM Linux
2015-01-13 19:41 ` Jyri Sarha
2015-01-13 19:54 ` Russell King - ARM Linux
2015-01-14 7:55 ` Jean-Francois Moine
2015-01-14 12:12 ` Russell King - ARM Linux
2015-01-14 10:46 ` Philipp Zabel
2015-01-14 12:50 ` Mark Brown
2015-01-14 14:23 ` Russell King - ARM Linux
2015-01-07 10:00 ` [PATCH v9 2/4] drm/i2c: tda998x: Change drvdata for audio extension Jean-Francois Moine
2015-01-07 10:51 ` [PATCH v9 3/4] ASoC: tda998x: add a codec to the HDMI transmitter Jean-Francois Moine
2015-01-07 15:10 ` Andrew Jackson
2015-01-07 15:41 ` Russell King - ARM Linux
2015-01-07 18:02 ` Jean-Francois Moine
2015-01-09 10:24 ` Jyri Sarha
2015-01-09 11:15 ` Jean-Francois Moine
2015-01-09 11:19 ` Russell King - ARM Linux
2015-01-09 11:45 ` Jean-Francois Moine
2015-01-09 11:48 ` Russell King - ARM Linux
2015-01-07 17:34 ` Mark Brown
2015-01-08 14:55 ` Jyri Sarha
2015-01-09 17:39 ` Andrew Jackson
[not found] ` <54B0123C.9070800-5wv7dgnIgG8@public.gmane.org>
2015-01-09 17:54 ` Mark Brown
2015-01-13 9:24 ` Jean-Francois Moine
2015-01-11 21:03 ` Jyri Sarha
2015-01-13 7:41 ` Jean-Francois Moine
2015-01-07 11:01 ` [PATCH v9 4/4] drm/i2c: tda998x: set cts_n according to the sample width Jean-Francois Moine
2015-01-08 14:53 ` [PATCH v9 0/4] ASoC: tda998x: add a codec to the HDMI transmitter Jyri Sarha
2015-01-08 20:05 ` Mark Brown
2015-01-09 10:15 ` Jyri Sarha
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20150109145741.GP12302@n2100.arm.linux.org.uk \
--to=linux@arm.linux.org.uk \
--cc=Andrew.Jackson@arm.com \
--cc=airlied@gmail.com \
--cc=alsa-devel@alsa-project.org \
--cc=broonie@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=dri-devel@lists.freedesktop.org \
--cc=jsarha@ti.com \
--cc=linux-kernel@vger.kernel.org \
--cc=moinejf@free.fr \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).