lkml.org 
[lkml]   [2018]   [Feb]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    Date
    SubjectRe: [PATCH 4/8] ASoC: samsung: i2s: Define the parameters list for SAMSUNG_I2S_OPCLK
    On Mon, Feb 5, 2018 at 4:43 PM, Sylwester Nawrocki
    <s.nawrocki@samsung.com> wrote:
    > The SAMSUNG_I2S_OPCLK is not currently used by any card driver thus we can
    > safely change semantics of 'dir' argument of the I2S set_sysclk() callback.
    > Now an anumeration is exported instead of directly using register bitfield
    > values.
    >
    > Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
    > ---
    > sound/soc/samsung/i2s-regs.h | 11 ++++++-----
    > sound/soc/samsung/i2s.c | 2 +-
    > sound/soc/samsung/i2s.h | 11 ++++++++---
    > 3 files changed, 15 insertions(+), 9 deletions(-)
    >
    > diff --git a/sound/soc/samsung/i2s-regs.h b/sound/soc/samsung/i2s-regs.h
    > index fe6914005494..964985ea2e80 100644
    > --- a/sound/soc/samsung/i2s-regs.h
    > +++ b/sound/soc/samsung/i2s-regs.h
    > @@ -65,11 +65,12 @@
    > #define CON_RXDMA_ACTIVE (1 << 1)
    > #define CON_ACTIVE (1 << 0)
    >
    > -#define MOD_OPCLK_CDCLK_OUT (0 << 30)
    > -#define MOD_OPCLK_CDCLK_IN (1 << 30)
    > -#define MOD_OPCLK_BCLK_OUT (2 << 30)
    > -#define MOD_OPCLK_PCLK (3 << 30)
    > -#define MOD_OPCLK_MASK (3 << 30)
    > +#define MOD_OPCLK_SHIFT 30
    > +#define MOD_OPCLK_CDCLK_OUT (0 << MOD_OPCLK_SHIFT)
    > +#define MOD_OPCLK_CDCLK_IN (1 << MOD_OPCLK_SHIFT)
    > +#define MOD_OPCLK_BCLK_OUT (2 << MOD_OPCLK_SHIFT)
    > +#define MOD_OPCLK_PCLK (3 << MOD_OPCLK_SHIFT)
    > +#define MOD_OPCLK_MASK (3 << MOD_OPCLK_SHIFT)
    > #define MOD_TXS_IDMA (1 << 28) /* Sec_TXFIFO use I-DMA */
    >
    > #define MOD_BLCS_SHIFT 26
    > diff --git a/sound/soc/samsung/i2s.c b/sound/soc/samsung/i2s.c
    > index 1c05170e4999..6d768cdb4326 100644
    > --- a/sound/soc/samsung/i2s.c
    > +++ b/sound/soc/samsung/i2s.c
    > @@ -489,7 +489,7 @@ static int i2s_set_sysclk(struct snd_soc_dai *dai,
    > switch (clk_id) {
    > case SAMSUNG_I2S_OPCLK:
    > mask = MOD_OPCLK_MASK;
    > - val = dir;
    > + val = (dir << MOD_OPCLK_SHIFT) & MOD_OPCLK_MASK;
    > break;
    > case SAMSUNG_I2S_CDCLK:
    > mask = 1 << i2s_regs->cdclkcon_off;
    > diff --git a/sound/soc/samsung/i2s.h b/sound/soc/samsung/i2s.h
    > index 79781de2f247..a9832a9555cb 100644
    > --- a/sound/soc/samsung/i2s.h
    > +++ b/sound/soc/samsung/i2s.h
    > @@ -16,11 +16,16 @@
    > #define SAMSUNG_I2S_DAI "samsung-i2s"
    > #define SAMSUNG_I2S_DAI_SEC "samsung-i2s-sec"
    >
    > -#define SAMSUNG_I2S_DIV_BCLK 1
    > +#define SAMSUNG_I2S_DIV_BCLK 1
    >
    > -#define SAMSUNG_I2S_RCLKSRC_0 0
    > -#define SAMSUNG_I2S_RCLKSRC_1 1
    > +#define SAMSUNG_I2S_RCLKSRC_0 0
    > +#define SAMSUNG_I2S_RCLKSRC_1 1
    > #define SAMSUNG_I2S_CDCLK 2
    > +/* Operation clock for IIS logic */
    > #define SAMSUNG_I2S_OPCLK 3
    > +#define SAMSUNG_I2S_OPCLK_CDCLK_OUT 0 /* CODEC clock out */
    > +#define SAMSUNG_I2S_OPCLK_CDCLK_IN 1 /* CODEC clock in */
    > +#define SAMSUNG_I2S_OPCLK_BCLK_OUT 2 /* Bit clock out */
    > +#define SAMSUNG_I2S_OPCLK_PCLK 3 /* Audio bus clock */
    >
    > #endif /* __SND_SOC_SAMSUNG_I2S_H */

    This part of patch seems to be unrelated (and it includes some cleanups).

    Best regards,
    Krzysztof

    \
     
     \ /
      Last update: 2018-02-06 13:27    [W:4.203 / U:0.068 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site