All of lore.kernel.org
 help / color / mirror / Atom feed
From: Bo Shen <voice.shen@atmel.com>
To: Richard Genoud <richard.genoud@gmail.com>
Cc: "Mark Brown" <broonie@kernel.org>,
	"Nicolas Ferre" <nicolas.ferre@atmel.com>,
	"Liam Girdwood" <lgirdwood@gmail.com>,
	"Uwe Kleine-König" <u.kleine-koenig@pengutronix.de>,
	"Lars-Peter Clausen" <lars@metafoo.de>,
	linux-arm-kernel@lists.infradead.org,
	linux-kernel@vger.kernel.org, alsa-devel@alsa-project.org,
	devicetree-discuss@lists.ozlabs.org
Subject: Re: [PATCH v4 1/7] sound: sam9x5_wm8731: machine driver for at91sam9x5 wm8731 boards
Date: Wed, 10 Jul 2013 14:11:48 +0800	[thread overview]
Message-ID: <51DCFB24.4080107@atmel.com> (raw)
In-Reply-To: <1373379933-32749-2-git-send-email-richard.genoud@gmail.com>

Hi Richard,

On 7/9/2013 22:25, Richard Genoud wrote:
[snip]

> +#include <linux/module.h>
> +#include <linux/moduleparam.h>
> +#include <linux/kernel.h>
> +#include <linux/clk.h>
> +#include <linux/timer.h>
> +#include <linux/interrupt.h>
> +#include <linux/platform_device.h>
> +#include <linux/i2c.h>
> +
> +#include <linux/atmel-ssc.h>
> +
> +#include <sound/core.h>
> +#include <sound/pcm.h>
> +#include <sound/pcm_params.h>
> +#include <sound/soc.h>
> +
> +#include <asm/mach-types.h>
> +#include <mach/hardware.h>
> +#include <mach/gpio.h>
> +
> +#include "../codecs/wm8731.h"
> +#include "atmel-pcm.h"
> +#include "atmel_ssc_dai.h"

I think some of the header file include is not needed. I keep them as 
simple as following:
---8>---
#include <linux/clk.h>
#include <linux/module.h>
#include <linux/of.h>
#include <linux/of_device.h>
#include <linux/pinctrl/consumer.h>

#include <sound/soc.h>

#include "../codecs/wm8731.h"
#include "atmel_ssc_dai.h"
---<8---

> +#define MCLK_RATE 12288000
> +
> +#define DRV_NAME "sam9x5-snd-wm8731"
> +
> +/*
> + * Authorized rates are:
> + * Rate = MCLK_RATE / (n * 2)
> + * Where n is in [1..4095]
> + * (cf register SSC_CMR)
> + */
> +static unsigned int rates[] = {
> +	8000,
> +	16000,
> +	32000,
> +	48000,
> +	64000,
> +	96000,
> +};

This is decided by the codec, while not ssc when ssc in slave mode.

> +static struct snd_pcm_hw_constraint_list hw_rates = {
> +	.count = ARRAY_SIZE(rates),
> +	.list = rates,
> +};
> +

[snip]

> +
> +	at91sam9x5ek_dai.dai_fmt = snd_soc_of_parse_daifmt(np, "atmel,");

We can put this into at91sam9x5ek_dai directly, not need to parse it 
then. example as following:
---8>---
.dai_fmt = SND_SOC_DAIFMT_I2S
                 | SND_SOC_DAIFMT_NB_NF
                 | SND_SOC_DAIFMT_CBM_CFM,
---<8---

Best Regards,
Bo Shen

WARNING: multiple messages have this Message-ID (diff)
From: voice.shen@atmel.com (Bo Shen)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v4 1/7] sound: sam9x5_wm8731: machine driver for at91sam9x5 wm8731 boards
Date: Wed, 10 Jul 2013 14:11:48 +0800	[thread overview]
Message-ID: <51DCFB24.4080107@atmel.com> (raw)
In-Reply-To: <1373379933-32749-2-git-send-email-richard.genoud@gmail.com>

Hi Richard,

On 7/9/2013 22:25, Richard Genoud wrote:
[snip]

> +#include <linux/module.h>
> +#include <linux/moduleparam.h>
> +#include <linux/kernel.h>
> +#include <linux/clk.h>
> +#include <linux/timer.h>
> +#include <linux/interrupt.h>
> +#include <linux/platform_device.h>
> +#include <linux/i2c.h>
> +
> +#include <linux/atmel-ssc.h>
> +
> +#include <sound/core.h>
> +#include <sound/pcm.h>
> +#include <sound/pcm_params.h>
> +#include <sound/soc.h>
> +
> +#include <asm/mach-types.h>
> +#include <mach/hardware.h>
> +#include <mach/gpio.h>
> +
> +#include "../codecs/wm8731.h"
> +#include "atmel-pcm.h"
> +#include "atmel_ssc_dai.h"

I think some of the header file include is not needed. I keep them as 
simple as following:
---8>---
#include <linux/clk.h>
#include <linux/module.h>
#include <linux/of.h>
#include <linux/of_device.h>
#include <linux/pinctrl/consumer.h>

#include <sound/soc.h>

#include "../codecs/wm8731.h"
#include "atmel_ssc_dai.h"
---<8---

> +#define MCLK_RATE 12288000
> +
> +#define DRV_NAME "sam9x5-snd-wm8731"
> +
> +/*
> + * Authorized rates are:
> + * Rate = MCLK_RATE / (n * 2)
> + * Where n is in [1..4095]
> + * (cf register SSC_CMR)
> + */
> +static unsigned int rates[] = {
> +	8000,
> +	16000,
> +	32000,
> +	48000,
> +	64000,
> +	96000,
> +};

This is decided by the codec, while not ssc when ssc in slave mode.

> +static struct snd_pcm_hw_constraint_list hw_rates = {
> +	.count = ARRAY_SIZE(rates),
> +	.list = rates,
> +};
> +

[snip]

> +
> +	at91sam9x5ek_dai.dai_fmt = snd_soc_of_parse_daifmt(np, "atmel,");

We can put this into at91sam9x5ek_dai directly, not need to parse it 
then. example as following:
---8>---
.dai_fmt = SND_SOC_DAIFMT_I2S
                 | SND_SOC_DAIFMT_NB_NF
                 | SND_SOC_DAIFMT_CBM_CFM,
---<8---

Best Regards,
Bo Shen

  parent reply	other threads:[~2013-07-10  6:11 UTC|newest]

Thread overview: 122+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-07-08 13:29 [PATCH v2 0/5] Sound support for at91sam9x5-wm8731 based boards Richard Genoud
2013-07-08 13:29 ` Richard Genoud
2013-07-08 13:29 ` Richard Genoud
     [not found] ` <1373290193-25300-1-git-send-email-richard.genoud-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2013-07-08 13:29   ` [PATCH v2 1/5] sound: sam9x5_wm8731: machine driver for at91sam9x5 wm8731 boards Richard Genoud
2013-07-08 13:29     ` Richard Genoud
2013-07-08 13:29     ` Richard Genoud
2013-07-08 14:39     ` [alsa-devel] " Lars-Peter Clausen
2013-07-08 14:39       ` Lars-Peter Clausen
2013-07-09  7:37       ` Richard Genoud
2013-07-09  7:37         ` Richard Genoud
2013-07-08 15:07     ` Mark Brown
2013-07-08 15:07       ` Mark Brown
2013-07-08 15:07       ` Mark Brown
2013-07-09  8:19       ` Richard Genoud
2013-07-09  8:19         ` Richard Genoud
2013-07-09  8:37         ` Bo Shen
2013-07-09  8:37           ` Bo Shen
2013-07-09  9:29         ` Mark Brown
2013-07-09  9:29           ` Mark Brown
2013-07-09  9:29           ` Mark Brown
2013-07-09 10:27           ` Richard Genoud
2013-07-09 10:27             ` Richard Genoud
2013-07-09 10:27             ` Richard Genoud
2013-07-08 13:29   ` [PATCH v2 4/5] ARM: AT91: DTS: sam9x5ek: add sound configuration Richard Genoud
2013-07-08 13:29     ` Richard Genoud
2013-07-08 13:29     ` Richard Genoud
2013-07-08 13:29 ` [PATCH v2 2/5] ARM: AT91: DTS: sam9x5: add SSC DMA parameters Richard Genoud
2013-07-08 13:29   ` Richard Genoud
2013-07-08 15:07   ` Mark Brown
2013-07-08 15:07     ` Mark Brown
2013-07-08 15:07     ` Mark Brown
2013-07-09  8:27     ` Richard Genoud
2013-07-09  8:27       ` Richard Genoud
2013-07-09  8:27       ` Richard Genoud
2013-07-09  9:32       ` Mark Brown
2013-07-09  9:32         ` Mark Brown
2013-07-09  9:32         ` Mark Brown
2013-07-09  9:46         ` Richard Genoud
2013-07-09  9:46           ` Richard Genoud
2013-07-08 13:29 ` [PATCH v2 3/5] ARM: AT91: DTS: sam9x5ek: add WM8731 codec Richard Genoud
2013-07-08 13:29   ` Richard Genoud
     [not found]   ` <1373290193-25300-4-git-send-email-richard.genoud-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2013-07-08 14:36     ` [alsa-devel] " Mark Brown
2013-07-08 14:36       ` Mark Brown
2013-07-08 14:36       ` Mark Brown
2013-07-08 13:29 ` [PATCH v2 5/5] ARM: AT91: DTS: sam9x5ek: enable SSC Richard Genoud
2013-07-08 13:29   ` Richard Genoud
2013-07-08 13:53 ` [PATCH v2 0/5] Sound support for at91sam9x5-wm8731 based boards Nicolas Ferre
2013-07-08 13:53   ` Nicolas Ferre
2013-07-08 13:53   ` Nicolas Ferre
2013-07-09 12:28 ` [PATCH v3 0/7] " Richard Genoud
2013-07-09 12:28   ` Richard Genoud
     [not found]   ` <1373372929-17800-1-git-send-email-richard.genoud-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2013-07-09 12:28     ` [PATCH v3 1/7] sound: sam9x5_wm8731: machine driver for at91sam9x5 wm8731 boards Richard Genoud
2013-07-09 12:28       ` Richard Genoud
2013-07-09 12:28       ` Richard Genoud
2013-07-09 12:28   ` [PATCH v3 2/7] Documentation: DT: add sam9x5ek-wm8731 machine driver Richard Genoud
2013-07-09 12:28     ` Richard Genoud
2013-07-09 12:28   ` [PATCH v3 3/7] Documentation: DT: update atmel SSC with DMA binding Richard Genoud
2013-07-09 12:28     ` Richard Genoud
2013-07-09 13:19     ` Richard Genoud
2013-07-09 13:19       ` Richard Genoud
2013-07-09 13:20       ` Nicolas Ferre
2013-07-09 13:20         ` Nicolas Ferre
2013-07-09 13:20         ` Nicolas Ferre
2013-07-09 13:31         ` Richard Genoud
2013-07-09 13:31           ` Richard Genoud
2013-07-09 12:28   ` [PATCH v3 4/7] ARM: AT91: DTS: sam9x5: add SSC DMA parameters Richard Genoud
2013-07-09 12:28     ` Richard Genoud
2013-07-09 12:28   ` [PATCH v3 5/7] ARM: AT91: DTS: sam9x5ek: add WM8731 codec Richard Genoud
2013-07-09 12:28     ` Richard Genoud
2013-07-09 12:28   ` [PATCH v3 6/7] ARM: AT91: DTS: sam9x5ek: add sound configuration Richard Genoud
2013-07-09 12:28     ` Richard Genoud
2013-07-09 12:28   ` [PATCH v3 7/7] ARM: AT91: DTS: sam9x5ek: enable SSC Richard Genoud
2013-07-09 12:28     ` Richard Genoud
2013-07-09 14:25   ` [PATCH v4 0/7] Sound support for at91sam9x5-wm8731 based boards Richard Genoud
2013-07-09 14:25     ` Richard Genoud
2013-07-09 14:25     ` [PATCH v4 1/7] sound: sam9x5_wm8731: machine driver for at91sam9x5 wm8731 boards Richard Genoud
2013-07-09 14:25       ` Richard Genoud
2013-07-09 14:59       ` Mark Brown
2013-07-09 14:59         ` Mark Brown
2013-07-09 14:59         ` Mark Brown
2013-07-10  9:25         ` Richard Genoud
2013-07-10  9:25           ` Richard Genoud
2013-07-10 10:00           ` Mark Brown
2013-07-10 10:00             ` Mark Brown
2013-07-10 10:00             ` Mark Brown
2013-07-10  6:11       ` Bo Shen [this message]
2013-07-10  6:11         ` Bo Shen
2013-07-10  9:30         ` Richard Genoud
2013-07-10  9:30           ` Richard Genoud
2013-07-10  9:30           ` Richard Genoud
2013-07-09 14:25     ` [PATCH v4 2/7] Documentation: DT: add sam9x5ek-wm8731 machine driver Richard Genoud
2013-07-09 14:25       ` Richard Genoud
2013-07-09 15:01       ` Mark Brown
2013-07-09 15:01         ` Mark Brown
2013-07-09 15:01         ` Mark Brown
2013-07-10  9:32         ` Richard Genoud
2013-07-10  9:32           ` Richard Genoud
2013-07-10  9:32           ` Richard Genoud
     [not found]     ` <1373379933-32749-1-git-send-email-richard.genoud-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2013-07-09 14:25       ` [PATCH v4 3/7] Documentation: DT: update atmel SSC with DMA binding Richard Genoud
2013-07-09 14:25         ` Richard Genoud
2013-07-09 14:25         ` Richard Genoud
2013-07-09 15:05         ` Mark Brown
2013-07-09 15:05           ` Mark Brown
2013-07-09 15:05           ` Mark Brown
2013-07-10  9:48           ` Richard Genoud
2013-07-10  9:48             ` Richard Genoud
2013-07-10 10:01             ` Mark Brown
2013-07-10 10:01               ` Mark Brown
2013-07-09 14:25       ` [PATCH v4 4/7] ARM: AT91: DTS: sam9x5: add SSC DMA parameters Richard Genoud
2013-07-09 14:25         ` Richard Genoud
2013-07-09 14:25         ` Richard Genoud
2013-07-09 14:25     ` [PATCH v4 5/7] ARM: AT91: DTS: sam9x5ek: add WM8731 codec Richard Genoud
2013-07-09 14:25       ` Richard Genoud
2013-07-09 14:25     ` [PATCH v4 6/7] ARM: AT91: DTS: sam9x5ek: add sound configuration Richard Genoud
2013-07-09 14:25       ` Richard Genoud
2013-07-09 14:25     ` [PATCH v4 7/7] ARM: AT91: DTS: sam9x5ek: enable SSC Richard Genoud
2013-07-09 14:25       ` Richard Genoud
2013-07-09 14:42     ` [PATCH v4 0/7] Sound support for at91sam9x5-wm8731 based boards Mark Brown
2013-07-09 14:42       ` Mark Brown
2013-07-09 14:52       ` Richard Genoud
2013-07-09 14:52         ` Richard Genoud
2013-07-09 14:52         ` Richard Genoud

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=51DCFB24.4080107@atmel.com \
    --to=voice.shen@atmel.com \
    --cc=alsa-devel@alsa-project.org \
    --cc=broonie@kernel.org \
    --cc=devicetree-discuss@lists.ozlabs.org \
    --cc=lars@metafoo.de \
    --cc=lgirdwood@gmail.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=nicolas.ferre@atmel.com \
    --cc=richard.genoud@gmail.com \
    --cc=u.kleine-koenig@pengutronix.de \
    /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.