From: Nicolin Chen <nicoleotsuka@gmail.com>
To: Arnaud Mouiche <arnaud.mouiche@invoxia.com>
Cc: broonie@kernel.org, linux-kernel@vger.kernel.org,
linuxppc-dev@lists.ozlabs.org, alsa-devel@alsa-project.org,
tiwai@suse.com, perex@perex.cz, lgirdwood@gmail.com,
fabio.estevam@nxp.com, timur@tabi.org, lukma@denx.de,
caleb@crome.org, max.krummenacher@toradex.com,
mpa@pengutronix.de, mail@maciej.szmigiero.name
Subject: Re: [PATCH] ASoC: fsl_ssi: Override bit clock rate based on slot number
Date: Wed, 13 Sep 2017 16:01:48 -0700 [thread overview]
Message-ID: <20170913230147.GA21287@Asurada-Nvidia> (raw)
In-Reply-To: <fdb71350-0b89-8c5a-9ed0-c744bb6f2118@invoxia.com>
On Wed, Sep 13, 2017 at 10:02:20AM +0200, Arnaud Mouiche wrote:
> >Could you please give me a few set of examples of how you set
> >set_sysclk(), set_tdm_slot() with the current driver? The idea
> >here is to figure out a way to calculate the bclk in hw_params
> >without getting set_sysclk() involved any more.
> Here is one, where a bclk = 4*16*fs is expected
> In another setup, there are 8 x 16 bits slots, whatever the number
> of active channels is.
> In this case bclk = 128 * fs
> The number of slots is completely arbitrary. Some slots can even be
> reserved for communication between codecs that don't communicate
> with linux.
In summary, bclk = sample rate * slots * slot_width;
I will update my patch soon.
> >Unfortunately, it looks like a work around to me. I understand
> >the idea of leaving set_sysclk() out there to override the bit
> >clock is convenient, but it is not a standard ALSA design and
> >may eventually introduce new problems like today.
>
> I agree. I'm not conservative at all concerning this question.
> I don't see a way to remove set_sysclk without breaking current TDM
> users anyway, at least for those who don't have their code
> upstreamed.
Which TDM case would be broken by this removal? The only impact
that I can see is that the ASoC core returns an ENOTSUPP for a
set_sysclk() call now, which is something that a dai-link driver
should have taken care of anyway.
> All information provided through snd_soc_dai_set_tdm_slot( cpu_dai,
> mask, mask, slots, width ) should be enough
> In this case, for TDM users
>
> bclk = slots * width * fs (where slots is != channels)
> will manage 99 % of the cases.
> And the remaining 1% will concern people who need to hack the kernel
> so widely they don't care about the set_sysclk removal.
A patch from those people will be always welcome.
> - fsl-asoc-card.c : *something will break since
> snd_soc_dai_set_sysclk returned code is checked*
I've already submitted a patch to ignore all ENOTSUPP.
next prev parent reply other threads:[~2017-09-13 23:01 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-09-08 5:23 [PATCH] ASoC: fsl_ssi: Override bit clock rate based on slot number Nicolin Chen
2017-09-08 5:23 ` Nicolin Chen
2017-09-08 5:42 ` Nicolin Chen
2017-09-08 5:42 ` Nicolin Chen
2017-09-08 6:14 ` Arnaud Mouiche
2017-09-08 8:41 ` Łukasz Majewski
2017-09-12 14:35 ` Arnaud Mouiche
2017-09-12 21:32 ` Nicolin Chen
2017-09-12 21:32 ` Nicolin Chen
2017-09-13 8:02 ` Arnaud Mouiche
2017-09-13 8:02 ` Arnaud Mouiche
2017-09-13 23:01 ` Nicolin Chen [this message]
2017-11-25 22:29 ` Lukasz Majewski
2017-11-25 22:29 ` Lukasz Majewski
2017-11-26 0:36 ` Nicolin Chen
2017-11-26 0:36 ` Nicolin Chen
2017-11-26 20:22 ` Lukasz Majewski
2017-11-26 20:22 ` Lukasz Majewski
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=20170913230147.GA21287@Asurada-Nvidia \
--to=nicoleotsuka@gmail.com \
--cc=alsa-devel@alsa-project.org \
--cc=arnaud.mouiche@invoxia.com \
--cc=broonie@kernel.org \
--cc=caleb@crome.org \
--cc=fabio.estevam@nxp.com \
--cc=lgirdwood@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=lukma@denx.de \
--cc=mail@maciej.szmigiero.name \
--cc=max.krummenacher@toradex.com \
--cc=mpa@pengutronix.de \
--cc=perex@perex.cz \
--cc=timur@tabi.org \
--cc=tiwai@suse.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.