[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <7c7b334d-ae5c-35f6-9cf3-04700677211f@linaro.org>
Date: Tue, 17 Mar 2020 15:07:45 +0000
From: Srinivas Kandagatla <srinivas.kandagatla@...aro.org>
To: Pierre-Louis Bossart <pierre-louis.bossart@...ux.intel.com>,
alsa-devel@...a-project.org
Cc: linux-kernel@...r.kernel.org, tiwai@...e.de, broonie@...nel.org,
vkoul@...nel.org, gregkh@...uxfoundation.org, jank@...ence.com,
slawomir.blauciak@...el.com,
Bard liao <yung-chuan.liao@...ux.intel.com>,
Rander Wang <rander.wang@...ux.intel.com>,
Ranjani Sridharan <ranjani.sridharan@...ux.intel.com>,
Hui Wang <hui.wang@...onical.com>,
Sanyog Kale <sanyog.r.kale@...el.com>
Subject: Re: [PATCH] soundwire: stream: only change state if needed
On 17/03/2020 13:19, Pierre-Louis Bossart wrote:
>
>
> On 3/17/20 8:04 AM, Srinivas Kandagatla wrote:
>>
>>
>> On 17/03/2020 12:22, Pierre-Louis Bossart wrote:
>>>
>>> The change below would be an error case for Intel, so it's probably
>>> better if we go with your suggestion. You have a very specific state
>>> handling due to your power amps and it's probably better to keep it
>>> platform-specific.
>>
>> Just trying to understand, why would it be error for Intel case?
>>
>> IMO, If stream state is SDW_STREAM_ENABLED that also implicit that its
>> prepared too. Similar thing with SDW_STREAM_DEPREPARED.
>> Isn't it?
>
> the stream state is a scalar value, not a mask. The state machine only
> allows transition from CONFIGURED TO PREPARED or from DEPREPARED TO
> PREPARED, or DISABLED to PREPARED.
> There is no allowed transition from ENABLED TO PREPARED, you have to go
> through the DISABLED state and make sure a bank switch occurred, and
> re-do a bank switch to prepare again.
I agree with you if are on single dai case. Am happy to move to stream
handling to machine driver for now.
But this also means that in cases like multi-codec its not recommended
to call sdw_prepare and sdw_enable in a single function from codec.
Which might be worth documenting.
--srini
Powered by blists - more mailing lists