Signed-off-by: Ryan Lee <[email protected]>
---
Changes : Applied 10ms delay after amp software reset.
10ms guard time is required for stability.
sound/soc/codecs/max98373.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/sound/soc/codecs/max98373.c b/sound/soc/codecs/max98373.c
index 2764fae..6aaff03 100644
--- a/sound/soc/codecs/max98373.c
+++ b/sound/soc/codecs/max98373.c
@@ -730,6 +730,7 @@ static int max98373_probe(struct snd_soc_component *component)
/* Software Reset */
regmap_write(max98373->regmap,
MAX98373_R2000_SW_RESET, MAX98373_SOFT_RESET);
+ mdelay(10);
/* IV default slot configuration */
regmap_write(max98373->regmap,
@@ -818,6 +819,7 @@ static int max98373_resume(struct device *dev)
regmap_write(max98373->regmap,
MAX98373_R2000_SW_RESET, MAX98373_SOFT_RESET);
+ mdelay(10);
regcache_cache_only(max98373->regmap, false);
regcache_sync(max98373->regmap);
return 0;
--
2.7.4
On Wed, Aug 22, 2018 at 5:21 PM Ryan Lee <[email protected]> wrote:
>
> Signed-off-by: Ryan Lee <[email protected]>
> ---
> Changes : Applied 10ms delay after amp software reset.
> 10ms guard time is required for stability.
> sound/soc/codecs/max98373.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/sound/soc/codecs/max98373.c b/sound/soc/codecs/max98373.c
> index 2764fae..6aaff03 100644
> --- a/sound/soc/codecs/max98373.c
> +++ b/sound/soc/codecs/max98373.c
> @@ -730,6 +730,7 @@ static int max98373_probe(struct snd_soc_component *component)
> /* Software Reset */
> regmap_write(max98373->regmap,
> MAX98373_R2000_SW_RESET, MAX98373_SOFT_RESET);
> + mdelay(10);
Is it really necessary for the CPU to spin for 10msec here?
usleep_range() would be better solution.
>
> /* IV default slot configuration */
> regmap_write(max98373->regmap,
> @@ -818,6 +819,7 @@ static int max98373_resume(struct device *dev)
>
> regmap_write(max98373->regmap,
> MAX98373_R2000_SW_RESET, MAX98373_SOFT_RESET);
> + mdelay(10);
> regcache_cache_only(max98373->regmap, false);
> regcache_sync(max98373->regmap);
> return 0;
> --
> 2.7.4
>
Thanks.
--
Dmitry
On Wed, Aug 22, 2018 at 05:31:04PM -0700, Dmitry Torokhov wrote:
> On Wed, Aug 22, 2018 at 5:21 PM Ryan Lee <[email protected]> wrote:
> > + mdelay(10);
> Is it really necessary for the CPU to spin for 10msec here?
> usleep_range() would be better solution.
Or msleep() for that matter, it's not going ot be the end of the world
if we delay a bit too long.
On Thu, Aug 23, 2018 at 10:51:07AM +0100, Mark Brown wrote:
> On Wed, Aug 22, 2018 at 05:31:04PM -0700, Dmitry Torokhov wrote:
> > On Wed, Aug 22, 2018 at 5:21 PM Ryan Lee <[email protected]> wrote:
> > > + mdelay(10);
>
> > Is it really necessary for the CPU to spin for 10msec here?
> > usleep_range() would be better solution.
>
> Or msleep() for that matter, it's not going ot be the end of the world
> if we delay a bit too long.
Frankly, I'd rather we did not introduce extra delays. I do not know if
we use this part, but on ChromeOS we are interested in shaving as much
from the boot time as possible and 10 msecs here and 10 msecs there do
add up.
Thanks.
--
Dmitry
>-----Original Message-----
>From: Dmitry Torokhov <[email protected]>
>Sent: Thursday, August 23, 2018 5:08 PM
>To: Mark Brown <[email protected]>
>Cc: Ryan Lee <[email protected]>; Liam Girdwood
><[email protected]>; Jaroslav Kysela <[email protected]>; Takashi Iwai
><[email protected]>; Kuninori Morimoto <[email protected]>;
>[email protected]; lkml <[email protected]>;
>[email protected]
>Subject: Re: [PATCH] ASoC: max98373: Added 10ms delay after amp software
>reset
>
>EXTERNAL EMAIL
>
>
>
>On Thu, Aug 23, 2018 at 10:51:07AM +0100, Mark Brown wrote:
>> On Wed, Aug 22, 2018 at 05:31:04PM -0700, Dmitry Torokhov wrote:
>> > On Wed, Aug 22, 2018 at 5:21 PM Ryan Lee
><[email protected]> wrote:
>> > > + mdelay(10);
>>
>> > Is it really necessary for the CPU to spin for 10msec here?
>> > usleep_range() would be better solution.
>>
>> Or msleep() for that matter, it's not going ot be the end of the world
>> if we delay a bit too long.
>
>Frankly, I'd rather we did not introduce extra delays. I do not know if we use
>this part, but on ChromeOS we are interested in shaving as much from the boot
>time as possible and 10 msecs here and 10 msecs there do add up.
Thanks for all your feedback.
Let me apply usleep_range() or msleep() instead of using mdelay().
>
>Thanks.
>
>--
>Dmitry