From: Vasily Khoruzhick <anarsoul@gmail.com>
To: Maxime Ripard <maxime.ripard@bootlin.com>
Cc: Mark Rutland <mark.rutland@arm.com>,
devicetree@vger.kernel.org, alsa-devel@alsa-project.org,
Mylene JOSSERAND <mylene.josserand@free-electrons.com>,
Takashi Iwai <tiwai@suse.com>, Rob Herring <robh+dt@kernel.org>,
Liam Girdwood <lgirdwood@gmail.com>,
Marcus Cooper <codekipper@gmail.com>,
Mark Brown <broonie@kernel.org>,
linux-arm-kernel@lists.infradead.org,
Jerome Brunet <jbrunet@baylibre.com>
Subject: Re: [PATCH v2 2/9] ASoC: sun8i-codec: Don't hardcode BCLK / LRCK ratio
Date: Mon, 15 Oct 2018 08:14:25 -0700 [thread overview]
Message-ID: <8376208.BHej6axeOA@anarsoul-thinkpad> (raw)
In-Reply-To: <20181015070714.tglgw5dym6hraejz@flea>
On Monday, October 15, 2018 12:07:14 AM PDT Maxime Ripard wrote:
> On Sat, Oct 13, 2018 at 09:53:22AM -0700, Vasily Khoruzhick wrote:
> > BCLK / LRCK ratio should be sample size * channels, but it was
> > hardcoded to 32 (0x1 is 32 as per A33 and A64 datasheets).
> >
> > Calculate it basing on sample size and number of channels.
> >
> > Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com>
> > ---
> >
> > sound/soc/sunxi/sun8i-codec.c | 35 ++++++++++++++++++++++++++++++-----
> > 1 file changed, 30 insertions(+), 5 deletions(-)
> >
> > diff --git a/sound/soc/sunxi/sun8i-codec.c b/sound/soc/sunxi/sun8i-codec.c
> > index fb37dd927e33..e681e194ad4c 100644
> > --- a/sound/soc/sunxi/sun8i-codec.c
> > +++ b/sound/soc/sunxi/sun8i-codec.c
> > @@ -52,7 +52,6 @@
> >
> > #define SUN8I_AIF1CLK_CTRL_AIF1_LRCK_INV 13
> > #define SUN8I_AIF1CLK_CTRL_AIF1_BCLK_DIV 9
> > #define SUN8I_AIF1CLK_CTRL_AIF1_LRCK_DIV 6
> >
> > -#define SUN8I_AIF1CLK_CTRL_AIF1_LRCK_DIV_16 (1 << 6)
> >
> > #define SUN8I_AIF1CLK_CTRL_AIF1_WORD_SIZ 4
> > #define SUN8I_AIF1CLK_CTRL_AIF1_WORD_SIZ_16 (1 << 4)
> > #define SUN8I_AIF1CLK_CTRL_AIF1_DATA_FMT 2
> >
> > @@ -257,8 +256,8 @@ static int sun8i_set_fmt(struct snd_soc_dai *dai,
> > unsigned int fmt)>
> > }
> >
> > struct sun8i_codec_clk_div {
> >
> > - u8 div;
> > - u8 val;
> > + unsigned int div;
> > + u8 val;
> >
> > };
> >
> > static const struct sun8i_codec_clk_div sun8i_codec_bclk_div[] = {
> >
> > @@ -300,12 +299,33 @@ static u8 sun8i_codec_get_bclk_div(struct
> > sun8i_codec *scodec,>
> > return best_val;
> >
> > }
> >
> > +static const struct sun8i_codec_clk_div sun8i_codec_lrck_div[] = {
> > + { .div = 16, .val = 0 },
> > + { .div = 32, .val = 1 },
> > + { .div = 64, .val = 2 },
> > + { .div = 128, .val = 3 },
> > + { .div = 256, .val = 4 },
> > +};
>
> That's log2(div) - 4, right? There's no need to store the table if so.
OK, will fix in v3
> Maxime
WARNING: multiple messages have this Message-ID (diff)
From: anarsoul@gmail.com (Vasily Khoruzhick)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v2 2/9] ASoC: sun8i-codec: Don't hardcode BCLK / LRCK ratio
Date: Mon, 15 Oct 2018 08:14:25 -0700 [thread overview]
Message-ID: <8376208.BHej6axeOA@anarsoul-thinkpad> (raw)
In-Reply-To: <20181015070714.tglgw5dym6hraejz@flea>
On Monday, October 15, 2018 12:07:14 AM PDT Maxime Ripard wrote:
> On Sat, Oct 13, 2018 at 09:53:22AM -0700, Vasily Khoruzhick wrote:
> > BCLK / LRCK ratio should be sample size * channels, but it was
> > hardcoded to 32 (0x1 is 32 as per A33 and A64 datasheets).
> >
> > Calculate it basing on sample size and number of channels.
> >
> > Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com>
> > ---
> >
> > sound/soc/sunxi/sun8i-codec.c | 35 ++++++++++++++++++++++++++++++-----
> > 1 file changed, 30 insertions(+), 5 deletions(-)
> >
> > diff --git a/sound/soc/sunxi/sun8i-codec.c b/sound/soc/sunxi/sun8i-codec.c
> > index fb37dd927e33..e681e194ad4c 100644
> > --- a/sound/soc/sunxi/sun8i-codec.c
> > +++ b/sound/soc/sunxi/sun8i-codec.c
> > @@ -52,7 +52,6 @@
> >
> > #define SUN8I_AIF1CLK_CTRL_AIF1_LRCK_INV 13
> > #define SUN8I_AIF1CLK_CTRL_AIF1_BCLK_DIV 9
> > #define SUN8I_AIF1CLK_CTRL_AIF1_LRCK_DIV 6
> >
> > -#define SUN8I_AIF1CLK_CTRL_AIF1_LRCK_DIV_16 (1 << 6)
> >
> > #define SUN8I_AIF1CLK_CTRL_AIF1_WORD_SIZ 4
> > #define SUN8I_AIF1CLK_CTRL_AIF1_WORD_SIZ_16 (1 << 4)
> > #define SUN8I_AIF1CLK_CTRL_AIF1_DATA_FMT 2
> >
> > @@ -257,8 +256,8 @@ static int sun8i_set_fmt(struct snd_soc_dai *dai,
> > unsigned int fmt)>
> > }
> >
> > struct sun8i_codec_clk_div {
> >
> > - u8 div;
> > - u8 val;
> > + unsigned int div;
> > + u8 val;
> >
> > };
> >
> > static const struct sun8i_codec_clk_div sun8i_codec_bclk_div[] = {
> >
> > @@ -300,12 +299,33 @@ static u8 sun8i_codec_get_bclk_div(struct
> > sun8i_codec *scodec,>
> > return best_val;
> >
> > }
> >
> > +static const struct sun8i_codec_clk_div sun8i_codec_lrck_div[] = {
> > + { .div = 16, .val = 0 },
> > + { .div = 32, .val = 1 },
> > + { .div = 64, .val = 2 },
> > + { .div = 128, .val = 3 },
> > + { .div = 256, .val = 4 },
> > +};
>
> That's log2(div) - 4, right? There's no need to store the table if so.
OK, will fix in v3
> Maxime
next prev parent reply other threads:[~2018-10-15 15:14 UTC|newest]
Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-10-13 16:53 [PATCH v2 0/9] Add support for audiocodec in Allwinner A64 Vasily Khoruzhick
2018-10-13 16:53 ` Vasily Khoruzhick
2018-10-13 16:53 ` [PATCH v2 1/9] ASoC: sun4i-i2s: Add compatibility with A64 codec I2S Vasily Khoruzhick
2018-10-13 16:53 ` Vasily Khoruzhick
2018-10-15 8:18 ` Maxime Ripard
2018-10-15 8:18 ` Maxime Ripard
2018-10-19 16:14 ` Vasily Khoruzhick
2018-10-19 16:14 ` Vasily Khoruzhick
2018-10-19 16:16 ` Vasily Khoruzhick
2018-10-19 16:16 ` Vasily Khoruzhick
2018-10-13 16:53 ` [PATCH v2 2/9] ASoC: sun8i-codec: Don't hardcode BCLK / LRCK ratio Vasily Khoruzhick
2018-10-13 16:53 ` Vasily Khoruzhick
2018-10-15 7:07 ` Maxime Ripard
2018-10-15 7:07 ` Maxime Ripard
2018-10-15 15:14 ` Vasily Khoruzhick [this message]
2018-10-15 15:14 ` Vasily Khoruzhick
2018-10-13 16:53 ` [PATCH v2 3/9] ASoC: sun8i-codec-analog: split regmap code into separate driver Vasily Khoruzhick
2018-10-13 16:53 ` Vasily Khoruzhick
2018-10-15 8:24 ` Maxime Ripard
2018-10-15 8:24 ` Maxime Ripard
2018-10-13 16:53 ` [PATCH v2 4/9] ASoC: dt-binding: Add bindings for Allwinner A64 codec's analog path controls Vasily Khoruzhick
2018-10-13 16:53 ` Vasily Khoruzhick
2018-10-15 8:18 ` Maxime Ripard
2018-10-15 8:18 ` Maxime Ripard
2018-10-13 16:53 ` [PATCH v2 5/9] ASoC: sunxi: Add new driver " Vasily Khoruzhick
2018-10-13 16:53 ` Vasily Khoruzhick
2018-10-15 8:24 ` Maxime Ripard
2018-10-15 8:24 ` Maxime Ripard
2018-10-13 16:53 ` [PATCH v2 6/9] ASoC: sunxi: allow the sun8i-codec driver to be built on ARM64 Vasily Khoruzhick
2018-10-13 16:53 ` Vasily Khoruzhick
2018-10-15 7:31 ` Maxime Ripard
2018-10-15 7:31 ` Maxime Ripard
2018-10-13 16:53 ` [PATCH v2 7/9] arm64: dts: allwinner: a64: add nodes necessary for analog sound support Vasily Khoruzhick
2018-10-13 16:53 ` Vasily Khoruzhick
2018-10-13 16:53 ` [PATCH v2 8/9] arm64: dts: allwinner: a64: enable sound on Pine64 and SoPine Vasily Khoruzhick
2018-10-13 16:53 ` Vasily Khoruzhick
2018-10-13 16:53 ` [PATCH v2 9/9] arm64: dts: allwinner: a64: enable sound on Pinebook Vasily Khoruzhick
2018-10-13 16:53 ` Vasily Khoruzhick
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=8376208.BHej6axeOA@anarsoul-thinkpad \
--to=anarsoul@gmail.com \
--cc=alsa-devel@alsa-project.org \
--cc=broonie@kernel.org \
--cc=codekipper@gmail.com \
--cc=devicetree@vger.kernel.org \
--cc=jbrunet@baylibre.com \
--cc=lgirdwood@gmail.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=mark.rutland@arm.com \
--cc=maxime.ripard@bootlin.com \
--cc=mylene.josserand@free-electrons.com \
--cc=robh+dt@kernel.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.