From: Peter Ujfalusi <peter.ujfalusi@ti.com>
To: Jyri Sarha <jsarha@ti.com>, Mark Rutland <mark.rutland@arm.com>
Cc: "alsa-devel@alsa-project.org" <alsa-devel@alsa-project.org>,
"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
"linux-omap@vger.kernel.org" <linux-omap@vger.kernel.org>,
"broonie@kernel.org" <broonie@kernel.org>,
"liam.r.girdwood@linux.intel.com"
<liam.r.girdwood@linux.intel.com>,
"bcousson@baylibre.com" <bcousson@baylibre.com>,
"grant.likely@linaro.org" <grant.likely@linaro.org>,
"rob.herring@calxeda.com" <rob.herring@calxeda.com>,
"joelf@ti.com" <joelf@ti.com>,
"Hebbar, Gururaja" <gururaja.hebbar@ti.com>,
Darren Etheridge <detheridge@ti.com>,
Daniel Mack <zonque@gmail.com>
Subject: Re: [RESEND PATCH v3 03/11] ASoC: davinci-mcasp: Add DMA register locations to DT
Date: Tue, 8 Oct 2013 13:07:05 +0300 [thread overview]
Message-ID: <5253D949.2040008@ti.com> (raw)
In-Reply-To: <5253CCD7.2080606@ti.com>
Hi,
On 10/08/2013 12:13 PM, Jyri Sarha wrote:
>> I have some questions however. I took a look at the McASP (TMS320C6000)
>> reference guide, and the registers appeared to all be in one contiguous
>> bank, and "mpu" and "dma" don't appear to be names of particular
>> registers or names of banks of particular registers. Am I looking in the
>> wrong place? Is there up-to-date documentation I can look at?
>>
>> Why are these split across two reg entries, and which particular
>> registers do they actually cover?
>
> The need for two different register properties does not come from McASP
> IP, but from SoC design. On AM33XX the McASP registers are mapped for MPU
> through L4 bus, which is no accessible to the DMA controller. The McASP
> data port registers are mapped trough L3 buss to a different address for
> DMA controller. Maybe the second register property could be called to "dat"
> instead of "dma" since only data port registers are mapped trough that
> address.
We have discussed this with Jyri and we are going to use 'dat' for the data
port address. The driver can configure the IP via the 'mpu' area but it is
preferred to use the 'dat' or data port of McASP when it comes to data. It is
possible to use the transmit/receive buffer registers in the 'mpu' area but it
get's complicated when more than one serializer is used.
>>> - op-mode : I2S/DIT ops mode.
>>
>> What type is this?
>
> That property selects whether McASP is working in I2S mode or in
> Integrated Digital audio interface Transmitter (DIT) mode for S/PDIF,
> IEC60958-1, AES-3 formats.
Not sure but we might be able to handle this via standard ASoC way, via the
da_fmt so the machine driver will tell the mcasp driver what is the format it
needs to send the data. Adding SND_SOC_DAIFMT_SPDIF/IEC60958/AES3 to core will
be needed.
>
>>
>> What are valid values?
>
> 0 and 1. I'll document those. Thanks.
>
>>> - tdm-slots : Slots for TDM operation.
>>
>> Here too. This description is completely opaque.
>>
>
> I am not absolutely sure here. I'll check the details and try to come up
> with a better description.
Not sure about this either, my interpretation of what it means:
number of channels to be sent via one serializer.
as an example:
We have 3 stereo codecs in the design
all of them are connected to the same McASP instance but to be fed via
different serializer:
AXR0 - codec0
AXR1 - codec1
AXR2 - codec2
Since the codecs are stereo -> tdm-slots = <2>; two channels/serializer
If the stream is stereo we only ouput to codec0 via AXR0.
If the stream is 4 channel, the first 2 channels will be via AXR0 to codec0
the next 2 channles will be sent to codec1 via AXR1. and so on.
I think it would be possible to extract this information from the serial-dir
property + machine driver configured DAI_FMT and from the coming stream. I2S,
L/R justified is stereo, in DSP modes we can have more channels. In the
serial-dir array we could count the AXR directions. Basically all the
information which is needed to make this redundant are there.
But we have the legacy davinci users at the same time and we do not want to
break eisting users.
I think Daniel Mack (CCd) can clarify my understanding of the tdm-slots.
>> It looks like some pins can be used as GPIO -- is there not a need for
>> something like pinctrl for configuring this?
>>
>
> That is true, but since driver does not support it and there is no example
> of GPIO usage, no guess work has been done about the required DT
> properties.
This is kind of complicated issue. Any of the McASP pins (CLK, FS, AXR, etc)
can be configured to be used as McASP pins or GPIO pins. This configuration is
McASP IP specific, need to be done within McASP.
pinctrl is overkill for this IMHO but we would need a gpio driver for McASP.
If some driver requests a gpio in McASP we can just switch that pin to GPIO
mode, however this brings up quite a bit of questions:
- embedd the gpio driver into the dai driver?
- if the system does not have audio -> no GPIO driver for the rest?
- separate driver for gpio functionality?
- Sanity cheks all over the place on which pin is GPIO or McASP.
and so forth.
--
Péter
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
next prev parent reply other threads:[~2013-10-08 10:07 UTC|newest]
Thread overview: 127+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-09-17 9:25 [PATCH v2 00/11] Fix AM335x-evm analog audio support jsarha-l0cyMroinI0
[not found] ` <cover.1379409268.git.jsarha-l0cyMroinI0@public.gmane.org>
2013-09-17 9:26 ` [PATCH v2 01/11] ASoC: davinci-evm: Move sysclk logic away from evm_hw_params jsarha-l0cyMroinI0
2013-09-18 9:53 ` Mark Brown
2013-09-17 9:26 ` [PATCH v2 02/11] ASoC: davinci-evm: Add device tree binding jsarha-l0cyMroinI0
[not found] ` <b94659fe6bb26dd457c6c6d542db912896f327b0.1379409268.git.jsarha-l0cyMroinI0@public.gmane.org>
2013-09-18 14:38 ` [alsa-devel] " Mark Brown
2013-09-17 9:26 ` [PATCH v2 03/11] ASoC: davinci-mcasp: Add DMA register locations to DT jsarha-l0cyMroinI0
2013-09-18 14:39 ` Mark Brown
2013-09-17 9:26 ` [PATCH v2 04/11] ASoC: davinci-mcasp: Extract DMA channels directly from DT jsarha-l0cyMroinI0
[not found] ` <dc7012e1c2ae59c35eedd9328139f1060048b395.1379409268.git.jsarha-l0cyMroinI0@public.gmane.org>
2013-09-18 14:51 ` [alsa-devel] " Mark Brown
2013-09-17 9:26 ` [PATCH v2 05/11] ASoC: davinci-mcasp: Remove interrupt property from DT bindings doc jsarha-l0cyMroinI0
[not found] ` <1b47734e397bfac8846dcfc194fd1ab63f320d1a.1379409268.git.jsarha-l0cyMroinI0@public.gmane.org>
2013-09-18 5:50 ` Gururaja Hebbar
2013-09-18 7:40 ` Jyri Sarha
2013-09-18 14:46 ` [alsa-devel] " Mark Brown
[not found] ` <20130918144635.GT21013-GFdadSzt00ze9xe1eoZjHA@public.gmane.org>
2013-09-18 14:48 ` Nishanth Menon
[not found] ` <5239BD42.2060903-l0cyMroinI0@public.gmane.org>
2013-09-18 15:07 ` Mark Brown
2013-09-19 11:46 ` Peter Ujfalusi
2013-09-17 9:26 ` [PATCH v2 06/11] ASoC: davinci: Add support for AM33xx SoC Audio jsarha-l0cyMroinI0
[not found] ` <c59efc1524b19f50dc37606bfa246dde9c20d312.1379409268.git.jsarha-l0cyMroinI0@public.gmane.org>
2013-09-18 14:47 ` [alsa-devel] " Mark Brown
2013-09-18 18:09 ` Mark Brown
[not found] ` <20130918180946.GF21013-GFdadSzt00ze9xe1eoZjHA@public.gmane.org>
2013-09-19 9:31 ` [alsa-devel] " Jyri Sarha
2013-09-19 9:31 ` Peter Ujfalusi
2013-09-17 9:26 ` [PATCH v2 07/11] ASoC: tlv320aic3x: Add regulators to DT bindings document jsarha-l0cyMroinI0
[not found] ` <5281fbfa7e5a2090a2949c7b3941debbbc5ac397.1379409268.git.jsarha-l0cyMroinI0@public.gmane.org>
2013-09-18 14:48 ` [alsa-devel] " Mark Brown
2013-09-17 9:26 ` [PATCH v2 08/11] ASoC: tlv320aic3x: Add codec pins " jsarha-l0cyMroinI0
2013-09-18 14:50 ` Mark Brown
2013-09-17 9:26 ` [PATCH v2 09/11] ARM/dts: am33xx: Add mcasp0 and mcasp1 device tree entries jsarha-l0cyMroinI0
2013-09-17 9:26 ` [PATCH v2 10/11] ARM/dts: am33xx: mcasp: Add new dma register location to reg-property jsarha-l0cyMroinI0
2013-09-17 9:26 ` [PATCH v2 11/11] ARM/dts: am335x-evm: Add audio support for am335x-evm.dts jsarha-l0cyMroinI0
2013-09-18 9:42 ` [alsa-devel] [PATCH v2 00/11] Fix AM335x-evm analog audio support Mark Brown
2013-09-18 9:56 ` Jyri Sarha
2013-09-18 10:18 ` Mark Brown
2013-09-18 10:27 ` Jyri Sarha
2013-09-18 10:40 ` Mark Brown
2013-09-18 11:09 ` Jyri Sarha
2013-09-19 11:29 ` [PATCH v3 " Jyri Sarha
[not found] ` <cover.1379590035.git.jsarha-l0cyMroinI0@public.gmane.org>
2013-09-19 11:29 ` [PATCH v3 01/11] ASoC: davinci-evm: Move sysclk logic away from evm_hw_params Jyri Sarha
2013-09-19 13:23 ` Mark Brown
2013-09-19 13:43 ` Sarha, Jyri
2013-09-26 19:36 ` [RESEND PATCH " Mark Brown
2013-09-19 11:29 ` [PATCH v3 02/11] ASoC: davinci-evm: Add device tree binding Jyri Sarha
2013-09-19 11:29 ` [PATCH v3 03/11] ASoC: davinci-mcasp: Add DMA register locations to DT Jyri Sarha
2013-10-07 21:47 ` [RESEND PATCH " Mark Rutland
2013-10-08 0:46 ` Mark Brown
2013-10-10 16:59 ` Mark Rutland
2013-10-10 17:29 ` Peter Ujfalusi
2013-10-16 15:04 ` Mark Rutland
2013-10-16 16:53 ` Jyri Sarha
2013-10-08 9:13 ` Jyri Sarha
2013-10-08 10:07 ` Peter Ujfalusi [this message]
2013-09-19 11:29 ` [PATCH v3 05/11] ASoC: davinci-mcasp: Interrupts property to optional and add interrupt-names Jyri Sarha
2013-10-07 21:56 ` [RESEND PATCH " Mark Rutland
2013-10-08 10:38 ` Jyri Sarha
2013-09-19 11:29 ` [PATCH v3 08/11] ASoC: tlv320aic3x: Add codec pins to DT bindings document Jyri Sarha
2013-09-19 11:29 ` [PATCH v3 10/11] ARM/dts: am33xx: mcasp: Add new dma register location to reg-property Jyri Sarha
2013-10-07 22:00 ` [RESEND PATCH " Mark Rutland
2013-10-08 11:35 ` Jyri Sarha
2013-09-19 11:29 ` [PATCH v3 11/11] ARM/dts: am335x-evm: Add audio support for am335x-evm.dts Jyri Sarha
2013-10-07 22:02 ` [RESEND PATCH " Mark Rutland
2013-10-08 11:37 ` Jyri Sarha
2013-09-19 11:29 ` [PATCH v3 04/11] ASoC: davinci-mcasp: Extract DMA channels directly from DT Jyri Sarha
2013-10-07 21:53 ` [RESEND PATCH " Mark Rutland
2013-10-08 7:05 ` Jyri Sarha
2013-09-19 11:29 ` [PATCH v3 06/11] ASoC: davinci: Add support for AM33xx SoC Audio Jyri Sarha
2013-09-19 11:29 ` [PATCH v3 07/11] ASoC: tlv320aic3x: Add regulators to DT bindings document Jyri Sarha
[not found] ` <1b88bfa3793d807ff6e325df1bbff6cb4eb976e6.1379590036.git.jsarha-l0cyMroinI0@public.gmane.org>
2013-09-19 13:29 ` Mark Brown
[not found] ` <20130919132955.GS21013-GFdadSzt00ze9xe1eoZjHA@public.gmane.org>
2013-09-19 13:45 ` Sarha, Jyri
2013-09-19 11:29 ` [PATCH v3 09/11] ARM/dts: am33xx: Add mcasp0 and mcasp1 device tree entries Jyri Sarha
2013-09-19 13:31 ` [PATCH v3 00/11] Fix AM335x-evm analog audio support Mark Brown
2013-10-08 19:36 ` [PATCH v4 00/10] " Jyri Sarha
2013-10-08 19:36 ` [PATCH v4 01/10] ASoC: davinci: Fix AM33xx SoC Audio support Jyri Sarha
2013-10-08 19:36 ` [PATCH v4 02/10] ASoC: davinci-evm: Add device tree binding Jyri Sarha
2013-10-08 19:36 ` [PATCH v4 03/10] ASoC: davinci-mcasp: Add location for data port registers to DT Jyri Sarha
2013-10-08 19:36 ` [PATCH v4 05/10] ASoC: davinci-mcasp: Improve DT bindings document Jyri Sarha
[not found] ` <cover.1381259962.git.jsarha-l0cyMroinI0@public.gmane.org>
2013-10-08 19:36 ` [PATCH v4 04/10] ASoC: davinci-mcasp: Extract DMA channels directly from DT Jyri Sarha
2013-10-08 19:36 ` [PATCH v4 06/10] ASoC: davinci-mcasp: Remove redundant num-serializer DT parameter Jyri Sarha
2013-10-08 19:36 ` [PATCH v4 07/10] ARM/dts: am33xx: Add mcasp0 and mcasp1 device tree entries Jyri Sarha
2013-10-08 19:36 ` [PATCH v4 08/10] ARM/dts: am33xx: mcasp: Add location for data port registers to reg-property Jyri Sarha
2013-10-09 8:29 ` Peter Ujfalusi
2013-10-09 12:44 ` [alsa-devel] [PATCH v4.1 " y
2013-10-09 12:44 ` y
[not found] ` <525513F8.1040103-l0cyMroinI0@public.gmane.org>
2013-10-09 12:44 ` y
2013-10-09 12:44 ` y
2013-10-08 19:36 ` [PATCH v4 09/10] ARM/dts: am335x-evm: Add audio support for am335x-evm.dts Jyri Sarha
2013-10-09 8:12 ` Peter Ujfalusi
2013-10-09 12:45 ` [PATCH v4.1 " Jyri Sarha
2013-10-09 14:32 ` [PATCH v4.2 " Jyri Sarha
2013-10-18 15:37 ` [PATCH v5 00/12] Fix AM335x-evm analog audio support Jyri Sarha
2013-10-18 15:37 ` [PATCH v5 01/12] ASoC: davinci: Fix AM33xx SoC Audio support Jyri Sarha
2013-10-22 12:24 ` Mark Brown
2013-10-22 13:02 ` Jyri Sarha
2013-10-18 15:37 ` [PATCH v5 03/12] ASoC: davinci-mcasp: Add location for data port registers to DT Jyri Sarha
2013-10-22 11:04 ` Mark Brown
[not found] ` <cover.1382110089.git.jsarha-l0cyMroinI0@public.gmane.org>
2013-10-18 15:37 ` [PATCH v5 02/12] ASoC: davinci-evm: Add device tree binding Jyri Sarha
2013-10-22 11:01 ` Mark Brown
2013-10-22 12:26 ` Jyri Sarha
2013-10-22 12:39 ` Mark Brown
2013-10-22 16:41 ` Jyri Sarha
2013-10-18 15:37 ` [PATCH v5 04/12] ASoC: davinci-mcasp: Extract DMA channels directly from DT Jyri Sarha
2013-10-22 12:10 ` Mark Brown
2013-10-18 15:37 ` [PATCH v5 05/12] ASoC: davinci-mcasp: Change compatible property model to more accurate Jyri Sarha
2013-10-22 12:14 ` Mark Brown
2013-10-18 15:37 ` [PATCH v5 06/12] ASoC: davinci-mcasp: Improve DT bindings document Jyri Sarha
2013-10-23 11:15 ` Mark Brown
2013-10-18 15:37 ` [PATCH v5 07/12] ASoC: davinci-mcasp: Remove redundant num-serializer DT parameter Jyri Sarha
2013-10-23 11:15 ` Mark Brown
2013-10-18 15:37 ` [PATCH v5 08/12] ARM/dts: am33xx: Add mcasp0 and mcasp1 device tree entries Jyri Sarha
2013-10-18 15:37 ` [PATCH v5 09/12] ARM/dts: am33xx: mcasp: Add location for data port registers to reg-property Jyri Sarha
2013-10-18 15:37 ` [PATCH v5 10/12] ARM/dts: am335x-evm: Add audio support for am335x-evm.dts Jyri Sarha
2013-10-18 15:37 ` [PATCH v5 11/12] ARM/dts: am335x-evmsk: Audio support Jyri Sarha
2013-10-18 15:37 ` [PATCH v5 12/12] arm: omap2plus_defconfig: enable AM33xx SOC EVM audio Jyri Sarha
2013-10-18 16:06 ` [PATCH v5 00/12] Fix AM335x-evm analog audio support Benoit Cousson
2013-10-20 17:04 ` [PATCH v5 DTS 0/4] " Jyri Sarha
2013-10-20 17:04 ` [PATCH v5 DTS 1/4] ARM/dts: am33xx: Add mcasp0 and mcasp1 device tree entries Jyri Sarha
2013-10-20 17:04 ` [PATCH v5 DTS 2/4] ARM/dts: am33xx: mcasp: Add location for data port registers to reg-property Jyri Sarha
2013-10-20 17:04 ` [PATCH v5 DTS 3/4] ARM/dts: am335x-evm: Add audio support for am335x-evm.dts Jyri Sarha
2013-10-20 17:04 ` [PATCH v5 DTS 4/4] ARM/dts: am335x-evmsk: Audio support Jyri Sarha
2013-10-20 17:14 ` [PATCH v5 DTS 0/4] Fix AM335x-evm analog audio support Benoit Cousson
2013-10-08 19:36 ` [PATCH v4 10/10] ARM/dts: am335x-evmsk: Audio support Jyri Sarha
2013-10-09 15:58 ` [PATCH v4.2 " Jyri Sarha
2013-10-23 12:30 ` [PATCH v6 0/4] Fix AM335x-evm analog audio support Jyri Sarha
2013-10-23 12:30 ` [PATCH v6 1/4] ASoC: davinci: Add support for AM33xx SoC Audio Jyri Sarha
2013-10-23 15:40 ` Mark Brown
2013-10-23 12:30 ` [PATCH v6 2/4] ASoC: davinci-evm: Add device tree binding Jyri Sarha
2013-10-23 15:43 ` Mark Brown
2013-10-23 12:30 ` [PATCH v6 3/4] ASoC: davinci-mcasp: Remove last reference to num-serializer in DT doc Jyri Sarha
2013-10-23 15:40 ` Mark Brown
2013-10-23 12:30 ` [PATCH v6 4/4] arm: omap2plus_defconfig: enable AM33xx SOC EVM audio 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=5253D949.2040008@ti.com \
--to=peter.ujfalusi@ti.com \
--cc=alsa-devel@alsa-project.org \
--cc=bcousson@baylibre.com \
--cc=broonie@kernel.org \
--cc=detheridge@ti.com \
--cc=devicetree@vger.kernel.org \
--cc=grant.likely@linaro.org \
--cc=gururaja.hebbar@ti.com \
--cc=joelf@ti.com \
--cc=jsarha@ti.com \
--cc=liam.r.girdwood@linux.intel.com \
--cc=linux-omap@vger.kernel.org \
--cc=mark.rutland@arm.com \
--cc=rob.herring@calxeda.com \
--cc=zonque@gmail.com \
/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).