[alsa-devel] [PATCH v5 0/2] ASoC: Intel: Skylake: large_config_get overhaul

Pierre-Louis Bossart pierre-louis.bossart at linux.intel.com
Thu Aug 8 20:54:02 CEST 2019



On 8/8/19 1:15 PM, Cezary Rojewski wrote:
> LARGE_CONFIG_GET is among the most crucial IPCs. Host is expected to
> send single request first to obtain total payload size from received
> header's data_off_size. From then on, it loops for each frame exceeding
> inbox size until entire payload is read. If entire payload is contained
> within the very first frame, no looping is performed.
> 
> LARGE_CONFIG_GET is a flexible IPC, it not only receives payload but may
> carry one with them to provide list of params DSP module should return
> info for. This behavior is usually reserved for vendors and IPC handler
> should not touch that content. To achieve that, simply pass provided
> payload and bytes to sst_ipc_tx_message_wait as a part of request.
> 
> In current state, LARGE_CONFIG_GET message handler does nothing of that,
> in consequence making it dysfunctional. Overhaul said handler allowing
> rightful king of IPCs to return back on his throne - kingdom he shares
> with his twin brother: LARGE_CONFIG_SET.
> 
> The looping has not been added in this update as payloads of such size
> do not exist in practice. Will need to create custom module specifically
> for that very case and test against it before that feature can be added.

Thanks Cezary.

For the series:

Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart at linux.intel.com>

> 
> Changes since v4:
> - Addressed Pierre's review: updated function's declaration and dropped
>    unrelated log changes
> 
> Changes since v3:
> - Split "large_config_get overhaul" patch into two segments as suggested
>    by Pierre: first remove looping, then adjust function's behavior
> 
> Changes since v2:
> - None, just for-next rebase
> 
> Changes since v1:
> - None, just for-next rebase
> 
> Cezary Rojewski (2):
>    ASoC: Intel: Skylake: Limit large_config_get to single frame
>    ASoC: Intel: Skylake: large_config_get overhaul
> 
>   sound/soc/intel/skylake/skl-messages.c |  3 +-
>   sound/soc/intel/skylake/skl-sst-ipc.c  | 54 +++++++++++---------------
>   sound/soc/intel/skylake/skl-sst-ipc.h  |  3 +-
>   3 files changed, 27 insertions(+), 33 deletions(-)
> 


More information about the Alsa-devel mailing list