Re: [PATCH] ASoC: ssm2602: Fix ADC powerup sequencing

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

 



On Thu, May 17, 2018 at 8:30 AM, Marco Felsch <m.felsch@xxxxxxxxxxxxxx> wrote:
> From: Philipp Zabel <p.zabel@xxxxxxxxxxxxxx>
>
> According to the ssm2603 data sheet (control register sequencing), the
> digital core should be activated only after all necessary bits in the
> power register are enabled, and a delay determined by the decoupling
> capacitor on the VMID pin has passed. If the digital core is activated
> too early, or even before the ADC is powered up, audible artifacts
> appear at the beginning of the recorded signal.
>
> The digital core is also needed for playback, so when recording starts
> it may already be enabled. This means we cannot get the power sequence
> correct when we want to be able to start recording after playback.
>
> As a workaround put the MIC mute switch into the DAPM routes. This
> way we can keep the recording disabled until the MIC Bias has settled
> and thus get rid of audible artifacts.
>
> The delay we have to wait depends on a board specific capacitor
> connected to the VMID pins, so make the delay configurable in the device
> tree.
>
> Signed-off-by: Philipp Zabel <p.zabel@xxxxxxxxxxxxxx>
> Signed-off-by: Sascha Hauer <s.hauer@xxxxxxxxxxxxxx>
> Signed-off-by: Marco Felsch <m.felsch@xxxxxxxxxxxxxx>
> ---
>  .../devicetree/bindings/sound/adi,ssm2602.txt |  7 +++++
>  sound/soc/codecs/ssm2602.c                    | 30 +++++++++++++++++--
>  2 files changed, 35 insertions(+), 2 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/sound/adi,ssm2602.txt b/Documentation/devicetree/bindings/sound/adi,ssm2602.txt
> index 3b3302fe399b..9334d48c0462 100644
> --- a/Documentation/devicetree/bindings/sound/adi,ssm2602.txt
> +++ b/Documentation/devicetree/bindings/sound/adi,ssm2602.txt
> @@ -11,9 +11,16 @@ Required properties:
>    - reg : the I2C address of the device for I2C, the chip select
>            number for SPI.
>
> +Optional properties:
> +
> +  - startup-delay-us : delay between powering on and activating the digital
> +                       core, determined by the decoupling capacitor C on the
> +                      VMID pin: delay [µs] = C [µF] * 25000 / 3.5
> +

We already have similarly defined property. Please reuse that. See mmc
pwrseq binding.

Also, please split bindings to separate patch.

Rob
_______________________________________________
Alsa-devel mailing list
Alsa-devel@xxxxxxxxxxxxxxxx
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel




[Index of Archives]     [ALSA User]     [Linux Audio Users]     [Kernel Archive]     [Asterisk PBX]     [Photo Sharing]     [Linux Sound]     [Video 4 Linux]     [Gimp]     [Yosemite News]

  Powered by Linux