[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <48f891bc-d8f6-2634-6dd1-6ea4f14ae6a3@nvidia.com>
Date: Tue, 14 Dec 2021 12:52:24 +0530
From: Sameer Pujar <spujar@...dia.com>
To: Dmitry Osipenko <digetx@...il.com>, tiwai@...e.com,
broonie@...nel.org, lgirdwood@...il.com, thierry.reding@...il.com,
perex@...ex.cz
Cc: jonathanh@...dia.com, alsa-devel@...a-project.org,
devicetree@...r.kernel.org, linux-tegra@...r.kernel.org,
linux-kernel@...r.kernel.org, stable@...r.kernel.org,
Mohan Kumar <mkumard@...dia.com>, robh+dt@...nel.org
Subject: Re: [PATCH 1/3] ALSA: hda/tegra: Skip reset on BPMP devices
On 12/14/2021 11:39 AM, Dmitry Osipenko wrote:
> 14.12.2021 09:02, Sameer Pujar пишет:
>>
>> On 12/8/2021 5:35 PM, Dmitry Osipenko wrote:
>>> 08.12.2021 08:22, Sameer Pujar пишет:
>>>> On 12/7/2021 11:32 PM, Dmitry Osipenko wrote
>>>>> If display is already active, then shared power domain is already
>>>>> ungated.
>>>> If display is already active, then shared power domain is already
>>>> ungated. HDA reset is already applied during this ungate. In other
>>>> words, HDA would be reset as well when display ungates power-domain.
>>> Now, if you'll reload the HDA driver module while display is active,
>>> you'll get a different reset behaviour. HDA hardware will be reset on
>>> pre-T186, on T186+ it won't be reset.
>> How the reset behavior is different? At this point when HDA driver is
>> loaded the HW is already reset during display ungate. What matters,
>> during HDA driver load, is whether the HW is in predictable state or not
>> and the answer is yes. So I am not sure what problem you are referring
>> to. Question is, if BPMP already ensures this, then why driver needs to
>> take care of it.
> 1. Enable display
> 2. Play audio over HDMI
> 3. HDA hardware now is in dirty state
Why this would be a dirty state? It is rather a functional state. Isn't
it? Power-domain is ON while all this happens.
Another point is, with present logic the reset is not applied for every
runtime PM resume of HDA device, which is confusing. It depends on the
state of 'chip->running' flag and I don't see this getting cleared
anywhere. Would you say subsequent HDA playback happen under a dirty state?
Powered by blists - more mailing lists