From: John Hsu <KCHSU0@nuvoton.com>
To: Mark Brown <broonie@kernel.org>
Cc: WTLI@nuvoton.com, YHCHuang@nuvoton.com,
alsa-devel@alsa-project.org, CTLIN0@nuvoton.com,
lgirdwood@gmail.com
Subject: Re: [PATCH] ASoC: nau8810: Add driver for Nuvoton codec chip NAU88C10
Date: Wed, 17 Aug 2016 08:34:15 +0800 [thread overview]
Message-ID: <57B3B107.9080702@nuvoton.com> (raw)
In-Reply-To: <20160816103854.GP9347@sirena.org.uk>
On 8/16/2016 6:38 PM, Mark Brown wrote:
> On Tue, Aug 16, 2016 at 11:57:17AM +0800, John Hsu wrote:
>
>> On 8/15/2016 10:06 PM, Mark Brown wrote:
>>
>>> On Mon, Aug 15, 2016 at 05:02:23PM +0800, John Hsu wrote:
>>>
>
>
>>> This looks very good overall, a few fairly small things but nothing too
>>> major.
>>>
>
>
>>>> + val = (u16 *)ucontrol->value.bytes.data;
>>>> + reg = NAU8810_REG_EQ1;
>>>> + for (i = 0; i < params->max / sizeof(u16); i++) {
>>>> + regmap_read(nau8810->regmap, reg + i, ®_val);
>>>> + reg_val = cpu_to_be16(reg_val);
>>>> + memcpy(val + i, ®_val, sizeof(reg_val));
>>>> + }
>>>>
>
>
>>> This looks like it's trying to do regmap_raw_read()? Raw I/O bypasses
>>> all the endianness conversions.
>>>
>
>
>> We also try regmap_raw_read() but it fails because the value width
>> is 9 bits. Therefor, we make the functions by ourselves.
>>
>
> You're not open coding this, this is using regmap!
>
Yes, the regmap raw read will use regmap finally. But it needs
format_val to make the value and it is not registered because
no such value width, 9 bits. The system will crash if the driver
uses regmap_raw_read with 9 bits value.
>
>>>> +static struct snd_soc_codec_driver soc_codec_dev_nau8810 = {
>>>>
>
>
>>>> + .controls = nau8810_snd_controls,
>>>> + .num_controls = ARRAY_SIZE(nau8810_snd_controls),
>>>> + .dapm_widgets = nau8810_dapm_widgets,
>>>> + .num_dapm_widgets = ARRAY_SIZE(nau8810_dapm_widgets),
>>>> + .dapm_routes = nau8810_dapm_routes,
>>>> + .num_dapm_routes = ARRAY_SIZE(nau8810_dapm_routes),
>>>>
>
>
>>> Move this data into the component driver please.
>>>
>
>
>> I don't understand about it clearly. Is the snd_soc_codec_driver
>> not component driver? Could you tell me more details? Thank you.
>>
>
> You need to set these values in the actual component driver struct, not
> directly in the CODEC driver. Look at the series of changes
> Morimoto-san made recently for this.
>
Thank you for the guide. I find the component driver as the
following. I'll change it.
+ .component_driver = {
+ COMPONENT_FUNC(controls, wm8978_snd_controls),
next prev parent reply other threads:[~2016-08-17 0:34 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-08-15 9:02 [PATCH] ASoC: nau8810: Add driver for Nuvoton codec chip NAU88C10 John Hsu
2016-08-15 14:06 ` Mark Brown
2016-08-16 3:57 ` John Hsu
2016-08-16 10:38 ` Mark Brown
2016-08-17 0:34 ` John Hsu [this message]
2016-08-17 9:42 ` Mark Brown
2016-08-18 1:04 ` John Hsu
2016-08-18 18:24 ` Mark Brown
2016-08-19 2:51 ` John Hsu
-- strict thread matches above, loose matches on Subject: below --
2016-08-19 9:24 John Hsu
2016-06-17 8:40 John Hsu
2016-06-27 17:15 ` Mark Brown
2016-07-01 3:34 ` John Hsu
2016-07-01 10:04 ` Mark Brown
2016-07-04 3:34 ` John Hsu
2016-08-05 12:08 ` Mark Brown
2016-08-08 2:27 ` John Hsu
2016-08-08 15:18 ` Mark Brown
2016-08-09 2:09 ` John Hsu
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=57B3B107.9080702@nuvoton.com \
--to=kchsu0@nuvoton.com \
--cc=CTLIN0@nuvoton.com \
--cc=WTLI@nuvoton.com \
--cc=YHCHuang@nuvoton.com \
--cc=alsa-devel@alsa-project.org \
--cc=broonie@kernel.org \
--cc=lgirdwood@gmail.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).