[alsa-devel] [PATCH v3 4/9] ASoC: sun4i-i2s: Fix offset mask
Chen-Yu Tsai
wens at csie.org
Fri Dec 21 17:54:48 CET 2018
On Fri, Dec 21, 2018 at 11:21 PM <codekipper at gmail.com> wrote:
>
> From: Marcus Cooper <codekipper at gmail.com>
>
> Also add offset to RX channel select
>
> Signed-off-by: Marcus Cooper <codekipper at gmail.com>
Commit log seems a bit lacking. You could probably explain how you
found this, either when comparing datasheet macros, or some actual
error manifested and you "heard" it. You could also state what the
fixed outcome should be.
Also please add a fixes tag.
The RX channel select offset should be added as a separate patch,
also with an explanation on how you found this missing, and a fixes
tag.
ChenYu
> ---
> sound/soc/sunxi/sun4i-i2s.c | 6 +++++-
> 1 file changed, 5 insertions(+), 1 deletion(-)
>
> diff --git a/sound/soc/sunxi/sun4i-i2s.c b/sound/soc/sunxi/sun4i-i2s.c
> index adb988ae9ac5..93a484d7e228 100644
> --- a/sound/soc/sunxi/sun4i-i2s.c
> +++ b/sound/soc/sunxi/sun4i-i2s.c
> @@ -110,7 +110,7 @@
>
> #define SUN8I_I2S_TX_CHAN_MAP_REG 0x44
> #define SUN8I_I2S_TX_CHAN_SEL_REG 0x34
> -#define SUN8I_I2S_TX_CHAN_OFFSET_MASK GENMASK(13, 11)
> +#define SUN8I_I2S_TX_CHAN_OFFSET_MASK GENMASK(13, 12)
> #define SUN8I_I2S_TX_CHAN_OFFSET(offset) (offset << 12)
> #define SUN8I_I2S_TX_CHAN_EN_MASK GENMASK(11, 4)
> #define SUN8I_I2S_TX_CHAN_EN(num_chan) (((1 << num_chan) - 1) << 4)
> @@ -482,6 +482,10 @@ static int sun4i_i2s_set_fmt(struct snd_soc_dai *dai, unsigned int fmt)
> regmap_update_bits(i2s->regmap, SUN8I_I2S_TX_CHAN_SEL_REG,
> SUN8I_I2S_TX_CHAN_OFFSET_MASK,
> SUN8I_I2S_TX_CHAN_OFFSET(offset));
> +
> + regmap_update_bits(i2s->regmap, SUN8I_I2S_RX_CHAN_SEL_REG,
> + SUN8I_I2S_TX_CHAN_OFFSET_MASK,
> + SUN8I_I2S_TX_CHAN_OFFSET(offset));
> }
>
> regmap_field_write(i2s->field_fmt_mode, val);
> --
> 2.20.1
>
More information about the Alsa-devel
mailing list