On 8/19/2020 8:23 PM, Takashi Iwai wrote:
External email: Use caution opening links or attachments
On Wed, 19 Aug 2020 16:44:33 +0200, Sameer Pujar wrote:
By default 'sdo_limit' is initialized with a default value of '8' as per spec. This is overridden in cases where a different value is required. However this is getting reset when snd_hdac_bus_init_chip() is called again, which happens during runtime PM cycle. Avoid reset by not initializing to default value everytime.
Fixes: 67ae482a59e9 ("ALSA: hda: add member to store ratio for stripe control") Cc: stable@vger.kernel.org Signed-off-by: Sameer Pujar spujar@nvidia.com
How about to move the default sdo_limit setup into snd_hdac_bus_init() instead? That's the place to be called only once.
A better choice. Thanks for the suggestion. Will publish v2.
thanks,
Takashi
sound/hda/hdac_controller.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/sound/hda/hdac_controller.c b/sound/hda/hdac_controller.c index 011b17c..0e26e96 100644 --- a/sound/hda/hdac_controller.c +++ b/sound/hda/hdac_controller.c @@ -538,7 +538,8 @@ bool snd_hdac_bus_init_chip(struct hdac_bus *bus, bool full_reset) * { ((num_channels * bits_per_sample * rate/48000) / * number of SDOs) >= 8 } */
bus->sdo_limit = 8;
if (!bus->sdo_limit)
bus->sdo_limit = 8; return true;
}
-- 2.7.4