Re: [PATCH v2 1/2] ASoC: dt-bindings: fsl_rpmsg: List DAPM endpoints ignoring system suspend

From: Mark Brown
Date: Mon Sep 25 2023 - 08:25:24 EST


On Mon, Sep 25, 2023 at 07:09:45PM +0800, Chancel Liu wrote:

> + fsl,lpa-widgets:
> + $ref: /schemas/types.yaml#/definitions/non-unique-string-array
> + description: |
> + A list of DAPM endpoints which mark paths between these endpoints should
> + not be disabled when system enters in suspend state. LPA means low power
> + audio case. On asymmetric multiprocessor, there are Cortex-A core and
> + Cortex-M core, Linux is running on Cortex-A core, RTOS or other OS is
> + running on Cortex-M core. The audio hardware devices can be controlled by
> + Cortex-M. LPA can be explained as a mechanism that Cortex-A allocates a
> + large buffer and fill audio data, then Cortex-A can enter into suspend
> + for the purpose of power saving. Cortex-M continues to play the sound
> + during suspend phase of Cortex-A. When the data in buffer is consumed,
> + Cortex-M will trigger the Cortex-A to wakeup to fill data. LPA requires
> + some audio paths still enabled when Cortex-A enters into suspend.

This is a fairly standard DSP playback case as far as I can see so it
should work with DAPM without needing this obviously use case specific
stuff peering into the Linux implementation. Generally this is done by
tagging endpoint widgets and DAIs as ignore_suspend, DAPM will then
figure out the rest of the widgets in the path.

Attachment: signature.asc
Description: PGP signature