All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Mukunda,Vijendar" <vijendar.mukunda@amd.com>
To: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>,
	"Limonciello, Mario" <mario.limonciello@amd.com>,
	broonie@kernel.org, vkoul@kernel.org,
	alsa-devel@alsa-project.org
Cc: Mastan.Katragadda@amd.com, Sunil-kumar.Dommati@amd.com,
	Basavaraj.Hiregoudar@amd.com, Takashi Iwai <tiwai@suse.com>,
	Liam Girdwood <lgirdwood@gmail.com>,
	open list <linux-kernel@vger.kernel.org>,
	Syed Saba Kareem <Syed.SabaKareem@amd.com>,
	arungopal.kondaveeti@amd.com
Subject: Re: [PATCH 19/19] ASoC: amd: ps: increase runtime suspend delay
Date: Fri, 13 Jan 2023 16:28:06 +0530	[thread overview]
Message-ID: <90782037-109b-b197-ca17-b7d199931f7d@amd.com> (raw)
In-Reply-To: <eb12ed5d-a9f9-cb8d-28f5-ac84c75cf441@linux.intel.com>

On 12/01/23 21:35, Pierre-Louis Bossart wrote:
>
> On 1/12/23 09:29, Limonciello, Mario wrote:
>> On 1/12/2023 08:54, Pierre-Louis Bossart wrote:
>>>
>>> On 1/12/23 05:02, Mukunda,Vijendar wrote:
>>>> On 11/01/23 21:32, Pierre-Louis Bossart wrote:
>>>>> On 1/11/23 03:02, Vijendar Mukunda wrote:
>>>>>> To avoid ACP entering into D3 state during slave enumeration and
>>>>>> initialization on two soundwire controller instances for multiple
>>>>>> codecs,
>>>>>> increase the runtime suspend delay to 3 seconds.
>>>>> You have a parent PCI device and a set of child devices for each
>>>>> manager. The parent PCI device cannot suspend before all its children
>>>>> are also suspended, so shouldn't the delay be modified at the
>>>>> manager level?
>>>>>
>>>>> Not getting what this delay is and how this would deal with a lengthy
>>>>> enumeration/initialization process.
>>>> Yes agreed. Until Child devices are suspended, parent device will
>>>> be in D0 state. We will rephrase the commit message.
>>>>
>>>> Machine driver node will be created by ACP PCI driver.
>>>> We have added delay in machine driver to make sure
>>>> two manager instances completes codec enumeration and
>>>> peripheral initialization before registering the sound card.
>>>> Without adding delay in machine driver will result early card
>>>> registration before codec initialization is completed. Manager
>>>> will enter in to bad state due to codec read/write failures.
>>>> We are intended to keep the ACP in D0 state, till sound card
>>>> is created and jack controls are initialized. To handle, at manager
>>>> level increased runtime suspend delay.
>>> This doesn't look too good. You should not assume any timing
>>> dependencies in the machine driver probe. I made that mistake in earlier
>>> versions and we had to revisit all this to make sure drivers could be
>>> bound/unbound at any time.
>> Rather than a timing dependency, could you perhaps prohibit runtime PM
>> and have a codec make a callback to indicate it's fully initialized and
>> then allow runtime PM again?
> We already have enumeration and initialization 'struct completion' that
> are used by codec drivers to know if the hardware is usable. We also
> have pm_runtime_get_sync() is the bus layer to make sure the codec is
> resumed before being accessed.
Instead of walking through codec list and checking completion status
for every codec over the link, can we have some solution where once
all codecs gets enumerated and initialized, a variable in bus instance
will be updated to know all peripherals initialized. So that we can
check this variable in machine driver.

>
> The explanations above confuse card registration and manager
> probe/initialization. These are two different things. Maybe there's
> indeed a missing part in the SoundWire PM assumptions, but I am not
> getting what the issue is.
We will rephrase the commit message.
At manager level we want to increase the delay to 3s.



  reply	other threads:[~2023-01-13 11:03 UTC|newest]

Thread overview: 170+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-01-11  9:02 [PATCH 00/19] Add soundwire support for Pink Sardine platform Vijendar Mukunda
2023-01-11  9:02 ` [PATCH 01/19] ASoC: amd: ps: create platform devices based on acp config Vijendar Mukunda
2023-01-11  9:02   ` Vijendar Mukunda
2023-01-11 13:27   ` Amadeusz Sławiński
2023-01-11 13:27     ` Amadeusz Sławiński
2023-01-11 14:13     ` Mukunda,Vijendar
2023-01-11 14:13       ` Mukunda,Vijendar
2023-01-11 13:32   ` Pierre-Louis Bossart
2023-01-11 13:32     ` Pierre-Louis Bossart
2023-01-13 12:36     ` Mukunda,Vijendar
2023-01-13 12:36       ` Mukunda,Vijendar
2023-01-13 17:11       ` Pierre-Louis Bossart
2023-01-13 17:11         ` Pierre-Louis Bossart
2023-01-16  8:02         ` Mukunda,Vijendar
2023-01-16  8:02           ` Mukunda,Vijendar
2023-01-31 13:09           ` Mukunda,Vijendar
2023-01-31 13:09             ` Mukunda,Vijendar
2023-01-31 13:24             ` Mario Limonciello
2023-01-31 13:24               ` Mario Limonciello
2023-01-31 16:00             ` Pierre-Louis Bossart
2023-01-31 16:00               ` Pierre-Louis Bossart
2023-01-31 22:57               ` Limonciello, Mario
2023-01-31 22:57                 ` Limonciello, Mario
2023-02-01  0:51                 ` Pierre-Louis Bossart
2023-02-01  0:51                   ` Pierre-Louis Bossart
2023-02-01  1:45                   ` Mukunda,Vijendar
2023-02-01  1:45                     ` Mukunda,Vijendar
2023-02-01  2:03                     ` Pierre-Louis Bossart
2023-02-01  2:03                       ` Pierre-Louis Bossart
2023-02-01  2:10                       ` Mukunda,Vijendar
2023-02-01  2:10                         ` Mukunda,Vijendar
2023-02-01  3:52                         ` Pierre-Louis Bossart
2023-02-01  6:01                           ` Mukunda,Vijendar
2023-02-01 23:08                             ` Pierre-Louis Bossart
2023-02-06  6:30                               ` Mukunda,Vijendar
2023-02-06 14:50                                 ` Pierre-Louis Bossart
2023-02-06 16:38                                   ` Mukunda,Vijendar
2023-01-11  9:02 ` [PATCH 02/19] soundwire: amd: Add support for AMD Master driver Vijendar Mukunda
2023-01-11  9:02   ` Vijendar Mukunda
2023-01-11 13:59   ` Amadeusz Sławiński
2023-01-11 13:59     ` Amadeusz Sławiński
2023-01-11 14:16     ` Mukunda,Vijendar
2023-01-11 14:16       ` Mukunda,Vijendar
2023-01-11 14:37   ` Pierre-Louis Bossart
2023-01-11 14:37     ` Pierre-Louis Bossart
2023-01-13 18:21     ` Mukunda,Vijendar
2023-01-13 18:21       ` Mukunda,Vijendar
2023-01-13 18:41       ` Pierre-Louis Bossart
2023-01-13 18:41         ` Pierre-Louis Bossart
2023-01-16  7:53         ` Mukunda,Vijendar
2023-01-16  7:53           ` Mukunda,Vijendar
2023-01-16 14:57           ` Pierre-Louis Bossart
2023-01-16 14:57             ` Pierre-Louis Bossart
2023-01-17 11:37             ` Mukunda,Vijendar
2023-01-17 11:37               ` Mukunda,Vijendar
2023-01-11  9:02 ` [PATCH 03/19] soundwire: amd: register sdw controller dai ops Vijendar Mukunda
2023-01-11  9:02   ` Vijendar Mukunda
2023-01-11 14:58   ` Pierre-Louis Bossart
2023-01-11 14:58     ` Pierre-Louis Bossart
2023-01-13 11:31     ` Mukunda,Vijendar
2023-01-13 11:31       ` Mukunda,Vijendar
2023-01-13 17:13       ` Pierre-Louis Bossart
2023-01-13 17:13         ` Pierre-Louis Bossart
2023-01-11 14:59   ` Amadeusz Sławiński
2023-01-11 14:59     ` Amadeusz Sławiński
2023-01-11  9:02 ` [PATCH 04/19] soundwire: amd: enable build for AMD soundwire master driver Vijendar Mukunda
2023-01-11  9:02   ` Vijendar Mukunda
2023-01-19 18:35   ` kernel test robot
2023-01-19 18:35     ` kernel test robot
2023-01-11  9:02 ` [PATCH 05/19] soundwire: amd: add soundwire interrupt handling Vijendar Mukunda
2023-01-11  9:02   ` Vijendar Mukunda
2023-01-11 15:19   ` Pierre-Louis Bossart
2023-01-11 15:19     ` Pierre-Louis Bossart
2023-01-19 22:00   ` kernel test robot
2023-01-19 22:00     ` kernel test robot
2023-01-11  9:02 ` [PATCH 06/19] ASoC: amd: ps: add support for soundwire interrupts in acp pci driver Vijendar Mukunda
2023-01-11  9:02   ` Vijendar Mukunda
2023-01-11  9:02 ` [PATCH 07/19] ASoC: amd: ps: add soundwire dma driver for pink sardine platform Vijendar Mukunda
2023-01-11  9:02   ` Vijendar Mukunda
2023-01-11 15:22   ` Pierre-Louis Bossart
2023-01-11 15:22     ` Pierre-Louis Bossart
2023-01-12  9:10     ` Mukunda,Vijendar
2023-01-12  9:10       ` Mukunda,Vijendar
2023-01-11  9:02 ` [PATCH 08/19] ASoC: amd: ps: add soundwire dma driver dma ops Vijendar Mukunda
2023-01-11  9:02   ` Vijendar Mukunda
2023-01-11 13:04   ` Mark Brown
2023-01-11 13:04     ` Mark Brown
2023-01-11 14:08     ` Mukunda,Vijendar
2023-01-11 14:08       ` Mukunda,Vijendar
2023-01-11 15:34   ` Pierre-Louis Bossart
2023-01-11 15:34     ` Pierre-Louis Bossart
2023-01-13 11:16     ` Mukunda,Vijendar
2023-01-13 11:16       ` Mukunda,Vijendar
2023-01-13 17:05       ` Pierre-Louis Bossart
2023-01-13 17:05         ` Pierre-Louis Bossart
2023-01-16  6:59         ` Mukunda,Vijendar
2023-01-16  6:59           ` Mukunda,Vijendar
2023-01-11  9:02 ` [PATCH 09/19] ASoC: amd: ps: add support for Soundwire DMA interrupts Vijendar Mukunda
2023-01-11  9:02   ` Vijendar Mukunda
2023-01-11 15:38   ` Pierre-Louis Bossart
2023-01-11 15:38     ` Pierre-Louis Bossart
2023-01-12 10:55     ` Mukunda,Vijendar
2023-01-12 10:55       ` Mukunda,Vijendar
2023-01-11  9:02 ` [PATCH 10/19] ASoC: amd: ps: enable Soundwire DMA driver build Vijendar Mukunda
2023-01-11  9:02   ` Vijendar Mukunda
2023-01-11  9:02 ` [PATCH 11/19] ASoC: amd: update comments in Kconfig file Vijendar Mukunda
2023-01-11  9:02   ` Vijendar Mukunda
2023-01-11  9:02 ` [PATCH 12/19] ASoC: amd: ps: Add soundwire specific checks in pci driver in pm ops Vijendar Mukunda
2023-01-11  9:02   ` Vijendar Mukunda
2023-01-11  9:02 ` [PATCH 13/19] ASoC: amd: ps: add support for runtime pm ops for soundwire dma driver Vijendar Mukunda
2023-01-11  9:02   ` Vijendar Mukunda
2023-01-11  9:02 ` [PATCH 14/19] soundwire: amd: add runtime pm ops for AMD master driver Vijendar Mukunda
2023-01-11  9:02   ` Vijendar Mukunda
2023-01-11 15:47   ` Pierre-Louis Bossart
2023-01-11 15:47     ` Pierre-Louis Bossart
2023-01-12 10:35     ` Mukunda,Vijendar
2023-01-12 10:35       ` Mukunda,Vijendar
2023-01-12 14:47       ` Pierre-Louis Bossart
2023-01-12 14:47         ` Pierre-Louis Bossart
2023-01-11  9:02 ` [PATCH 15/19] soundwire: amd: add startup and shutdown dai ops Vijendar Mukunda
2023-01-11  9:02   ` Vijendar Mukunda
2023-01-11 15:49   ` Pierre-Louis Bossart
2023-01-11 15:49     ` Pierre-Louis Bossart
2023-01-12 10:22     ` Mukunda,Vijendar
2023-01-12 10:22       ` Mukunda,Vijendar
2023-01-11  9:02 ` [PATCH 16/19] soundwire: amd: handle wake enable interrupt Vijendar Mukunda
2023-01-11  9:02   ` Vijendar Mukunda
2023-01-11 15:54   ` Pierre-Louis Bossart
2023-01-11 15:54     ` Pierre-Louis Bossart
2023-01-12 10:21     ` Mukunda,Vijendar
2023-01-12 10:21       ` Mukunda,Vijendar
2023-01-11  9:02 ` [PATCH 17/19] soundwire: amd: add pm_prepare callback and pm ops support Vijendar Mukunda
2023-01-11  9:02   ` Vijendar Mukunda
2023-01-11 15:58   ` Pierre-Louis Bossart
2023-01-11 15:58     ` Pierre-Louis Bossart
2023-01-12 10:14     ` Mukunda,Vijendar
2023-01-12 10:14       ` Mukunda,Vijendar
2023-01-12 14:50       ` Pierre-Louis Bossart
2023-01-12 14:50         ` Pierre-Louis Bossart
2023-01-11  9:02 ` [PATCH 18/19] ASoC: amd: ps: implement system level pm ops for soundwire dma driver Vijendar Mukunda
2023-01-11  9:02   ` Vijendar Mukunda
2023-01-11  9:02 ` [PATCH 19/19] ASoC: amd: ps: increase runtime suspend delay Vijendar Mukunda
2023-01-11  9:02   ` Vijendar Mukunda
2023-01-11 16:02   ` Pierre-Louis Bossart
2023-01-11 16:02     ` Pierre-Louis Bossart
2023-01-12 11:02     ` Mukunda,Vijendar
2023-01-12 11:02       ` Mukunda,Vijendar
2023-01-12 14:54       ` Pierre-Louis Bossart
2023-01-12 14:54         ` Pierre-Louis Bossart
2023-01-12 15:29         ` Limonciello, Mario
2023-01-12 15:29           ` Limonciello, Mario
2023-01-12 16:05           ` Pierre-Louis Bossart
2023-01-13 10:58             ` Mukunda,Vijendar [this message]
2023-01-13 17:33               ` Pierre-Louis Bossart
2023-01-13 19:57                 ` Mark Brown
2023-01-13 19:57                   ` Mark Brown
2023-01-16  8:35                   ` Mukunda,Vijendar
2023-01-16  8:35                     ` Mukunda,Vijendar
2023-01-16 15:02                     ` Pierre-Louis Bossart
2023-01-16 15:02                       ` Pierre-Louis Bossart
2023-01-17 11:33                       ` Mukunda,Vijendar
2023-01-17 11:33                         ` Mukunda,Vijendar
2023-01-17 11:51                         ` Pierre-Louis Bossart
2023-01-17 11:51                           ` Pierre-Louis Bossart
2023-01-17 12:16                           ` Mark Brown
2023-01-17 12:16                             ` Mark Brown
2023-01-17 12:36                             ` Pierre-Louis Bossart
2023-01-17 12:36                               ` Pierre-Louis Bossart
2023-01-11 13:36 ` [PATCH 00/19] Add soundwire support for Pink Sardine platform Pierre-Louis Bossart
2023-01-12  9:08   ` Mukunda,Vijendar

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=90782037-109b-b197-ca17-b7d199931f7d@amd.com \
    --to=vijendar.mukunda@amd.com \
    --cc=Basavaraj.Hiregoudar@amd.com \
    --cc=Mastan.Katragadda@amd.com \
    --cc=Sunil-kumar.Dommati@amd.com \
    --cc=Syed.SabaKareem@amd.com \
    --cc=alsa-devel@alsa-project.org \
    --cc=arungopal.kondaveeti@amd.com \
    --cc=broonie@kernel.org \
    --cc=lgirdwood@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mario.limonciello@amd.com \
    --cc=pierre-louis.bossart@linux.intel.com \
    --cc=tiwai@suse.com \
    --cc=vkoul@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.