Hi Broonie
-----Original Message----- From: Mark Brown broonie@kernel.org Sent: Tuesday, August 20, 2024 12:07 AM To: Ding, Shenghao shenghao-ding@ti.com Cc: andriy.shevchenko@linux.intel.com; lgirdwood@gmail.com; perex@perex.cz; pierre-louis.bossart@linux.intel.com; 13916275206@139.com; zhourui@huaqin.com; alsa-devel@alsa-project.org; Salazar, Ivan i-salazar@ti.com; liam.r.girdwood@intel.com; Yue, Jaden jaden-yue@ti.com; yung-chuan.liao@linux.intel.com; Rao, Dipa dipa@ti.com; yuhsuan@google.com; Lo, Henry henry.lo@ti.com; tiwai@suse.de; Xu, Baojun baojun.xu@ti.com; Baojun.Xu@fpt.com; Chadha, Jasjot Singh j-chadha@ti.com; judyhsiao@google.com; Navada Kanyana, Mukund navada@ti.com; cujomalainey@google.com; Kutty, Aanya aanya@ti.com; Mahmud, Nayeem nayeem.mahmud@ti.com; savyasanchi.shukla@netradyne.com; flaviopr@microsoft.com; Ji, Jesse <jesse- ji@ti.com>; darren.ye@mediatek.com; antheas.dk@gmail.com; Jerry2.Huang@lcfuturecenter.com; jim.shil@goertek.com Subject: [EXTERNAL] Re: [PATCH v1] ASoc: tas2781: fixed the issue that the chip do not shutdown immediatly after aplay stopped
On Mon, Aug 19, 2024 at 10:10:12PM +0800, Shenghao Ding wrote:
Issue reported from customer that the chip do not shutdown after aplay stopped until 6 mins later. Drop tasdevice_dapm_event and implement .stream_mute in the tasdevice_dai_ops.
Six minutes sounds like a usersrpace issue with userspace sitting playing silence for a long time rather than a driver issue. By default DAPM does defer powerdown, but only by seconds not minutes.
- /* Codec Lock Release*/
- mutex_unlock(&tas_priv->codec_lock);
- /* Codec Lock/UnLock */
- guard(mutex)(&tas_priv->codec_lock);
- tasdevice_tuning_switch(tas_priv, mute);
This is a much heavier weight operation than we're expecting for a mute, it should usually just be literally muting - one or two register writes, not a power up/down sequence
Can the power on is still kept in DAMP, and move the power off(Only set the register 0x2 to 0xe) into the .mute_stream?