RE: [PATCH] ASoC: max98373: Added Amplifier Driver

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




Hi Kuninori Miromoto,

>-----Original Message-----
>From: Kuninori Morimoto [mailto:kuninori.morimoto.gx@xxxxxxxxxxx]
>Sent: Thursday, December 21, 2017 6:24 PM
>To: Ryan Lee <RyanS.Lee@xxxxxxxxxxxxxxxxxxx>
>Cc: lgirdwood@xxxxxxxxx; broonie@xxxxxxxxxx; robh+dt@xxxxxxxxxx;
>mark.rutland@xxxxxxx; perex@xxxxxxxx; tiwai@xxxxxxxx; arnd@xxxxxxxx;
>afd@xxxxxx; robert.jarzmik@xxxxxxx; supercraig0719@xxxxxxxxx;
>jbrunet@xxxxxxxxxxxx; dannenberg@xxxxxx; romain.perier@xxxxxxxxxxxxx;
>bryce.ferguson@xxxxxxxxxxxxxxxxxxx; m-stecklein@xxxxxx; alsa-devel@alsa-
>project.org; devicetree@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx;
>ryan.lee.maxim@xxxxxxxxx
>Subject: Re: [PATCH] ASoC: max98373: Added Amplifier Driver
>
>EXTERNAL EMAIL
>
>
>
>Hi Ryan
>
>> Signed-off-by: Ryan Lee <ryans.lee@xxxxxxxxxxxxxxxxxxx>
>> ---
>>
>> Created max98373 amplifier driver.
>>
>>  .../devicetree/bindings/sound/max98373.txt         |  43 +
>>  sound/soc/codecs/Kconfig                           |   5 +
>>  sound/soc/codecs/Makefile                          |   2 +
>>  sound/soc/codecs/max98373.c                        | 996
>+++++++++++++++++++++
>>  sound/soc/codecs/max98373.h                        | 225 +++++
>>  5 files changed, 1271 insertions(+)
>>  create mode 100644
>> Documentation/devicetree/bindings/sound/max98373.txt
>>  create mode 100644 sound/soc/codecs/max98373.c  create mode 100644
>> sound/soc/codecs/max98373.h
>(snip)
>> +struct max98373_priv {
>> +     struct regmap *regmap;
>> +     struct snd_soc_codec *codec;
>> +     unsigned int sysclk;
>> +     unsigned int v_slot;
>> +     unsigned int i_slot;
>> +     unsigned int spkfb_slot;
>> +     bool interleave_mode;
>> +     unsigned int ch_size;
>> +     unsigned int iface;
>> +     bool tdm_mode;
>> +};
>
>About this max98373->codec.
>This user is only max98373_set_clock(), and it is called from
>max98373_dai_hw_params().
>You are getting *codec from dai->codec in this function, and max98373 is
>came from it.
>This means, we can remove max98373->codec ?

Thanks for your feedback.
I will remove max98373->codec and change related things.

>
>About max98373->regmap.
>You are using devm_regmap_init_i2c(), and keeping it on max98373.
>Can you check snd_soc_component_add() which is called from
>snd_soc_add_component().
>It will set component->regmap if you called devm_regmap_init_i2c().
>I think you can use snd_soc_component_read/write instead of
>regmap_read/write.
>Then, we can remove max98373->regmap too ?
>Ahh, you want to check Revision ID.
>then, snd_soc_component_init_regmap() can help you ?

I'm sorry but I don't fully understand the benefit of this.
Keeping regmap information in private driver data is very common and I can see many ASoC drivers are using it.
I was able to see only a few driver use ' snd_soc_component_read'.
I would like to keep regmap_read/write if it is still acceptable.

>
>Best regards
>---
>Kuninori Morimoto
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux